Building an Organization-Specific Infrastructure to Support CASE Tools

CASE tools are notorious for forcing organizations to adapt to a standard development methodology. The underlying assumption is that a universally applicable development method exists and it is up to the organization to conform to that method. But software development is no longer a homogeneous field. As computers are applied to an increasingly diverse set of applications, it is becoming increasingly important to understand the different demands these domains place on the development process. Our solution to this dilemma is to create an organization-wide development infrastructure based on accumulated experiences within application and technical domains. The domain lifecycle formalizes a process for accumulating project experiences and creating domain knowledge than can be used to increase product quality and improve development productivity. Supporting the domain lifecycle eases development of software that has been developed previously in the organization, freeing designers to concentrate on less well-known elements of an application.

[1]  T. Church,et al.  An evaluation of object-oriented CASE tools: the Newbridge experience , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[2]  Chris F. Kemerer,et al.  Now the learning curve affects CASE tool adoption , 1992, IEEE Software.

[3]  E. Jeffrey Conklin,et al.  A process-oriented approach to design rationale , 1991 .

[4]  Watts S. Humphrey,et al.  Managing the software process , 1989, The SEI series in software engineering.

[5]  Scott Henninger,et al.  Using iterative refinement to find reusable software , 1994, IEEE Software.

[6]  Joseph E. Urban,et al.  Software productivity: through undergraduate Software Engineering Education and Case Tools , 1994, The Impact of Case Technology on Software Processes.

[7]  Loren G. Terveen,et al.  Living Design Memory: Framework, Implementation, Lessons Learned , 1995, Hum. Comput. Interact..

[8]  Roger Alan Pick,et al.  Computer-aided software engineering's impact on the software development process: an experiment , 1991, Proceedings of the Twenty-Fourth Annual Hawaii International Conference on System Sciences.

[9]  G. Arango Domain analysis: from art form to engineering discipline , 1989, IWSSD '89.

[10]  Victor R. Basili,et al.  Identifying and qualifying reusable software components , 1991, Computer.

[11]  Vasant Dhar,et al.  Representing and maintaining process knowledge for large-scale systems development , 1994, IEEE Expert.

[12]  Scott Henninger,et al.  Information access tools for software reuse , 1995, J. Syst. Softw..

[13]  Janet L. Kolodner,et al.  Improving Human Decision Making through Case-Based Decision Aiding , 1991, AI Mag..

[14]  Guillermo Arango,et al.  Domain Analysis and Software Systems Modeling , 1991 .

[15]  Karen Holtzblatt,et al.  Making customer-centered design work for teams , 1993, CACM.

[16]  Robin Jeffries,et al.  Where did you put it? Issues in the design and use of a group memory , 1993, INTERCHI.

[17]  Frank M. Shipman,et al.  Seeding, evolutionary growth and reseeding: supporting the incremental development of design environments , 1994, CHI '94.

[18]  Martin L. Griss,et al.  Software Reuse: From Library to Factory , 1993, IBM Syst. J..

[19]  Clifford C. Huff,et al.  Elements of a realistic CASE tool adoption budget , 1992, CACM.

[20]  Loren G. Terveen,et al.  From “folklore” to “living design memory” , 1993, INTERCHI.

[21]  Iris Vessey,et al.  Evaluation of vendor products: CASE tools as methodology companions , 1992, CACM.

[22]  Thomas W. Mastaglio,et al.  Critics: An Emerging Approach to Knowledge-Based Human-Computer Interaction , 1991, Int. J. Man Mach. Stud..

[23]  M. S. Ackerman,et al.  Answer Garden: a tool for growing organizational memory , 2015, COCS '90.

[24]  Gail E. Kaiser,et al.  An Information Retrieval Approach For Automatically Constructing Software Libraries , 1991, IEEE Trans. Software Eng..

[25]  Jonathan Grudin,et al.  Organizational obstacles to interface design and development: two participant-observer studies , 1994, TCHI.

[26]  Rubén Prieto-Díaz Implementing faceted classification for software reuse , 1991, CACM.

[27]  Douglas Schuler,et al.  Participatory Design: Principles and Practices , 1993 .

[28]  Richard C. Waters,et al.  Automatic programming: myths and prospects , 1988, Computer.

[29]  T. Landauer,et al.  Indexing by Latent Semantic Analysis , 1990 .

[30]  J. F. Traub,et al.  Scaling Up: A Research Agenda for Software Engineering , 1989 .

[31]  Soumitra Sarkar,et al.  Providing Customized Assistance for Software Lifecycle Approaches , 1988, IEEE Trans. Software Eng..

[32]  Janet L. Kolodner,et al.  A Case-Based Design Aid for Architecture , 1992 .

[33]  Edward Yourdon Decline and Fall of the American Programmer , 1992 .

[34]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[35]  Ted J. Biggerstaff,et al.  An Assessment and Analysis of Software Reuse , 1992, Adv. Comput..

[36]  Brian R. Gaines Social and cognitive processes in knowledge acquisition , 1989 .

[37]  David N. Card,et al.  Evaluating Software Engineering Technologies , 1987, IEEE Transactions on Software Engineering.

[38]  John Rieman,et al.  The diary study: a workplace-oriented research tool to guide laboratory efforts , 1993, INTERCHI.

[39]  Gerhard Fischer,et al.  Construction Kits and Design Environments: Steps Toward Human Problem-Domain Communication , 1987, Hum. Comput. Interact..

[40]  Neil A. M. Maiden,et al.  Exploiting reusable specifications through analogy , 1992, CACM.

[41]  Janet L. Kolodner,et al.  Case-Based Reasoning , 1989, IJCAI 1989.

[42]  M. A. Simos The domain-oriented software life cycle: towards an extended process model for reusability , 1988 .

[43]  Will Tracz,et al.  Software reuse - emerging technology , 1988 .

[44]  Daniel E Cooke The Impact of Case Technology on Software Processes , 1994, Series on Software Engineering and Knowledge Engineering.

[45]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[46]  Raymond McCall,et al.  Making Argumentation Serve Design , 1996, Hum. Comput. Interact..

[47]  Guillermo Arango,et al.  A process for consolidating and reusing design knowledge , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[48]  Jay F. Nunamaker,et al.  CASE productivity perceptions of software engineering professionals , 1989, CACM.

[49]  Scott Henninger,et al.  An Organizational Learning Approach to Domain Analysis , 1995, 1995 17th International Conference on Software Engineering.

[50]  Duc Truong Pham,et al.  Artificial Intelligence in Design , 1991 .

[51]  Colin Potts,et al.  Software-engineering research revisited , 1993, IEEE Software.

[52]  Jintae Lee The 1992 Workshop on Design Rationale Capture and Use , 1993, AI Mag..

[53]  Gerhard Fischer,et al.  Supporting Software Designers with Integrated Domain-Oriented Design Environments , 1992, IEEE Trans. Software Eng..

[54]  James M. Neighbors,et al.  The Draco Approach to Constructing Software from Reusable Components , 1984, IEEE Transactions on Software Engineering.

[55]  Larry Kerschberg,et al.  Domain modeling for software reuse and evolution , 1995, Proceedings Seventh International Workshop on Computer-Aided Software Engineering.

[56]  Nicholas J. Belkin,et al.  Information filtering and information retrieval: two sides of the same coin? , 1992, CACM.

[57]  Thomas P. Moran,et al.  Questions, Options, and Criteria: Elements of Design Space Analysis , 1991, Hum. Comput. Interact..