240 likes | 254 Views
Learn about GAI SDLC phases, iterative development, project life cycles, and roles within iterations for progressive and predictable delivery of software functionality.
E N D
IT Services SDLC, Peer and Gate Review Approach September 2011
Agenda • Review three supported Methodologies • Project Life Cycle • Software Development Life Cycle • Scrum • Review Peer and Gate Review Approaches within methodologies • Q&A
Project Life Cycle (PLC) • Non-development life cycle • Straight Forward • Internal projects • Upgrades • Installs • Conversions • Shared artifacts • Where appropriate
The SDLC – What Is It? • The SDLC is a hybrid of the Rational Unified Process (RUP) and Agile development methodologies. • There are four distinct phases: • Inception • Elaboration • Construction • Transition • The GAI SDLC: • Phases provide incremental, or staged, delivery of functionality. • Iterations provide the progressive development and rework of functionality. • Provides repeatable/predictable scheduling, development, and testing processes. • Emphasizes the continual delivery of business value at predictable intervals. • Shows consistent progress while being better able to respond to changes.
“A Phased Approach” Inception Elaboration Construction Transition Propose Define and Approve the Project Prototype Capabilities & Prove-Out the Architecture Develop the Solution Move the Solution into Production
Incremental Development • The progressive development of features and functionality via the delivery of smaller pieces that are valuable to the customer • Encourages progressive integration (not “big bang” integration) • Each Phase can have 1 or more releases • Each release can add functionality Phase Release Iteration Things of Value
Roles Within Iteration • Business Partner • Program Manager • PMO • Project Manager • Business Analyst • Architect • Development Lead • Data Modeler • Web Services • Tester
SDLC Releases • What comprises a Release? • “… A stable, executable version of product, together with any artifacts necessary to use this release, such as release notes or installation instructions” • (Rational Unified Process Glossary) • GAI ITS Releases: • A release is a completed set of functionality with artifacts (business and internal). • Each Phase may deliver one or more “releases.” • A release progresses through each of the environments. • Releases begin with “1” and increment by “1” as necessary. • A release can be “major” (increment by 1) or “minor” (increment by .1). • Shows consistent progress while being better able to respond to changes.
Putting It Together - Iterative Development Inception Request • Business Partner makes requests for product development • Program Manager evaluates request and assigns Lead Project Manger (PM) • PM begins to gather information on request • PMO, Program & Project Manager agree on governance approach Planning • PM begins Project Charter • PM coordinates meeting with Resource Managers (RM) • RM understands objectives and assign resources • Lead PM and PMO coordinate project plan linking sessions with all PMs • BA begins Reqs for iteration 1 Kick-off • PM conducts Kick-off meeting with resources and business partner • PM coordinates JAD sessions • Architect creates high level design with Data Modeler • Test Lead creates test plan • PMO and PM plan gate and peer reviews for project • Iteration 1 begins
Putting It Together - Iterative Development Iteration1 Month 1 Iteration2 • BAs document Iteration 2 Reqs. • Testers begin creating test cases for Iteration 1 Reqs. • Architects, Developers, and Data Modelers may begin Preliminary Design for Iteration 1 • BAs validate functionality developed in Iteration 1 Month 2 Iteration3 • Developers and Data Modelers perform detail design for Iteration 1 Reqs. • Developers code for Iteration 1 Reqs. Start 2 • BAs document system and data requirements to be developed in Iteration 3 • BAs validate functionality developed in Iteration 2 • Testers finalize test cases for functionality developed in Iteration 1 and start 2 Month 3 • Developers and Data Modelers perform detail design for Iteration 2 Reqs. • BAs document system and data requirements to be developed in Iteration 4 • BAs validate functionality developed in Iteration 3 • Testers test functionality developed in Iteration 2 • Testers finalize test cases for functionality developed in Iteration 3 • UAT for functionality developed in Iteration 1 and 2
Planning Requirements Analysis Preliminary Design Build Test • Unit Testing • Schedule • Estimates • Elicitation • Documentation • Data Mapping • Req. Reviews • Data Modeling • CXML Model • High Risk Design • Design Reviews • Data Sources • CXML • High Risk Coding • Code Reviews Elaboration Phase – Iteration Tasks Artifacts Developed During This Phase Project Arch., Design, Develop. Requirements Data Testing • Project Plan • Project Status Report • Change Requests • Architectural Spec. • Architectural Review Checklist • Design Review Docs • Code Review Docs • High-Level Design Docs • Detailed Design Docs • Product Hierarchy • Coverage Matrix • Non-Functional Specs • User Dialogs • Business Rules • Data • Dictionary/Glossary • Data Mapping • GUI Screens • GUI Data Tables • Data Transformation • Conceptual Data Model • Logical Data Model • Physical Data Model • CXML Model • DDL /DML Scripts • Test Plan • Test Cases • Test Scripts
SDLC - Elaboration Phase – Artifact Flow Dev PM BA Arch DM Tester Lead Owner Planning Requirements Analysis Design Build Test Project Project Audit M WBS Checklist P System Requirements – Next Iteration Non - Business User GUIs Functional Rules Dialogs Reqs . A B Requirements Data Requirements – Next Iteration Data Coverage Data s PHM Mapping & t Matrix Dictionary s Transform e u q t e c R e t e Architectural i g h Architectural n Review c a r Specification h A Checklist C r e p d Code o a l e e High v L Detail e Level D Design Design r e Data a l e t Models a d Data o D Models M DDL , DML Scripts r e t s Test Test e Test Plan T Cases Scripts Elaboration Phase – Artifact Flow
UAT Delivery Build Application Support • Solution is fully implemented and warranty period has expired • Warranty Period • User Training • App Support Training • Transition Checklist • Close Project • Prioritize Defect List • Defect Analysis • Design and Code for Defects • Unit Testing for Defects • Integration Testing for Defects Transition Phase – Iteration Tasks Fully tested and major defects corrected • UAT Testing • Acceptance Criteria met Artifacts Developed During This Phase Project Arch., Design, Develop. Requirements Data Testing • Update Project Plan • Project Status Report • Change Requests • Transition Checklist • Project Close-Out Report • Update Arch. Docs • Update Design Docs • Design Review Docs • Code Review Docs • Update Requirements • Update Data Models • Update Test Plans • Update Test Scripts User Preparation • Communication Plan for Delivery • Training Materials
The Scrum Process • Implementing Scrum • Outside Consultants • Time Frames • Successful Teams
Formal Reviews True Peer Review – New authors and/or high risk material(audience = peers) Technical Review – Authors with solid material(audience = peers and internal consumers) Combined Peer and Technical Review – Experienced authors with low risk material(audience = peers, internal consumers, and business partners)
Informal Reviews • Code reviews, logical/physical data models, deployment plans, customer care hand-off plans, test plans, and ETL Specification reviews • Audience – a peer or team mate • Value add - formal meetings are not required, team/person reviewing will record metrics and share with PMO • Timing – as needed; efficient and flexible • The goal is to have a knowledgeable second set of eyes reviewing the work prior to development
Industry Standards for Proving the Value Planning Analysis System Design $140 Code Production $14000 Unit Test COST TO REPAIR 1 DEFECT $1000 Integration Test $2500 Certification Test System Test $4500 $7000
Proving the Value • Dashboards • Time Tracking • Unit Code Coverage • UAT Defects • Peer Review results • Health check • Compliance with methodology
Q&A • What’s on your mind?