Agile Project Management
|
|
|
- Jason Garrett
- 9 years ago
- Views:
Transcription
1 Boehm Page 1 Raymond E Boehm Software Composition Technologies Abstract- This presentation will educate measurement professionals to the real issues surrounding agile development. It gives an overview of what agile development entails and how it is different from traditional development. The reasons for measurement are presented. Story points are described. The possibility of using function points along with or instead of story points is discussed. Use case points are explained. Introduction Various forms of agile software development, such as extreme Programming (XP) and Scrum, are starting to be used by corporate America. In many cases, these developers are refusing to cooperate with the measurement professionals already working in these corporations. They will claim that agile does not lend itself to measurement in general and to function point analysis in particular. The real issues surrounding agile development are presented here. The presentation gives an overview of what agile development entails and how it is different than traditional development. The concentration will be on the measurement aspects of agile. In agile development, requirements are usually captured as stories. The first measurement that agile utilizes is story points. Story points will be described. They are not functional measures like function points. The possibility of using function points along with or instead of story points will be discussed. In agile development, story cards must be decomposed into tasks. There has been dissatisfaction in the agile community with using function points to size these tasks. This is understandable. Many tasks are implementation activities that do not lend themselves to function point analysis. A measurement technique called use case points has gotten some attention in the agile community. This technique will be explained. Understanding Agile Development Agile development is actually an umbrella term to describe a number of different development methodologies. These include extreme Programming (XP), Adaptive Software Development (ASD), Crystal, Scrum and others. They all subscribe to the values and principles that can be found at Barry Boehm and Richard Turner have written a book describing agile practices and contrasting them to traditional planned development.[1] They describe the differences by comparing them with respect to the following four characteristics: 1. Application Agile applications are usually highly changeable, both during and after development. Agile teams and projects also tend to be smaller than those for traditional applications. 2. Management In agile development, the customer becomes part of the development team. Plans are less documented. Communication in general becomes more personal and less documented. 3. Technical In agile development, requirements are captured in informal user stories, instead of formal requirements documents. Agile development is done in short increments, with frequent releases of software to the user community. In agile, user acceptance testing is captured in executable test cases, as opposed to voluminous test cases and plans. 4. Personnel The collocation of customers is usually an agile requirement. Agile developers tend to be highly capable generalists. Traditional teams often use specialists for functions like testing. These people often are unable to assume a development role. The agile team thrives on chaos; traditional teams, on order. The remainder of this article will focus on the planning of iterations and releases. Iterations are often two week development cycles designed to implement some user stories. Releases typically take between one month and one year. They implement a usable subset of the application being developed. Measurement in the Agile World The first measures that come into play are associated with user stories and releases. Which stories are necessary to have a usable application? This is a release. A release typically takes between a month and a year. How big is the release in terms of ideal programming time or story points?
2 Boehm Page 2 Agile development projects are organized into iterations. Iterations are short periods of development where several stories are implemented. Two weeks is a typical iteration period. Iterations have to be planned in some detail. The stories are usually decomposed into tasks. These tasks are estimated and usually assigned to a developer or two. The estimation is usually in terms of ideal programming time. However, other measures, such as use case points, have been suggested. The calendar time for the iterations is normally fixed. If progress is slower than anticipated, then some of the lower priority stories are dropped from the iteration and moved to the next iteration. If the team implements more quickly than anticipated, then stories are added. While agile developers are often informal in their planning, they are usually obsessive in their tracking. The amount of ideal programming time, story points or use case points is carefully tracked during all of the iterations. This is referred to the velocity of the iteration. The planning of releases and iterations is depicted on the burn down chart in (Figure 1). It shows the number of story points that are remaining in the release after all of the iterations. The first two iterations are actual, and the rest are predicted. It is taken from a draft of Mike Cohn s upcoming book on agile estimating and planning.[2] Figure 1. Burndown Chart The initial estimates are necessary to plan the entire release, choose the appropriate size team and set customer expectations regarding the delivery of the release. The ongoing measurement resets velocity to keep the team operating at maximum efficiency. It also allows the team to communicate the impact of any changes in productivity or user requirements. Ideal Time According to Kent Beck, ideal programming time is the measure where you ask yourself, How long would this take without distractions and disasters? [3] Is it a distraction when your customer calls to discuss a clarification to the requirements? Is a corporate reorganization a disaster, or simply another day in paradise? To many of us, this measure is reminiscent of lines of code. It seems like it should be intuitive and unambiguous. Unfortunately, as in the case of source lines of code, ideal time is neither. In addition, ideal time may be hazardous to your health. Your management will tell you that a professional should be able to avoid distractions. Competent management will avert any disasters. Any gap that exists between ideal time and actual time can be closed with a little unpaid overtime! Despite the problems, ideal time is used by many teams. Sometimes it will be used to estimate the time to implement a story. It is still the most common way to estimate task completion time. Like source lines of code, the measure will probably be used for a long time to come. Story Points In agile development, requirements are usually captured as stories. Mike Cohn wrote an entire book about writing user stories.[4] It mentions story points. He has a newer book that goes into more detail regarding the assignment of story points to user stories.[2] According to Cohn, each story is given a story point value by the rest of the team. The points show relative expected effort to implement the story. For example, if the first story has a value of two story points and the next story is expected to take twice the amount of effort to implement, then the second story will be assigned four story points. Members of the team start by agreeing on a point value for a medium story and then assign story points to the other stories relative to that one. Not all numbers are valid story point values, Cohn goes on to specify. Trying to decide whether a story was 10 or 11 points would imply more precision than the process is actually capable of. Instead, the possible values are 0 (for extremely small stories), 1, 2, 3, 5, 8, 13, 20, 40 and 100. Assigning story points are a well accepted technique. A team using XP to develop an application for Credit Suisse Italy reported that using story points was one of the two techniques that allowed the team to stay focused. [5] (An environment that minimized distractions was the other.) Fred Grossman, et al., reported that they used story points and found that it was important to make
3 Boehm Page 3 them abstract units instead of coupling them to ideal developer days.[6] Story points are neither standard nor repeatable. The number of story points for a particular story may vary with the project and the project team. For example, Mike Cohn gives an example of the following story card in his case study: As a player, I can restore a saved game. [2] The imaginary team awards this 2 story points. If that same story comes up in another project, it might very well have a different number of story points. This is completely consistent with the story point technique. Function Points The International Function Point Users Group (IFPUG) has long taught a course, FP-211, titled Estimating Project Size Early in the Life Cycle. Using these techniques, it is possible to estimate the function point count from the story cards. However, the question is whether these function point counts represent implementation effort as well as the story points. Many practitioners feel they do not. The function point counts do not fully take the complexity of the transactions into account. Likewise, they do not assess the team s capability to implement a particular story. For example, if the team had just built the capability to accept an American Express payment, accepting Visa might be much easier, but have the same number of function points. However, the standard nature of function points may make there use unavoidable. Development in an outsourced environment may have a contractual obligation to report function point counts. Organizations with commitments to CMMI or other process improvement programs may require the collection of standard measurements. Function point counts are standard and repeatable. By definition, story points are not. IFPUG has another course, FP-370, titled Counting Object Oriented Applications and Projects. It shows how to generate function point counts from use cases. There has also been work done to generate a more automated count from Unified Modeling Language.[7] A number of studies have shown that estimating small projects in this manner gives satisfactory results; but, there is concern that applying function point analysis to large use case based projects will not be.[8] The IFPUG function point is probably the most commonly used of the function point measures. A newer, and less popular, form is the Full Function Point (FFP). Mk II is yet another definition of function points that is commonly used in the UK. At this point, agile practitioners who are aware of the difference seem to view all of them with equal distain. Use Case Points About 20 years after Alan Albrecht introduced the notion of function points, Gustav Karner described a measure called use case points. It, too, was intended to be an estimating technique. Use case points were strongly influenced by the work of Ivar Jacobson and other object oriented methodologists.[9] The technique is primarily driven by the actors and use cases identified for the application. Following the steps under Actor Weight and Use Case Weight, below, will yield unadjusted weights for both. Adding these weights together will yield the number of unadjusted use case points. The unadjusted use case points are multiplied by technical and environmental weights. This yields the total number of use case points. The significance and method of establishing these weights is described below, under Technical Complexity and Environmental Complexity,. There is a tool that automatically calculates the use case points from descriptions of the actors and use cases.[10] The tool does not always match the value arrived at by human experts. In addition, the use cases must be written in Japanese. There are other tools that require the user to evaluate the complexity but that automate the calculations. In any case, the existence of these tools is an indication of the level of interest that exists regarding this technique. Like function points, use case points were originally developed for estimating. Originally, a use case point was thought to take 30 hours to implement. Later studies have changed this number or made it a function of additional cost drivers. Benta Anda has conducted several studies comparing the accuracy of use case point based estimates with actual results and with estimates generated by experts.[11] The use case point based estimates were fairly close to the actual development effort. They were usually closer than the estimates presented by the experts. Use case points can also be used like story points in an agile environment. In practice, the unadjusted use case weight is often used to measure work. The technical and environmental complexities can be ignored because they end up reflected in the velocity of the iteration. Ignoring the actor weight is a practical matter. When would credit for the actor weight be awarded, when it was first encountered, pro rated over the application implementation or when the last use case interacting with the actor is implemented? The first and last possibility would overstate impact for that particular iteration. Pro rating would probably be more work than it is worth.
4 Boehm Page 4 Actor Weight Use the following criteria to assign a complexity and weight to each of the actors: A simple actor might be another application that accesses this application through an API. Its weight is 5. An average actor might be a user accessing the application through a text-based user interface. Its weight is 10. A complex actor might access the application through a graphical user interface. Its weight is 15. These weights are summed to arrive at the unadjusted actor weight. Use Case Weight Evaluating the use cases requires a fair amount of knowledge about use cases. A course on use cases is beyond the scope of this article. However, the calculation of use case weight will be described for those who are interested. Each use case consists of one or more transactions. Each step in the main success scenario is a transaction. Some extensions are also transactions; those that are a continuation of another transaction are not counted. Use (Table 1) to assign weights to each use case based on their complexity. The complexity is established by the number of transactions. Sum the weights to arrive at the unadjusted use case weight. Table 2. Technical Complexity Factor Desription Weight T1 Distributed system 2 T2 Performance objectives 2 T3 End-user efficiency 1 T4 Complex processing 1 T5 Resuable code 1 T6 Easy to install 0.5 T7 Easy to use 0.5 T8 Portable 2 T9 Easy to change 1 T10 Concurrent use 1 T11 Security 1 T12 Access for third parties 1 T13 Training needs 1 Environmental Complexity The team that performs the implementation obviously has an impact on the cost. For example, an application development team that is familiar with the development process would be able to perform that implementation more quickly. The environmental complexity factor accounts for this. Take each of the attributes in (Table 3) and assign a value between 0 (not the case) and 5 (very much the case). Multiply that value by the weight and sum up the values. Multiply the sum by -.03 and add 1.4 to get the environmental complexity factor. Table 1. Use Case Weights Number of Complexity transactions Weight Simple 3 or less 1 Average 4 to 7 2 Complex 7 or more 3 Technical Complexity The way that use cases are implemented have an impact on the cost, and therefore on the use case points. For example, an application that is designed to be portable between several different platforms will probably take longer to develop than one that only works on one platform. This would be the case even though the actors and use cases were exactly the same. Take each of the attributes in (Table 2) and assign a value between 0 (for no impact) and 5 (for very high impact). Multiply that value by the weight and sum up the values. Multiply the sum by.01 and add.6 to get the technical complexity factor. Table 3. Environmental Complexity Factor Desription Weight E1 Familiar with the development process 1.5 E2 Application experience 0.5 E3 Object-oriented experience 1 E4 Lead analyst capability 0.5 E5 Motivation 1 E6 Stable requirements 2 E7 Part-time staff -1 E8 Difficult programming language -1 Conclusion While agile developers pride themselves on informal project planning, they nonetheless make use of a number of measures to estimate and plan iterations and releases. The main measures include: Story Points are used in one form or another by virtually all agile practitioners. Ideal Time is sometimes used to estimate user stories and usually used to estimate the tasks in iterations. Function Points are not in favor by the agile community. However, many organizations
5 Boehm Page 5 have process improvement or outsourcer governance needs that make the use of function points necessary. Use Case Points are the subject of a fair amount of interest in the agile community, especially those using use cases as part of their development process. As agile development continues to move into the mainstream of IT, there may be some changes. Agile projects may get larger. Organizations may require that they be measured in traditional ways. In any case, more research is necessary to find the proper mix of measures. References [1] B. Boehm and R. Turner, Balancing Agility and Discipline: A Guide for the Perplexed. Boston: Addison-Wesley, [2] M. Cohn, Agile Estimating and Planning: Addison-Wesley, [3] K. Beck, Extreme Programming Explained: Embrace Change. Boston: Addison-Wesley, [4] M. Cohn, User Stories Applied: For Agile Software Development. Boston: Addison- Wesley, [5] P. Bossi, "extreme Programming applied: a case in the private banking domain," presented at OOP2003, Munich, [6] F. Grossman, J. Bergin, D. Leip, S. Merritt, and O. Gotel, "One XP experience: introducing agile (XP) software development into a culture that is willing but not ready," presented at The Conference of the Centre for Advanced Studies on Collaborative Research, Markham, Ontario, Canada, [7] G. Cantone and D. Pace, "Applying Function Point to Unified Modeling Language: Conversion Model and Pilot Study," presented at 10th International Symposium on Software Metrics, Chicago, Illinois, [8] K. Vinsen, D. Jamieson, and G. Callender, "Use Case Estimation - The Devil is in the Detail," presented at 12th IEEE International Requirements Engineering Conference, Kyoto, Japan, [9] I. Jocobson, M. Christerson, P. Jonsson, and G. Overgaard, Object-Oriented Software Engineering: A Use Case Driven Approach. Wokingham, England: Addison-Wesley, [10] S. Kusumoto, F. Matukawa, K. Inoue, S. Hanabusa, and Y. Maegawa, "Estimating Effort by Use Case Points: Method, Tool and Case Study," presented at 10th International Symbosium on Software Metrics, Chicago, Illinois, [11] B. Anda, "Empirical Studies of Construction and Application of Use Case Models," in Department of Informatics: University of Oslo, About the Author Raymond Boehm is Software Composition Technologies s principal consultant. He is an IFPUG CFPS, a QAI CSQA and a member of the ACM and the IEEE. Contact him at [email protected].
Software Composition Technologies Helping People Gain Control of Software Development
Software Composition Technologies Helping People Gain Control of Software Development Agile Project Management Raymond Boehm 19 Homer Place, Metuchen, NJ 08840-2006 Voice: 732.906.3671 Fax: 732.906.5728
Agile Estimating: My DPS Dissertation
Agile Estimating: My DPS Dissertation Raymond Boehm New York City SPIN Meeting October 11, 2006 Presentation Outline o Agility o Estimation Estimating Software Size Estimating Effort and Schedule o Estimating
Using Story Points to Estimate Software Development Projects in the Commercial Phase
Using Story Points to Estimate Software Development Projects in the Commercial Phase Accurately estimating a software development project s total effort is an essential step to providing your customer
Introduction to Software Engineering: Overview and Methodologies
Introduction to Software Engineering: Overview and Methodologies John T. Bell Department of Computer Science University of Illinois, Chicago Based on materials from Bruegge & DuToit, Object Oriented Software
Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014
Scrum, User Stories, and More! CSCI 5828: Foundations of Software Engineering Lecture 22 11/06/2014 1 Goals Cover Material from our User Stories Book Chapter 15: Using Stories With Scrum Chapter 16: Additional
Comparing 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
Akhil Kumar 1, Bindu Goel 2
Factors Influencing Agile Practices: A Survey Akhil Kumar 1, Bindu Goel 2 1 (University School of Information Technology, GGS Indraprastha University, New Delhi-110075) 2 (University School of Information
Neglecting Agile Principles and Practices: A Case Study
Neglecting Agile Principles and Practices: A Case Study Patrícia Vilain Departament de Informatics and Statistics (INE) Federal University of Santa Catarina Florianópolis, Brazil [email protected] Alexandre
Software 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
EPL603 Topics in Software Engineering
Lecture 3 Agile Software Development EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer [email protected] Office FST-B107, Tel. ext. 2740 Topics covered Agile methods
How to Estimate Software Size and Effort in Iterative Development 1 Aleš Živkovič, Marjan Heričko
How to Software Size and Effort in Iterative Development 1 Aleš Živkovič, Marjan Heričko University of Maribor, Faculty of Electrical Engineering and Computer Science, Smetanova 17, SI-2000 Maribor, Slovenia
AGILE SOFTWARE DEVELOPMENT
AGILE SOFTWARE DEVELOPMENT Michael Novikov and Nicolas Heuser May 23, 2006 1 Contents 1 THE TIME BEFORE AGILE SOFTWARE DEVELOPMENT 3 2 ADAPTIVE VERSUS PREDICTIVE SOFTWARE DEVELOPMENT 3 3 WHAT IS AGILITY?
Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1
Rapid software development Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Objectives To explain how an iterative, incremental development process leads to faster delivery of
Web Applications Development and Software Process Improvement in Small Software Firms: a Review
Web Applications Development and Software Process Improvement in Small Software Firms: a Review Haroon Tarawneh Al-balqa Applied University [email protected] Sattam Allahawiah Al-balqa Applied University
TOGAF usage in outsourcing of software development
Acta Informatica Pragensia 2(2), 2013, 68 76, DOI: 10.18267/j.aip.25 Section: Online: aip.vse.cz Peer-reviewed papers TOGAF usage in outsourcing of software development Aziz Ahmad Rais 1, Rudolf Pecinovsky
Rapid Software Development
Software Engineering Rapid Software Development Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain how an iterative, incremental development process leads to faster delivery
International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research)
International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) International Journal of Engineering, Business and Enterprise
As the use of agile approaches
What Does a Business Analyst Do on an Agile Project? By Kent J. McDonald Senior Instructor, B2T Training As the use of agile approaches increases, business analysts struggle to determine how their role
Agile 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
Agile and the Seven Deadly Sins of Project Management
Agile and the Seven Deadly Sins of Project Management Mike Cohn February 15, 2011 Mike Cohn - background A cornucopia of agile processes Agile Processes Extreme Programming (XP) Scrum Crystal DSDM Lean
MANAGING CRITICAL KNOWLEDGE MANAGEMENT ISSUES IN GLOBAL SOFTWARE DEVELOPMENT PROJECTS
MANAGING CRITICAL KNOWLEDGE MANAGEMENT ISSUES IN GLOBAL SOFTWARE DEVELOPMENT PROJECTS Che-Hung Liu, Florida International University, [email protected] Roman Wong, Barry University, [email protected] Yen-Tzu
AGILE 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
PROCESS 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, [email protected] 2 Faculty
Agile 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
Estimating Work with Use Cases. Estimating Work with Use Cases. We need to forecast. Use Case Point Estimator. We need to quantify
Desarrollo de Software con UML Estimating Work with Use Cases Estimating Work with Use Cases We need to forecast How long it will take to develop the and How many people will be needed to do it How long
The Oregon Software Development Process
The Oregon Software Development Process Till Schümmer 1 and Robert Slagter 2 1 Computer Science Department, FernUniversität in Hagen, Universitätsstrasse 1, 58084 Hagen, Germany [email protected]
AGILE 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
Agile-Fall Process Flow Model A Right Candidate for Implementation in Software Development and Testing Processes for Software Organizations
www.ijcsi.org 457 Agile-Fall Process Flow Model A Right Candidate for Implementation in Software Development and Testing Processes for Software Organizations Prakash.V SenthilAnand.N Bhavani.R Assistant
Xtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda
Xtreme RUP by Ne t BJECTIVES Lightening Up the Rational Unified Process 2/9/2001 Copyright 2001 Net Objectives 1 RUP Overview Agenda Typical RUP Challenges Xtreme Programming Paradigm Document driven or
Certified Scrum Master Workshop
Learn, understand, and execute on the three overarching principles behind Scrum: iterative development, selfmanagement, and visibility. Even projects that have solid, well-defined project plans encounter
Automated Function Points in a Continuous Integration Environment (Agile AFP)
3 International Conference on IT Data collection, Analysis and Benchmarking Florence (Italy) - October 19, 2015 Automated Function Points in a Continuous Integration Environment (Agile AFP) The Benefits
The IFPUG Counting Practices On-Going Effort in Sizing Functional Requirements. Janet Russac
The IFPUG Counting Practices On-Going Effort in Sizing Functional Requirements Janet Russac 2009 IFPUG s method for function point analysis is an ISO standard and must be conformant to ISO/IEC 14143-1:2007.
How To Write A Book On The History Of Universtiy
88888 UCD in Agile Projects: Dream Team or Odd Couple? Paul McInerney > IBM Toronto Lab > [email protected] Frank Maurer > University of Calgary > [email protected] IMAGINE INTERVIEWING for the
Introduction to Software Engineering: Project Management ( Highlights )
Introduction to Software Engineering: Project Management ( Highlights ) John T. Bell Department of Computer Science University of Illinois, Chicago Based on materials from chapters 14, 15, and 16 of Object
There are 3 main activities during each Scrum sprint: A planning meeting where: the Product Owner prioritizes user stories in the product backlog
There are 3 main activities during each Scrum sprint: A planning meeting where: the Product Owner prioritizes user stories in the product backlog that need to be implemented during the sprint the Team
Comparative 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
SOFTWARE ESTIMATING RULES OF THUMB. Version 1 - April 6, 1997 Version 2 June 13, 2003 Version 3 March 20, 2007
SOFTWARE ESTIMATING RULES OF THUMB Version 1 - April 6, 1997 Version 2 June 13, 2003 Version 3 March 20, 2007 Abstract Accurate software estimating is too difficult for simple rules of thumb. Yet in spite
Agile Software Development
E Learning Volume 5 Number 1 2008 www.wwwords.co.uk/elea Agile Software Development SOLY MATHEW BIJU University of Wollongong in Dubai, United Arab Emirates ABSTRACT Many software development firms are
Introduction to Agile Software Development
Introduction to Agile Software Development Word Association Write down the first word or phrase that pops in your head when you hear: Extreme Programming (XP) Team (or Personal) Software Process (TSP/PSP)
Stride Methodology Lean Agile Development in a Dual Dual-Shore Environment Yash Talreja HethaTech
Stride Methodology Lean Agile Development in a Dual Dual-Shore Environment Yash Talreja HethaTech Dual-shore development introduces new challenges to any process. Especially when the offshore team is a
The 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
Build your Project using Extreme Programming #2 of a Series, by Pavan Kumar Gorakavi, M.S., M.B.A, G.M.C.P, C.A.P.M.
Build your Project using Extreme Programming #2 of a Series, by Pavan Kumar Gorakavi, M.S., M.B.A, G.M.C.P, C.A.P.M. 1. What is Extreme Programming? Extreme Programming is a software development methodology
A Review of Agile Software Development Methodologies
A Review of Agile Software Development Methodologies Shama.P.S Department of Computer Science & Engineering CENTRAL UNIVERSITY OF KARNATAKA, Kalaburagi 585367, India Shivamanth A Applied Mechanics Department
Certified ScrumMaster Workshop
Certified ScrumMaster Workshop Learn, understand, and execute on the three overarching principles behind Scrum: iterative development, self-management, and visibility. Even projects that have solid, well-defined
CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE
CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE Zahra Askarinejad Amiri 1 1 Department of Computer Engineering, Staffordshire University ABSTRACT [email protected] As Information
Mature Agile with a twist of CMMI
Mature Agile with a twist of CMMI Carsten Ruseng Jakobsen Systematic Software Engineering [email protected] Kent Aaron Johnson AgileDigm, Incorporated [email protected] Abstract Systematic is
Extreme Programming. As software organizations continue to move
Spotlight Extreme Programming Rapid Development for Web-Based Applications Frank Maurer and Sebastien Martel University of Calgary As software organizations continue to move toward Web-based systems development,
What CMMI Cannot Give You: Good Software
What CMMI Cannot Give You: Good Software Ivar Jacobson [email protected] [email protected] Objective To understand what CMM/CMMI is and what it is not To demonstrate how the unified process helps you
Agile 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. [email protected] (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission
What is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
Scrum vs. Kanban vs. Scrumban
Scrum vs. Kanban vs. Scrumban Prelude As Agile methodologies are becoming more popular, more companies try to adapt them. The most popular of them are Scrum and Kanban while Scrumban is mixed guideline
Keywords document, agile documentation, documentation, Techno functional expert, Team Collaboration, document selection;
Volume 4, Issue 4, April 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com A Document Driven
Development. 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
LEAN AGILE POCKET GUIDE
SATORI CONSULTING LEAN AGILE POCKET GUIDE Software Product Development Methodology Reference Guide PURPOSE This pocket guide serves as a reference to a family of lean agile software development methodologies
BCS Foundation Certificate in Agile Syllabus
BCS Foundation Certificate in Agile Syllabus Version 1.5 March 2015 Change History Any changes made to the syllabus shall be clearly documented with a change history log. This shall include the latest
Using Use Cases on Agile Projects
Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use
SOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
Basic 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
Metrics and scope management in agile projects
Metrics and scope management in agile projects Marcel Pereboom, Mediaan April 2009 Just Software Motivation The Sydney opera house Development? Misunderstanding the requirements Not managing change properly
Function Point Measurement from Java Programs
Function Point Measurement from Java Programs Shinji Kusumoto, Masahiro Imagawa, Katsuro Inoue Graduate School of Engineering Science Osaka University Toyonaka, Osaka, Japan {kusumoto, imagawa, inoue}@icsesosaka-uacjp
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
On Software Architecture, Agile Development, Value and Cost
T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A On Software Architecture, Agile Development, Value and Cost Philippe Kruchten SATURN Pittsburgh, April-May 2008 1 Copyright 2008 by Philippe
Success Factors of Agile Software Development
Success Factors of Agile Software Development Subhas C. Misra, Vinod Kumar, and Uma Kumar Carleton University, Ottawa, Canada Abstract Agile software development methodologies have recently gained widespread
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
INCORPORATING VITAL FACTORS IN AGILE ESTIMATION THROUGH ALGORITHMIC METHOD
International Journal of Computer Science and Applications, 2009 Technomathematics Research Foundation Vol. 6, No. 1, pp. 85 97 INCORPORATING VITAL FACTORS IN AGILE ESTIMATION THROUGH ALGORITHMIC METHOD
Generalizing Agile Software Development Life Cycle
Generalizing Agile Software Development Life Cycle S. Bhalerao 1, D. Puntambekar 2 Master of Computer Applications Acropolis Institute of Technology and research Indore, India 1 [email protected],
Project Management. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies
A Fresh Graduate s Guide to Software Development Tools and Technologies Chapter 5 Project Management CHAPTER AUTHORS Chen Minchao Daniel Mohd Shahab Nguyen Viet Thinh Software Development Tools and Technologies
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]
How 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
Course Title: Planning and Managing Agile Projects
Course Title: Planning and Managing Agile Projects Course ID: BA15 Credits: 21 PDUs Course Duration: 3 days (Live in person class only) Course Level: Basic/Intermediate Course Description: This 3-day course
Software Development Life Cycle Models - Process Models. Week 2, Session 1
Software Development Life Cycle Models - Process Models Week 2, Session 1 PROCESS MODELS Many life cycle models have been proposed } Traditional Models (plan-driven) } Classical waterfall model } Iterative
Introduction 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
Software Development Process Selection Approaches
The Journal of Applied Science Vol. 11 No. Vol. 2:45-50 11 No. 2 [2012] ISSN 1513-7805 Printed in Thailand Review Article Software Development Process Selection Approaches Phongphan Danphitsanuphan Department
The 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
Agile Processes and Methodologies: A Conceptual Study
Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida [email protected] Darothi Sarkar Amity School of Engineering &
MANAGEMENT S ROLE 1/16/2002 152. Copyright 2001, Net Objectives
MANAGEMENT S ROLE 1/16/2002 152 Continuous Overtime Is Counterproductive Working more hours does not increase productivity Overwork is usually an indication of something wrong - working more doesn t fix
Chapter 8 Approaches to System Development
Systems Analysis and Design in a Changing World, sixth edition 8-1 Chapter 8 Approaches to System Development Table of Contents Chapter Overview Learning Objectives Notes on Opening Case and EOC Cases
An Approach for Using CMMI in Agile Software Development Assessments: Experiences from Three Case Studies
Copyright: Accepted for SPICE 2006 conference, that will be in Luxemburg at 4 5 th at May 2006. An Approach for Using CMMI in Agile Software Development Assessments: Experiences from Three Case Studies
Agile Testing and Extreme Programming
Agile Testing and Extreme Programming [email protected] www.pettichord.com March 2003 Copyright 2003 Bret Pettichord. All rights reserved. The Agile Alliance Values We have come to value: Individuals
Are Management Basics Affected When Using Agile Methods?
Are Management Basics Affected When Using Agile Methods? Paul E. McMahon PEM Systems Just how different is project management when using agile methods? The purpose of this article is to help readers understand
Agile Contracts: Building Trust. Ewan Milne [email protected]
Agile Contracts: Building Trust Ewan Milne [email protected] Contracts: a necessary evil? We are uncovering better ways of developing software by doing it and helping others do it. Through this work we
PMBOK? You Can Have Both! June 10, 2009. Presented by: www.esi-intl.com
Agile or the PMBOK? You Can Have Both! June 10, 2009 Presented by: David M. Sides, Vice President, ESI Consulting Services www.esi-intl.com Agenda June 10, 2009 Pic? Agile Framework Agile Truths & Myths
Testing in an Agile Environment
Testing in an Agile Environment Marie Walsh [email protected] http://www.linkedin.com/in/mariewalsh In this presentation, Marie will share her experiences working in agile teams across multiple projects
