requirements engineering in an agile environment

26
Requirements Engineering in an Agile Environment

Upload: sunil1993

Post on 09-Dec-2014

155 views

Category:

Education


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Requirements Engineering in an Agile Environment

Requirements Engineering in an Agile Environment

Page 2: Requirements Engineering in an Agile Environment

Introduction

Page 3: Requirements Engineering in an Agile Environment

IntroductionO “Requirements engineering is defined as the

branch of Software Engineering concerned with the real‐world goals for, functions of, and constraints on software systems.”

O  “Agile software development is a group of software development methodologies iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross functional teams.”

Page 4: Requirements Engineering in an Agile Environment

Problem description

Page 5: Requirements Engineering in an Agile Environment

Problem descriptionO Traditional RE inapplicable to the

quick and changeable work under an agile environment.

O AMs seem to manage effectively requirements in small projects but not in large ones.

O The teams lack a good, lean and agile way to collect requirements.

Page 6: Requirements Engineering in an Agile Environment

Purposes

Page 7: Requirements Engineering in an Agile Environment

Purposes This project aims to Investigate the working process of

the two teams in the test tools section at SEMC.

Find out the problems the teams have in working with the current requirements.

Design some possible improvements based on the discovered problems.

Page 8: Requirements Engineering in an Agile Environment

Purposes Try out the improvements in one

pilot for each team. Evaluate the effects of the pilots in

order to propose a suggestion on the future work of the teams.

Page 9: Requirements Engineering in an Agile Environment

Delimitations

Page 10: Requirements Engineering in an Agile Environment

DelimitationsO The goal of this project is to find out

an effective way to conduct a Requirements Engineering process in an agile environment. The newly‐found methodology will only be tried out within some small pilots and the tools used in the teams will not be evaluated.

Page 11: Requirements Engineering in an Agile Environment

Feasibility Study

Page 12: Requirements Engineering in an Agile Environment

Feasibility StudyO The Feasibility Study gives the

overview of the target system and decides whether or not the proposed system is worthwhile.

Page 13: Requirements Engineering in an Agile Environment

Feasibility Study Does the system contribute to the

high level objectives and the critical requirements of the organization?

Is your organization ready for the AD?

Can the system be implemented within given budget?

How to integrate the agile activities with traditional organizational activities already in place?

Page 14: Requirements Engineering in an Agile Environment

System Design

Page 15: Requirements Engineering in an Agile Environment

Agile Development Methods

• Agile development is less document-centric and more code-oriented.

• Agile methods were developed to adapt and thrive on frequent changes.

• Agile methods are people-oriented rather than process oriented.

Page 16: Requirements Engineering in an Agile Environment

Agile Development Methods

O Extreme Programming (XP) is based on values of simplicity, communication, feedback, and courage.

O XP uses story cards for elicitation. O XP is based on frequent small

releases.

Page 17: Requirements Engineering in an Agile Environment

Agile development process VS. Waterfall process

First iteration in an agile development process

Page 18: Requirements Engineering in an Agile Environment

Context Models

Page 19: Requirements Engineering in an Agile Environment

Background of Test Tools & Support Section

Page 20: Requirements Engineering in an Agile Environment

Organization of SEMC

Page 21: Requirements Engineering in an Agile Environment

Product process

Page 22: Requirements Engineering in an Agile Environment

Working process of BRAT Team and QC Team

Page 23: Requirements Engineering in an Agile Environment

Tools for Requirements Engineering in Agile Method (AM)

O UML Modeling ToolsO Requirements Negotiation ToolsO Instant Messaging ToolsO Project Management Tools

Page 24: Requirements Engineering in an Agile Environment

Conclusions

Page 25: Requirements Engineering in an Agile Environment

ConclusionsO While advances in software

technologies and development tools have helped launch new generations of software products, it is also the case that new generations of software products drive the development of more sophisticated development Empirical data comparing the effectiveness and limitations of agile and non-agile approaches

Page 26: Requirements Engineering in an Agile Environment

Thank You!!!