The Programmer's Apprentice: A Session with KBEmacs
IEEE Transactions on Software Engineering - Special issue on artificial intelligence and software engineering
Domain-Specific Automatic Programming
IEEE Transactions on Software Engineering - Special issue on artificial intelligence and software engineering
ROGET: A knowledge-based system for acquiring the conceptual structure of a diagnostic expert system
Journal of Automated Reasoning
KRITON: a knowledge-acquisition tool for expert systems
International Journal of Man-Machine Studies - Knowledge acquisition for knowledge-based systems, part 1. Based on an AAAI work
Use of a domain model to drive an interactive knowledge-editing tool
International Journal of Man-Machine Studies - Knowledge acquisition for knowledge-based systems, part 1. Based on an AAAI work
Design goals for sloppy modeling systems
International Journal of Man-Machine Studies
Viewpoint analysis: a case study
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
The requirements apprentice: an initial scenario
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
Integrating multiple specifications using domain goals
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
An example of formal specification as an aid to design and development
IWSSD '89 Proceedings of the 5th international workshop on Software specification and design
The programmer's apprentice
Critiquing Software Specifications
IEEE Software
KBRA: A New Paradigm for Requirements Engineering
IEEE Expert: Intelligent Systems and Their Applications
The Programmer''s Apprentice: A Program Design Scenario
The Programmer''s Apprentice: A Program Design Scenario
Automated Acquisition of Evolving Informal Descriptions
Automated Acquisition of Evolving Informal Descriptions
CAKE: an implemented hybrid knowledge representation and limited reasoning system
ACM SIGART Bulletin - Special issue on implemented knowledge representation and reasoning systems
Toward a design apprentice: supporting reuse and evolution in software design
ACM SIGSOFT Software Engineering Notes
Exploiting reusable specifications through analogy
Communications of the ACM
Seven Layers of Knowledge Representation and Reasoning in Support of Software Development
IEEE Transactions on Software Engineering - Special issue on knowledge representation and reasoning in software development
Supporting Systems Development by Capturing Deliberations During Requirements Engineering
IEEE Transactions on Software Engineering - Special issue on knowledge representation and reasoning in software development
A Hybrid Knowledge Representation as a Basis of Requirement Specification and Specification Analysis
IEEE Transactions on Software Engineering - Special issue on software maintenance
The missing link in requirements engineering
ACM SIGSOFT Software Engineering Notes
Toward tools to support the Gries/Dijkstra design process
ACM SIGSOFT Software Engineering Notes
Integration of domain analysis and analogical approach for software reuse
SAC '93 Proceedings of the 1993 ACM/SIGAPP symposium on Applied computing: states of the art and practice
Comparing object-oriented analysis with knowledge acquisition
ACM SIGPLAN OOPS Messenger
The F3 reuse environment for requirements engineering
ACM SIGSOFT Software Engineering Notes
Building reusable components in the public administration domain
SSR '95 Proceedings of the 1995 Symposium on Software reusability
Reuse-oriented requirements engineering in NATURE
ACM SIGSOFT Software Engineering Notes
Formal refinement patterns for goal-driven requirements elaboration
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
On formal requirements modeling languages: RML revisited
ICSE '94 Proceedings of the 16th international conference on Software engineering
Classification of research efforts in requirements engineering
ACM Computing Surveys (CSUR)
ACM SIGSOFT Software Engineering Notes
Conceptual schema analysis: techniques and applications
ACM Transactions on Database Systems (TODS)
Requirements engineering: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Formal specification: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Requirements engineering in the year 00: a research perspective
Proceedings of the 22nd international conference on Software engineering
Quantitative WinWin: a new method for decision support in requirements negotiation
SEKE '02 Proceedings of the 14th international conference on Software engineering and knowledge engineering
Constraint checking in UML modeling
SEKE '02 Proceedings of the 14th international conference on Software engineering and knowledge engineering
Tools for producing formal specifications: a view of current architectures and future directions
Annals of Software Engineering
A survey of software reuse libraries
Annals of Software Engineering
CREWS-SAVRE: Scenarios for Acquiring and Validating Requirements
Automated Software Engineering
Reusing Specifications in OO Applications
IEEE Software
Knowledge Intensive Software Engineering Tools
IEEE Transactions on Knowledge and Data Engineering
New Approach to Requirements Trade-Off Analysis for Complex Systems
IEEE Transactions on Knowledge and Data Engineering
Developing Formal Specifications from Informal Requirements
IEEE Expert: Intelligent Systems and Their Applications
Automatic Revision of Simulation Models
IEEE Intelligent Systems
M2Z: A Tool for Translating a Natural Language Software Specification into Z
ICFEM '02 Proceedings of the 4th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Requirements interaction management
ACM Computing Surveys (CSUR)
Requirements Elicitation Driven by Interviews: The Use of Viewpoints
IWSSD '96 Proceedings of the 8th International Workshop on Software Specification and Design
ACME/PRIME: Requirements Acquisition for Process-Driven Systems
IWSSD '96 Proceedings of the 8th International Workshop on Software Specification and Design
Artificial Intelligence for Engineering Design, Analysis and Manufacturing
Natural Language Engineering
Enhancing Elicitation Technique Selection Process in a Cooperative Distributed Environment
REFSQ '08 Proceedings of the 14th international conference on Requirements Engineering: Foundation for Software Quality
Exploring traceability-based requirements inspection
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
Deriving requirements from process models via the problem frames approach
Information and Software Technology
Information Sciences: an International Journal
Rapid business process discovery (R-BPD)
ER'07 Proceedings of the 26th international conference on Conceptual modeling
The brave new world of design requirements
Information Systems
An application of uncertain reasoning to requirements engineering
UAI'99 Proceedings of the Fifteenth conference on Uncertainty in artificial intelligence
First order action logic: an approach for modeling the communication process between agents
CM'96 Proceedings of the First international conference on Communication Modeling: The language/action perspective
Document reuse: Organizing, finding and reorganizing content
International Journal of Information Management: The Journal for Information Professionals
Hi-index | 0.02 |
An automated tool called the Requirements Apprentice (RA) which assists a human analyst in the creation and modification of software requirements is presented. Unlike most other requirements analysis tools, which start from a formal description language, the focus of the RA is on the transition between informal and formal specifications. The RA supports the earliest phases of creating a requirement, in which ambiguity, contradiction, and incompleteness are inevitable. From an artificial intelligence perspective, the central problem the RA faces is one of knowledge acquisition. The RA develops a coherent internal representation of a requirement from an initial set of disorganized imprecise statements. To do so, the RA relies on a variety of techniques, including dependency-directed reasoning, hybrid knowledge representations and the reuse of common forms (cliches). An annotated transcript showing an interaction with a working version of the RA is given.