A Method and Framework for Domain Knowledge Assisted Requirements Evolution (K-RE)

Domain knowledge edge is crucially important in the requirements definition. Requirement analysts are not necessarily domain experts and domain knowledge in an organization is not easily visible and accessible to them. The increasing complexity of software requirements coupled with pressures to reduce time to market have underlined the necessity for a structured mechanism to help the requirement analyst ‘jump-start’ projects (re)using domain knowledge. Most Requirements Engineering (RE) methods treat the requirements engineering exercise as something that begins from nothing and assume a ‘clean slate’ approach which outlines a series of steps to define, analyze, specify and validate requirements collaboratively with relevant stakeholders. We propose a method and framework to enable Knowledge assisted Requirements Evolution (KRE). K-RE starts with a seed requirement specification. The seed contains structured domain knowledge as represented by core elements such as business events, actions and decisions (as captured in business processes), constraints, and analysis patterns derived from various resources. Each time a new software application is to be developed; we start with this seed specification and ‘evolve’ it by way of altering and/or adding to the core to get to the final requirement specification. This is done in a semantically assisted way. The semantic assistance comes from ontologies that can be created, maintained and evolved collaboratively and a context-sensitive alert mechanism that provides online alerts as a requirement analyst evolves her specification from the seed. Each new exercise of requirements definition thus, becomes an evolution of a pre-existing structured domain knowledge base tailored to suit specific projects. Keywords—Domain knowledge, collaboration, ontologies, semantic web, web 2.0.

[1]  L. Kof NATURAL LANGUAGE PROCESSING FOR REQUIREMENTS ENGINEERING : APPLICABILITY TO LARGE REQUIREMENTS DOCUMENTS , 2004 .

[2]  Wendy Hall,et al.  The Semantic Web Revisited , 2006, IEEE Intelligent Systems.

[3]  John Mylopoulos,et al.  On formal requirements modeling languages: RML revisited , 1994, Proceedings of 16th International Conference on Software Engineering.

[4]  George A. Miller,et al.  WordNet: A Lexical Database for the English Language , 2002 .

[5]  Hajime Enomoto,et al.  Software development process from natural language specification , 1989, ICSE '89.

[6]  Patrick Donohoe,et al.  Feature-Oriented Project Line Engineering , 2002, IEEE Softw..

[7]  Karin K. Breitman,et al.  Ontology as a requirements engineering product , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[8]  Richard C. Waters,et al.  The Requirements Apprentice: Automated Assistance for Requirements Acquisition , 1991, IEEE Trans. Software Eng..

[9]  Haruhiko Kaiya,et al.  Using Domain Ontology as Domain Knowledge for Requirements Elicitation , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[10]  J. M. Singer,et al.  IEEE Recommended Practice for Software Requirements SpeciÞcations , 1993 .

[11]  Seiichi Komiya,et al.  PAORE: package oriented requirements elicitation , 2003, Tenth Asia-Pacific Software Engineering Conference, 2003..

[12]  Knut Hinkelmann,et al.  Lecture Notes in Informatics (LNI) Proceedings. , 2009 .