Page 69 - DCAP405_SOFTWARE_ENGINEERING
P. 69

Software Engineering                                           Deepak Mehta,  Lovely Professional University




                    Notes                          Unit 5: An Agile View of Process


                                     CONTENTS
                                     Objectives
                                     Introduction
                                     5.1  An Agile View of Process
                                          5.1.1  What is Agility?
                                     5.2  Agile Process Model
                                          5.2.1  XP (Extreme Programming)
                                          5.2.2  Adaptive Software Development
                                          5.2.3  DSDM
                                          5.2.4  Scrum
                                          5.2.5  Crystal
                                          5.2.6  Feature-Driven Development (FDD)
                                          5.2.7  AM
                                     5.3  Summary
                                     5.4  Keywords
                                     5.5  Review Questions
                                     5.6  Further Readings

                                   Objectives

                                   After studying this unit, you will be able to:

                                       Recognize the agility
                                       Describe Agile Process Models

                                   Introduction

                                   Agile Modeling is a practice based software process whose scope is to cover both architectural
                                   and software process point of view. An agile philosophy for software engineering stresses four
                                   key issues: the importance of self-organizing teams that have control over the work they perform:
                                   communication and collaboration between team members and between practitioners and their
                                   customers, a recognition that change represents an opportunity; and an emphasis on rapid
                                   delivery of software that satisfies the customer. Agile process models have been designed to
                                   address each of these issues.

                                   5.1 An Agile View of Process


                                   In the software industry, a large number of projects fail and billions of dollars are spent on failed
                                   software projects. Lack of an end user involvement, poor requirements, and unrealistic schedules
                                   are some of the top reasons of such failure. Agile software development is an approach that
                                   addresses these problems through a real communication between programmers and customers.
                                   Thus, there is a need to quantify software agility. In this topic, an approach for quantifying
                                   software agility is provided by modeling the key concepts in agile software and proposing a




          62                                LOVELY PROFESSIONAL UNIVERSITY
   64   65   66   67   68   69   70   71   72   73   74