410 likes | 548 Views
02 | Define an Effective End-to-End Software Development Lifecycle. Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM. Module Overview.
E N D
02 | Define an Effective End-to-End Software Development Lifecycle Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM
Module Overview • Understand the value of an end-to-end view of Application Lifecycle Management (ALM) tools and practices • Explain the benefits of fast feedback • Implement strategies to reduce end-to-end cycle time • Implement strategies to improve software quality • Implement strategies to reduce waste • Create a process improvement plan
Tips • This section is all about attitude and mindset, not knowing specific details. • Having the right mindset will get you through nearly all of the questions, without having to focus on specific technical details.
Understand the value of an end-to-end view of Application Lifecycle Management (ALM) tools and practices
What the Study Guide says… • Understand the value of an end-to-end view of Application Lifecycle Management (ALM) tools and practices. • understanding that an observable problem may be indicative of a more general process issue • explaining the difference between optimizing a piece of the ALM process such as manual testing and optimizing the entire ALM process
Work Item Traceability and Flow Stakeholder Engagement Feedback Operations Project Management Quality Assurance Development Test Plans Builds Storyboards Backlog Items Test Suites Code Reviews Changesets Tasks Test Cases Automated Tests Operational Issues
Value delivery impediments Operations Users/Stakeholders Development & testing PRODUCT BACKLOG REQUIREMENTS Misunderstoodrequirements Define Ideation Can’t get actionable feedback New learning's are not captured Develop Idea to working software Production incidents are hard to debug and resolve Implement Monitor Operate Working software in production Value realization • Churn in requirements and priorities • Quality afterthought • No traceability • Loss of focus OPS BACKLOG Unmet userexpectations Disparate management tools • Operations readiness requirements are not met WORKING SOFTWARE
Team barriers = Value delivery impediments Increased cycle times Increased costs Dissatisfied users & stakeholders Lost value opportunities Users/ Stakeholders Development Testing Operations | |
Teams without barriers deliver continuous value Users/Stakeholders Development & testing Operations PRODUCT BACKLOG REQUIREMENTS Define Ideation ACTIONABLE LEARNING Develop Idea to working software Continuous value delivery Implement Monitor Operate Working software in production Value realization OPS BACKLOG WORKING SOFTWARE SHARED ARTIFACTS
Visual Studio ALMTeams without barriers. Continuous value delivery • Integration • Traceability • Collaboration • Faster cycle times • Faster time-to-market • Balancing agility and quality • Revenue growth • Cost reduction • Ecstatic users • Realized value opportunities Teams without barriers ContinuousValue Deliver
What the Study Guide says… • Explain the benefits of fast feedback. • explaining the importance of fast feedback related to communicating requirements • explaining the benefits of end customer feedback to early software iterations
Feedback Loops Measure Adjust
Feedback Loops Measure Adjust
Problems with Slow Feedback • Introduce more work into the system • Long time between code and bug fix makes it harder for developer • Long time between bug find and bug fix verification makes it harder for the tester • Added complexity • More context switching • Lowers overall productivity
New Tools to speed feedback • Requirements - PowerPoint Storyboarding • Customer Feedback - Feedback Client
What the Study Guide says… • Implement strategies to reduce end-to-end cycle time. • identifying bottlenecks in the delivery process • understanding the relationship between work in process (WIP) and cycle time • identifying metrics that highlight bottlenecks • creating potential solutions whose effectiveness can be validated
Little’s Law (Two Minutes of Math) Delivery Rate = Work-in-Progress ÷ Lead Time impliesLead Time = Work-in-Progress ÷ Delivery Rate thus WIP is a LEADING metric for Lead Time
Key metrics for identifying bottlenecks • Leading indicators • Queue sizes • Batch Sizes • Lagging indicators • Velocity • Other metrics: • Rework costs • Bug trends
What the Study Guide says… • Implement strategies to improve software quality. • identifying process steps that introduce defects • understanding the end-to-end quality process • bringing quality efforts early in the development cycle
Conventional QA in the Modern app lifecycle Document requirements as BRDs and functional specs Solution managers Write code to implement requirements Developers QA UAT Operations readiness verification Pre-deployment verification UAT post implementation and systems testing Testing post implementation. Mostly manual with limited automation. Users Operations Software Testers Late engagement of stakeholder functions | Late detection of unmet requirements | Increased cycle times | Increased costs
Quality enablement practicesContinuous quality for continuous value delivery Acceptance test planning MTTR reduction Team Continuous quality Shortened cycle times Testing in production Continuous acceptance testing Team integration | Early detection of unmet requirements | Shortened cycle times | Reduced costs
Continuous acceptance testing Testing toolbox Role tailored tools • Manual testing • User testing • Ad-hoc exploratory testing • Planned manual testing • Automated testing • Keyword testing • UI automation testing • Performance testing Continuous integrations Build | Deploy | Test Lab management automation SIT Dev UAT Prod • Automated testing • Unit testing • Integration testing • Performance testing • Load testing Stress Shortened cycle times
What the Study Guide says… • Implement strategies to reduce waste. • identifying wasteful activities • creating strategies to eliminate waste • measuring the effectiveness of waste removal activities
What is waste? • Inventory - Incomplete work. Work not in production • Overproduction - Rarely used features • Processing – Unneeded or excessive documentation / Looking for data • Transport – Handovers, context switching • Excessive Motion - Task Switching (Working on several projects in parallel, 20% loss) • Waiting - Delays (caused by large batches, or too much work-in-process) • Rework due to defects- Bugs
Dealing with Waste • Finding Waste: • Look for delays or bottlenecks in your software development. • Work backward to identify the cause. • The cause is likely wasteful. • Eliminating Waste: • Depends… • Likely, focus on continuous improvement and cycle time reduction • Key metrics: • Cycle time reduction • Rework costs • Bug trends
What the Study Guide says… • Create a process improvement plan. • creating strategies for implementing organizational change • identifying key metrics to be tracked during the improvement effort • creating consensus for the change
Key metrics • Business value • Rework costs • Cycle time • Bug trends • Queue sizes • Batch Sizes
EXAM BEST BETS • Visit http://www.visualstudio.com/alm for an overview of the theory, and how theory aligns with the Visual Studio tools • Focus on reducing cycle time, speeding feedback, small batch sizes, breaking down barriers, fast communication, minimally viable products and building quality in • If you’re not convinced focusing on completing things faster with high quality is the most important thing, fake it for the test. • For tools, understand Storyboarding and the Feedback Client