Challenges and Strategies for Balancing Plan-Driven and Agile Requirement Engineering

Typ
Examensarbete för masterexamen
Master Thesis
Program
Software engineering and technology (MPSOF), MSc
Publicerad
2017
Författare
Gopakumar, Swathi
Modellbyggare
Tidskriftstitel
ISSN
Volymtitel
Utgivare
Sammanfattning
The main characteristic of traditional software methodologies is following a series of sequential steps like requirement specification, design, development and testing and deployment. Client requirements are documented to the maximum possible extent. This is followed with visualising the general architecture of the software which is later followed by coding. Then comes the different testing process and the final deployment. Basically, there is deep planning and visualization of the project even before building the project, and then working one’s way through to the planned finished structure. The agile method of software development is a contrast to the former. The focus here is on iterative and incremental development, where all the phases of the process are periodically revisited. A lot of importance is given to adaptability. Agile Methods sprung up as a reaction to traditional ways of developing software and acknowledge the need for alternative ways to the old documentation driven, heavyweight software development processes. Both traditional and agile approaches imply different ways of handling requirements. Each of them have their specific benefits and challenges. Some of the challenges of traditional RE are lengthy time consuming documentation, irrelevant requirements leading to requirement waste, not accommodative of late requirement changes, minimalistic customer interaction etc. While agile RE challenges are related to insufficient documentation, lack of budget and schedule estimation, neglect of non-functional requirements, no support for requirement traceability issues, requirements volatility etc. With several challenges of traditional/ plan driven requirements and agile/ change driven requirements mentioned in literature, it would be beneficial if organisations could find a way to work with requirements by taking the best of both worlds. A good idea is to find a balance in working with both forms of requirement engineering. With software intensive industries gradually shifting from traditional software development process to adopting several agile methods, it is important to explore how this balance can be attained. To explore this balance, we conducted case study at a premium automotive company that works with plan driven requirements as well as agile requirements or user stories. The case company has been successful in gaining the benefits of both requirement engineering forms by achieving to find balance in working with both traditional and agile methods. For our case study, we conducted eleven semi-structured interviews within this automotive company to explore how they worked together with both types of requirements handling. After extracting the challenges found in the company’s requirement model, we conducted a focus group discussion in order to validate our findings. The focus group enabled us to gather insight on strategies that could be applied to resolve the challenges found to a large extent. The focus group included faculty from Chalmers and some of the employees from the automotive company. This study can be replicated in other research settings to obtain ideas to strike balance between plan driven requirements and agile user stories and dig out other complicated challenges that could arise when trying to attain balance.
Beskrivning
Ämne/nyckelord
Data- och informationsvetenskap , Computer and Information Science
Citation
Arkitekt (konstruktör)
Geografisk plats
Byggnad (typ)
Byggår
Modelltyp
Skala
Teknik / material
Index