• Save
Comparative study on agile software development
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Comparative study on agile software development

on

  • 2,870 views

Comparative study on agile software development: Software development methodologies are constantly evolving due to changing technologies and new demands from users. Today’s dynamic business ...

Comparative study on agile software development: Software development methodologies are constantly evolving due to changing technologies and new demands from users. Today’s dynamic business environment has given rise to emergent organizations that continuously adapt their structures, strategies, and policies to suit the new environment[12]. Such organizations need information systems that constantly evolve to meet their changing requirements. Though traditional software development methodologies, such as life cyclebased structured and object oriented approaches, continue to dominate the systems development few decades and much research has done in traditional methodologies, Agile software development brings its own set of novel challenges that must be addressed to satisfy the customer through early and continuous delivery of the valuable software. It’s a set of best practice that allows rapid delivery of high quality software to meet customer needs and also accommodate changes in the requirements.[13] Traditional, plan-driven software development methodologies lack the flexibility to dynamically adjust the development process. Agile development is the ability to develop software quickly keeping pace with the rapidly changing requirements. We speculate that from the need to satisfy the customer through early and continuous delivery of the valuable software, Agile software development is emerged. In this paper, we provide a brief comparison of agile development methodologies with traditional systems development methodologies, and discuss the challenges of adopting agile methodologies. A number of software development methods such as extreme programming (XP), feature-driven development, crystal clear method, scrum, dynamic systems development, and adaptive software development are also briefly discussed in this paper.

Statistics

Views

Total Views
2,870
Views on SlideShare
2,868
Embed Views
2

Actions

Likes
6
Downloads
0
Comments
0

1 Embed 2

http://www.slashdocs.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Comparative study on agile software development Presentation Transcript

  • 1. Comparative study onAgile software development methodologies By: A B M Moniruzzaman MSc in CSE Daffodil International University
  • 2. Abstract• Software development methodologies are constantly evolving due to changing technologies and new demands from users. Today’s dynamic business environment has given rise to emergent organizations that continuously adapt their structures, strategies, and policies to suit the new environment[12]. Such organizations need information systems that constantly evolve to meet their changing requirements. Though traditional software development methodologies, such as life cyclebased structured and object oriented approaches, continue to dominate the systems development few decades and much research has done in traditional methodologies, Agile software development brings its own set of novel challenges that must be addressed to satisfy the customer through early and continuous delivery of the valuable software. It’s a set of best practice that allows rapid delivery of high quality software to meet customer needs and also accommodate changes in the requirements.[13] Traditional, plan-driven software development methodologies lack the flexibility to dynamically adjust the development process. Agile development is the ability to develop software quickly keeping pace with the rapidly changing requirements. We speculate that from the need to satisfy the customer through early and continuous delivery of the valuable software, Agile software development is emerged. In this paper, we provide a brief comparison of agile development methodologies with traditional systems development methodologies, and discuss the challenges of adopting agile methodologies. A number of software development methods such as extreme programming (XP), feature-driven development, crystal clear method, scrum, dynamic systems development, and adaptive software development are also briefly discussed in this paper.
  • 3. IntroductionDefinition : An iterative and incremental (evolutionary) approach to software development which is performed in a highly collaborative manner by self-organizing teams within an effective governance framework with "just enough" ceremony that produces high quality solutions in a cost effective and timely manner which meets the changing needs of its stakeholders.
  • 4. agile manifesto
  • 5. Agile Principles
  • 6. Agile software development• Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross- functional teams. It promotes adaptive planning, evolutionary development and delivery, a time- boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle.
  • 7. Agile development life cycle
  • 8. Agile development life cycle
  • 9. Agile Methodologies• Well-known agile software development methods include:• Agile Modeling• Agile Unified Process (AUP)• Crystal Clear• Dynamic Systems Development Method (DSDM)• Extreme Programming (XP)• Feature Driven Development (FDD)• GSD• Kanban (development)• Lean software development• Scrum• Velocity tracking
  • 10. Agile Methodologies used
  • 11. Agile Methodologies used
  • 12. SCRUM• Scrum is an iterative and incremental agile software development method for managing software projects and product or application development. Scrum has not only reinforced the interest in project management,but also challenged the conventional ideas about such management.
  • 13. SCRUM• In Scrum, the "Product Owner" works closely with the team to identify and prioritize system functionality in form of a "Product Backlog". The Product Backlog consists of features, bug fixes, non-functional requirements, etc. - whatever needs to be done in order to successfully deliver a working software system. With priorities driven by the Product Owner, cross-functional teams estimate and sign- up to deliver "potentially shippable increments" of software during successive Sprints, typically lasting 30 days. Once a Sprints Product Backlog is committed, no additional functionality can be added to the Sprint except by the team. Once a Sprint has been delivered, the Product Backlog is analyzed and reprioritized, if necessary, and the next set of functionality is selected for the next Sprint.
  • 14. SCRUM PROCESS
  • 15. Comparison Agile SDMs over traditional SDMs:
  • 16. Comparison Agile SDMs over traditional SDMs:
  • 17. There is growing survey evidence that agile works better than traditional.
  • 18. Effectiveness of agile software development compared with traditional approaches.
  • 19. Benefits to Agile Adoption
  • 20. References• http://agilemanifesto.org/• http://agilemanifesto.org/principles.html• http://www.agile-process.org/• http://en.wikipedia.org/wiki/Agile_software_development• http://www.agilealliance.org/the-alliance/what-is-agile/• http://www.versionone.com/Agile101/Agile-Software- Development-Benefits/• http://www.agilemodeling.com/essays/agileSoftwareDevel opment.htm• http://www.ambysoft.com/essays/agileLifecycle.html
  • 21. •• Reference:•• Agile Software Development• • www.agilealliance.org• Extreme Programming• • www.extremeprogramming.org• • www.xprogramming.com/what_is_xp.htm• • K.Beck: eXtreme Programming Explained, Addison-Wesley 2000• Crystal Methodology• • crystalmethodologies.org• • members.aol.com/acockburn/• • A.Cockburn: Agile Software Development – The Agile Development• Series, 2000-2001• Adaptive Software Development• • www.adaptivesd.com• • J.Highsmith: Agile Software Development Ecosystems, Addison-Wesley,•• Reference for agile lifecycle:••  Beck, K., 1999. “Embracing Change with Extreme• Programming”, IEEE Computer, Vol. 32, No. 10, pp. 70-77.•  Cockburn, A., 2001. Agile Software Development. Boston,• USA: Addison-Wesley.•  Larman, C., 2004. Agile & Iterative Development: A• Manager’s Guide. Boston, USA: Addison-Wesley.•  Rautiainen, K., 2004. Cycles of Control: A Temporal Pacing• Framework for Software Product Development• Management. Licentiate’s Thesis, Helsinki University of• Technology. Available as PDF from• http://www.soberit.hut.fi/kqr/Lisuri_v12.pdf••• Figure Reference:• http://www.versionone.com/state_of_agile_development_survey/10/page3.asp••• SCRUM Reference:• http://www.codeproject.com/Articles/4798/What-is-SCRUM••
  • 22. • T1• An Iterative Improvement Process for Agile Software Development• Research Section• Outi Salo*,† and Pekka Abrahamsson• VTT Technical Research Centre of Finland, P.O. Box 1100, FIN-90571• Oulu, Finland• T2• Boehm, B. (2002, January). Get ready for agile• methods with care. IEEE Computer, 35(1), 64-• 69.•• T3• Challenges of Migrating to Agile Methodologies• By Sridhar Nerur, RadhaKanta Mahapatra,• and George Mangalaraj•• Ref:• Empirical studies of agile software development: A systematic review• Tore Dyba˚ *, Torgeir Dingsøyr•• [16] A. Cockburn, Crystal Clear: A Human-Powered Methodology for• Small Teams, Addison-Wesley, 2004, ISBN 0-201-69947-8.• [60] J. Stapleton, DSDM: Business Focused Development, second ed.,• Pearson Education, 2003, ISBN 978-0321112248.• [50] S.R. Palmer, J.M. Felsing, A Practical Guide to Feature-driven• Development, Prentice Hall, Upper Saddle River, NJ, 2002, ISBN 0-• 13-067615-2.• [52] M. Poppendieck, T. Poppendieck, Lean Software Development – An• Agile Toolkit for Software Development Managers, Addison-Wesley,• Boston, 2003, ISBN 0-321-15078-3.• [56] K. Schwaber, M. Beedle, Agile Software Development with Scrum,• Prentice Hall, Upper Saddle River, 2001.• [9] K. Beck, Extreme Programming Explained: Embrace Change, Addison-• Wesley, 2000, ISBN 0-201-61641-6.•• [10] K. Beck, Extreme Programming Explained: Embrace Chage, second• ed., Addison-Wesley, 2004, ISBN 978-0321278654.