RESEARCH PAPER # 03
THE ROLE OF REQUIREMENT ENGINEERING IN SOFTWARE DEVELOPMENT LIFE CYCLE
STUDENT’s NAMES HEADING NAME
Hina Khan Competitive
Fatima Nadeem Critical Analysis
Abid Hussain Introduction
Tooba Ansari Similarity
Ali Raza How can you make it different
The Requirement Engineering (RE) is the most important phase of the Software Development Life Cycle (SDLC). This phase is used to translate the imprecise, incomplete needs and wishes of the potential users of software into complete, precise and formal specifications. The specifications act as the contract between the software users and the developers. Therefore, the importance of Requirement Engineering is enormous to develop effective software and in reducing software errors at the early stage of the development of software. Since Requirement Engineering (RE) has great role in different stages of the SDLC, its consideration in software development is crucial. There exist a number of approaches for requirement engineering.
For example, you iterate first on the user requirements; elicitation, specification, and validation, and repeat the same steps for the system requirements.
Early in the process, most effort will be spent on understanding high-level business and user requirements. Later in the process, more efforts will be spent on elicitation and understanding detailed system requirements.
Some people consider requirements engineering to be the process of applying structured analysis method, such as object-oriented analysis. This involves analyzing the system and developing a set of graphical system models such as use case models, which then serve as a system specification.
Although structured methods have a role to play in the requirements engineering process, there’s much more to the requirements engineering than that’s covered by these methods.
The software development life cycle (SDLC) describes stages of software development and the order in which these stages should be implemented. The requirement engineering activities in the model such as elicitation, documentation of requirement and verification ; validation are tightly interconnected to the software development phases. Requirement prototyping with more user participation. Using this model, organization can allow users for any further change in requirements during software development process. The SRS can be modified accordingly and these changed requirements can be re-implemented in software development.
In HYPERLINK l “Bru03” 4 5 HYPERLINK l “Wan96” 6 OOSDM is widely used approach takes an object oriented viewpoint. Here the problem domain is characterized as a set of objects that have specific attributes and behaviors and that are categorized into classes and subclasses. This approach concentrates on the processing and algorithms of the system. Function-oriented design has been practiced since programming began, and there is a large body of design methods based on functional decomposition. the competitive online market, a high-quality design can mean the difference between success and failure, Secondly, under UCD methodologies, software development is more efficient.
Requirement analysis is the most significant part of the SDLC, it is reviewed that the three Requirement Engineering (RE) frameworks to measure which framework may be the better approach for RE process. From the observation, it was seen that other two frameworks have some limitations which was tried to cover up in Somerville framework; it considers two important inputs user and problem domain. The user knows better his need and wishes of desire system and problem domain where system will be applied. Moreover, it has some extraordinary scope such as its cyclic process, iterative and nature of real-world approach etc. It is crucial decision to choose a suitable requirement engineering method. Further work needs to be carried out in order to adjust and refine existing measures that satisfy the most critical phases in SDLC, especially in the architecture and program design phases.
HOW CAN YOU MAKE IT DIFFERENT:New software development approaches such as construction by configuration arise. The dominant method used in software development is reuse now, especially in the business world. Briefly, construction by configuration means assemble and integrate existing systems and components to create new systems. Therefore, the software requirements depend on not only the expectations of the customers but also the capabilities of existing systems and components. Due to the changing business environment, it is evitable that that new requirements may be emerged and current requirements may be changed within short intervals.