creating competitive advantage Implementation Discipline Implementation Training Code

  • Slides: 39
Download presentation
creating competitive advantage Implementation Discipline: Implementation Training Code: GIP_Implementation Created by: SL DPG Software

creating competitive advantage Implementation Discipline: Implementation Training Code: GIP_Implementation Created by: SL DPG Software Engineering Process Group

Implementation - Overview § Purpose § To define the organization of the code, in

Implementation - Overview § Purpose § To define the organization of the code, in terms of implementation subsystems organized in layers § To implement the design elements in terms of implementation elements § To test the developed components as units § To integrate the results produced by individual implementers, into an executable system GIP-PM 5 Project Management 2

Implementation - Policy § Projects shall § Identify Implementation Elements based on the documented

Implementation - Policy § Projects shall § Identify Implementation Elements based on the documented architecture and design. § Determine the appropriate integration sequence, methods and environment for Implementation. § Develop the Implementation Elements according to specifications. § Build the specified system by integrating the Implementation Elements according to the predetermined procedures. § Plan for and execute developer tests on the Implementation Elements. GIP-PM 5 Project Management 3

Implementation - Workflow GIP-PM 5 Project Management 4

Implementation - Workflow GIP-PM 5 Project Management 4

Workflow Detail – Plan the Integration GIP-PM 5 Project Management 5

Workflow Detail – Plan the Integration GIP-PM 5 Project Management 5

Activity – Plan Integration § Purpose § Plan the integration of the § implemented

Activity – Plan Integration § Purpose § Plan the integration of the § implemented elements to subsystem and/or § Implemented subsystems to system based on iteration plan or approved change request. § Scope § Identification of elements or subsystems to be part of build/system for current iteration. § Defining the procedures and criteria for integration § Valuation of Integration plan GIP-PM 5 Project Management 6

Activity – Plan Integration Cont …. § Entry Criteria § Implementation model has been

Activity – Plan Integration Cont …. § Entry Criteria § Implementation model has been defined. § Dependencies among the subsystems have been defined. § Input Artifacts § § § § Architecture Document DSTD Project Engineering Guidelines Project Approach Integration Build Plan Change Request Approved (Optional) DSRS GIP-PM 5 Project Management 7

Activity – Plan Integration Cont …. § Steps § Plan for Integration § §

Activity – Plan Integration Cont …. § Steps § Plan for Integration § § Determine the Integration Sequence the integration environment integration procedures integration criteria § Define a Series of Builds § Evaluate the Integration Build Plan § Consider the following check points § Does the integration order § Make it easy to locate errors § Keep the need for stubs to a minimum § Coordinated with the other in which components are developed GIP-PM 5 Project Management 8

Activity – Plan Integration Cont …. § Exit Criteria § Detailed plan for integration

Activity – Plan Integration Cont …. § Exit Criteria § Detailed plan for integration within iteration is defined. § Integration sequence and integration environment is defined. § Resulting Artifacts § Integration Build Plan § Verification § Peer Review of the Integration Build Plan § Tailoring § At least once per iteration, when new elements or subsystems are discovered. GIP-PM 5 Project Management 9

Activity – Establish Build Procedure § Purpose § To establish an environment where the

Activity – Establish Build Procedure § Purpose § To establish an environment where the product or system can be built, deployed, and tested regularly. § Scope § Identification of frequency and time for build § Avoiding the build defects and breakages § Making the product or system ready for testing GIP-PM 5 Project Management 10

Activity – Establish Build Procedure Cont …. § Entry Criteria § Start of coding

Activity – Establish Build Procedure Cont …. § Entry Criteria § Start of coding activity § Approach and configuration management plan is in place § Input Artifacts § § Configuration Management Plan Project Approach Integration Build Plan Source code, executable. . etc GIP-PM 5 Project Management 11

Activity – Establish Build Procedure Cont …. § Steps § Define a Build Plan

Activity – Establish Build Procedure Cont …. § Steps § Define a Build Plan § Includes § Frequency and time of builds § Action to be taken on a build break § Tools to be used § Build notification group § The environment § Daily build steps § Label or baseline and checkout the source code from the source repository § Compile and build the source code § Build an installation package (Optional) § Deploy the built system onto a test machine § Carry out smoke test § Carry out an automated code review § Carry out a code analysis § Report the results of the build GIP-PM 5 Project Management 12

Activity - Establish Build Procedure Cont …. . § Establish the Build Environment §

Activity - Establish Build Procedure Cont …. . § Establish the Build Environment § Setup the hardware and software environment based on configuration management plan § Perform the Regular Build § Based on frequency § i. e. daily, weekly GIP-PM 5 Project Management 13

Activity – Establish Build Procedure Cont …. § Exit Criteria § Build is performed

Activity – Establish Build Procedure Cont …. § Exit Criteria § Build is performed regularly at the defined frequency § Build notification is sent to the build notification group § Resulting Artifacts § Build notification mail § Build defects log § Tailoring § At least once per iteration GIP-PM 5 Project Management 14

Workflow Detail – Implement Components 9/29/202 15

Workflow Detail – Implement Components 9/29/202 15

Activity – Implement Design Elements § Purpose § To produce or modify the implementation

Activity – Implement Design Elements § Purpose § To produce or modify the implementation elements such as, source code, part of source code, based on design elements or change request. § Scope § Configuring the development environment to facilitate implementation § Implementing the design elements § If a design error is discovered, rework feedback has to be provided to the design. GIP-PM 5 Project Management 16

Activity – Implement Design Elements Cont …. § Entry Criteria § System behavior has

Activity – Implement Design Elements Cont …. § Entry Criteria § System behavior has been designed and design elements defined § Configuration management is in place with directory structure for implementation defined. § Input Artifacts § § § DSTD Project Engineering Guidelines Project Schedule Approved Change Request DSRS GIP-PM 5 Project Management 17

Activity – Implement Design Elements Cont …. § Steps § Prepare for Implementation §

Activity – Implement Design Elements Cont …. § Steps § Prepare for Implementation § § Understand the task/problem Configure development environment Analyze existing implementation Implement Incrementally § Implement Design Elements § Focus on re-usability § Follow project engineering guidelines § Provide Feedback to Design § Provide rework feedback for design errors § Evaluate the Code § Prior to developer testing and code review § Compile the code, Read through the code, Use tools to check the code for errors § Refactor the code § Productization Assessment GIP-PM 5 Project Management 18

Activity – Implement Design Elements Cont …. § Exit Criteria § Implementation elements such

Activity – Implement Design Elements Cont …. § Exit Criteria § Implementation elements such as source code or part of source code are produced. § Source code is checked in to Configuration Management system § Code compiles, style check and other coding standards self check is passed. § Resulting Artifacts § DSTD (updated if required) § Source code, executables etc GIP-PM 5 Project Management 19

Activity – Implement Design Elements Cont …. § Verification § Peer Code Reviews §

Activity – Implement Design Elements Cont …. § Verification § Peer Code Reviews § Fagan Inspections § Tailoring § “Provide feedback to design” need not be performed if there are no changes to design GIP-PM 5 Project Management 20

Activity – Prepare Developer Test § Purpose § To develop test cases and procedures

Activity – Prepare Developer Test § Purpose § To develop test cases and procedures for verification of individual software elements or components by the developer. § Scope § Test environment specification for executing tests § Preparation of Unit Test Cases for individual software elements § Preparation of Integration Test Cases for individual software components or subsystems GIP-PM 5 Project Management 21

Activity – Prepare Developer Test Cont …. § Entry Criteria § Design model has

Activity – Prepare Developer Test Cont …. § Entry Criteria § Design model has been defined. § Identification of software components that is to be developer tested. § Input Artifacts § § § DSTD Project Engineering Guidelines Scope and Traceability matrix Approved Change Requests DSRS GIP-PM 5 Project Management 22

Activity – Prepare Developer Test Cont …. § Steps § Decide on Test Environment

Activity – Prepare Developer Test Cont …. § Steps § Decide on Test Environment for Developer Test § Identify the Developer Test § Identify § the goal § the scope: element, component, or subsystem § the test type and details § pre conditions, post conditions § Expected results § Clean-up steps to restore the environment to the original state § Select appropriate implementation technique § Manual or automated test § Programmed tests § Documented test cases GIP-PM 5 Project Management 23

Activity – Prepare Developer Test Cont …. § Implement the Developer Test § While

Activity – Prepare Developer Test Cont …. § Implement the Developer Test § While implementing documented test , following should be taken care of § Pre and post conditions § Test data – boundary conditions, valid and invalid data, special values § For implemented elements – path, branch and code coverage § For components or subsystems – interface verifications and structural testing § Clean-up steps § Maintain Traceability relationships § Update traceability matrix with the relationships for the newly written test cases GIP-PM 5 Project Management 24

Activity – Prepare Developer Test Cont …. § Exit Criteria § Unit and Integration

Activity – Prepare Developer Test Cont …. § Exit Criteria § Unit and Integration Test Cases for each testability element or component are defined. § Traceability matrix relationships updated for the test cases written. § Test environment for executing the tests has been defined. § Resulting Artifacts § Developer Test cases § Scope and Traceability Matrix § Unit Test Suite GIP-PM 5 Project Management 25

Activity – Prepare Developer Test Cont …. § Verification § Peer Review of Developer

Activity – Prepare Developer Test Cont …. § Verification § Peer Review of Developer Test Cases. § The verification of the test should be verified with design and requirements § Tailoring § At least once per iteration GIP-PM 5 Project Management 26

Activity – Execute Developer Tests § Purpose § Verify the internal structure of the

Activity – Execute Developer Tests § Purpose § Verify the internal structure of the unit or subsystem and their conformance to the requirements by executing the Developer test Cases and Procedures. § Scope § Involves executing the unit and integration tests § Defects produced are logged, fixed, and retested again. GIP-PM 5 Project Management 27

Activity – Execute Developer Tests Cont …. § Entry Criteria § Developer tests like

Activity – Execute Developer Tests Cont …. § Entry Criteria § Developer tests like unit and integration tests have been defined § The unit or subsystem is ready to test § Input Artifacts § Developer Test Cases § DSRS § Source code, executable GIP-PM 5 Project Management 28

Activity – Execute Developer Tests Cont …. § Steps § Execute Developer Tests §

Activity – Execute Developer Tests Cont …. § Steps § Execute Developer Tests § Set up the test environment § Initialize the test environment § Execute test procedure § Verify Test Results § Log defects in the defect log § Recover from Halted Tests GIP-PM 5 Project Management 29

Activity – Execute Developer Tests Cont …. § Exit Criteria § Defects are logged

Activity – Execute Developer Tests Cont …. § Exit Criteria § Defects are logged in Test logs § Defects logged are fixed/addressed and decision for promotion of baseline to next stage with known bugs is taken. § Resulting Artifacts § Developer Test log § Tailoring § At least once per iteration GIP-PM 5 Project Management 30

Activity – Review Code § Purpose § To review the source code for adherence

Activity – Review Code § Purpose § To review the source code for adherence to engineering best practices and standards § Steps § Plan Review Session § Conduct the Review § Record Defects GIP-PM 5 Project Management 31

Activity – Review Code Cont … § Input Artifacts § Source code § Resulting

Activity – Review Code Cont … § Input Artifacts § Source code § Resulting Artifacts § Code review log GIP-PM 5 Project Management 32

Workflow Detail – Integrate the System 9/29/202 33

Workflow Detail – Integrate the System 9/29/202 33

Activity – Integrate System § Purpose § To assemble the system from the subsystems

Activity – Integrate System § Purpose § To assemble the system from the subsystems or components, ensure that the system, as integrated, functions properly, and deliver the system based on iteration build plan or approved change request. § Scope § Assemble the system according to the system integration sequence or change request. § Verified subsystems are assembled and the integrated system is delivered. GIP-PM 5 Project Management 34

Activity – Integrate System Cont …. § Entry Criteria § Readiness of implemented elements

Activity – Integrate System Cont …. § Entry Criteria § Readiness of implemented elements or subsystems for integration § Integration build plan has been defined § Input Artifacts § § § Architecture Document DSTD Project Engineering Guidelines Implementation subsystems like source code and executable Change request approved Integration build plan GIP-PM 5 Project Management 35

Activity – Integrate System Cont …. § Step § Prepare for Integration § Establish

Activity – Integrate System Cont …. § Step § Prepare for Integration § Establish the integration environment § Create integration procedures/Scripts § Assemble the Subsystems § According to system integration sequence § Evaluate Assembled Subsystems § Deliver Build for System Testing § Deliverables are § Label or baseline for the part of the system or entire system § Developer release notes GIP-PM 5 Project Management 36

Activity – Integrate System Cont … § Exit Criteria § Operational version of a

Activity – Integrate System Cont … § Exit Criteria § Operational version of a system or part of a system that demonstrate a subset of the capabilities is provided. § Resulting Artifacts § Implementation subsystems like source code and executable § Developer Release Notes § Build § Tailoring § At least once per iteration GIP-PM 5 Project Management 37

Activity and Artifact Overview GIP-PM 5 Project Management 38

Activity and Artifact Overview GIP-PM 5 Project Management 38

Artifact Responsibility Matrix Name of Artifact Developer Release Notes Developer Test Case Owned By:

Artifact Responsibility Matrix Name of Artifact Developer Release Notes Developer Test Case Owned By: Contributing Team: Reviewed By: Approved By: Audience: Signoff Required: Signoff By: Integrator Implementer NA NA Test Team, Project Manager NA NA Implementer, Integrator NA NA Integrator Implementer Software Architect, Project Manager Project Team NA NA Reviewer Review Team NA NA Author, Project Manager No NA Integration Build Plan Review Record GIP-PM 5 Project Management 39