EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development
|
|
- Chrystal Lloyd
- 8 years ago
- Views:
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) 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 informationA Capability Maturity Model (CMM)
Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability
More information10/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 informationAGILE METHODOLOGY IN SOFTWARE DEVELOPMENT
AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT Shivangi Shandilya, Surekha Sangwan, Ritu Yadav Dept. of Computer Science Engineering Dronacharya College Of Engineering, Gurgaon Abstract- Looking at the software
More informationAGILE 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 informationCSE 435 Software Engineering. Sept 16, 2015
CSE 435 Software Engineering Sept 16, 2015 2.1 The Meaning of Process A process: a series of steps involving activities, constraints, and resources that produce an intended output of some kind A process
More informationTRADITIONAL 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 informationWho Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008
Who Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008 Who wants to be involved in a BI project or program that is labeled slow or inflexible? While I don t believe
More informationUsing Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca
Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC
More informationWhitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan
YOUR SUCCESS IS OUR FOCUS Whitepaper Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan 2009 Hexaware Technologies. All rights reserved. Table of Contents 1. Introduction 2. Subject Clarity 3. Agile
More informationProcess 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 informationRequirement 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 informationAgile 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 informationAgile and Secure: Can We Be Both?
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Keith Landrus Director of Technology Denim Group Ltd. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission
More informationCS4507 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 informationApplying Agile Methods in Rapidly Changing Environments
Applying Agile Methods in Changing Environments 7/23/2002 1 Applying Agile Methods in Rapidly Changing Environments Peter Kutschera IBM Unternehmensberatung GmbH Am Fichtenberg 1, D-71803 Herrenberg Steffen
More informationTopics 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 informationComparing 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 informationTable 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 informationMitigating 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 informationAgile Projects 7. Agile Project Management 21
Contents Contents 1 2 3 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management
More informationQuality Assurance in an Agile Environment
Quality Assurance in an Agile Environment 1 Discussion Topic The Agile Movement Transition of QA practice and methods to Agile from Traditional Scrum and QA Recap Open Discussion www.emids.com 2 What is
More informationNew 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 informationIntroduction 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 informationAgile So)ware Development
Software Engineering Agile So)ware Development 1 Rapid software development Rapid development and delivery is now often the most important requirement for software systems Businesses operate in a fast
More informationSupporting 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 informationIn 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 informationSoftware Development Methodologies
Software Development Methodologies Jonathan Hoyle Eastman Kodak Thursday, June 2, 2005 Overview Predictive Methodologies Waterfall Other Predictive Methodologies Agile Methodologies Extreme Programming
More informationEMC 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 informationCHAPTER 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 informationA. 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 informationHow To Understand The Software Process
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 informationwww.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 informationRUP 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 informationBasic 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 informationSoftware 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 informationSOFTWARE 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 informationAgile 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 informationCS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
CS435: Introduction to Software Engineering! " " " " " " " "Dr. M. Zhu! Chapter 3! Agile Development! Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
More informationSoftware Development Process
Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software
More informationWhen 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 informationLife Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering
Life Cycle Models V. Paúl Pauca Department of Computer Science Wake Forest University CSC 331-631 Fall 2013 Software Life Cycle The overall framework in which software is conceived, developed, and maintained.
More informationUsing 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 informationAGILE 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 informationCertified 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 informationWhite 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 informationWater-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 informationAgile and Secure: OWASP AppSec Seattle Oct 2006. The OWASP Foundation http://www.owasp.org/
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Dan Cornell, OWASP San Antonio Leader Principal, Denim Group Ltd. dan@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation
More informationSoftware 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 informationLarge 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 informationIn 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 informationCertified 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 informationPMBOK? 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 informationSoftware 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 informationAgile and Secure Can We Be Both? Chicago OWASP. June 20 th, 2007
Agile and Secure Can We Be Both? Chicago OWASP June 20 th, 2007 The Agile Practitioner s Dilemma Agile Forces: Be more responsive to business concerns Increase the frequency of stable releases Decrease
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationAgile Development Overview
Presented by Jennifer Bleen, PMP Project Services Practice of Cardinal Solutions Group, Inc. Contact: Agile Manifesto We are uncovering better ways of developing software by doing it and helping others
More informationThe 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 informationDriving 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 informationLECTURE 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 informationAgile Methodologies and Its Processes
International Journal of Computational Engineering Research Vol, 03 Issue, 9 Agile Methodologies and Its Processes 1, Akanksha, 2, Akansha Rakheja, 3, Latika Kapur, 4, Kanika Ahuja 1,2,3,, Information
More informationAgile 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 informationPROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL
PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL Sanja Vukićević 1, Dražen Drašković 2 1 Faculty of Organizational Sciences, University of Belgrade, vukicevicsanja@yahoo.com 2 Faculty
More informationCSSE 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 informationClassical 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 informationHow 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 informationIntroduction to Agile Software Development Process. Software Development Life Cycles
Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative
More informationWeb 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 informationAtern 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 informationAgile 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 informationDevelopment. Lecture 3
Software Process in Modern Software Development Lecture 3 Software Engineering i Practice Software engineering practice is a broad array of principles, concepts, methods, and tools that must be considered
More informationTransitioning 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 informationSisyphus 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 informationManaging 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 informationBecoming 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 informationSoftware Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Not this life cycle SE, Software Lifecycle, Hans van Vliet, 2008 2 Introduction software development
More informationQuality Assurance Software Development Processes
Quality Assurance Software Development Processes Part II - Lecture 3 1 The University of Auckland New Zealand 254 12/09/ /2012 The FBI Virtual Case File 254 12/09/ /2012 Database application developed
More informationScrum 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 informationAgile 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 informationEXTREME 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 informationPLM - 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 informationPresented 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 informationIntroduction to OpenUP (Open Unified Process)
Introduction to OpenUP (Open Unified Process) Different projects have different process needs. Typical factors dictate the needs for a more formal or agile process, such as team size and location, architecture
More informationTDWI 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 informationAgile 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 informationSistemi ICT per il Business Networking
Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking Software Development Processes Docente: Vito Morreale (vito.morreale@eng.it) 17 October 2006 1 The essence of
More informationAdvanced Software Engineering. Software Development Processes
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Advanced Software Engineering Software Development Processes Prof. Agostino Poggi Software Development
More informationWaterfall vs. Agile Methodology
2012 Waterfall vs. Agile Methodology Mike McCormick MPCS, Inc. Revised Edition 8/9/2012 Contents Waterfall vs. Agile Model Comparison...3 Conceptual Difference...3 Efficiency...4 Suitability...4 Waterfall
More informationSoftware Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng
Software Development Process and Activities CS 490MT/5555, Fall 2015, Yongjie Zheng Software Process } A set of activities that leads to the production of a software product } What product we should work
More informationChapter 11 Project Management
Chapter 11 Project Management Managing and Using Information Systems: A Strategic Approach by Keri Pearlson & Carol Saunders Introduction What are the elements of a good project? Why do so many IT projects
More informationImplementing Models and Standards for Software Development Benefits and Risks
Implementing Models and Standards for Software Development Benefits and Risks Tsvetelina Kovacheva, Quality Manager Musala Soft June 19, 2007 Agenda Difference between Model and Standard Software Development
More informationBecoming 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 informationTamanna 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 informationEMC 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 informationOptimizing Agile with Global Software Development and Delivery
Cognizant 20-20 Insights Optimizing Agile with Global Software and Delivery A blueprint for integrating global delivery and Agile methodology, allowing organizations to achieve faster returns on investment,
More informationMICROSOFT 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 informationwww.stephenbarkar.se Lean vs. Agile similarities and differences 2014-08-29 Created by Stephen Barkar - www.stephenbarkar.se
1 www.stephenbarkar.se Lean vs. Agile similarities and differences 2014-08-29 Purpose with the material 2 This material describes the basics of Agile and Lean and the similarities and differences between
More informationAlternative 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 informationIntroduction to Agile Scrum
Introduction to Agile Scrum by Julia M. Lobur Penn State Harrisburg CMPSC 487W Fall 2015 Introduction to Scrum Learning Goals Relationship of Scrum to other Agile methods Scrum Framework Scrum Roles Scrum
More information