chep2000 february 2000 impact of software review and inspection doris burckhart cern atlas daq/ef-1...

17
February 2000 CHEP2000 Impact of Impact of Software Software Review Review and and Inspectio Inspectio n n Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

Upload: reginald-barber

Post on 27-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 CHEP2000

Impact ofImpact ofSoftware Software

Review and Review and InspectionInspection

Doris Burckhart

CERN ATLAS DAQ/EF-1

Back-end software

Page 2: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

2

ContentContent

Software Development Process Informal Review Software Inspection Process Performed Software Inspections Results Experience Conclusions and Future

Page 3: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

3

SW Development ProcessSW Development Process

identify needs & common issues, define priorities and work-plan, define components

perform pre-design investigations -> identify candidate technologies/techniques

develop high-level design

refine design, implement code 180,000 lines of C++ 40 % generated

unit test componentsintegrate with other subsystems

Total 800 000 linesincl. external sw

Collect Requirements

Pre-design Investigations

High-level Design

Testing &Integration

Detailed DesignImplementation

Training, Programming and Testing Tools, FrameMaker, html, SRT Configuration Management, StP/OMT CASE TOOLS

Software Development Environment

Page 4: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

4

Review - InspectionReview - Inspection

Review: Presentation of each SW Component to the Group

in each Development Phase Discussion and Coordination with other components

Goal: Goal: Clarification and Accept/Reject DecisionClarification and Accept/Reject Decision

Inspection: Quality Improvement Process to the software project

Goal:Goal:Defect Detection & Defect PreventionDefect Detection & Defect Prevention

Page 5: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

5

Informal ReviewInformal Review

From the start of the project document preparation and monthly open meetings

present status, results, proposals inform colleagues - receive feedback suggestions -> enhancements -> acceptance

Results: Coherent set of end-product components Increased communication

Drawback: Lack of time of reviewers No code review

Page 6: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

6

Inspection in the SDPInspection in the SDP

Document Inspection

Document Inspection

Document Inspection Code Inspection

Document Inspection

Applying Testing Tools

Code Inspection

Requirements

Design

Test Implementation Implementation

Test

Test Plan

Page 7: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

7

Inspection - ObjectivesInspection - Objectives

Defect Detection documents are checked for

cleanness and consistency against rules

Defect Prevention learning from defects found suggesting improvements

On the Job Training education in standards and rules apply creativity

Page 8: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

8

Sources

Inspection Process MapInspection Process Map

Inspection Team: Inspection Leader Authors Inspectors

Planning & Entry

Kick-off Meeting

Checking

Logging Meeting

Brainstorming

Edit

Exit

Follow-up

Inspection Plan

Issue logtables

Action Lists

Exit Product

Data Summary

Change Requests

Product

Rules

Checklists

Based on Tom Gilb’s Inspection method

Page 9: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

9

List of performed InspectionsList of performed Inspections

Requirement Inspection DS - Diagnostic System

IGUI - Integrated Graphical User Interface

DAL - Data Access Library

Design Inspection TM - Test Manager

DS - Diagnostic System

Code Inspection IPC - Inter Process Communication

MRS - Message Reporting System

IS - Information Service

DAL - Data Access Library

180 pages of documents 8000 lines of code

Page 10: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

10

Results: Issue log table Results: Issue log table

Each issue is logged, discussed, checked Emphasis on non-trivial issues Per Inspection : 10 to 200 issues found

Number of recorded issue logs depend on: Type of Inspection

Phase of Project

Entry conditions

Experience of Inspectors

Counting system

-> Improved Code -> Improved Documentation

Page 11: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

11

Inspection Process ResultsInspection Process Results

Change Requests To Rules for Requirements, Design or Coding

use of ’shall’ ’should’ ’may’ for Requirementsadopt standard command line parametersuse of coding conventions

program exit status convention To the Inspection Procedure

Suggestions about editor comment typespossible strategy on rule checking

Action Lists Actions to be performed outside the Inspection Process Questions to be clarified, i.e. beyond the scope of

Inspection

Page 12: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

12

ObservationsObservations

Requirements most important, the first in the chain: a bug may propagate to the end

-> unwanted results even with perfect code

Design the hardest to inspect difficult to provide a good set of guidelines

Code most time consuming: Code & Documentation,

mother documents & reference documents Good set of rules, Use of automatic checking tools

Page 13: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

13

Adaptation to EnvironmentAdaptation to Environment

Everything is allowed which helps improving

process product communication cooperation, education integration, coherence

while keeping Consistency and

improving Efficiency

HEP:geographically distributedno specialized expertiselittle formal traininglittle hierarchical powerparticipation by conviction

Page 14: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

14

Efficiency - FlexibilityEfficiency - Flexibility

Efficiency Inspection is time consuming - don’t waste time and effort of inspectors Careful planning and Clear Instructions Solid Process Framework Inspect Samples Motivation of peers

Flexibility Build in change Management Well defined procedure - but each inspection to be handled individually

Page 15: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

15

ExperienceExperience

Inspection is

Take fears seriously Explain aims Respect privacy Demonstrate helpfulness

ParticipationTrust amongst colleagues Constructive criticismIntegrationCommon working culture

Fear to be criticized and judged

Page 16: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

16

ConclusionsConclusions

Reviews prepare the ground and stabilize SDPAdaptation of the inspection method for the EnvironmentGain in quality and experience Appreciated by authors and peersHelp for team building in a distributed environment

Page 17: CHEP2000 February 2000 Impact of Software Review and Inspection Doris Burckhart CERN ATLAS DAQ/EF-1 Back-end software

February 2000 Impact of Software Review and Inspection - CHEP2000 - Doris Burckhart

17

FutureFuture

Good understanding for the next phase: stabilize inspection process and keep style provide a helpful framework based on experience use it through entire development cycle ‘lighter’ inspection - faster turnaround time use sampling techniques keep real logging meetings where possible provide metrics stay flexible and efficient

http://atddoc.cern.ch/Atlas/DaqSoft/sde/Welcome.html [email protected]