Requirement Engineering Challenges in Development of Software Applications and Selection of Customer-off-the-Shelf ( COTS ) Components

Requirement Engineering acts as foundation for any software and is one of the most important tasks. Entire software is supported by four pillars of requirement engineering processes. Functional and non-functional requirements work as bricks to support software edifice. Finally, design, implementation and testing add stories to construct entire software tower on top of this foundation. Thus, the base needs to be well-built to support rest of software tower. For this purpose, requirement engineers come across with numerous challenges to develop successful software. The paper has highlighted requirement engineering challenges encountered in development of software applications and selection of right customer-off-the-shelf components (COTS). Comprehending stakeholder’s needs; incomplete and inconsistent process description; verification and validation of requirements; classification and modeling of extensive data; selection of COTS product with minimum requirement modifications are foremost challenges faced during requirement engineering. Moreover, the paper has discussed and critically evaluated challenges highlighted by various researchers. Besides, the paper presents a model that encapsulates seven major challenges that recur during requirement engineering phase. These challenges have been further categorized into problems. Furthermore, the model has been linked with previous research work to elaborate challenges that have not been specified earlier. Anticipating requirement engineering challenges could assist requirement engineers to prevent software tower from any destruction.

[1]  Axel van Lamsweerde,et al.  Requirements engineering in the year 00: a research perspective , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[2]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[3]  Ya-ning Chen,et al.  Functional Requirements of Metadata System: From User Needs Perspective , 2003, Dublin Core Conference.

[4]  Carina Frota Alves,et al.  Challenges in COTS decision-making: a goal-driven requirements engineering perspective , 2002, SEKE '02.

[5]  Kevin Ryan,et al.  The role of natural language in requirements engineering , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[6]  Linda H. Rosenberg,et al.  Automated Analysis of Requirement Specifications , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[7]  Rodziah Atan Automating Measurement for Software Process Models using Attribute Grammar Rules , 2008 .

[8]  Melek Oktay,et al.  Architectural, Technological and Performance Issues in Enterprise Applications , 2007 .

[9]  Andrea Herrmann,et al.  The Challenges of Distributed Software Engineering and Requirements Engineering: Results of an Online Survey , 2007 .

[10]  Jaelson Brelaz de Castro,et al.  Improving the separation of non-functional concerns in requirements artifacts , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[11]  A. Terry Bahill,et al.  Requirements development, verification, and validation exhibited in famous failures , 2005, Syst. Eng..

[12]  Carina Frota Alves,et al.  Investigating Conflicts in Cots Decision-Making , 2003, Int. J. Softw. Eng. Knowl. Eng..

[13]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

[14]  Frederick T. Sheldon,et al.  Validation of guidance control software requirements specification for reliability and fault-tolerance , 2002, Annual Reliability and Maintainability Symposium. 2002 Proceedings (Cat. No.02CH37318).

[15]  Annie I. Antón,et al.  Managing Use Cases During Goal-Driven Requirements Engineering: Challenges Encountered and Lessons Learned , 1999 .

[16]  Li-Yen Shue,et al.  The Development of a Knowledge System for ISO 9001 Quality Management , 2004, ICEIS.

[17]  Anthony Finkelstein,et al.  Abstraction-based requirements management , 2006, ROA '06.

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

[19]  Agostino Cortesi,et al.  Abstract Interpretation-Based Verification of Non-functional Requirements , 2005, COORDINATION.

[20]  Martin Glinz,et al.  Problems and deficiencies of UML as a requirements specification language , 2000, Tenth International Workshop on Software Specification and Design. IWSSD-10 2000.

[21]  Brian Berenbach,et al.  Impact of organizational structure on distributed requirements engineering processes: lessons learned , 2006, GSD '06.

[22]  John Mylopoulos,et al.  Why Goal-Oriented Requirements Engineering , 1998, Requirements Engineering: Foundation for Software Quality.

[23]  Wesley James Lloyd,et al.  A Common Criteria Based Approach for COTS Component Selection , 2004, J. Object Technol..

[24]  Ian Sommerville,et al.  Software Engineering (7th Edition) , 2004 .

[25]  Le Vie,et al.  Writing Software Requirements Specifications , 2006 .

[26]  Julio Cesar Sampaio do Prado Leite,et al.  Using the Language Extended Lexicon to Support Non-Functional Requirements Elicitation , 2001, WER.

[27]  Reiko Heckel,et al.  Detection of conflicting functional requirements in a use case-driven approach: a static analysis technique based on graph transformation , 2002, ICSE '02.

[28]  Marvin V. Zelkowitz,et al.  Perspectives in Software Engineering , 1978, CSUR.

[29]  Juan Sequeda A Taxonomy of Verification and Validation of Software Requirement and Specifications , 2007 .

[30]  Daniel M. Berry,et al.  AbstFinder, A Prototype Natural Language Text Abstraction Finder for Use in Requirements Elicitation , 1997, Automated Software Engineering.

[31]  Kirti Seth,et al.  Component Selection Efforts Estimation– a Fuzzy Logic Based Approach , 2009 .

[32]  Donald Firesmith,et al.  Modern Requirements Specification , 2003, J. Object Technol..

[33]  Martin Glinz,et al.  On Non-Functional Requirements , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[34]  Jaelson Brelaz de Castro,et al.  Analysing the Tradeoffs Among Requirements, Architectures and COTS Components , 2001, WER.

[35]  Thomas I. M. Ho,et al.  Systems Analysis Design Methods , 1994 .