Agile Technology Delivery Process Mr

4,153 views
3,931 views

Published on

An Agile Technology Delivery Process for large projects and organisations

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,153
On SlideShare
0
From Embeds
0
Number of Embeds
590
Actions
Shares
0
Downloads
136
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • System Components grow each iteration until all the priority requirements are deliveredThe core enabling requirements are built first then the critical high priority requirements, then the medium priority requirements etc.It is important not to over engineer the component to meet all possible needs as the medium and low priority requirements may never be delivered.
  • You can rank the requirements in a software project in order of priority. Often a project does not know all the requirements or their business value at the start of a projectIf a high value requirement is discovered during a project it can be quite hard to fit in.Sequential projects deliver all the requirements in one big bangAgile projects deliver the high value requirements in order of priority each release until the business decides to stop the project or funds run out.Scope is flexible in Agile projects.
  • Initially teams may over or underestimate the amount of work they can do in an iteration but over time they become accurate.
  • A sequential process requires us to define the solution in detail, up front, when our knowledge of the requirements and solution is poorest. In reality many requirements change during the course of the project as the business discovers what they really want.This same is true for the architectural solution. While it may seem that we can define the full technical solution up front typically many major technical issues arise during the project which must be solved at the time. This is also true if you are deploying a software package. Often the team software package is a much poorer fit to the requirements than expected at purchase leading to a much larger amount of customization than expected. Also the vendor team often has much less experience with the software package than expected leading to a lot of problems later on.We would be much better off if we defined a guiding architecture and deferred detailed solution decisions until the last possible, responsible moment.Because of all these unknowns software development is more like designing a new car model than like building one in a factory. Software development is a product design and engineering process not a manufacturing process.
  • A component team is a group of up to 5 to 10 people who analyze, design, build and test a whole group of related requirements that are delivered. This leads to a high performance team that can focus on and resolve issues quickly.Team members wear multiple hats. For instance the team lead may be the system designer and lead developer and the onsite rep may be the lead tester and system analyst. One of the developers may focus on automating tests. Another developer may specialize in developing or using common components. Testing should be separate to development to provide greater accountability and rigor and to allow for a different point of view on the requirements.Each team provides representatives to cross functional teams that are responsible for developing and integrating cross functional plans, requirements, designs, components and tests.This is the vendor development team.Circulate offshore team members into onsite rep to increase knowledge sharing.
  • Analysis and design is done one iteration before build and testThe design team pulls the top priority unplanned requirements from the requirements back log and designs them in the one month planning release.The build team pulls the top priority designed requirements from the requirements back log and builds them in the one month build release.Each team agrees at the start of the month what scope they can commit to deliver next month with the fixed resource pool available.Management cannot extend the duration or cost of the monthly release If towards the end of the month the team finds that it cannot deliver all the requirements it committed to then they remove the incomplete requirements from the iteration release and park them for completion in a later iteration. If the team finds that they have completed all the requirements early then they can add the next priority requirements to the iteration.A requirements is only done when it has been accepted by the users and is part of a build packaged for release. requirements that have been built but not passed acceptance testing are not done.
  • Requirements are broken down into things that can be developed and deployed during an iteration. They can include non functional requirements and enabling tasks like set up test environment and deploy build or user guide or operations manual. Each requirements goes through the following statuses:NewAnalysisDesignBuildTestAcceptanceDeployCompleted
  • Each component team runs the daily SCRUM process defined here.In a scrum meeting the team lead goes through the requirements / task list and asks each person how they are going, when they will finish, what issues they are facing and what they will do next.The issues are left until the end of the meeting for further discussion by all interested parties.Developers are expected to take turns managing the daily build. Whoever breaks the daily build becomes the new build manager with responsibility for fixing it.Each cross functional team will run a similar meeting every couple of days with one representative from each component team.The business team could also run a similar process and report back through one representative to the design team.
  • Changes are easy to manage. They are simply identified, added to the requirements list and analyzed and designed in the next planning iterationIf a change is a top priority it can be analyzed next month and delivered the month after.All changes are prioritized according to business value.
  • Each component team contributes specialist members to cross functional teams to co-ordinate and develop common plans, requirements, designs, tests and components.For large projects the cross functional team lead is a full time role. For medium or small projects the cross functional team lead is a member of a function team
  • Larger agile teams are formed by structuring the teams into cross functional component teams. Each team contributes specialist members to cross functional teams to co-ordinate and develop common plans, requirements, designs, tests and components.Each team members primary reporting relationship is to their component team lead with a secondary reporting line to the cross functional team leads.For outsourced projects the component teams report to the vendor development manager and the functional leads report to the project manager. Would be good to have Agile coach and training to help teams transition to this approach.
  • Management and planning overhead is reduced by reducing effort wasted developing long detailed documents which quickly become outdated and arguing about changes.A stable resource model provides greater predictability for the vendor and for the customer.It allows knowledge retention, continuity of resources and enhanced learning over time.This provides faster response through greater knowledge.
  • Each offshore component team has an onsite representative who forms part of the onsite design team. The onsite rep is responsible for communicating with the offshore team. The offshore team members will take turns being the onsite rep to improve communication and knowledge transfer.
  • A fixed release calendar makes it much easier to synchronize interdependent projects
  • Analysis and design is done one iteration before build and testThe design team pulls the top priority unplanned requirements from the requirements back log and designs them in the one month planning release.The build team pulls the top priority designed requirements from the requirements back log and builds them in the one month build release.Each team agrees at the start of the month what scope they can commit to deliver next month with the fixed resource pool available.Management cannot extend the duration or cost of the monthly release If towards the end of the month the team finds that it cannot deliver all the requirements it committed to then they remove the incomplete requirements from the iteration release and park them for completion in a later iteration. If the team finds that they have completed all the requirements early then they can add the next priority requirements to the iteration.A requirements is only done when it has been accepted by the users and is part of a build packaged for release. requirements that have been built but not passed acceptance testing are not done.
  • Analysis and design is done one iteration before build and testThe design team pulls the top priority unplanned requirements from the requirements back log and designs them in the one month planning release.The build team pulls the top priority designed requirements from the requirements back log and builds them in the one month build release.Each team agrees at the start of the month what scope they can commit to deliver next month with the fixed resource pool available.Management cannot extend the duration or cost of the monthly release If towards the end of the month the team finds that it cannot deliver all the requirements it committed to then they remove the incomplete requirements from the iteration release and park them for completion in a later iteration. If the team finds that they have completed all the requirements early then they can add the next priority requirements to the iteration.A requirements is only done when it has been accepted by the users and is part of a build packaged for release. requirements that have been built but not passed acceptance testing are not done.
  • Analysis and design is done one iteration before build and testThe design team pulls the top priority unplanned requirements from the requirements back log and designs them in the one month planning release.The build team pulls the top priority designed requirements from the requirements back log and builds them in the one month build release.Each team agrees at the start of the month what scope they can commit to deliver next month with the fixed resource pool available.Management cannot extend the duration or cost of the monthly release If towards the end of the month the team finds that it cannot deliver all the requirements it committed to then they remove the incomplete requirements from the iteration release and park them for completion in a later iteration. If the team finds that they have completed all the requirements early then they can add the next priority requirements to the iteration.A requirements is only done when it has been accepted by the users and is part of a build packaged for release. requirements that have been built but not passed acceptance testing are not done.
  • Agile Technology Delivery Process Mr

    1. 1. Agile Development<br />By Murray Robinsonwww.linkedin.com/in/murrayrobinson<br />Copyright and Intellectual Property retained by Murray Robinson.<br />1<br />
    2. 2. Copyright and Intellectual Property retained by Murray Robinson.<br />2<br />What is Agile Development?<br />Agile development is a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between cross-functional teams<br />Agile development is a well defined delivery process that has been proven to reduce time to market, delivery risk and costs for many organisations and projects.<br />Agile development applies “Lean Production” principles and techniques to software development <br />Agile development can give us a sustainable competitive advantage by allowing us to deliver quality IT systems faster than our competitors at a lower cost<br />2<br />
    3. 3. Copyright and Intellectual Property retained by Murray Robinson.<br />3<br />Agile Development is a family of lean, iterative software development methodologies<br />Lean Production<br />RUP<br />Scrum<br />FDD<br />Iterative<br />OOD<br />TDD<br />Design<br />Patterns<br />Continuous Integration<br />XP<br />
    4. 4. Copyright and Intellectual Property retained by Murray Robinson.<br />4<br />In Agile projects requirements are delivered in priority order in a series of small fixed iterations<br />Iteration 4<br />Iteration 3<br />Iteration 2<br />Iteration 1<br />System Component A<br />4<br />
    5. 5. Copyright and Intellectual Property retained by Murray Robinson.<br />5<br />Agile projects deliver high value features early!<br />75%<br />Business Value<br />Release<br />Iteration<br />5<br />
    6. 6. Copyright and Intellectual Property retained by Murray Robinson.<br />6<br />Agile project progress is clear and predictable<br />Velocity<br />Iteration<br />6<br />
    7. 7. Copyright and Intellectual Property retained by Murray Robinson.<br />7<br />Agile implementation plan<br />Seek Executive support and funding for an Agile change Management Project<br />Define Agile processes and deliverables in detail<br />Apply Agile in a trial project<br />Seek Quality Group endorsement for Agile<br />Develop an Agile training program<br />Launch Agile<br />7<br />
    8. 8. Problems with a traditional sequential system engineering process<br />
    9. 9. Copyright and Intellectual Property retained by Murray Robinson.<br />9<br />The problem from the business point of view<br />IT projects take much longer than the business want<br />IT projects cost much more than the business expect<br />IT can’t commit to budgets and delivery dates until the start of build <br />IT don’t understand the user experience <br />The business are expected to sign off requirements and design when they’re not sure their completely right<br />IT make it very hard to make changes during the project <br />Fixed price, time and cost projects are anything but<br />IT Projects often have major cost and schedule blow outs which require major scope reductions or budget and time increases to bring them back on track <br />IT infrastructure seems to be a major source of project delays and problems<br />9<br />
    10. 10. Copyright and Intellectual Property retained by Murray Robinson.<br />10<br />10<br />The problem from the IT point of view<br />Business set unrealistic budget and schedule targets up front before IT know how long things will take and how much they will cost <br />Funding approval is a very slow process <br />Business take a long time to sign off requirements and design <br />Business constantly change requirements <br />Business wont prioritise requirements unless project goes off track <br />Business don’t understand that IT projects are complex and high risk <br />Vendors and infrastructure groups need very close management to ensure delivery<br />Major IT project blowouts are often caused by infrastructure delays<br />IT projects are dependent on infrastructure and other projects which may run very late<br />
    11. 11. Copyright and Intellectual Property retained by Murray Robinson.<br />11<br />A sequential system development process has many handoff’s<br />11<br />
    12. 12. Copyright and Intellectual Property retained by Murray Robinson.<br />12<br />Handoff’s between groups cause a lot of wasted time and effort<br />12<br />
    13. 13. Copyright and Intellectual Property retained by Murray Robinson.<br />13<br />A sequential project wrongly assumes that the business knows all the requirements in detail up front<br />13<br />
    14. 14. Copyright and Intellectual Property retained by Murray Robinson.<br />14<br />14<br />A traditional sequential project can take a long time to deliver business benefit<br />
    15. 15. Copyright and Intellectual Property retained by Murray Robinson.<br />15<br />Sequential Projects deliver value at the end.Agile projects deliver value earlier<br />
    16. 16. Copyright and Intellectual Property retained by Murray Robinson.<br />16<br />Waterfall project assumptions are not realistic<br />
    17. 17. The Agile Development Process in More Detail<br />
    18. 18. Copyright and Intellectual Property retained by Murray Robinson.<br />18<br />Agile Assumptions<br />Systems grow and evolve over time<br />Stakeholders can’t fully define what they want until they see it<br />Business requirements change as the market changes<br />All IT projects have to trade off scope against time, budget and quality<br />The risk of project failure increases linearly as the size of the project increases<br />There are always a lot of unexpected business and technical issues that must be resolved as you go along <br />Most delays and waste are caused by handoffs from one group to another<br />There are substantial communication delays and costs when teams are separated by organization, location and culture<br />Co-located, Cross functional project teams resolve issues much faster than specialized functional teams in separate locations<br />The best way to reduce delivery risk is to integrate and deliver as often as possible<br />18<br />
    19. 19. Copyright and Intellectual Property retained by Murray Robinson.<br />19<br />The Agile Manifesto<br />In Agile projects we value<br />Individuals and interactions over processes and tools<br />Working software over comprehensive documentation<br />Customer collaboration over contract negotiation<br />Responding to change over following a plan <br />That is, while there is value in the items on the right, we value the items on the left more.<br />19<br />
    20. 20. Copyright and Intellectual Property retained by Murray Robinson.<br />20<br />Agile Principles<br />Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. <br />We welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. <br />We deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. <br />Business people and developers must work together daily throughout the project. <br />We build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. <br />Working software is the primary measure of progress.<br />
    21. 21. Copyright and Intellectual Property retained by Murray Robinson.<br />21<br />Agile Principles<br />The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. <br />Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. <br />Continuous attention to technical excellence and good design enhances agility. <br />Simplicity--the art of maximizing the amount of work not done--is essential. <br />The best architectures, requirements, and designs emerge from self-organizing teams. <br />At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly. <br />
    22. 22. Copyright and Intellectual Property retained by Murray Robinson.<br />22<br />Agile Development applies the principles of Lean Production to software development<br />Eliminate waste <br />Amplify learning <br />Keep your options open <br />Deliver as fast as possible <br />Empower the team <br />Build integrity in <br />Optimize the Whole <br />Put the customer first<br />Continually Improve the Process<br />22<br />
    23. 23. Copyright and Intellectual Property retained by Murray Robinson.<br />23<br />Agile uses the Plan, Do, Check, Act cycle in every iteration<br />
    24. 24. Copyright and Intellectual Property retained by Murray Robinson.<br />24<br />Agile uses Object Oriented Design to reduce the cost of change<br />User Class<br /><ul><li>Data
    25. 25. UserID
    26. 26. First Name
    27. 27. Last Name
    28. 28.
    29. 29. Methods
    30. 30. View
    31. 31. Edit
    32. 32. …</li></ul>User Products Class<br /><ul><li>Data
    33. 33. UserID
    34. 34. ProductID
    35. 35. Status
    36. 36.
    37. 37. Methods
    38. 38. View
    39. 39. Edit
    40. 40. …</li></ul>View User Process<br /><ul><li>Data
    41. 41. User Name
    42. 42.
    43. 43. Methods
    44. 44. Validate
    45. 45. Create User View
    46. 46. …</li></ul>View User UI<br /><ul><li>Data
    47. 47. User name
    48. 48.
    49. 49. Methods
    50. 50. Display
    51. 51. Validate
    52. 52. Update
    53. 53. …</li></ul>Product Class<br /><ul><li>Data
    54. 54. ProductID
    55. 55. Product Name
    56. 56. Setup price
    57. 57. Annual price…
    58. 58. Methods
    59. 59. View
    60. 60. Edit
    61. 61. …</li></ul>24<br />
    62. 62. Copyright and Intellectual Property retained by Murray Robinson.<br />25<br />Agile Projects use co-located cross functional teams to minimize handoff delays<br />Team Lead / Scrum Master<br />SME / Business Analyst<br />Architect / System Designer<br />Team members play multiple roles<br />Test Analyst<br />UI / Component Developer<br />DBA / Sys Admin / Network Eng<br />25<br />
    63. 63. Copyright and Intellectual Property retained by Murray Robinson.<br />26<br />Overall Agile Funding Process<br />Fund Solution Delivery<br />Fund Solution Vision<br />26<br />
    64. 64. Copyright and Intellectual Property retained by Murray Robinson.<br />27<br />Solution Vision<br />Solution Vision Plan<br />Initial Use Case Model<br />Initial Object Model<br />Initial System Model<br />Initial UI Design Concepts<br />Product Roadmap<br />Initial Prioritised Feature List<br />Project Estimate<br />Business Case <br />Initial Project Plan<br />Solution Vision Lessons Learned<br />Solution Vision Process Changes<br />
    65. 65. Copyright and Intellectual Property retained by Murray Robinson.<br />28<br />Solution Delivery<br />Iteration 1<br />Iteration 2<br />Iteration 3<br />Iteration 4<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br />Design, <br />Build &<br />Test<br />Design, <br />Build &<br />Test<br />Design,<br />Build &<br />Test<br />Design,<br />Build &<br />Test<br />UAT & <br />Deploy<br />UAT<br />UAT & <br />Deploy<br />UAT<br />Release 1<br />Release 2<br />Agile projects deliver batches of features in short, regular iterations<br />28<br />
    66. 66. Copyright and Intellectual Property retained by Murray Robinson.<br />29<br />Iteration Analysis & Design<br />Iteration Plan<br />Iteration Use Cases<br />Iteration Activity Diagrams<br />Detailed Feature List<br />Iteration Graphic Design<br />Iteration Class Diagrams<br />Iteration System Model<br />Iteration Wireframes<br />Iteration System and Acceptance Test Cases<br />Iteration Test Plan<br />Iteration Lessons Learned<br />Iteration Process Changes<br />
    67. 67. Copyright and Intellectual Property retained by Murray Robinson.<br />30<br />Iteration Design & Build<br />Updated Iteration Plan<br />Updated Feature List<br />Automated Xunit Tests<br />Automated Regression Tests<br />UML Sequence Diagrams<br />UI Code<br />Object Oriented Code<br />Technical Proof of Concept<br />Test Results<br />Progress Charts<br />Iteration Lessons Learned<br /> Iteration Process Changes<br />
    68. 68. Copyright and Intellectual Property retained by Murray Robinson.<br />31<br />Each iteration each agile team pulls the top priority items off the feature list<br />High level features<br />Detailed features<br />Built & tested features<br />Deployed features<br />Component team 1<br />Deployment team<br />Analysis & <br />Design team<br />Component team 2<br />31<br />
    69. 69. Copyright and Intellectual Property retained by Murray Robinson.<br />32<br />The Feature list<br />32<br />
    70. 70. Copyright and Intellectual Property retained by Murray Robinson.<br />33<br />Agile Teams have a Daily Cycle<br />33<br />
    71. 71. Copyright and Intellectual Property retained by Murray Robinson.<br />34<br />Agile Change management is fast and efficient<br />If a change is a top priority it can be analyzed in one iteration and delivered the one after.<br />34<br />
    72. 72. Copyright and Intellectual Property retained by Murray Robinson.<br />35<br />Agile deliverables are lean, visual and iterative<br />Project Management<br />Business Analysis<br />Product Management<br />Design and Build<br />UI Design<br />Testing<br />Use Case Model<br />UML Object Model<br />UML System Model<br />Product Roadmap<br />Release Plan<br />UI Concepts<br />Test Plan<br />Prioritised Feature List<br />Project Budget<br />Business Case<br />Graphic Design<br />UML Class Diagrams<br />List of Test Cases<br />Technical Proof of Concept<br />Use Cases<br />UML Sequence Diagrams<br />Project Plan<br />System and Acceptance Test Cases<br />Automated Xunit Tests<br />Comm’s Plan<br />Wireframes<br />Automated Regression Tests<br />UI Code<br />Object Oriented Code<br />Technical Proof of Concept<br />UML Activity Diagrams<br />Progress Charts<br />Training Package<br />Test Results<br />Deployment Package<br />Comm’s Package<br />35<br />
    73. 73. Copyright and Intellectual Property retained by Murray Robinson.<br />36<br />Senior Management play a critical role<br />A fast moving agile project will reveal many blockages in the organisation that are slowing progress for all teams<br />Senior management need to ask their agile teams everyday “what blockers are you having that you can’t resolve yourself”<br />Management should focus on removing these blockers as soon as possible at the root cause level<br />Often the best way to solve these problems is to move specialists from different groups and organizations into co-located, cross functional project teams<br />And to streamline business processes to minimize queues of work<br />
    74. 74. Copyright and Intellectual Property retained by Murray Robinson.<br />37<br />Business Benefits of Agile<br />Delivers high priority requirements to market in months<br />Removes a lot of delays and overhead from the process <br />Allows us to commit to a fixed budget and schedule early <br />Projects can get to a funded business case sooner<br />Allows lots of early feedback from users<br />Doesn't require the business to sign off everything up front<br />Easy to make high priority changes during the project <br />Provides a predictable delivery speed and cost <br />37<br />
    75. 75. Copyright and Intellectual Property retained by Murray Robinson.<br />38<br />IT Benefits of Agile<br />Allows IT to commit to a fixed budget and schedule early <br />Funding is quicker and easier to manage<br />Ensures signoffs are done quickly and regularly <br />Handles requirement changes quickly and easily <br />Ensures requirements are prioritized properly every month <br />Ensures that issues are found and resolved early<br />Cross functional teams bring the different groups much closer together <br />Reduces project dependency issues<br />38<br />
    76. 76. Copyright and Intellectual Property retained by Murray Robinson.<br />39<br />Criteria for Agile projects<br />Use an Agile scorecard to determine if projects are suitable for Agile development<br />Implement strategies to address issues that might block Agile development. <br />For example if the team has no Agile experience, the vendors methods are hostile to agile processes and the customer is largely unavailable then it would not be a good candidate for Agile development<br />We can address these issues by bringing on an experienced Agile coach, changing to a vendor whose methods support agile development and getting the customer to appoint a full time product manager/ BA<br />39<br />
    77. 77. Copyright and Intellectual Property retained by Murray Robinson.<br />40<br />Agile Scorecard<br />
    78. 78. Copyright and Intellectual Property retained by Murray Robinson.<br />41<br />A Documented Agile Process can be Methodology compliant<br />Compliant with PMBOK v4<br />Compliant with TQM processes<br />Compliant with ITIL 3.0<br />Compliant with CMMI<br />41<br />
    79. 79. Copyright and Intellectual Property retained by Murray Robinson.<br />42<br />Agile Definitions<br />
    80. 80. Copyright and Intellectual Property retained by Murray Robinson.<br />43<br />Agile Definitions<br />
    81. 81. Copyright and Intellectual Property retained by Murray Robinson.<br />44<br />Scrum Process Summary<br />
    82. 82. Copyright and Intellectual Property retained by Murray Robinson.<br />45<br />Acceptance Test Driven Design & Development<br />Automated Unit Tests<br />Add a unit test<br />Run test<br />Pass<br />Fail<br />Refactor code<br />Change code<br />Automated UI Tests<br />Automated Acceptance Tests<br />User Story<br />Acceptance Criteria<br />Automated Performance Tests<br />Exploratory Testing<br />
    83. 83. Agile Structure for Large Projects with Offshore Vendors<br />
    84. 84. Copyright and Intellectual Property retained by Murray Robinson.<br />47<br />Large projects are divided up into components which are delivered by small agile teams of 7 people<br />Component team 1<br />Component team 7<br />Component team 2<br />Management team<br />Analysis team<br />Onsite team<br />Product team<br />Testing team<br />Design team<br />Component team 3<br />Component team 6<br />Common Component team<br />Infrastructure team<br />Component team 5<br />Component team 4<br />Agile component teams synchronize by contributing members to cross functional project teams.<br />
    85. 85. Copyright and Intellectual Property retained by Murray Robinson.<br />48<br />A large project team is organized by feature set and function<br />48<br />
    86. 86. Copyright and Intellectual Property retained by Murray Robinson.<br />49<br />Agile projects have a stable resource profile<br />Vendor Build & Test Team<br />Vendor design team<br />IT project team<br />Business project team<br />49<br />
    87. 87. Copyright and Intellectual Property retained by Murray Robinson.<br />50<br />Offshore teams have onshore representatives who liaise with other onshore teams on their behalf<br />50<br />
    88. 88. Copyright and Intellectual Property retained by Murray Robinson.<br />51<br />Vendors are engaged on a capped T&M with a constant resource plan and fixed price per month<br />51<br />51<br />
    89. 89. Copyright and Intellectual Property retained by Murray Robinson.<br />52<br />Related Agile projects are synchronized by a fixed release calendar<br />Project 1<br />Project 2<br />Project 3<br />Synchronized release<br />52<br />
    90. 90. Appendix<br />
    91. 91. Copyright and Intellectual Property retained by Murray Robinson.<br />54<br />Strengths and weaknesses of a well defined systems engineering process <br />Strengths<br />Weaknesses<br />Well defined process<br />Enforces that a consistent system development process is followed <br />Can be tailored<br />Provides deliverable templates<br />Provides a training program<br />Has a Quality Governance framework<br />Regular quality audits<br />Agreed and understood by most users<br />Most projects that use the standard process deliver something<br />Sequential process that takes much longer and costs far more than the business want<br />Heavy documentation overhead<br />Very resistant to change<br />Lots of delays for reviews and approvals<br />Requires a big up front design effort when our knowledge is poorest <br />Many projects have major cost or schedule blow outs and have to reduce scope to get back on track<br />Lot of wasted time and effort designing things that are changed or de-scoped<br />The critical build process is often a black box<br />54<br />
    92. 92. Copyright and Intellectual Property retained by Murray Robinson.<br />55<br />Agile development is based on an iterative development process. <br />Iteration 1<br />Iteration 2<br />Iteration 3<br />Iteration 4<br />In an ideal process the agile team does all SDLC activities during one iteration<br />Requires a very experienced, co-located, cross functional team onsite<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />UAT & <br />Deploy<br />UAT<br />UAT & <br />Deploy<br />UAT<br />Release 1<br />Release 2<br />High priority scope changes can be implemented in 1 iteration<br />55<br />
    93. 93. Copyright and Intellectual Property retained by Murray Robinson.<br />56<br />Solution Delivery<br />Iteration 1<br />Iteration 2<br />Iteration 3<br />Iteration 4<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />UAT & <br />Deploy<br />UAT<br />UAT & <br />Deploy<br />UAT<br />Release 1<br />Release 2<br />Agile projects deliver batches of features in regular, short iterations<br />56<br />
    94. 94. Copyright and Intellectual Property retained by Murray Robinson.<br />57<br />Sometimes the testing is done one iteration afterwards<br />Iteration 1<br />Iteration 2<br />Iteration 3<br />Iteration 4<br />A slower more cautious approach<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br /> Analysis & <br />Design<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />Build &<br />Test<br />UAT & <br />Deploy<br />UAT<br />UAT & <br />Deploy<br />UAT<br />Release 1<br />Release 2<br />High priority scope changes can be implemented in 3 iterations<br />57<br />

    ×