Copyright Software Engineering Competence Center

Size: px
Start display at page:

Download "Copyright Software Engineering Competence Center"

Transcription

1 Copyright Software Engineering Competence Center

2 Copyright Software Engineering Competence Center

3 These are mapped categories to the waste categories of manufacturing. An excellent overview of these waste categories in: This topic is very important in Configuration Management, because many traditional CM processes inject many wastes in all these categories. Copyright Software Engineering Competence Center

4 In simple terms, the four common concepts in these definitions are: 1. Given many copies of the same artifact, you will be able to identify which version each copy is. 2. Ability to induce information about the work products, like their release date, related issues, etc. 3. Make sure that a given set of files constitute a correct version. Also, ability to make sure that a given set of work products fulfill a set of functionality. 4. Verify that released products are packaged correctly, and fulfills requirements. These definitions may not be that understood to practitioners. Why, for example, shall I bother about configuration items specific versions? I would rather make that I m working on a correct branch and that s it! Copyright Software Engineering Competence Center

5 These two are the and most practical definitions of all. It mentions the single a most important objective about configuration management, which is tracking and controlling changes. Copyright Software Engineering Competence Center

6 From another angle, the diagram identifies a property of a strong configuration management environment. This is the ability to trace: Trace releases to its work products. Trace releases to workitems worked in this release. Trace workitems to work products which resulted from them. Trace workitems to their releases. Trace work products to releases. Trace work products to workitems which produced or changed these work products. If I can do this, then I have a strong configuration management environment Copyright Software Engineering Competence Center

7 Copyright Software Engineering Competence Center

8 Following is an explanation of every process increment: Version Control Project configuration items are under version control, and team is trained on basic copyupdate-merge and lock-modify-unlock procedures Baselining Baselining procedure is defined and enforced at points where work product(s) are delivered to an external party Workitem Tracking Issues types are identified, and issues are managed and tracked Traceability Bi-directional traceability of requirements and work products is defined and enforced Release Management Release and release scope is identified; Changes are received, prioritized, and planned; packaging, releasing, and post-release verification procedures are enforced CM Environment Project structure is defined, access rights are enforced, and backup/restore procedure is employed Continuous Integration Builds are automated and integration between team members, and between teams is automated and frequent Copyright Software Engineering Competence Center

9 This is the first and most basic technical practice in software development. However, you may still find so many teams doing version control in an unproductive way. Copyright Software Engineering Competence Center

10 Identifying configuration items is an important task in software projects. It is not enough to put your code on svn. There may be other work products that need to be versioned. For example, consider a vast product developed by several teams. At first, an architecture team agrees on the architecture, develop component diagram, and identify components interfaces. Then, teams start working, and after a while, the product get. In this case, the architecture document is a configuration item, and need to be baselined. If not, there is a great risk that teams fail to integrate their work successfully. Copyright Software Engineering Competence Center

11 Copyright Software Engineering Competence Center

12 This is the first and most basic technical practice in software development. However, you may still find so many teams doing version control in an unproductive way. Copyright Software Engineering Competence Center

13 The issue here is what would be the nature of a change management process? In Agile, change management process is the usual development process, nearly no overhead to mention. Many companies employ a sophisticated change management procedures which incur a lot of cost to introduce a single change request. This effectively keeps customers afraid from changing anything, and fires back at time of deployment. Copyright Software Engineering Competence Center

14 Again, take care of the baselining procedure. It is tempting to put all kinds of overhead in this procedure. Copyright Software Engineering Competence Center

15 Copyright Software Engineering Competence Center

16 Workitem tracking is a central topic in Configuration Management. However, agile team usually overlooks it. Most of the teams I have worked with (even teams thinking they are Agile), do not have a clear definition of what workitem types they should track. Even if they have a basic setup of Scrum workitems (user story, task, bug, test case), they do not have an understanding of what state information they should collect, what kind of relations to be maintained between workitems, and what are the optimal workflows for every workitem type. One sign of a mature agile team is that they start creating new workitem types which suites their own environment, and store specific state information about every type. They also know what to do with these workitems. They not only use it to track their everyday development activity, but they also use it to generate release reports, document customer correspondence, and advanced reporting. Copyright Software Engineering Competence Center

17 Workitems are things that are carried out throughout the project. In Project Management terms, these are the Work Breakdown Structure (WBS) of the project. Many teams limit themselves to predefined types in management frameworks like Scrum, RUP, etc. Or even to predefined types in tracking tools. Workitems need to be well thought off with special attention to two things: Existing management system, and Hidden Factory. Existing Management System/Framework: Organizations give different meanings to terms like: Requirement, Enhancement, Change Request, Defect, Support Request, Trouble Incident, etc. It is very important to identify what is meant by the name, and when it should be used. In general, it is advisable to re-use the same terms already used in the organization, but it is necessary to write down what is meant by every term, and when it should be used. Hidden factory: Hidden Factory can be defined as the set of tasks that are done to amount for the process inefficiency. For example, rework due to integration bugs, technical debt accumulated due to very little time spent on unit testing, etc. These tasks are usually not tracked as workitems, or are never tracked. Usually, a good practice that Agile teams do is that these workitems are done as part of several intermediate stabilization iterations, or at the end of every release as Release Iteration. However, if such work get accumulated, tracking is usually overlooked in order not to let others discover the process/team inefficiency. The golden rule is: Hidden factory is bad. Try to eliminate it. If you can t, track it as part of your process Another factor that may help identify workitems is value-stream mapping. This is a technique used in Lean manufacturing to track the progress and flow of materials and information. In Software development, value stream mapping help identify activities and intermediate work-products which result from each activity. Kanban boards are an example of a simple value stream, in which materials (requirements) and products (software) are mapped and tracked. Copyright Software Engineering Competence Center

18 Workitem relationships are rules defined as part of the definition of the workitem system. Usually, they are optional, but in other times they are mandatory. In some teams, workitem relationship rules are not defined, although all kinds of relationships is open to create (using a tool, may be). This is an example of a process that may never be improved, because there is no process to start with. It is important to note that having a process definition is half way towards process improvement. There are many examples of critical situations where we needed to trace some workitem to another and we couldn t, due to the loose rules defined in workitem relationships. Copyright Software Engineering Competence Center

19 Automating workitem tracking systems is a controversial issue. Many teams do workitem tracking on a Scrum or Kanban Boards, and that s it. Many others use simple excel sheets, one sheet per iteration or release. This level of automation is very little to achieve lean implementation of configuration management. For example, we need to report the status of what has been accomplished in this release. If we do not systematically track workitems on a tracking tool, it will be an overhead activity to generate this report from row paper or simple excel sheets. Another point is how backup will be done, who is responsible for it, and how restore will take place? Are Workitems configuration items? Usually yes. Because we need to track the history of changes done to this workitem. Can they be part of a baseline? How? Sometimes we need to include a use-case survey report as part of the baseline, or attach a list of user stories delivered for every release. In this case, they are baselined. Copyright Software Engineering Competence Center

20 Traceability is one of the major and key process increments of configuration management. As will be explained later, good traceability policy and implementation empowers the team with techniques to do impact analysis, root cause analysis, and status accounting. These tools are key tools in improvement. Nevertheless, still a lot of voices are talking about traceability as a real challenge, and a major problem area in the industry. It may induce costs and overheads which grows exponentially with the size and complexity of the software system 1. Also, despite many advances, RT remains a widely reported problem area by industry 2 This is why most of the teams (regardless team or project size) I have worked with do not pay attention to implementing traceability. And, the few teams which employs the so called Traceability Matrix are complaining that it is pure overhead, and they are only doing it for compliance purposes. 1 Kannenberg.pdf 2 F8A63C958BA3EF3176E8AFD0B48687DA/643F156E ECF56449AA/749/1/2.2_rtprob.pdf Copyright Software Engineering Competence Center

21 I found teams who implement traceability for compliance purposes mix traceability with traceability matrix. Traceability matrix is one way of implementing traceability. Ok, what is traceability? Rather than introducing a formal definition, it is easier to look at the network and deduce what traceability is. Requirements entities can trace to each other (white), and trace to other information (green), and finally trace to physical artifacts (gray). Copyright Software Engineering Competence Center

22 Forward traceability enables the team to study the impact of a change and assess its costs and risks. In this scenario above, the customer has requested a change on an already implemented user story. To assess the change, the team revisits the written code, the impacted design and products, etc. Copyright Software Engineering Competence Center

23 If there is a defect reported by a customer, and we want to know its root cause. As in the scenario above, the defected code is traced back to the reasons of change, which is found to be a change request by a customer requested sometime ago. This is also called Backward traceability. Copyright Software Engineering Competence Center

24 Any kind of reporting in software projects makes use of traceability one way or another. Copyright Software Engineering Competence Center

25 These are the set of objectives which need to be fulfilled: 1. How release and release scope are identified 2. What is the procedure for receiving changes, then prioritizing and planning them? 3. Why and how baselines take place, and what is included in baselines? 4. How does the team package their work, and what is the procedure for releasing and verifying releases at customer environment? Some Agile teams overlook many details of the above, and this may cause problems throughout the project. The good news is that Agile methods have done excellent job defining release management procedures. In the next slides, I will try to identify some Agile practices that does the above requirements very well. Copyright Software Engineering Competence Center

26 These are some rules defined in Scrum, and governs how release management is done. First, the customer can propose changes anytime, during review meetings, while estimating, during informal reviews inside iterations, etc. What is important is that these changes are not carried out on spot, they are kept in a Backlog of workitems. The Customer and the Product owner work together continuously to refine the details of the backlog items, and activity called Backlog Grooming, in which: The backlog items are detailed Big requirements are broken down Business priorities are revised Backlog Grooming is a continuous activity that continues to take place throughout the project. Requirements that reached a good stability level are estimated. Then, next iteration s scope is identified based on business priority, technical risk, and cost. This effectively fulfills the necessary impact analysis for the flow of changes requested by the customer. Still, there is a very important rule in the next slide Copyright Software Engineering Competence Center

27 This rule is a golden rule which governs the change management process in Scrum, and makes change control possible. Some agile teams do not abide by this rule, and it results in the following symptoms: - Team receives inconsistent requirements or even contradictory requirements, which makes the team override several old requirements - Velocity cannot be calculated, and iteration length is not kept constant - Team start to be less productive, and customers start to complain The next slide outlines an end-to-end change management procedure in a typical Scrum Agile team. Copyright Software Engineering Competence Center

28 This is a typical change management process in Agile. This is a description of the process: 1. Requirements and other request types are gathered into a backlog as backlog items 2. Team (including product owner and/or customer representatives) plans the next release. 3. Development team plans the next iteration, and start development. 4. After iteration ends, the team set for a demo and iteration review. 5. Typically, changes are requested, which are gathered in the backlog. 6. Impact is assessed and may result in changing the scope of the release, which in turn may result in changing the contract. 7. Re-iterate In the meanwhile, changes may occur due to other business circumstances other than usual review in the iteration review meetings. These are referred to as Business Changes (drawn as an accept event action). What is interesting about this process is that changes do not need a special procedure to be developed. In other words, the development process is the same as the change management process. Copyright Software Engineering Competence Center

29 This is one of the interesting Agile practices: Development Process is the Change Management Process What is interesting about it is that it removes so many wastes due to a separate change management process. In traditional processes, change management is done in a separate path (or even separate process) rather than the development path, and this introduces the following wastes: 1. Task switching between the development and change management tasks. 2. If two team are involved, late integration between the teams may introduce defects. 3. If teams who apply changes are different from the development team, learning is required, which is another type of waste. If they do apply changes without proper learning, they may introduce defects. 4. Extra management effort to plan, estimate, track two separate paths of development. In large teams, these problems are magnified, and may cause the development process to halt altogether, and all the team only work on high priority changes only! Copyright Software Engineering Competence Center

30 For teams larger than 10, it is advisable to split the team, and let every sub-team take a specific responsibility. splitting may be done on business feature/function base, or on architectural module base. If you note, the roles above is slightly changed. There is a Chief PO who takes care of the business along with the team PO s. Also, there are multiple Scum masters who are representing their teams in product level planning and analysis. Several notes about this approach: 1. There are always integration risks resulting from the fact that multiple teams working separately for a time period, then come together and integrate. In general, it is advisable to integrate frequently, but not that much. This means that every team is responsible to integrate his work on a mainline and keep all other work unchanged. This will come later in Release Branching Patterns. 2. Product level impact analysis activities are taken up one level, to the group of Scrum Masters working on the product level. 3. Change management is typically the same. However, on the product level, it takes place several iterations (every release). In this case, the product should be planned to have several internal releases before any public release is available. Copyright Software Engineering Competence Center

31 This is a typical packaging and releasing procedure. These procedures are very risky and if not managed well may result in project failure and a lot of overhead costs. Several important waste: - Environments are not defined, which may inject defects and incur relearning costs every time a deployment is done. - Improper baselining take place, or very basic code baseline. - Integration defects due to very late or non-frequent integration - System integration defects due to un-defined system interfaces - Most important one: Defects injected due to human factor. Any manual step in the process may inject defect. The key solutions in lean packaging and releasing are: 1. Automate as much as you can of this procedure to prevent defects due to manual operation 2. Frequent integration (every iteration at least). This is related to the Done-Done definition, an interesting practice in Agile. In large and risky projects, a Done- Done definition which stops at the development (or even testing) environment is a poor definition, because it concentrates integration risk at the end of the release. Rather, a typical mitigation for integration risks is to integrate frequently every iteration. Copyright Software Engineering Competence Center

32 For small teams, CM environment can be set up in one or two hours. However, for larger projects with multi-teams, CM environment have other dimensions of complexity, and need to be well thought off, and unified across all teams. These are some complexities related to large teams: - Team members may move across teams and will need to re-learn the CM environment upon every move. - Code level integration depends on a unified view of the project structure on the CM tool. - Release management may not be possible except if proper release level branching & merging techniques are employed. Otherwise, incorrect releases may take place and costly post-deployment defects may incur so much extra costs. Copyright Software Engineering Competence Center

33 Copyright Software Engineering Competence Center

34 A unified project structure is very important. In a multi-team project, all team should work in harmony. This is just an example of a project structure. These are some notes: - The project has three mainstream called Trunc - There are other active streams called Branches every branch is an active code stream that may be updated anytime a new change request is approved. In this case, the responsible team checks out this branch and start working on it - The last folder is the Tags, which keeps baselined streams - For work products which may not be part of any baseline (like meeting minutes, and periodic reports), it may be kept in a special Archive folder Copyright Software Engineering Competence Center

35 Copyright Software Engineering Competence Center

36 Backup & restore procedure is an indicator of team discipline. A team with no or inactive backup plan is a team which indicates little discipline and is introducing a great risk in the project. Copyright Software Engineering Competence Center

37 The intent of this section is to highlight the topic of Release branching & merging. The patterns presented are just a sample of so many others. Release level branching & merging is a different from individual development branching & merging practices. The former deals with the whole release, which is a responsibility of one whole team. The latter deals with an everyday development activity. Factors that may determine which pattern to follow are: - Number of development teams working in parallel - Number of customers and amount of customization for every customer - Cost or risk of Integration - Required release frequency Copyright Software Engineering Competence Center

38 Copyright Software Engineering Competence Center

39 Copyright Software Engineering Competence Center

40 Copyright Software Engineering Competence Center

41 Copyright Software Engineering Competence Center

42 Copyright Software Engineering Competence Center

43 Due to the major risks related to integration. Continuous integration is added as a standalone process increment for Configuration Management. Copyright Software Engineering Competence Center

44 This is the de-facto model for integration between teams. This model has so many problems and cause so many delays. The reasons why this model doesn t work is mentioned in the next slide. Copyright Software Engineering Competence Center

45 Copyright Software Engineering Competence Center

46 Copyright Software Engineering Competence Center

47 Copyright Software Engineering Competence Center

48 Copyright Software Engineering Competence Center

Software Engineering Part 2

Software Engineering Part 2 CS 0901341 Software Engineering Part 2 In this part, we look at 2.1 Software Process 2.2 Software Process Models 2.3 Tools and Techniques for Processing Modelling As we saw in the previous part, the concept

More information

Systems Modernization Strategies August 2017

Systems Modernization Strategies August 2017 Systems Modernization Strategies August 2017 Presented by: The included information is being presented to the Centers for Medicare & Medicaid Services (CMS) technical community in the presence of industry

More information

Watson Internet of Things. Agile Development Why requirements matter

Watson Internet of Things. Agile Development Why requirements matter Watson Internet of Things Agile Development Why requirements matter Executive summary The clear benefits of agile development better collaboration, incremental delivery, early error detection and the elimination

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Without requirements and design, programming is the art of adding bugs to an empty text file. Louis Srygley Coding Is Essentially 0% of Creating Software

More information

Business Analyst and Product Owner Where do they meet & conflict? Cherifa Mansoura

Business Analyst and Product Owner Where do they meet & conflict? Cherifa Mansoura Business Analyst and Product Owner Where do they meet & conflict? Cherifa Mansoura www.linkedin.com/in/linkedincherifamansoura Introduction BA responsibilities in an agile environment PO Responsibilities

More information

Processes and Life- Cycles. Kristian Sandahl

Processes and Life- Cycles. Kristian Sandahl Processes and Life- Cycles Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify

More information

Lean CMMI: An Iterative and Incremental Approach to CMMI-Based Process Improvement

Lean CMMI: An Iterative and Incremental Approach to CMMI-Based Process Improvement 2015 Agile Conference Lean CMMI: An Iterative and Incremental Approach to CMMI-Based Process Improvement Amr Noaman Abdel-Hamid Agile Academy Cairo, Egypt amr@agileacademy.co Alaa El-deen Hamouda Systems

More information

Test Workflow. Michael Fourman Cs2 Software Engineering

Test Workflow. Michael Fourman Cs2 Software Engineering Test Workflow Michael Fourman Introduction Verify the result from implementation by testing each build Plan the tests in each iteration Integration tests for every build within the iteration System tests

More information

1. Can you explain the PDCA cycle and where testing fits in?

1. Can you explain the PDCA cycle and where testing fits in? 1. Can you explain the PDCA cycle and where testing fits in? Software testing is an important part of the software development process. In normal software development there are four important steps, also

More information

Agile at Mid-Scale. Al Shalloway. Introducing FLow for Enterprise Transformations (FLEX)

Agile at Mid-Scale. Al Shalloway. Introducing FLow for Enterprise Transformations (FLEX) Agile at Mid-Scale Introducing FLow for Enterprise Transformations (FLEX) Al Shalloway CEO, Founder alshall@netobjectives.com @AlShalloway Co-founder of Lean-Systems Society Co-founder Lean-Kanban University

More information

Quality Management_100_Quality Checklist Procedure

Quality Management_100_Quality Checklist Procedure Quality Management_100_Quality Checklist Procedure Last updated 05/15/2017 Audience: Project Team, Process Owners, Project Management Office Frequency: As Required This procedure provides detailed information

More information

Processes and Life- Cycles. Kristian Sandahl

Processes and Life- Cycles. Kristian Sandahl Processes and Life- Cycles Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify

More information

Exam Name: Microsoft Delivering Continuous Value with Visual Studio 2012 Application Lifecycle Management

Exam Name: Microsoft Delivering Continuous Value with Visual Studio 2012 Application Lifecycle Management Vendor: Microsoft Exam Code: 70-498 Exam Name: Microsoft Delivering Continuous Value with Visual Studio 2012 Application Lifecycle Management Version: DEMO QUESTION 1 You are the lead developer and architect

More information

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016 Introduction to Agile Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016 1 Goals Introduction to Agile Life Cycles The Agile Manifesto and Agile Principles Agile Life Cycles

More information

Leading Practice: Test Strategy and Approach in Agile Projects

Leading Practice: Test Strategy and Approach in Agile Projects Leading Practice: Abstract This document provides best practices on how to strategize testing CA Project and Portfolio Management (CA PPM) in an agile project. The document does not include specific test

More information

Software Quality Engineering Courses Offered by The Westfall Team

Software Quality Engineering Courses Offered by The Westfall Team Building Skills is a 3-day course that is a subset of our course. The course is designed to provide a fundamental knowledge base and practical skills for anyone interested in implementing or improving

More information

Software Quality Engineering Courses Offered by The Westfall Team

Software Quality Engineering Courses Offered by The Westfall Team Courses is a 2-day course that is a subset of our course. The course is designed to provide an overview of techniques and practices. This course starts with an overview of software quality engineering

More information

V&V = the Verification and Validation of Deliverables

V&V = the Verification and Validation of Deliverables V&V = the Verification and Validation of Deliverables Verification and validation (V&V) are separated in the PMBOK Guide, but should be viewed as two integrated elements in the process of creating value

More information

Chapter 4 Document Driven Approach for Agile Methodology

Chapter 4 Document Driven Approach for Agile Methodology Chapter 4 Document Driven Approach for Agile Methodology In this chapter, 4.1. Introduction 4.2. Documentation Selection Factors 4.3. Minimum Required Documents 4.4. Summary 4.1. Introduction In all, the

More information

The good news. 34% of software projects succeed. Standish Group, CHAOS Report, 2003

The good news. 34% of software projects succeed. Standish Group, CHAOS Report, 2003 The good news 34% of software projects succeed. Standish Group, CHAOS Report, 2003 1 The bad news That means 66% failed! Standish Group, CHAOS Report, 2003 2 Best Practices Develop Iteratively Manage Requirements

More information

Business Analysis for Practitioners - Traceability and Monitoring (Domain 4)

Business Analysis for Practitioners - Traceability and Monitoring (Domain 4) Business Analysis for Practitioners - Traceability and Monitoring (Domain 4) COURSE STRUCTURE Introduction to Business Analysis Module 1 Needs Assessment Module 2 Business Analysis Planning Module 3 Requirements

More information

Oracle Unified Method (OUM) The OUM Implement Core Workflow The Key to Understanding and Applying OUM. An Oracle White Paper April 2012

Oracle Unified Method (OUM) The OUM Implement Core Workflow The Key to Understanding and Applying OUM. An Oracle White Paper April 2012 Oracle Unified Method (OUM) The OUM Implement Core Workflow The Key to Understanding and Applying OUM An Oracle White Paper April 2012 OUM Implement Core Workflow White Paper Introduction... 3 OUM is Iterative...

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

Sign up to mailing list Join Slack, teaching team is available. All links are on the course website Slides are uploaded there too

Sign up to mailing list Join Slack, teaching team is available. All links are on the course website Slides are uploaded there too Sign up to mailing list Join Slack, teaching team is available All links are on the course website Slides are uploaded there too Week 1 (Oct 16 Oct 20) Introduction lectures Week 2 (Oct 23 Oct 27) Work

More information

What is Continuous Integration. And how do I get there

What is Continuous Integration. And how do I get there What is Continuous Integration And how do I get there Related Workshops Introduction to DevOps Transform your Organization with DevOps Concepts DevOps Implementation Boot Camp Comprehensive literacy on

More information

Advanced Agile Techniques

Advanced Agile Techniques Advanced Agile Techniques Andy Painter, Davisbase Consulting 20+ years in software development. 5+ years working with software development teams, training, leading, and coaching Agile teams. Trained and

More information

A Guide to Branching and Merging Patterns

A Guide to Branching and Merging Patterns White Paper AccuRev A Guide to Branching and Merging Patterns White Paper A Guide to Branching and Merging Patterns Executive Summary Software configuration management (SCM) practices are at the forefront

More information

NEW! What to Expect for the Needs Assessment, Planning, Analysis, Traceability and Monitoring, and Evaluation Domains

NEW! What to Expect for the Needs Assessment, Planning, Analysis, Traceability and Monitoring, and Evaluation Domains NEW! What to Expect for the Needs Assessment, Planning, Analysis, Traceability and Monitoring, and Evaluation Domains An Article from RMC Learning Solutions www.rmcls.com This article is a compilation

More information

1. The Case for Agile 2. The Scrum Process 3. Scaling Scrum

1. The Case for Agile 2. The Scrum Process 3. Scaling Scrum 1. The Case for Agile 2. The Scrum Process 3. Scaling Scrum Delivering late Delivering over budget Delivering the wrong thing Unstable in production Costly to maintain Smart people trying to do good work

More information

By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson

By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson By: Ronny Trefftzs CSCI 5828: Foundations of Software Engineering Spring 2012 Professor: Kenneth Anderson WATERFALL? XP? SCRUM? While there is really no standard solution, the following presentation will

More information

Scale agile with the industry s most comprehensive set of agile project and portfolio management capabilities.

Scale agile with the industry s most comprehensive set of agile project and portfolio management capabilities. Product Tour: CA Agile Central Connect Strategy With Execution Scale agile with the industry s most comprehensive set of agile project and portfolio management capabilities. See how agile products from

More information

Management by Policy: A Fast Easy Approach to Prioritizing Bug Fixes

Management by Policy: A Fast Easy Approach to Prioritizing Bug Fixes Defect Management by Policy: A Fast Easy Approach to Prioritizing Bug Fixes by Mike Cohn 21 Comments Image not readable or empty Defect /uploads/blog/2018-04-10-prioritizing-by-policy-quote.gif Management

More information

Agile Test Plan How to Construct an Agile Test Plan

Agile Test Plan How to Construct an Agile Test Plan Agile Test Plan How to Construct an Agile Test Plan XBOSoft White Paper How to Construct an Agile Test Plan www.xbosoft.com 2 Agile is changing not only the way we develop software but the way we work

More information

ACCURATE STUDY GUIDES, HIGH PASSING RATE! Question & Answer. Dump Step. provides update free of charge in one year!

ACCURATE STUDY GUIDES, HIGH PASSING RATE! Question & Answer. Dump Step. provides update free of charge in one year! DUMP STEP Question & Answer ACCURATE STUDY GUIDES, HIGH PASSING RATE! Dump Step provides update free of charge in one year! http://www.dumpstep.com Exam : 70-498 Title : Delivering Continuous Value with

More information

7 Misconceptions of Enterprise Agile. August 15

7 Misconceptions of Enterprise Agile. August 15 7 Misconceptions of Enterprise Agile August 15 Misconception #1 Enterprise Agile will free you from having to do requirements 5/1/13 Copyright 2013 Blueprint 2013 Software Blueprint Systems Inc. All Rights

More information

This document is copyrighted, the distribution of this document is punishable by law.

This document is copyrighted, the distribution of this document is punishable by law. Lecture 1 A project is a temporary endeavor undertaken to create a unique product, service or result A process is a series of actions taken in order to achieve result, a project is temporary with a clear

More information

Organizational Matters

Organizational Matters Organizational Matters Christoph Matthies christoph.matthies@hpi.de Software Engineering II WS 2018/19 Prof. Plattner, Dr. Uflacker Enterprise Platform and Integration Concepts group Communication If you

More information

Making Visions Actionable. Pejman Makhfi Certified Scrum Master VP of Solution, Savvion Inc. 11/29/2008

Making Visions Actionable. Pejman Makhfi Certified Scrum Master VP of Solution, Savvion Inc. 11/29/2008 Making Visions Actionable Pejman Makhfi Certified Scrum Master VP of Solution, Savvion Inc. 11/29/2008 Development can t estimate and commit on what they do not fully understand Business can t freeze scope

More information

DASA DEVOPS. Glossary

DASA DEVOPS. Glossary DASA DEVOPS Glossary Version 1.0.0 May 2016 Agile Agile is a time-boxed and iterative approach of software delivery. It aims to build software incrementally from the start of the project. Agile Benefits

More information

Outline CS 4387/5387 SOFTWARE INTEGRATION AND V&V LECTURE 11 SOFTWARE TRACING. Requirements Tracing Team assignment (Tracing) Team work (integration)

Outline CS 4387/5387 SOFTWARE INTEGRATION AND V&V LECTURE 11 SOFTWARE TRACING. Requirements Tracing Team assignment (Tracing) Team work (integration) 1 CS 4387/5387 SOFTWARE INTEGRATION AND V&V LECTURE 11 SOFTWARE TRACING Outline 2 Requirements Tracing Team assignment (Tracing) Team work (integration) 1 What is Traceability 3 from SEI-93-TR-25, "Key

More information

Requirements for an MDM Solution

Requirements for an MDM Solution Requirements for an MDM Solution A proven approach for how to gather, document, and manage requirements for a Master Data Management solution from Inception through Implementation by Vicki McCracken Copyright

More information

The Key to Project Success: Reducing Solution Scope

The Key to Project Success: Reducing Solution Scope The Key to Project Success: Reducing Solution Scope Contact Us: 210.399.4240 info@enfocussolutions.com Copyright 2014 Enfocus Solutions Inc. Enfocus Requirements Suite is a trademark of Enfocus Solutions

More information

AGILE TEST MANAGEMENT WITH VISUAL STUDIO

AGILE TEST MANAGEMENT WITH VISUAL STUDIO AGILE TEST MANAGEMENT WITH VISUAL STUDIO any companies are implementing an agile methodology, but often still have waterfall based tools. We ve been working on several agile projects, one of which we collaborate

More information

A New Divide & Conquer Software Process Model

A New Divide & Conquer Software Process Model A New Divide & Conquer Software Process Model First A. Hina Gull, Second B. Farooque Azam Third C. Wasi Haider Butt, Fourth D. Sardar Zafar Iqbal Abstract The software system goes through a number of stages

More information

Succeed with Agile at Scale

Succeed with Agile at Scale IBM Software Group Succeed with Agile at Scale Alfred Tse/Osmond Ng Rational Software Technical Professionals Growth Markets Asia Pacific June 25, 2009 2008 IBM Corporation Agenda Agile Software Development

More information

Child Welfare Services New System Project. Requirements Management Plan

Child Welfare Services New System Project. Requirements Management Plan Child Welfare Services New System Project Requirements Management Plan September 2017 Revision History REVISION HISTORY REVISION/VERSION # DATE OF RELEASE AUTHOR SUMMARY OF CHANGES Version 1.0 October

More information

A SDLC Software Development Lifecycle It s a set of tools, artifacts, and work practices an organization uses to create software.

A SDLC Software Development Lifecycle It s a set of tools, artifacts, and work practices an organization uses to create software. 1 A SDLC Software Development Lifecycle It s a set of tools, artifacts, and work practices an organization uses to create software. That SDLC is integrated into a workflow process within the organization

More information

FAQ: Implementation Complete Phase

FAQ: Implementation Complete Phase FAQ: Implementation Complete Phase Question 1: How can I determine if the Implementation Complete milestone has been met? Response: There are several industry accepted measures for the Implementation Complete

More information

The Proposed L-Scrumban Methodology to Improve the Efficiency of Agile Software Development

The Proposed L-Scrumban Methodology to Improve the Efficiency of Agile Software Development I.J. Information Engineering and Electronic Business, 2018, 3, 23-35 Published Online May 2018 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijieeb.2018.03.04 The Proposed L-Scrumban Methodology to

More information

Agile Planning. Petri Heiramo. Agile Coach, CST

Agile Planning. Petri Heiramo. Agile Coach, CST Agile Planning Petri Heiramo Agile Coach, CST An Agile Plan Is Not a Rough Guide Some teams think that, if they did not finish all stories, that was OK, we are agile Postponing stories was seen as an acceptable

More information

Using codebeamer to Achieve

Using codebeamer to Achieve Using codebeamer to Achieve IEC 61508 Compliance Using codebeamer to achieve IEC 61508 compliance 1 Using codebeamer to achieve IEC 61508 compliance Using a smart, integrated, cross-functional platform

More information

ISTQB CTFL BH QuestionsAnswers with Explanation

ISTQB CTFL BH QuestionsAnswers with Explanation ISTQB CTFL BH0-10 - QuestionsAnswers with Explanation For Software Testing Articles Visit @ http://softwaretestinghelp.com Join the Best Software Testing Training Course @ http://softwaretestinghelp.org

More information

[control] [data] [process] [strategy] [partners] [testing] [validation]

[control] [data] [process] [strategy] [partners] [testing] [validation] [control] [data] [process] A practical approach to using Agile in an FDA regulated environment environment Jim Gunning Director, Q-CSV Johnson & Johnson [strategy] [partners] [testing] [validation] Agenda

More information

Chapter 3 Prescriptive Process Models

Chapter 3 Prescriptive Process Models Chapter 3 Prescriptive Process Models - Generic process framework (revisited) - Traditional process models - Specialized process models - The unified process Generic Process Framework Communication Involves

More information

Co-founder and Managing Director of RADTAC Specialist in Agile and Iterative approaches since mid 80s Agile Alliance Founder Member in 2002

Co-founder and Managing Director of RADTAC Specialist in Agile and Iterative approaches since mid 80s Agile Alliance Founder Member in 2002 Introduction to Agile BCS Spring School 2 nd March 2009 David Hicks david.hicks@radtac.co.uk Tel: 07778 558296 www.radtac.co.uk Introduction : David Hicks, RADTAC Co-founder and Managing Director of RADTAC

More information

What s next for Traditional Functional QA Managers?

What s next for Traditional Functional QA Managers? What s next for Traditional Functional QA Managers? JIM TRENTADUE OCTOBER 2017 JIM.TRENTADUE@OUTLOOK.COM Agenda Agile evolution of test and quality ownership Eight areas for QA Managers to focus on Breakout

More information

Software Design COSC 4353/6353 D R. R A J S I N G H

Software Design COSC 4353/6353 D R. R A J S I N G H Software Design COSC 4353/6353 D R. R A J S I N G H Outline Week 2 Software Development Process Software Development Methodologies SDLC Agile Software Development Process A structure imposed on the development

More information

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

2. True or false: In Scrum all the requirements for the project are known prior to the start of development.

2. True or false: In Scrum all the requirements for the project are known prior to the start of development. CTC-ITC 310 Program Management California State University Dominguez Hills Fall 2018 Instructor: Howard Rosenthal Assignment 5 A Deeper Look At Agile Methodologies Answer Sheet Each question is worth 10

More information

Lecture 8 Agile Software Development

Lecture 8 Agile Software Development Lecture 8 Agile Software Development Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics

More information

Testing Masters Technologies

Testing Masters Technologies 1. How will you receive the project requirements? A. The finalized SRS will be placed in a project repository; we will access it from there 2. What will you do with SRS? A. SRS stands for software requirement

More information

Aligning Technical Requirements with Agile Development

Aligning Technical Requirements with Agile Development Earned Value Management Practitioners Forum 2018 Aligning Technical Requirements with Agile Development Matthew Strain (CACI) 1 Learning Objectives Change Controlled Defining Plans Process Investigation

More information

Process Management in SCM. Author: Nina RajKumar

Process Management in SCM. Author: Nina RajKumar Author: Nina RajKumar TABLE OF CONTENTS ABSTRACT...3 WHAT IS SCM?...3 WHAT IS PROCESS MANAGEMENT?...3 A TYPICAL SCENARIO...4 CM TOOLS...6 CONCLUSION:...7 REFERENCES...8 2 Abstract This paper presents the

More information

Project Management CSC 310 Spring 2018 Howard Rosenthal

Project Management CSC 310 Spring 2018 Howard Rosenthal Project Management CSC 310 Spring 2018 Howard Rosenthal 1 Notice This course is based on and includes material from the text: A User s Manual To the PMBOK Guide Authors: Cynthia Stackpole Snyder Publisher:

More information

codebeamer ALM supports Aviation Development and Regulatory Compliance (DO-178B/C, DO-254, and more)

codebeamer ALM supports Aviation Development and Regulatory Compliance (DO-178B/C, DO-254, and more) codebeamer ALM supports Aviation Development and Regulatory Compliance (DO-178B/C, DO-254, and more) Avionics manufacturers increasingly apply embedded electronics and software in their aircrafts to extend

More information

Rational Software White Paper TP 174

Rational Software White Paper TP 174 Reaching CMM Levels 2 and 3 with the Rational Unified Process Rational Software White Paper TP 174 Table of Contents Abstract... 1 Introduction... 1 Level 2, Repeatable... 2 Requirements Management...

More information

5) A work breakdown structure is a list of tasks broken down to small manageable activities. Answer: TRUE Diff: 2 Page Ref: 42

5) A work breakdown structure is a list of tasks broken down to small manageable activities. Answer: TRUE Diff: 2 Page Ref: 42 Project Management: Process, Technology, and Practice (Vaidyanathan) Chapter 2 Process and Methods 2.1 True False 1) A procedure defines how to do a task. Diff: 1 Page Ref: 38 2) A business process is

More information

Agile Manifesto & XP

Agile Manifesto & XP Agile Manifesto & XP Chapter 3.1-3.3 CMPT 276 Dr. B. Fraser Based on slides from Software Engineering 9 th ed, Sommerville. Slides 8 18-06-10 1 Topics 1) What is Agile trying to do? 2) How to choose plan-driven

More information

The Challenge: Balancing Change and Control of Continuous Delivery at Scale

The Challenge: Balancing Change and Control of Continuous Delivery at Scale WWW.PLUTORA.COM SOLUTION BRIEF The Challenge: Balancing Change and Control of Continuous Delivery at Scale DevOps bridges the gap between development and operations to deliver business value more frequently.

More information

Succeeding in the Journey to Agile and DevOps

Succeeding in the Journey to Agile and DevOps White Paper Application Delivery Management Succeeding in the Journey to Agile and DevOps Quality delivery with Micro Focus Application Lifecycle Management (ALM) solution. Table of Contents page The Journey

More information

Testing 2. Testing: Agenda. for Systems Validation. Testing for Systems Validation CONCEPT HEIDELBERG

Testing 2. Testing: Agenda. for Systems Validation. Testing for Systems Validation CONCEPT HEIDELBERG CONCEPT HEIDELBERG GMP Compliance for January 16-17, 2003 at Istanbul, Turkey Testing for Systems Validation Dr.-Ing. Guenter Generlich guenter@generlich.de Testing 1 Testing: Agenda Techniques Principles

More information

Agile SCRUM in Systems Engineering A Practical Application

Agile SCRUM in Systems Engineering A Practical Application Agile SCRUM in Systems Engineering A Practical Application Author Paul Wheway, Principal Systems Engineer, Thales UK. Paul.wheway@uk.thalesgroup.com Categorisation Accessibility Practitioner Application

More information

Implementing an Agile Transformation Using Discipline Agile Delivery Michael J Lyons World Wide Solution Deployment Architect, IBM Rational

Implementing an Agile Transformation Using Discipline Agile Delivery Michael J Lyons World Wide Solution Deployment Architect, IBM Rational Implementing an Agile Transformation Using Discipline Agile Delivery Michael J Lyons World Wide Solution Deployment Architect, IBM Rational mjlyons@us.ibm.com Agenda Why a transformation? Why Agile / Lean?

More information

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models

Software Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment

When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment Marjorie Farmer Wireline & Perforating Global Software Discipline Manager Agenda Halliburton Situation and Challenges LIFECYCLE

More information

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK A REVIEW ON SOFTWARE TESTING AND QUALITY PROCESS IMPROVEMENT MS. NILAJA A. DESHMUKH

More information

Managing Project Risks

Managing Project Risks The Project Reality As per The Standish Group report released in 1994 only 16% of all IT projects attempted successfully occur within the "triple constraint" of cost, time, and user requirements. While

More information

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs.

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs. What are requirements? Basics of Requirement Engineering Muzaffar Iqbal Farooqi A requirement is a necessary attribute in a system, a statement that identifies a capability, characteristic, or quality

More information

Development Processes Agile - Value Driven Delivery. Stefan Sobek

Development Processes Agile - Value Driven Delivery. Stefan Sobek Development Processes Agile - Value Driven Delivery Stefan Sobek What is Value Driven Delivery? The reasons projects are undertaken is to generate business value Produce a benefit or improve a service

More information

Lean 4.0 Lean and digital automation. Lean Forum 2018

Lean 4.0 Lean and digital automation. Lean Forum 2018 Lean 4.0 Lean and digital automation Lean Forum 2018 Who are Sector Alarm? 2 The era of low tech improvement projects is over 3 4 Operational competitive advantage Operational Integrated Architecture Management

More information

Introduction of RUP - The Rational Unified Process

Introduction of RUP - The Rational Unified Process Introduction of RUP - The Rational Unified Process Jong-Hoon Lee Dependable Software Laboratory Konkuk University References Textbook: The Rational Unified Process Made Easy A Practitioner s Guide to the

More information

Scrum Team Roles and Functions

Scrum Team Roles and Functions Scrum Team Roles and Functions What is a Scrum Team? The purpose of a Scrum team is to deliver products iteratively and incrementally, maximizing opportunities for feedback Scrum teams are comprised by

More information

This chapter illustrates the evolutionary differences between

This chapter illustrates the evolutionary differences between CHAPTER 6 Contents An integrated approach Two representations CMMI process area contents Process area upgrades and additions Project management concepts process areas Project Monitoring and Control Engineering

More information

HOW WE WORK: OUR SYSTEM: OUR METHODOLOGY:

HOW WE WORK: OUR SYSTEM: OUR METHODOLOGY: HOW WE WORK: We are commonly asked about how our ticket system and workflows function, and this document addresses that in some detail. We hope the videos and text are helpful. If you d prefer a real-time

More information

Professional Scrum Developer with Rudi Larno & Steven Kockelkoren. May 9 May 13, 2011 Belgium (location TBD)

Professional Scrum Developer with Rudi Larno & Steven Kockelkoren. May 9 May 13, 2011 Belgium (location TBD) Professional Scrum Developer with Rudi Larno & Steven Kockelkoren May 9 May 13, 2011 Belgium (location TBD) Overview The Professional Scrum Developer course is a unique and intensive five-day experience

More information

CMPT 275 Software Engineering

CMPT 275 Software Engineering CMPT 275 Software Engineering Software life cycle 1 Software Life Cycle Sequence of processes completed as a software project moves from inception to retirement At beginning of project development, choose

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 Friday 30 th September 2016 - Morning Answer any THREE questions

More information

SWE 211 Software Processes

SWE 211 Software Processes SWE 211 Software Processes These slides are designed and adapted from slides provided by Software Engineering 9 /e Addison Wesley 2011 by Ian Sommerville 1 Outlines Software process models Process activities

More information

SCRUM - LESSONS FROM THE TRENCHES

SCRUM - LESSONS FROM THE TRENCHES VOL. 19 NO. 1 HELPING YOU IMPROVE YOUR ENGINEERING PROCESS http://www.processgroup.com/newsletter.html October 2012 SCRUM - LESSONS FROM THE TRENCHES NEIL POTTER AND MARY SAKRY Introduction Agile and Scrum

More information

Mature agile development using HP Quality Center

Mature agile development using HP Quality Center Mature agile development using HP Quality Center Gerald Heller software process optimization Vivit TQA webinar September 22, 2009 Using QC with agile practices Agile fundamentals Expectations & challenges

More information

Introduction to Agile/Extreme Programming

Introduction to Agile/Extreme Programming Introduction to Agile/Extreme Programming Matt Ganis, Senior Technical Staff Member (Certified Scrum Master) IBM Hawthorne, New York ganis@us.ibm.com August 2007 Session 8061 Current slides at: http://webpage.pace.edu/mganis

More information

October 16-17, Omni Shoreham 2500 Calvert Street NW Embassy Conference Room Washington, DC 20008

October 16-17, Omni Shoreham 2500 Calvert Street NW Embassy Conference Room Washington, DC 20008 2018 IBM Engineer Open Labs (NO COST - not a substitute for full training courses) October 16-17, 2018 Omni Shoreham 2500 Calvert Street NW Embassy Conference Room Washington, DC 20008 Registration 10/16:

More information

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping. i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give

More information

Agile Systems Development In a Medical Environment

Agile Systems Development In a Medical Environment Agile Systems Development In a Medical Environment 2016 Jama Software, Inc Meet Jama Requirements & Test Management Cary Bryczek Jama Software Simplify Complex Product Development https://www.jamasoftware.com/

More information

Software Engineering Lecture 5 Agile Software Development

Software Engineering Lecture 5 Agile Software Development Software Engineering Lecture 5 Agile Software Development JJCAO Mostly based on the presentation of Software Engineering, 9ed Exercise Describe the main activities in the software design process and the

More information

Software Engineering Prof. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur.

Software Engineering Prof. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur. Software Engineering Prof. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 14 Scrum Welcome to this lecture. Till now we had looked at some introductory

More information

The Faster Road to Innovation Why Workopolis Went Agile

The Faster Road to Innovation Why Workopolis Went Agile The Faster Road to Innovation Why Workopolis Went Agile What I m Covering Today Why did we transition to Agile? What we wanted to Achieve Highlights of How We Did It What we Achieved What we Learned Technology

More information

Two Branches of Software Engineering

Two Branches of Software Engineering ENTERPRISE SOFTWARE ENGINEERING & SOFTWARE ENGINEERING IN THE ENTERPRISE Two Branches of Software Engineering 1 Crafting Software Resource Input Code Debug Product Test 2 Engineering Software Resource

More information

www.agilegurgaon.com Implementing Agile in Non-Agile World By Kshitij Agrawal www.agilegurgaon.com Agenda Case Study Context Agile Implementation Challenges Agile Journey Current State and Next Steps Key

More information

Rule = A definition of what a Product Backlog is. Good Practice = A practice which is commonly done and is good to do. Avoid = A practice which, in

Rule = A definition of what a Product Backlog is. Good Practice = A practice which is commonly done and is good to do. Avoid = A practice which, in Rule = A definition of what a Product Backlog is. Good Practice = A practice which is commonly done and is good to do. Avoid = A practice which, in most cases, is recommended to be avoided. But, for almost

More information