Download presentation
Presentation is loading. Please wait.
Published bySalvatore Rencher Modified over 9 years ago
1
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency. All rights reserved. TEA confidential and proprietary. Using Continuous Integration for Quality Improvement with Agile Mark Gentzel, Project Manager, PMO Manjusha Gokhale, Manager, IV&V Services Texas Education Agency July 14, 2010
2
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Agenda Problem Statement What Is Continuous Integration (CI)? Comparison Between Waterfall and Agile Using CI within an Agile Environment Specific Agile Technique Waterfall vs. Agile Project Comparison Quality Acceptance Criteria TEA CI Process Benefits for Software Development Benefits for Independent Testing Best Practices and Lessons Learned Conclusion 2
3
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Problem Statement Adoption of Agile development methodology requires new processes: Continuous Integration Continuous quality control Tighter integration between development and testing teams 3
4
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. What Is Continuous Integration? Integrate development work frequently Integrate and test deliverables frequently rather than waiting until the end of the development cycle Integrations verified by an automated build to detect integration errors as quickly as possible Significantly reduced integration problems Cohesive software developed more rapidly 4
5
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Comparison Between Waterfall and Agile Classic Waterfall Long requirements phase before design and development Long development phase Testing done post-development with defects returned to team Rework difficult and complex because of advanced stage of code Modified Agile Abbreviated requirements phase to gather 40% of the requirements Abbreviated design phase to develop high-level architecture Short three-week sprints with code delivery to Independent Verification and Validation (IV&V) post-sprint User acceptance with production deployment Rework for previous sprint included in current sprint Rapid rework because of simplified code at acceptance point Quicker testing because of functional isolation and established code base for each test delivery 5
6
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Using CI within an Agile Environment Solution—Extending and updating our Continuous Integration processes Automated processes where code is subjected to metrics to determine its validity and stability Metrics vary based on server environment Example of metrics: Successful compilation Successful automated unit testing Successful regression testing Low cyclomatic complexity 6
7
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Specific Agile Technique Three-week sprints One major feature or bundle of minor features per sprint Four days of IV&V testing per sprint Requirements gathering completed a few sprints ahead Sprint planning meetings during the week between sprints Sprint retrospecitive meetings the week after sprints 7
8
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Waterfall vs. Agile Project Comparison 8
9
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Quality Acceptance Criteria Build compiles successfully Unit tests run successfully and build passes unit tests Build passes code review Build passes all automated functional regression tests Build can be deployed successfully! 9
10
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. TEA CI Process 10 Checks for new code Retrieves new code Deploys Polling CI Processor Builds Code Source Control Processor Code Repository Unit Test Successful Regression Test Successful Complexity Test Successful Automated Test Suites Application Environment
11
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Benefits for Software Development Ensures that compilation errors are immediately discovered and addressed Provides unit test coverage, ensuring comprehensiveness Provides metrics to ensure that code is not excessively complex Reduces build and deployment times by ensuring stable code bases Ensures that unexpected code variances are detected and addressed Reduces repetitive builds and deployments 11
12
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Benefits for Independent Testing Continuous code integration Quality control applied continuously to small pieces of code, providing immediate feedback Support of test-driven development Rapid delivery of stable and cohesive software to customers Reduced risk of finding critical bugs later in lifecycle Reduced regression test costs through automated testing Multiple stable labels, for flexibility in test deployment 12
13
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Benefits for Testing 13 Automated Scripts Introduction
14
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Benefits for Testing 14
15
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Best Practices and Lessons Learned Best Practices Maintain a single source repository Do frequent check-ins Automate the build and deployment Test in a clone of the production environment Lessons Learned Make the build self-testing Decide when to integrate to control risk Test at the right level of granularity Refactor regularly 15
16
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Conclusion Continuous Integration for Continuous Quality Control Close collaboration between development and IV&V groups Reduced product delivery time Increase in team productivity leading to reduced costs 16
17
Copyright 2002, Medical Present Value, Inc. All rights reserved. Copyright © 2010 Texas Education Agency All rights reserved. TEA confidential and proprietary. Thank You! Mark.Gentzel@tea.state.tx.us Manjusha.Gokhale@tea.state.tx.us 17
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.