EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development"

Transcription

1 EMC PERSPECTIVE Adopting an Agile Approach to OSS/BSS Development

2 Reader ROI The agile software methodology is different from the traditional approach in that requirements gathering and analysis, design, and construction have overlaps and developers are willing to accommodate requirements and, hence, designs that keep evolving. The agile way of development recommends writing test cases soon after the requirements are written. Coding is done to meet the requirements and the objective of the coding is to pass the written tests. Code may be frequently reorganized and tests re-executed to meet evolving requirements. The agile approach recommends working closely with business users and delivering incremental solutions to them every four to six weeks. An IT organization can adopt the following agile best practices: use-case-based requirements specification, emphasis on meeting business needs, making periodic software releases, focus on a working solution rather than formalities. Adopting an Agile Approach to OSS/BSS Development The biggest challenge that communication service provider 1 IT shops face today is to deliver more functionality in the operations or business support systems (OSS/BSS) with a reduced time to market. How can the IT organization be more responsive to business? Should the IT organizations retool their shops with a different process? What are the best practices an IT organization can adopt in order to be agile? Agility is the ability to be responsive. A software development process would be considered agile if it: Helps realize business value from development efforts quickly with a shorter delivery cycle Minimizes bottlenecks and dependencies across development tasks Works with changing requirements and allows the adaptation of the solution to respond to changed requirements Increases user involvement in the development process Promotes effective communication across development team members Forrester s 2003 North American benchmark study included interviews with 704 North American IT decision makers and found that 57 percent of projects failed because of poorly scoped requirements, 35 percent because of buggy software, and 30 percent because of unattainable business requirements. Agile processes address many of the problems that are at the root of such failures. Perhaps that explains the growth in acceptance of agile processes in corporate IT shops in the last few years. A few years ago, founders of agile processes including Scrum, extreme Programming (XP), Dynamic Systems Development Methodology (DSDM), Adaptive Software Development, and Feature Driven Development (FDD) and Crystal, united under the umbrella of the Agile Alliance. The agile movement is now gaining momentum. Traditional vs. agile software development processes A traditional software development process follows a sequential, waterfall approach in which the requirements gathering and analysis, architecture and design, code construction, system testing, user acceptance testing, and installation are done sequentially. There is very little concurrency and there is very little interaction between users and developers. The three most widely used agile processes are: XP, DSDM, and Rational Unified Process (RUP). Agile processes differ from traditional SDLC processes in many ways and are described below. 1. Working in small increments: The traditional approach requires a longer delivery cycle before a working solution is delivered to users, compared to the agile approach. The agile approach consists of building and delivering a working solution in several iterations. The iteration does not represent the final product, but it is an incremental step towards the final product. It gives users a chance to see, touch, and feel the solution much earlier. After seeing the solution, the users may make requirement changes and they get worked on in a subsequent iteration. 2. Philosophy: The philosophy behind the traditional software methodology is to follow a process that includes entrance and exit criteria for each phase. At the time of exiting a phase, the reviewers review the work done in that phase. Change control is enforced aggressively, in the sense that after a phase is complete, the deliverable produced in that phase is considered frozen. Agile is a different philosophy in which requirements gathering and analysis, design, and construction have overlaps and developers are willing to accommodate requirements and, hence, designs keep evolving. The agile way of development recommends writing test cases soon after the requirements are written. Coding is done to meet the requirements and the objective of the coding is to pass the written tests. Code may be frequently reorganized and tests re-executed to meet evolving requirements. 1 Wireless, wire-line, cable, and Internet service providers 2

3 3. Emphasis on Documentation: The traditional methodologies emphasize creating detailed documents. Documents are used as a means of knowledge transfer and as a risk-avoidance mechanism in case the person with the knowledge leaves the project. Agile takes the approach that a working solution is more important than documentation. That does not mean that Agile does not produce documentation. On the other hand, Agile values self-documented code, design documents that graphically show how the solution is constructed. Agile also places a lot of importance on people actively discussing and brainstorming to reach a common understanding. 4. IT and Business Separation: The traditional approach includes the business stakeholders in the requirements-gathering phase. After the requirements are analyzed and reviewed, business users really don t get involved. On the contrary, Agile recommends working closely with Business users and delivering incremental solutions to them every four to six weeks. 5. Change Management: The traditional methodology aims to keep change under very tight control. Changes to scope and functionality are formally documented and have to be approved by management. Agile, on the other hand, accepts that changes are bound to happen and although changes need to be documented, there is not much resistance to change. Refactoring the code is a legitimate phase in the agile development process. 6. Team culture: A team practicing a traditional methodology sees team members as a group of specialists. Each individual owns a part of the solution under development. If there is a question or a problem in that part, every one knows who to go to. On the other hand, if the specialist is away and a part needs to be changed, the team waits for the specialist to return. Agile takes a different approach here. Individuals are responsible, but the entire team owns the solution. Each team member works on different parts of the solution, however, if another team member modifies a part of the solution, the owner is not offended. 7. Success Factors: A project manager practicing the traditional methodology considers a project successful when the project is completed on time and within budget. Most often, the project manager makes the project plan after the project sponsors approve the charter. The chances of the on-time and in-budget completion are greater depending upon how stable the requirements are, how experienced the project team is, etc. The project manager who has adopted the agile process is fully aware that plans will change. On-time completion is important, but what is more important is that the solution is user driven and meets the needs of the users. 8. Effort Distribution: Typically, project managers practicing a traditional software development process estimate the development effort with a 60/40 rule. Sixty percent of the total effort is spent on gathering requirements, architecture, and design. Forty percent of the total effort is spent on coding, unit testing, and system testing. On the other hand, a project manager using an agile process for development spends almost equal amounts of time in requirements gathering and analysis, design, coding, and testing. 9. Flexibility: The traditional methodology of software development is modeled on the basis of implementing a predictable process. This works well if requirements are stable and do not change. The Agile process addresses stable as well as evolving requirements. In that sense, the agile process is more flexible and accommodates changes. 3

4 Agile best practices Even though an IT organization has not embraced an agile process as its core software development process, the following best practices can be adopted easily. Requirements Definition 1. Use-case-driven requirement gathering is a very effective technique for capturing requirements. Write use cases followed by detailed functional requirements with the participation of business users. 2. Prepare test cases when requirements are defined. 3. Understand that requirements will evolve over time as business users start using the solution. Analysis and Design 1. When considering competing design choices, the simplest choice is the best choice. 2. Focus on people and not technology. Make sure that the developers understand the design by providing key artifacts such as sequence diagrams, entity relationship diagrams, class responsibility collaboration (CRC) diagrams, class hierarchy diagrams, etc. 3. Look at the big picture and not just the most commonly used use cases. Development 1. Time-box each iteration to a period of four to six weeks. Time-boxing will help bring unpredictable requirements under control. 2. Make the development process requirements and intention driven. The intention should be to pass the written test to test the requirement against which the code is written. 3. Get it working first, optimize and re-factor later. The goal of every developer should be to meet the requirement and pass the test case. After the code works, it can be optimized and performance improved. 4. Be prepared to change the code if the requirements change. 5. Follow coding and documentation guidelines so that other developers in the team will be able to follow and modify the code as required. Testing 1. Get business users and developers involved in reviewing the test cases. 2. Be prepared to run multiple rounds of testing. 3. Provide feedback rapidly to the developers regarding problems encountered during testing. Project Management 1. Remember that the schedule you make at the beginning of the project will have to be changed as the requirements evolve. 2. Keep the developers motivated, as they might have to make several passes through the solution in response to changing requirements. 3. Keep the project sponsor abreast of the impact of the changing scope and requirements. 4. Facilitate good communications. Set up a war room. Organize daily team meetings to discuss progress and issues. 5. Make sure that the design is not sacrificed to meet the planned date. 4

5 Suitability of agile methodology An agile development process is not suitable for all types of software development projects. Project managers often have a choice of choosing a development process. Many project failures can be attributed to the wrong development process. There are no hard and fast rules as to whether an agile process is better suitable for certain types of projects over others. Based on project constraints, the team composition, and other factors such as stability of requirements, the project manager should make a decision about which process to use. Needless to say that some of the agile best practices can be used, as appropriate. Let us review the pros and cons of using an agile process for different classes of projects: 1. Projects with stable requirements: The traditional software development process works well when requirements are predictable, stable, well-defined, and understood. Architects and designers provide a design based on the requirements and the developers implement the solution based on the design. Agile best practices can still be used in such projects, which will undoubtedly add value. If multiple iterations are developed instead of a single release at the end of the project, such iterations can certainly help the confidence of the project sponsors. 2. Projects with unstable and evolving requirements: The agile software process is well suited for such type of projects. However, the project manager has to make a judicious decision about when to start the coding phase. If coding and testing begin before the design is well understood, undoubtedly there will be multiple passes needed before the code works right. In such cases, the agile approach may end up taking more time than the traditional approach. So the decision of when to start coding is a key decision that will influence the fate of the project. 3. Small versus big projects: Historically, agile methodologies such as extreme programming have been used successfully in small projects, with teams of 12 people or less. Big projects obviously have big risks and the project manager can decide whether to use the agile process or not, depending upon several criteria such as whether the team members are experienced in agile processes or not. 4. Onsite versus offshore projects: Agile processes typically work well when team members are co-located. An IT organization that has never developed with an agile process before and wants to use an agile process with an offshore development team will face significant challenges. Frequent face-to-face meetings and good communications will help mitigate risks in such situations. 5. Fixed price versus time and material with an upper limit: In general, it is not a good idea to commit to a fixed-price project if the requirements are unstable. Estimating the overall project effort is hard no matter which development process is used. Having said that, an agile process with time-boxed iterations can be an effective way to deliver a fixed-price project with a definite end date. Adopting the agile way While it is easier for small IT shops to adopt new software processes, bigger, more mature software organizations with hundreds or thousands of software professionals cannot adopt a new process overnight. Here are some steps to introduce an agile development process in a relatively mature IT organization that already follows an established process: Establish an Agile software center of excellence (CoE), staffed by consultants experienced in applying agile processes. The CoE should clearly define the agile process that will be followed for developing software solutions. The CoE should also publish a set of standards, guidelines, and best practices to be followed. The CoE will train and mentor members of the IT organization in using the agile process. The CoE shall also acquire tools to promote agile development. The CoE should also define a metrics framework that will help measure the gains due to changes in the agile process. The CoE should identify a set of early adopter projects. The early adopter projects should use the agile process from requirements gathering to installation and deployment. After carefully analyzing the experience gained in early adopter projects, the CoE should take the agile approach to the mainstream. 5

6 About BusinessEdge Solutions BusinessEdge Solutions, an EMC Consulting Practice, offers strategy, process optimization, and information management services to clients in the telecommunications, media, and entertainment (TME); financial services; and life sciences industries. Leveraging our vertical industry thought leadership and asset-leveraged consulting, supported by pre-engineered business and information management frameworks, BusinessEdge drives competitive advantage for clients and reduces the time, cost, and risk of delivering breakthrough results. Industry and technology expertise and experience are at the core of our commitment to create vision for our clients and are the drivers behind the delivery of high-impact business solutions. Our consultants average 15 years of industry-specific experience and apply their deep knowledge of the industry, technology, business architecture, and business best practices to develop information management strategies that improve process effectiveness and productivity, reduce business risk, improve decision making, enable collaboration and knowledge sharing, and enable the optimization of IT spend. EMC Corporation Hopkinton Massachusetts In North America Take the next step For more information, contact BusinessEdge Solutions, an EMC Consulting Practice, at call EDGE extension 3040, or visit our website at EMC 2, EMC, and where information lives are registered trademarks of EMC Corporation. All other trademarks used herein are the property of their respective owners. Copyright 2008 EMC Corporation. All rights reserved. Published in the USA. 04/08 EMC Perspective H4339

Software Development Life Cycle (SDLC)

Software 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 information

A Capability Maturity Model (CMM)

A 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 information

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development

More information

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

AGILE 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 information

AGILE DEVELOPMENT WITH A CAPITAL A

AGILE DEVELOPMENT WITH A CAPITAL A AGILEDEVELOPMENT WITHACAPITAL A 2 On June 3, 2009, Plante & Moran attended the Midwest Technology Leaders (MTL) Conference, an event that brings together top technology professionals in the Midwest to

More information

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

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

More information

Who 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 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 information

CSE 435 Software Engineering. Sept 16, 2015

CSE 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 information

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...

More information

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

Whitepaper. 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 information

Using 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 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 information

PERFORMANCE ENGINEERING IN SCRUM

PERFORMANCE ENGINEERING IN SCRUM PERFORMANCE ENGINEERING IN SCRUM Balasubramanian, Infosys Technologies Limited This paper describes how performance engineering as a software discipline should be planned and executed in an agile development

More information

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting Agile Fundamentals, ROI and Engineering Best Practices Rich Mironov Principal, Mironov Consulting 1 About Rich Mironov Agile product management thought leader Business models, pricing, roadmaps Agile transformations

More information

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational

More information

Agile and Secure: Can We Be Both?

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. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission

More information

Applying Agile Methods in Rapidly Changing Environments

Applying 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 information

CS4507 Advanced Software Engineering

CS4507 Advanced Software Engineering CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development

More information

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys Mitigating Risk with Agile Development Rich Mironov CMO, Enthiosys 2 About Rich Mironov CMO at Enthiosys, agile product mgmt consultancy Business models/pricing, roadmaps Agile transformation and Interim

More information

Table of contents. Performance testing in Agile environments. Deliver quality software in less time. Business white paper

Table of contents. Performance testing in Agile environments. Deliver quality software in less time. Business white paper Performance testing in Agile environments Deliver quality software in less time Business white paper Table of contents Executive summary... 2 Why Agile? And, why now?... 2 Incorporating performance testing

More information

In this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology?

In this Lecture you will Learn: Systems Development Methodologies. Why Methodology? Why Methodology? In this Lecture you will Learn: Systems Development Methodologies What a systems development methodology is Why methodologies are used The need for different methodologies The main features of one methodology

More information

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

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 information

Comparing Plan-Driven and Agile Project Approaches

Comparing Plan-Driven and Agile Project Approaches Comparing Plan-Driven and Agile Project Approaches A Personal Perspective Presented by: Craig D. Wilson Matincor, Inc. Copyright 2006-2010 2010 Outline Introduction to System Development Methodology Contrasting

More information

EMC PERSPECTIVE. Information Management Shared Services Framework

EMC PERSPECTIVE. Information Management Shared Services Framework EMC PERSPECTIVE Information Management Shared Services Framework Reader ROI Information management shared services can benefit life sciences businesses by improving decision making by increasing organizational

More information

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing. Processing Models Of SDLC Mrs. Nalkar Sanjivani Baban Asst. Professor, IT/CS Dept, JVM s Mehta College,Sector 19, Airoli, Navi Mumbai-400708 Nalkar_sanjivani@yahoo.co.in Abstract This paper presents an

More information

Quality Assurance in an Agile Environment

Quality 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 information

Introduction to Agile Software Development

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)

More information

Agile Projects 7. Agile Project Management 21

Agile 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 information

www.pwc.com Scale agile throughout the enterprise A PwC point of view

www.pwc.com Scale agile throughout the enterprise A PwC point of view www.pwc.com Scale agile throughout the enterprise A PwC point of view December 2013 Overview Today it s rare to speak with a company that is not adopting some form of agile development practice. However,

More information

New Developments in an Agile World: Drafting Software Development Agreements. By: Paul H. Arne 1,2

New Developments in an Agile World: Drafting Software Development Agreements. By: Paul H. Arne 1,2 New Developments in an Agile World: Drafting Software Development Agreements By: Paul H. Arne 1,2 A few months before this article was prepared, a group of senior IT professionals from some of the largest

More information

Agile So)ware Development

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

More information

Supporting Workflow Overview. CSC532 Fall06

Supporting Workflow Overview. CSC532 Fall06 Supporting Workflow Overview CSC532 Fall06 Objectives: Supporting Workflows Define the supporting workflows Understand how to apply the supporting workflows Understand the activities necessary to configure

More information

Software Development Methodologies

Software 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 information

Ingegneria del Software Corso di Laurea in Informatica per il Management. Software process model

Ingegneria del Software Corso di Laurea in Informatica per il Management. Software process model Ingegneria del Software Corso di Laurea in Informatica per il Management Software process model Davide Rossi Dipartimento di Informatica Università di Bologna The task of the software development team

More information

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology CHAPTER 3 : AGILE METHODOLOGIES 3.1Introductions 3.2 Main Stages in Agile project 3.3 Various Agile Software development methodologies 3.4 Advantage and Disadvantage of Agile Methodology 3.1Introductions

More information

RUP for Software Development Projects

RUP for Software Development Projects RUP for Software Development Projects George Merguerian www.bmc-online.com 1 Specialists in Global Project Management Brussels Frankfurt Houston Istanbul Milan Ottawa Shanghai Singapore Warsaw Washington

More information

Basic Unified Process: A Process for Small and Agile Projects

Basic Unified Process: A Process for Small and Agile Projects Basic Unified Process: A Process for Small and Agile Projects Ricardo Balduino - Rational Unified Process Content Developer, IBM Introduction Small projects have different process needs than larger projects.

More information

SOFTWARE PROCESS MODELS

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

More information

Software Development Life Cycle Models - Process Models. Week 2, Session 1

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

More information

Large Scale Systems Design G52LSS

Large Scale Systems Design G52LSS G52LSS Lecture 3 Rapid and Agile Development Rapid Application Development Prototyping CASE Tools Agile Development Extreme Programming Learning outcomes: describe main features of methods for RAD and

More information

Software Development Process

Software 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 information

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant Manav.Mehan@tcs.com

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant Manav.Mehan@tcs.com Water-Scrum-Fall Agile Reality for Large Organisations By Manav Mehan Principal Agile consultant Manav.Mehan@tcs.com Interests and Experience Leading Change and Transformation in Large, Complex organisations

More information

AGILE SOFTWARE DEVELOPMENT A TECHNIQUE

AGILE SOFTWARE DEVELOPMENT A TECHNIQUE AGILE SOFTWARE DEVELOPMENT A TECHNIQUE Saurav Tiwari 1,Aasheesh Goel 2,Rajeev Sharma 3 1,2 Research Scholar,MCADept.,SRM University,NCRCampus,Modinagar 3 Asst. Prof.,MCADept.,SRM University,NCR Campus

More information

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

CS435: 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 information

White Paper. Fundamentals of Performance Testing

White Paper. Fundamentals of Performance Testing etri White Paper Fundamentals of Performance Testing The Increasing Need for Proper Performance Testing due to Increasing Software Complexity in the Enterprise There have been two significant changes in

More information

Agile and Secure: OWASP AppSec Seattle Oct 2006. The OWASP Foundation http://www.owasp.org/

Agile 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 information

When to use Agile/Scrum

When to use Agile/Scrum When to use Agile/Scrum A Common Sense Model to Determining When or If You Should Leverage an Agile Scrum Methodology Depending on Your Project, Resources and Company. By Rick Rene Managing Director of

More information

Agile 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 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 information

Life 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. 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

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012 Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012 The following pages present the CSM taxonomy as validated through the 2011 Scrum Alliance Validation Study. Each percentage

More information

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects Transdyne Corporation CMMI Implementations in Small & Medium Organizations Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects Dana Roberson Quality Software Engineer NNSA Service

More information

Agile Software Project Management Methodologies

Agile Software Project Management Methodologies Economy Informatics, 1-4/2005 27 Agile Software Project Management Methodologies Prof. Constanţa-Nicoleta BODEA, PhD Economic Informatics Department, Academy of Economic Studies, Bucharest Successfully

More information

Sisyphus Would Be Proud

Sisyphus Would Be Proud Ten Best Practices of EA Anne Lapkin Notes accompany this presentation. Please select Notes Page view. These materials can be reproduced only with written approval from Gartner. Such approvals must be

More information

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012

Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012 Certified ScrumMaster (CSM) Content Outline and Learning Objectives January 2012 The following pages present the CSM taxonomy as validated through the 2011 Scrum Alliance Validation Study. Total questions

More information

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros.

Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros. Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. jeff.payne@coveros.com www.coveros.com 1 About Coveros Coveros helps organizations accelerate the delivery

More information

How to Structure Your First BPM Project to Avoid Disaster

How to Structure Your First BPM Project to Avoid Disaster How to Structure Your First BPM Project to Avoid Disaster Table of Contents Table of Contents...2 Introduction...3 Pick The Right Process and Avoid the Wrong Ones...4 Field the Right Team and Include a

More information

TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended.

TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended. Previews of TDWI course books offer an opportunity to see the quality of our material and help you to select the courses that best fit your needs. The previews cannot be printed. TDWI strives to provide

More information

Managing IT Projects. Chapter 3 Software Project Life cycle

Managing IT Projects. Chapter 3 Software Project Life cycle Managing IT Projects Chapter 3 Software Project Life cycle The Systems Development Life Cycle (SDLC) The SDLC is composed of four fundamental phases: -Planning Analysis Design Implementation The Systems

More information

Software processes that are:

Software processes that are: Agile Processes Software processes that are: Incremental (small software releases with rapid cycles) Cooperative (customer and developer working together with close communication) Straightforward (method

More information

PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL

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, vukicevicsanja@yahoo.com 2 Faculty

More information

Becoming Agile: a getting started guide for Agile management in Marketing and their partners in IT, Sales, Customer Service and other business teams.

Becoming Agile: a getting started guide for Agile management in Marketing and their partners in IT, Sales, Customer Service and other business teams. Becoming Agile: a getting started guide for Agile management in Marketing and their partners in IT, Sales, Customer Service and other business teams. Agile for Business www.agilefluent.com Summary The

More information

Agile Development Overview

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

More information

Managing Successful Software Development Projects Mike Thibado 12/28/05

Managing Successful Software Development Projects Mike Thibado 12/28/05 Managing Successful Software Development Projects Mike Thibado 12/28/05 Copyright 2006, Ambient Consulting Table of Contents EXECUTIVE OVERVIEW...3 STATEMENT OF WORK DOCUMENT...4 REQUIREMENTS CHANGE PROCEDURE...5

More information

MICROSOFT U.S. BUSINESS & MARKETING ORGANIZATION

MICROSOFT U.S. BUSINESS & MARKETING ORGANIZATION MICROSOFT U.S. BUSINESS & MARKETING ORGANIZATION Marketing team aggregates and syndicates digital content on SharePoint 2010 for greater impact, efficiency, and control The Microsoft U.S. Business Marketing

More information

Basic Trends of Modern Software Development

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

More information

Agile Development. Redefining Management in Project Management. Neil Stolovitsky

Agile Development. Redefining Management in Project Management. Neil Stolovitsky The PROJECT PERFECT White Paper Collection Abstract Agile Development Redefining Management in Project Management Neil Stolovitsky Agile development has been around for nearly a decade. However, its popularity

More information

In today s acquisition environment,

In today s acquisition environment, 4 The Challenges of Being Agile in DoD William Broadus In today s acquisition environment, it no longer is unusual for your program to award a product or service development contract in which the vendor

More information

PMO Starter Kit. White Paper

PMO Starter Kit. White Paper PMO Starter Kit White Paper January 2011 TABLE OF CONTENTS 1. ABOUT THE PMO STARTER KIT...3 2. INTRODUCTION TO THE PMO STARTER KIT WHITE PAPER...3 3. PMO DEVELOPMENT ROADMAP...4 4. PLAN PHASE...5 4.1 CREATE

More information

Presented By: Leah R. Smith, PMP. Ju ly, 2 011

Presented By: Leah R. Smith, PMP. Ju ly, 2 011 Presented By: Leah R. Smith, PMP Ju ly, 2 011 Business Intelligence is commonly defined as "the process of analyzing large amounts of corporate data, usually stored in large scale databases (such as a

More information

An Agile Project Management Model

An 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 information

Agile Methodologies and Its Processes

Agile 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 information

The Software Life Cycle. CSE 308: Software Engineering

The Software Life Cycle. CSE 308: Software Engineering The Software Life Cycle CSE 308: Software Engineering 1 Life Cycle Models A software life cycle model represents all of the activities and work products necessary to develop a software system Life cycle

More information

Scrum Is Not Just for Software

Scrum Is Not Just for Software Scrum Is Not Just for Software A real-life application of Scrum outside IT. Robbie Mac Iver 2/9/2009. Agile methods like Scrum can be applied to any project effort to deliver improved results in ever evolving

More information

Agile Software Development. Mohsen Afsharchi

Agile Software Development. Mohsen Afsharchi Agile Software Development Mohsen Afsharchi I. Agile Software Development Agile software development is a group of software development methods based on iterative and incremental development, where requirements

More information

Driving Your Business Forward with Application Life-cycle Management (ALM)

Driving Your Business Forward with Application Life-cycle Management (ALM) Driving Your Business Forward with Application Life-cycle Management (ALM) Published: August 2007 Executive Summary Business and technology executives, including CTOs, CIOs, and IT managers, are being

More information

EXTREME SCOPING : An Agile Approach to Data Warehousing and Business Intelligence

EXTREME SCOPING : An Agile Approach to Data Warehousing and Business Intelligence EXTREME SCOPING : An Agile Approach to Data Warehousing and Business Intelligence by Larissa T. Moss It is not uncommon for seasoned project managers who use a traditional methodology on a DW or BI project

More information

The Truth About Agile Software Development with Scrum, The Facts You Should Know

The Truth About Agile Software Development with Scrum, The Facts You Should Know The Truth About Agile Software Development with Scrum, The Facts You Should Know Copyright Notice of rights All rights reserved. No part of this book may be reproduced or transmitted in any form by any

More information

LECTURE 1. SYSTEMS DEVELOPMENT

LECTURE 1. SYSTEMS DEVELOPMENT LECTURE 1. SYSTEMS DEVELOPMENT 1.1 INFORMATION SYSTEMS System A system is an interrelated set of business procedures used within one business unit working together for a purpose A system has nine characteristics

More information

Software Development Life Cycle at SSPL. An Summary of Methodologies We Offer

Software Development Life Cycle at SSPL. An Summary of Methodologies We Offer Software Development Life Cycle at SSPL An Summary of Methodologies We Offer 10/29/2009 Table of Contents The SSPL Advantage... 2 Commonly Used SDLC Models at SSPL... 2 Waterfall Model... 2 Agile Model...

More information

Web Application Development Process

Web Application Development Process Web Engineering Web Application Development Process Copyright 2013 Ioan Toma & Srdjan Komazec 1 Where we are? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th March Requirements

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project. THE AGILE PROJECT LEADER S DICTIONARY This dictionary attempts to de-mystify the jargon around the world of Agile projects. Part 1 translates common Agile terms into more traditional words. Part 2 translates

More information

EMC CONSULTING SECURITY STANDARDS AND COMPLIANCE SERVICES

EMC CONSULTING SECURITY STANDARDS AND COMPLIANCE SERVICES EMC CONSULTING SECURITY STANDARDS AND COMPLIANCE SERVICES Aligning information with business and operational objectives ESSENTIALS Leverage EMC Consulting as your trusted advisor to move your and compliance

More information

Becoming Agile: a getting started guide for Agile project management in Marketing, Customer Service, HR and other business teams.

Becoming Agile: a getting started guide for Agile project management in Marketing, Customer Service, HR and other business teams. Becoming Agile: a getting started guide for Agile project management in Marketing, Customer Service, HR and other business teams. Agile for Business www.agilefluent.com Summary The success of Agile project

More information

What is Application Lifecycle Management?

What is Application Lifecycle Management? What is Application Lifecycle Management? David Chappell Sponsored by Microsoft Corporation Copyright 2014 Chappell & Associates Defining application lifecycle management (ALM) isn t easy. Different people

More information

Introduction to Agile Software Development Process. Software Development Life Cycles

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

More information

CSSE 372 Software Project Management: More Agile Project Management

CSSE 372 Software Project Management: More Agile Project Management CSSE 372 Software Project Management: More Agile Project Management Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Plan Create a plan for

More information

Alternative Development Methodologies

Alternative Development Methodologies Alternative Development Methodologies The Software Development Process described in the course notes and lecture is a generalized process that been in use for decades. Over this time, scholars in the IT

More information

Tamanna Assistant Professor Chandigarh University Gharuan, Mohali,India

Tamanna Assistant Professor Chandigarh University Gharuan, Mohali,India Volume 4, Issue 6, June 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com An Agile Methodology

More information

Development. Lecture 3

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

More information

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Agile Practitioner: PMI-ACP and ScrumMaster Aligned Agile Practitioner: PMI-ACP and ScrumMaster Aligned The PMI Agile Certified Practitioner (PMI-ACP) ScrumMaster credential validates your ability to understand agile principles, agile concepts, and establishes

More information

PMBOK? You Can Have Both! June 10, 2009. Presented by: www.esi-intl.com

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

More information

Integrating Agile into Your Company s SDLC. Frank Valerius February 1, 2012

Integrating Agile into Your Company s SDLC. Frank Valerius February 1, 2012 Integrating Agile into Your Company s SDLC Frank Valerius February 1, 2012 Perception vs Desired State Business perceives IS to be Rigid / inflexible Disconnected from business Slow to respond to change

More information

Agile and Enterprise Architecture

Agile and Enterprise Architecture 08 Experience, Intelligence, Pragmatism, Commitment. Always striving to ensure outstanding delivery Agile and Enterprise Architecture Steve Marchant July 2013 Abstract The IT industry is evolving at an

More information

Expert Reference Series of White Papers. Intersecting Project Management and Business Analysis

Expert Reference Series of White Papers. Intersecting Project Management and Business Analysis Expert Reference Series of White Papers Intersecting Project Management and Business Analysis 1-800-COURSES www.globalknowledge.com Intersecting Project Management and Business Analysis Daniel Stober,

More information

Software 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 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 information

Agile Project Management and Agile Practices Training; with a Scrum Project that you will do.

Agile Project Management and Agile Practices Training; with a Scrum Project that you will do. 1 PMI Agile Certified Practitioner (PMI-ACP) workshop course details. We are unique and specialists in Agile! Your workshop trainer by passion and is a senior Agile Coach who coached many teams and Kanban

More information

How do you determine how to structure your team?

How do you determine how to structure your team? By Tanya Smeltzer How do you determine how to structure your team? Company needs Will an outside consult be necessary to meet the requirements? Software development people available Different levels of

More information

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan

PLM - Agile. Design Code Test. Sprints 1, 2, 3, 4.. Define requirements, perform system design, develop and test the system. Updated Project Plan PLM - Agile Agile Development Evolved in the 1990s as a response to heavyweight methodologies. In 2001 representatives of various new methodologies met to discuss the need for lighter alternatives. The

More information

Applying Agile Project Management to a Customized Moodle Implementation

Applying Agile Project Management to a Customized Moodle Implementation Applying Agile Project Management to a Customized Moodle Implementation November 6, 2013 Presented by: Curtis Fornadley, PMP UCLA CCLE Coordinator Applying Agile Project Management to a Customized Moodle

More information