Agile Software Development
|
|
- Juliet Jennings
- 8 years ago
- Views:
Transcription
1 E Learning Volume 5 Number Agile Software Development SOLY MATHEW BIJU University of Wollongong in Dubai, United Arab Emirates ABSTRACT Many software development firms are now adopting the agile software development method. This method involves the customer at every level of software development, thus reducing the impact of change in the requirement at a later stage. In this article, the principles of the agile method for software development are explored and there is a focus on its effectiveness in the industry today. The article also describes the two agile development methods used today in the information technology industry Extreme Programming (XP) and Scrum. The major differences between the two methods are examined. This article is based on a recent study and on feedback from developers in the information technology industry. Introduction Previous traditional software development methods (waterfall, spiral, iterative) were very cumbersome and involved a lot of documentation. These methods were very rigid and provided very little or no flexibility. McCauley (2001) states that the underlying philosophy of processoriented methods is that the requirements of the software project are documented, they are locked and frozen before the design and software development process takes place. This process is not flexible enough to accommodate changes in the specifications at a later stage of the development. According to Highsmith & Cockburn (2001): what is new about agile methods is not the practices they use but their recognition of people as the primary drivers of project success, coupled with an intense focus on effectiveness and manoeuvrability. This yields a new combination of values and principles that define an agile world view. Project development would be a disaster if the customer was not sure of the final product requirements and could only give the requirements on an incremental basis. Such a method follows the Capability Maturity Model (CCM), which is process-based. The agile method is people-based rather than plan-based. In agile software development, the focus is on customer satisfaction. It is an incremental/iterative software development process which focuses on the quick development of a working model. The agile software development method is based on the following principles: individuals and interactions over processes and tools; working software over comprehensive documentation; customer collaboration over contract negotiation; responding to change over following a plan. The agile software development manifesto was published by a group of software practitioners and consultants in 2001 (Cockburn, 2002).[1] 97
2 Soly Mathew Biju Extreme Programming (XP) Introduction Extreme Programming is one of the commonly used agile software methods (Larman, 2004). It is used in the problem domains where the initial requirements are likely to change to a large extent. XP is based on the following assumptions: Be willing to do rework frequently and fast, as well as welcome customer feedback. It becomes a customer-focused and customer-driven project rather than a plan-driven project. Initial software is developed based on the stories and requirements provided by the user. This software will contain the most important and vital features required by the user. This method is found to be very effective as it involves the customer from the very beginning. The customer writes user stories comprising simple lines of text describing the features they want included in the first release of the working program. The acceptance test for the software is designed and based on these user stories. This will keep a check on whether all the features requested are implemented in the program. The developers then estimate the time for the development activity, for which they will have to meet the customer, reconfirm and make detailed notes of the requirements. The first release should not take longer than three weeks. Hence, this method consists of small release cycles, for which the feedback of the customer and user stories are written, which are then used for the next release of the software. The length of the increments is decided and is usually equal for all releases. The developers are advised to keep their code as simple as possible and the technically latest version, which in turn minimizes the need for documentation. Requirements can be added at any time during the project development. New features can be added to the software as the next increments are provided. Before the next release, the customer will have to prioritize the requirements for that release. The next release will focus on these requirements. All the contents of the release are subject to change, except for the new features implemented (Cauwenberghe, 2002). If analysis of the requirements shows that the increment will take longer than the decided increment length, it is broken down into smaller increments. Each increment will have the developers working on the analysis, design code integration and testing phases iteratively (Cauwenberghe, 2002). It follows an iterative life cycle model with five activities, namely planning, design, coding, testing and integration: Planning occurs at the beginning of each iteration. Design, coding and testing are done incrementally. The source code is continuously integrated into the main branch, one contribution at a time. There are unit tests for all integrated units (regression testing). Working Style The working style is slightly different and it may take some time for the team members to implement this style: Pair programming is followed whereby two programmers work together to develop a particular functionality. This provides a better quality product. There is no concept of peer review. Stand-up meetings are held to discuss the status of the project. These short meetings are held on an everyday basis. There is collective code ownership: everyone is responsible for the complete software. Anyone can make changes to the program if they find that it will improve the code. Unlike traditional project management where the project manager is responsible for the risks, complexity, deadlines, etc., in the case of agile software development, the team will organize and reorganize itself to handle all the pressures of the project. The major difference of XP-style planning and incremental delivery, as in the case of one of the most accepted Unified Process frameworks, is the assumption that architecture and design can 98
3 Agile Software Development be done incrementally. XP spends very little time on defining the architecture and overall design. It starts directly with the first increment to deliver functionality. XP undertakes the design in the following manner: A system metaphor is used, which names the classes and the objects in a consistent manner and is agreed upon by all the team members. It also describes the overall architecture. It follows the test first method, where the programmer writes the code for testing the program before writing the program. These tests are written incrementally based on the user requirements. These are the tests that the program unit must comply with. Figure 1 shows a sample testing code (Miller, 2003). The code must be written so that it will satisfy these tests. Figure 1. JUnit test for the Person object (Miller, 2003). Refactoring reworks the design to adapt the changes to the environment and requirements iteratively. It follows group design techniques like whiteboard design sessions, classresponsibility-collaborator sessions (CRC), etc. Another controversial assumption is that analysis can be done incrementally. XP performs analysis in the following manner: User stories, which contain brief descriptions of the requirements, are discussed interactively by a team of programmers and the customer. The requirements are then formulated into acceptance test cases which the software should comply with. The planning game is used to do release planning. This is a meeting that occurs once per iteration. The customer and the programmers participate in the planning game. The assumption that the product can be delivered to the customer in an iterative manner makes it most beneficial to the customer. The customer can receive and make use of the most important and valuable functionality within a very short period of time. Thus, customers get a quicker return on their investment. The order in which features should be added to the software can be decided 99
4 Soly Mathew Biju by the customer. The customer can therefore verify whether what is given is what they want at a very early stage, and can provide feedback to the programmers, thus driving the project in the right direction. Is XP Always the Best Method to Follow? This depends on the project, the team and the customer. If the assumptions of XP hold, there are various benefits to be derived from incremental software delivery. One of them is the early delivery of the first incremental model of useful software. Feedback from the customer gives the required confidence to the programmers and can help drive the next incremental release. Incremental releases can be scheduled, hence there can be predictable delivery. A simple code and minimal documentation save a lot of time. Scrum Another agile software development method is Scrum. Scrum and XP are clearly aligned. In fact, if you walked in on a team doing one of these processes, you might have a hard time quickly deciding whether you had walked in on a Scrum team or an XP team. The differences are often quite subtle, but they are important. Figure 2. Scrum (Tamhane, 2007). There are four main differences between Scrum and XP [2]: 1. Scrum teams typically work in iterations (called sprints ), as shown in Figure 2, that are from two weeks to one month long. XP teams typically work in iterations that are one or two weeks long. 2. In Scrum, the teams do not allow changes into their sprints. Once the sprint planning meeting is completed and a commitment has been made to delivering a set of product backlog items, that set of items remains unchanged throughout the sprint. XP teams are much more flexible within their iterations. As long as the team has not started work on a particular feature, a new 100
5 Agile Software Development feature of equivalent size can be swapped into the XP team s iteration in exchange for the unstarted feature. 3. XP teams work in a strict priority order. Features to be developed are prioritized by the customer and the team is required to work on them in that order. By contrast, the Scrum product owner prioritizes the product backlog items but the team determines the sequence in which they will develop the backlog items. 4. Whereas Scrum does not prescribe any engineering practices, XP does. XP engineering practices include things like test-driven development, the focus on automated testing, pair programming, simple design, refactoring, and so on. These are small and often subtle differences between Scrum and XP. They can, however, have a profound impact on the team. A possible approach to maximizing the advantages of both approaches is to start with Scrum and then begin using XP engineering practices, such as testdriven development and pair programming. Figure 3 depicts the key differences between the traditional waterfall model and the agile method. Figure 3. Differences between the traditional waterfall model and the agile method. Disadvantages of the Agile Approach If we are adopting the agile method for the first time, we will face the challenge of changing the mindsets of our team members and helping them understand the rules of the new method (Evans, 2006). A lot of rework may be involved, which could be avoided if a complete requirement analysis is done initially. If a proper order of building the software is not followed, we might end up reworking from the beginning to include another set of requirements. This is especially likely if we need to add certain security or performance features to the software. The complete process may slow down if requirement analysis and design have to be performed for each iteration. 101 Conclusion The agile software development process will produce incremental release of software, which is very useful for reducing product risks and delivering a product to a customer s satisfaction. A working model of the product can be delivered at a very early stage. The software will truly be agile and subjected to change until the final delivery. It is always better to have planned a little ahead so as to avoid possible pitfalls. Certain import requirements related to security and
6 Soly Mathew Biju performance features can be collected in advance. If one is familiar with the domain, has a stable design and has worked in a similar environment, then it is better to follow the waterfall method. If a project is not familiar, has unstable design and involves a lot of risk, it is always advisable to adapt to the agile software development method. Agile has largely become a synonym for modern software practices that work.[3] Notes [1] Manifesto for Agile Software Development. [2] See Mike Cohn s blog. [3] 5Qs on Agile with Steve McConnell. References Cauwenberghe, P. van (2002) Going Round and Round and Getting Nowhere Extremely Fast? Another Look at Incremental and Iterative Development, Methods and Tools. Cockburn (2002).Agile Software Development. Boston: Addison-Wesley. Evans, I. (2006) Agile Delivery at British Telecom, Methods and Tools. Highsmith, J. & Cockburn, A. (2001) Agile Software Development: the business of innovation, Computer, 34(9), Larman, C. (2004) Agile and Iterative Development: a manager s guide. Harlow: Addison-Wesley. McCauley, R. (2001) Agile Development Methods Poised to Upset Status Quo, SIGCSE Bulletin, 33(4), Miller, R. (2003) Demystifying Extreme Programming: test-driven programming. Tamhane, S. (2007) Application of IT in Heath Care, presentation at IT seminar, University of Wollongong, Dubai. SOLY MATHEW BIJU is an instructor in the College of Undergraduate Studies of the University of Wollongong in Dubai, teaching programming languages and algorithms and problem solving. She has taught various software engineering and information technology (IT) subjects at different colleges, and is an ISTQB-certified (International Software Testing Qualifications Board) software testing professional for the foundation syllabus. She has also taught numerous online courses in different colleges across Europe and has worked in the IT industry as well as working as a systems administrator leading Windows NT and Lotus Notes teams for British Airways at Heathrow Airport in the United Kingdom and in Pune, India. Correspondence: Dr Soly Mathew Biju, College of Undergraduate Studies, University of Wollongong in Dubai, PO Box 20183, Dubai, United Arab Emirates (solymathewbiju@uowdubai.ac.ae). 102
Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods
Topics covered Chapter 3 Agile Software Development Agile methods Plan-driven and agile Extreme programming Agile project management Scaling agile methods 1 2 Need for rapid software Rapid software Changing
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Agile software development
Ingegneria del Software Corso di Laurea in Informatica per il Management Agile software development Davide Rossi Dipartimento di Informatica Università di Bologna The problem Efficiency: too much effort
More informationAgile So)ware Development
Software Engineering Agile So)ware Development 1 Rapid software development Rapid development and delivery is now often the most important requirement for software systems Businesses operate in a fast
More informationSoftware Development Methodologies
Software Development Methodologies Jonathan Hoyle Eastman Kodak Thursday, June 2, 2005 Overview Predictive Methodologies Waterfall Other Predictive Methodologies Agile Methodologies Extreme Programming
More informationAgile with XP and Scrum
Agile with XP and Scrum Amit Goel National Agile Software Workshop @ Indore Agile India Conference Agile Software Community of India Disclaimer and Credits Most of material in this presentation has been
More informationAgile Development Overview
Presented by Jennifer Bleen, PMP Project Services Practice of Cardinal Solutions Group, Inc. Contact: Agile Manifesto We are uncovering better ways of developing software by doing it and helping others
More informationAgile and Secure Can We Be Both? Chicago OWASP. June 20 th, 2007
Agile and Secure Can We Be Both? Chicago OWASP June 20 th, 2007 The Agile Practitioner s Dilemma Agile Forces: Be more responsive to business concerns Increase the frequency of stable releases Decrease
More informationAgile Projects 7. Agile Project Management 21
Contents Contents 1 2 3 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management
More informationIntroduction to Agile Software Development. EECS 690 Agile Software Development
Introduction to Agile Software Development EECS 690 Agile Software Development Agenda Research Consent Forms Problem with Software Engineering Motivation for Agile Methods Agile Manifesto Principles into
More informationVragen. Software development model. Software development model. Software development model
Vragen Noem de belangrijkste activiteiten in een software engineeringsproject Welke vormen van onderhoud kan men onderscheiden? Karakteriseer het waterval model Waterfall model Document oriented Suited
More informationThe traditional project management uses conventional methods in software project management process.
Volume 5, Issue 1, January 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Analysis of
More informationAgile Software Development Methodologies and Its Quality Assurance
Agile Software Development Methodologies and Its Quality Assurance Aslin Jenila.P.S Assistant Professor, Hindustan University, Chennai Abstract: Agility, with regard to software development, can be expressed
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationProduct Derivation Process and Agile Approaches: Exploring the Integration Potential
Product Derivation Process and Agile Approaches: Exploring the Integration Potential Padraig O Leary, Muhammad Ali Babar, Steffen Thiel, Ita Richardson Lero, the Irish Software Engineering Research Centre,
More informationIntroduction to Agile and Scrum
Introduction to Agile and Scrum Matthew Renze @matthewrenze COMS 309 - Software Development Practices Purpose Intro to Agile and Scrum Prepare you for the industry Questions and answers Overview Intro
More informationWho Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008
Who Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008 Who wants to be involved in a BI project or program that is labeled slow or inflexible? While I don t believe
More informationExtreme Programming, an agile software development process
Extreme Programming, an agile software development process Paul Jackson School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled
More informationHow To Understand The Limitations Of An Agile Software Development
A Cynical View on Agile Software Development from the Perspective of a new Small-Scale Software Industry Apoorva Mishra Computer Science & Engineering C.S.I.T, Durg, India Deepty Dubey Computer Science
More informationHistory of Agile Methods
Agile Development Methods: Philosophy and Practice CPSC 315 Programming Studio Fall 2010 History of Agile Methods Particularly in 1990s, some developers reacted against traditional heavyweight software
More informationAgile and Secure: Can We Be Both?
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Keith Landrus Director of Technology Denim Group Ltd. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission
More informationAgile and Secure: OWASP AppSec Seattle Oct 2006. The OWASP Foundation http://www.owasp.org/
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Dan Cornell, OWASP San Antonio Leader Principal, Denim Group Ltd. dan@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation
More informationDevelopment. Lecture 3
Software Process in Modern Software Development Lecture 3 Software Engineering i Practice Software engineering practice is a broad array of principles, concepts, methods, and tools that must be considered
More informationAgile Scrum Workshop
Agile Scrum Workshop What is agile and scrum? Agile meaning: Able to move quickly and easily. Scrum meaning: a Rugby play Agile Scrum: It is an iterative and incremental agile software development framework
More informationAgile Methodologies and Its Processes
International Journal of Computational Engineering Research Vol, 03 Issue, 9 Agile Methodologies and Its Processes 1, Akanksha, 2, Akansha Rakheja, 3, Latika Kapur, 4, Kanika Ahuja 1,2,3,, Information
More informationExtreme Programming, an agile software development process
Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled
More informationWaterfall to Agile. DFI Case Study By Nick Van, PMP
Waterfall to Agile DFI Case Study By Nick Van, PMP DFI Case Study Waterfall Agile DFI and Waterfall Choosing Agile Managing Change Lessons Learned, Sprints Summary Q and A Waterfall Waterfall Waterfall
More informationContents. 3 Agile Modelling 31 3.1 Introduction 31 3.2 Modelling Misconceptions 31
Contents 1 Introduction 1 1.1 WhyThisBook? 1 1.2 A Bit of History 1 1.3 What Is Agile Software Development? 2 1.4 WhyBe Agile? 3 1.5 What This Book Is About? 3 1.6 Implementation Languages 3 1.7 The Structure
More informationCSE 435 Software Engineering. Sept 16, 2015
CSE 435 Software Engineering Sept 16, 2015 2.1 The Meaning of Process A process: a series of steps involving activities, constraints, and resources that produce an intended output of some kind A process
More informationProject Management in Software: Origin of Agile
PAGE 1 ios App Development Project Management in Software: Origin of Agile PAGE 2 Learning Outcomes By the end of the unit, you should be able to: 1. Differentiate between Waterfall and Agile process 2.
More informationAGILE METHODOLOGY IN SOFTWARE DEVELOPMENT
AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT Shivangi Shandilya, Surekha Sangwan, Ritu Yadav Dept. of Computer Science Engineering Dronacharya College Of Engineering, Gurgaon Abstract- Looking at the software
More informationComparing Agile Software Processes Based on the Software Development Project Requirements
CIMCA 2008, IAWTIC 2008, and ISE 2008 Comparing Agile Software Processes Based on the Software Development Project Requirements Malik Qasaimeh, Hossein Mehrfard, Abdelwahab Hamou-Lhadj Department of Electrical
More informationwww.testing-solutions.com TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes
www. TSG Quick Reference Guide to Agile Development & Testing Enabling Successful Business Outcomes What is Agile Development? There are various opinions on what defines agile development, but most would
More informationAgile in Financial Services A Framework in Focus
Agile in Financial Services A Framework in Focus John B. Hudson, B.Sc, PMP, CSM PMI NJ Chapter February 19, 2013 19 Feb 2013 1 Objectives 1. Agile Development an Overview 2. The Agile Enterprise Infrastructure
More informationAgile Software Development compliant to Safety Standards?
DB AG/Christian Bedeschinski www.thalesgroup.com/germany Agile Software Development compliant to Safety Standards? Christian Scholz Thales Transportation Systems 2 / Content Motivation Agile Software Development
More informationEPL603 Topics in Software Engineering
Lecture 3 Agile Software Development EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer efi.papatheocharous@cs.ucy.ac.cy Office FST-B107, Tel. ext. 2740 Topics covered Agile methods
More informationAgile Software Development
Agile Software Development Application in the Medical Device Industry Kelly Weyrauch Medtronic, Inc. (29 April 2008) Introduction Purpose Provide an introduction to Agile Software Development as it applies
More informationAGILE vs. WATERFALL METHODOLOGIES
AGILE vs. WATERFALL METHODOLOGIES Introduction Agile and waterfall are two major methodologies that software developers and project managers have the option of using. Some of the goals of developers and
More informationCS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
CS435: Introduction to Software Engineering! " " " " " " " "Dr. M. Zhu! Chapter 3! Agile Development! Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
More information3 Agile Software Development
Agile Software Development 1 3 Agile Software Development Objectives The objective of this chapter is to introduce you agile software development methods. When you have read the chapter, you will: understand
More informationContinuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited
Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation
More informationLearning and Coaching Agile Methods. Görel Hedin Computer Science Lund University, Sweden
Learning and Coaching Agile Methods Görel Hedin Computer Science Lund University, Sweden Background Two undergraduate courses at Lund University XP course (mandatory, 2nd year, around 100 students) Coaching
More informationIT4304 Rapid Software Development (Optional)
Rapid Software Development (Optional) INTRODUCTION This is one of the optional courses designed for Semester 4 of the Bachelor of Information Technology Degree program. This course on Rapid Software Development
More informationCapstone Agile Model (CAM)
Capstone Agile Model (CAM) Capstone Agile Model (CAM) Approach Everything we do within the Capstone Agile Model promotes a disciplined project leadership process that encourages frequent inspection and
More informationAgile Software Development and Service Science
Agile Software Development and Service Science How to develop IT-enabled Services in an Interdisciplinary Environment Andreas Meier Institute of Applied Information Technology (InIT) Zurich University
More informationAgile Project Management and the Real World. Emily Lynema DLF Fall 2010 November 1, 2010
Agile Project Management and the Real World Emily Lynema DLF Fall 2010 November 1, 2010 Outline Why care about project management? Traditional vs. Agile What is Agile? What is Scrum? Agile case study:
More informationApplying Agile Methods in Rapidly Changing Environments
Applying Agile Methods in Changing Environments 7/23/2002 1 Applying Agile Methods in Rapidly Changing Environments Peter Kutschera IBM Unternehmensberatung GmbH Am Fichtenberg 1, D-71803 Herrenberg Steffen
More informationComparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations
International Journal of Recent Research and Review, Vol. VI, June 2013 Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations Uma Kumari 1, Abhay Upadhyaya
More informationHow can I be agile and still satisfy the auditors?
How can I be agile and still satisfy the auditors? Welcome & Introductions Steve Ropa Steven.ropa@versionone.com Agile Coach Certified Scrum Master Certified Scrum Product Owner 19 years software development
More informationGovernments information technology
So l u t i o n s Blending Agile and Lean Thinking for More Efficient IT Development By Harry Kenworthy Agile development and Lean management can lead to more cost-effective, timely production of information
More informationSoftware Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Not this life cycle SE, Software Lifecycle, Hans van Vliet, 2008 2 Introduction software development
More informationThis handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:
AGILE HANDBOOK OVERVIEW WHAT IS THIS? This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people: Someone who is looking for a quick overview on
More informationScrum. SE Presentation. Anurag Dodeja Spring 2010
Scrum SE Presentation by Anurag Dodeja Spring 2010 What is Scrum? Scrum is an agile software development framework. Work is structured in cycles of work called sprints, iterations of work that are typically
More informationAGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä
AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä Fact corner: SME of 250 developers Mobile & desktop sw Products sold globally EXAMPLE OF AN INNOVATIVE
More informationA Viable Systems Engineering Approach. Presented by: Dick Carlson (richard.carlson2@boeing.com)
A Viable Systems Engineering Approach Presented by: Dick Carlson (richard.carlson2@boeing.com) Philip Matuzic (philip.j.matuzic@boeing.com) i i Introduction This presentation ti addresses systems engineering
More informationLean Software Development and Kanban
1 of 7 10.04.2013 21:30 Lean Software Development and Kanban Learning Objectives After completing this topic, you should be able to recognize the seven principles of lean software development identify
More informationApplying Lean on Agile Scrum Development Methodology
ISSN:2320-0790 Applying Lean on Agile Scrum Development Methodology SurendRaj Dharmapal, Dr. K. Thirunadana Sikamani Department of Computer Science, St. Peter University St. Peter s College of Engineering
More informationAgile Project Management By Mark C. Layton
Agile Project Management By Mark C. Layton Agile project management focuses on continuous improvement, scope flexibility, team input, and delivering essential quality products. Agile project management
More informationAgile processes. Extreme Programming, an agile software development process. Extreme Programming. Risk: The Basic Problem
Agile processes Extreme Programming, an agile software development process Perdita Stevens School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development
More informationSECC Agile Foundation Certificate Examination Handbook
Versions 2.0 Version Date Remarks 1.0 12/4/2012 Initial version 2.0 3/8/2008 REVISION HISTORY Updated knowledge areas Added questions examples Updated suggested readings section Page 2 of 15 Version 2.0
More informationSoftware Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process
More informationWhen is Agile the Best Project Management Method? Lana Tylka
When is Agile the Best Project Management Method? Lana Tylka Staged Incremental Deliveries Prototypes Plan Develop Design Deploy Test Maintain Sequential Steps Multiple Iterations Waterfall Sprints, Spirals
More informationUsing Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca
Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC
More informationAgile Project Management with Scrum
Agile Project Management with Scrum Resource links http://www.agilealliance.org/ http://www.agilemanifesto.org/ http://www.scrum-master.com/ 1 Manifesto for Agile Software Development Individuals and interactions
More informationAgile Beyond The Team 1
Agile Beyond The Team 1 Dilbert Agile 2 What Does Your Organization Value? Projects over Teams? Do new teams spools up for new projects? On-Time/On-Budget Delivery over Zero Maintenance Products Deliver
More informationSoftware Development Process
Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software
More informationA Capability Maturity Model (CMM)
Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability
More information4/4/2013. Copyright 2013, Robert Ward
Challenges In Scaling Scrum Robert Ward 3 April 2013 The Agile Manifesto In Context The Manifesto is mostly heuristics, not mandates and not first principles. It aimed to legitimize resistance to conventional
More informationAgile processes. Extreme Programming, an agile software development process
Agile processes Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development
More informationSoftware Engineering I (02161)
Software Engineering I (02161) Week 8 Assoc. Prof. Hubert Baumeister DTU Compute Technical University of Denmark Spring 2015 Last Week State machines Layered Architecture: GUI Layered Architecture: Persistency
More informationTesting in Agile methodologies easier or more difficult?
Testing in Agile methodologies easier or more difficult? Lucjan Stapp Warsaw University of Technology Stowarzyszenie Jakości Systemów Informatycznych L.Stapp@mini.pw.edu.pl L.Stapp@sjsi.org Professor in
More informationAgile Processes and Methodologies: A Conceptual Study
Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida Sheetal.meenu@gmail.com Darothi Sarkar Amity School of Engineering &
More informationDigital Transformation of the Enterprise for SMAC: Can Scrum help?
Digital Transformation of the Enterprise for SMAC: Can Scrum help? Scope of this Report October 2015 In this paper, we consider the impact of the digital transformation on software development and whether
More informationAgile project management: A magic bullet?
Agile project management: A magic bullet? Prof. Darren Dalcher d.dalcher@mdx.ac.uk Conferencia Iberoamericana de Calidad del Software Prof. Darren Dalcher 1 Outline I. What is agilility? The agile manifesto
More informationTaking the first step to agile digital services
Taking the first step to agile digital services Digital Delivered. Now for Tomorrow. 0207 602 6000 mbailey@caci.co.uk @CACI_Cloud 2 1. Background & Summary The Government s Digital by Default agenda has
More informationAgile Software Development with Scrum. Jeff Sutherland Gabrielle Benefield
Agile Software Development with Scrum Jeff Sutherland Gabrielle Benefield Agenda Introduction Overview of Methodologies Exercise; empirical learning Agile Manifesto Agile Values History of Scrum Exercise:
More informationAgile & Scrum: What are these methodologies and how will they impact QA/testing roles? Marina Gil Santamaria Summer 2007
Agile & Scrum: What are these methodologies and how will they impact QA/testing roles? Marina Gil Santamaria Summer 2007 The idea behind the Agile approach is that instead of building a release that is
More informationAgile Models. Software Engineering 2004-2005. Marco Scotto (Marco.Scotto@unibz.it) Software Engineering
Agile Models 2004-2005 Marco Scotto (Marco.Scotto@unibz.it) Content Introduction Tame projects & wicked projects Win-Win Spiral software development model XP software development process Enforcing the
More informationWhen User Experience Met Agile: A Case Study
When User Experience Met Agile: A Case Study Michael Budwig User Experience Manager PayPal 2211 North 1 st Street, San Jose, California 95131 USA mbudwig@paypal.com Soojin Jeong Manager, User Interface
More informationQuality Assurance in an Agile Environment
Quality Assurance in an Agile Environment 1 Discussion Topic The Agile Movement Transition of QA practice and methods to Agile from Traditional Scrum and QA Recap Open Discussion www.emids.com 2 What is
More informationChapter 6. Iteration 0: Preparing for the First Iteration
Chapter 6. Iteration 0: Preparing for the First Iteration People only see what they are prepared to see. Ralph Waldo Emerson There are no secrets to success. It is the result of preparation, hard work,
More informationWHAT MAKES AGILE DEVELOPMENT DIFFERENT?: A CASE STUDY OF
WHAT MAKES AGILE DEVELOPMENT DIFFERENT?: A CASE STUDY OF AGILE IN PRACTICE. Lewis Chasalow Virginia Commonwealth University chasalowlc@vcu.edu ABSTRACT Agile development methods have been described by
More informationAgileSoftwareDevelopmentandTestingApproachandChallengesinAdvancedDistributedSystems
Global Journal of Computer Science and Technology: B Cloud and Distributed Volume 14 Issue 1 Version 1.0 Year 2014 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global Journals
More informationAn Ideal Process Model for Agile Methods
An Ideal Process Model for Agile Methods Marcello Visconti 1 and Curtis R. Cook 2 1 Departamento de Informática, Universidad Técnica Federico Santa María, Valparaíso, CHILE visconti@inf.utfsm.cl 2 Computer
More informationSAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL
SAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL 1 Safety Panel when 26262 will be issued, enforced? What about 61508? by whom, which authorities? who and how will verify conformance?
More informationCourse intro, Overview Agile Processes & Philosophy. Lecture 1, EDA397/DIT191, Agile Dev Processes Robert Feldt, 2012-03-12
Course intro, Overview Agile Processes & Philosophy Lecture 1, EDA397/DIT191, Agile Dev Processes Robert Feldt, 2012-03-12 What is Agile Development Processes? [Dictionary.com 2011] Agile Dev Processes
More informationSoftware Development with Agile Methods
Case Study Software Development with Agile Methods Introduction: Web application development is a much studied, heavily practiced activity. That is, capturing and validating user requirements, estimating
More informationXP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories
XP & Scrum Beatrice Åkerblom beatrice@dsv.su.se extreme Programming XP Roles XP Roles, cont!d! Customer ~ Writes User Stories and specifies Functional Tests ~ Sets priorities, explains stories ~ May or
More informationControlling Change on Agile Software Development Projects
Universal Journal of Management 4(1): 42-49, 2016 DOI: 10.13189/ujm.2016.040106 http://www.hrpub.org Controlling Change on Agile Software Development Projects Andrew L Ecuyer 1, Syed Adeel Ahmed 2,* 1
More informationAn Agile Project Management Model
Agile Project Management Jim Highsmith Chapter 5 An Agile Project Management Model We improve effectiveness and reliability through situationally specific strategies, processes, and practices. One of the
More informationBottlenecks in Agile Software Development Identified Using Theory of Constraints (TOC) Principles
Master thesis in Applied Information Technology REPORT NO. 2008:014 ISSN: 1651-4769 Department of Applied Information Technology or Department of Computer Science Bottlenecks in Agile Software Development
More informationIntroduction to Agile Software Development Process. Software Development Life Cycles
Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative
More informationAgile QA s Revolutionary Impact on Project Management
Agile QA s Revolutionary Impact on Project Management Introduction & Agenda Rachele Maurer Agile Coach, Platinum Edge Inc. PMP, CSM, PMI-ACP Agenda A quick overview of agile Current QA practices QA using
More informationPROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL
PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL Sanja Vukićević 1, Dražen Drašković 2 1 Faculty of Organizational Sciences, University of Belgrade, vukicevicsanja@yahoo.com 2 Faculty
More informationAgile Project Management
Agile Project Management Projekt-Kick-Off-Tage Hochschule Augsburg Martin Wagner, 15. März 2011 TNG Technology Consulting GmbH, http://www.tngtech.com Agile project management with Scrum Agenda Software
More informationAGILE & SCRUM. Revised 9/29/2015
AGILE & SCRUM Revised 9/29/2015 This Page Intentionally Left Blank Table of Contents Scrum Fundamentals Certified Course... 1 Scrum Developer Certified (SDC)... 2 Scrum Master Certified (SMC)... 3 Scrum
More informationThe Agile Manifesto is based on 12 principles:
The Agile Manifesto is based on 12 principles: Customer satisfaction by rapid delivery of a useful product solution Welcome changing requirements, even late in development Working products are delivered
More informationSoftware Engineering
1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software
More informationWhitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan
YOUR SUCCESS IS OUR FOCUS Whitepaper Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan 2009 Hexaware Technologies. All rights reserved. Table of Contents 1. Introduction 2. Subject Clarity 3. Agile
More informationLife Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering
Life Cycle Models V. Paúl Pauca Department of Computer Science Wake Forest University CSC 331-631 Fall 2013 Software Life Cycle The overall framework in which software is conceived, developed, and maintained.
More information