The vocabulary problem in human-system communication
Communications of the ACM
Software processes are software too
ICSE '87 Proceedings of the 9th international conference on Software Engineering
Why CSCW applications fail: problems in the design and evaluationof organizational interfaces
CSCW '88 Proceedings of the 1988 ACM conference on Computer-supported cooperative work
Managing the software process
Domain analysis: from art form to engineering discipline
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
Answer Garden: a tool for growing organizational memory
COCS '90 Proceedings of the ACM SIGOIS and IEEE CS TC-OA conference on Office information systems
SIBYL: a tool for managing group design rationale
CSCW '90 Proceedings of the 1990 ACM conference on Computer-supported cooperative work
Implementing faceted classification for software reuse
Communications of the ACM - Special issue on software engineering
Interactive Systems: Bridging the Gaps Between Developers and Users
Computer - Special issue on instruction sequencing
Identifying and Qualifying Reusable Software Components
Computer - Special issue on cryptography
Representing reusable software
Information and Software Technology
Retrieving software objects in an example-based programming environment
SIGIR '91 Proceedings of the 14th annual international ACM SIGIR conference on Research and development in information retrieval
Communications of the ACM - Special issue on analysis and modeling in software development
Support for comprehensive reuse
Software Engineering Journal - Special issue on software process and its support
From “folklore” to “living design memory”
CHI '93 Proceedings of the INTERACT '93 and CHI '93 Conference on Human Factors in Computing Systems
Where did you put it? Issues in the design and use of a group memory
CHI '93 Proceedings of the INTERACT '93 and CHI '93 Conference on Human Factors in Computing Systems
A case-based approach to software reuse
Journal of Intelligent Information Systems
Science and Substance: A Challenge to Software Engineers
IEEE Software
Case-based reasoning
Information access tools for software reuse
Journal of Systems and Software - Special issue on software reuse
An organizational learning approach to domain analysis
Proceedings of the 17th international conference on Software engineering
A process for consolidating and reusing design knowledge
ICSE '93 Proceedings of the 15th international conference on Software Engineering
Domain Analysis and Software Systems Modeling
Domain Analysis and Software Systems Modeling
Capability Maturity Model, Version 1.1
IEEE Software
Using Iterative Refinement to Find Reusable Software
IEEE Software
Case-Based Design Support: A Case Study in Architectural Design
IEEE Expert: Intelligent Systems and Their Applications
Representing and Maintaining Process Knowledge for Large-Scale Systems Development
IEEE Expert: Intelligent Systems and Their Applications
Software reuse: from library to factory
IBM Systems Journal
Industrial Conference on Data Mining: Advances in Data Mining, Applications in E-Commerce, Medicine, and Knowledge Management
Hi-index | 0.00 |
Software development is no longer a homogenous field. Software is being developed for an increasingly diverse set of applications and user populations, each with different characteristics and development constraints. As a consequence, researchers and practitioners have begun to realize the importance of identifying and understanding the characteristics and special development needs of application domains. This paper presents a method for developing and refining knowledge about application domains by creating a repository of project experiences. Subsequent projects can then benefit from these experiences by locating similar projects and reusing the knowledge accumulated in the repository. We develop a framework for a system to capture relationships between development projects and resources for developing software, including process models, methods, technologies, and tools. We then show how this information can be reused to improve the productivity and quality of software development efforts.