SENG 629

Software Engineering Standards and Models

 

 

 

 

¤  SENG 629 (Winter, 2001/02/.../2009) - Software Engineering Standards and Models

 

Type: Q(3-0)

Lecturer: Dr. Y. Wang

Period: Feb. 24 - March 31, 2010                    

Date: Wednesdays

Time: 17:30 – 20:30

Classroom:  ICT 516

 

Course description:

 

Empirical software engineering: Roles, Processes, Best practices, Experience repository, Benchmarks, Standardization. Formal description and algorithms of current software engineering standards and models: The capability maturity model (CMM), The ISO software quality system model (ISO 9001), The European software process model (BOOTSTRAP), The ISO software life-cycle process assessment standard (ISO 15504), and The unified software engineering process reference model (SEPRM). Case studies. Trends and future development in software engineering standardization.

   

Evaluation:

 

1. Assignments (x6): 60%

 - Hand in on Tuesdays following each lecture 

 - Grade is based on quality, correctness, depth of analysis, and timeliness

 - Electronic submission in Word format is required

 

2. Final case-study report: 40%  

 - > 10 pages 

 - Grades are based on originality, data quality, depth of analysis, summary of knowledge gained in

   this course.

   

Reference textbooks:

 

Y. Wang and G. King (2000), Software Engineering Processes: Principles and Applications, CRC Press, ISBN: 0-8493-2366-5.

 

J. Moore (1998), Software Engineering Standards: A User's Road Map, IEEE Computer Society; ISBN: 0-8186-8008-3.

 

 

 

  · Lecture 1 [PPT]

  · Lecture 2 [PPT]

  · Lecture 3 [PPT]

  · Lecture 4 [PPT]

  · Lecture 5 [PPT]

  · Lecture 6 [PPT]

 

  · Form of SEPRM

 

 

 THE SEPRM PROCESS ASSESSMENT FORM

 

 

  See SEPRM in Y. Wang and G. King (2000), Software Engineering Processes: Principles and

  Applications, CRC Press, ISBN: 0-8493-2366-5.    

 

 

 

SEPRM PROCESS ASSESSMENT TEMPLATES

 

Template E.1  Assessment Purpose

 ID#:                                                                                         Date:                                                          

      ---------------------------------------------                                       -------------------------------------          

No.

Subject

Remarks

1

Organization to be assessed

Specify name of organization

 

 

 

 

 

 

2

Department to be assessed

Specify unit of organization

 

 

 

 

 

 

3

Project(s) to be assessed

Specify project name(s)

 

 

 

 

 

 

4

Sponsor of the assessment

Identify sponsor of the assessment

 

 

 

 

 

 

5

Aims of assessment

Specify aims of assessment

5.1

Process establishment

 

5.2

Process capability assessment 

 

5.3

Process improvement

 

5.4

Other (to be specified)

 

 

 

 

6

Assessment classification

Specify type of assessment

6.1

Conformance of assessment to a certain model/standard

 

6.2

Independent (third-party) assessment

 

6.3

Second-party assessment

 

6.4

Self-assessment

 

6.5

Couched self-assessment

 

6.6

Other (to be specified)

 

 

 

 

7

Provisional date for assessment

Describe provisional date for the assessment

 

 

 

 

 

 

8

Special need(s) for assessment 

Specify any special needs for the  assessment

 

 

 

 

 

 

 

 

 

 

 

Template E.2  Assessment Scope

 ID#:                                                                                         Date:                                                                  

      ---------------------------------------------                                       -------------------------------------          

No.

Subject

Remarks

1

Project to be assessed

 

 

 

 

 

 

 

2

Processes to be assessed in SEPRM

Specify processes to be assessed

2.1

Organization process subsystem

 

2.1.1

Organization structure process category

 

2.1.1.1

Organization definition

 

2.1.1.2

Project organization

 

2.1.2

Organizational process category

 

2.1.2.1

Organization process definition

 

2.1.2.2

Organization process improvement

 

2.1.3

Customer service process category

 

2.1.3.1

Customer relations

 

2.1.3.2

Customer support

 

2.1.3.3

Software/system delivery

 

2.1.3.4

Service evaluation

 

2.2

Development process subsystem

 

2.2.1

Software engineering methodology process category

 

2.2.1.1

Software engineering modeling

 

2.2.1.2

Reuse methodologies

 

2.2.1.3

Technology innovation

 

2.2.2

Software development process category

 

2.2.2.1

Development process definition

 

2.2.2.2

Requirement analysis

 

2.2.2.3

Design

 

2.2.2.4

Coding

 

2.2.2.5

Module testing

 

2.2.2.6

Integration and system testing

 

2.2.2.7

Maintenance

 

2.2.3

Software development environment process category

 

2.2.3.1

Environment

 

2.2.3.2

Facilities

 

2.2.3.3

Development  support  tools

 

2.2.3.4

Management  support  tools

 

2.3

Management process subsystem

 

2.3.1

Software quality assurance (SQA) process category

 

2.3.1.1

SQA process definition

 

2.3.1.2

Requirement review

 

2.3.1.3

Design review

 

2.3.1.4

Code review

 

2.3.1.5

Module testing audit

 

2.3.1.6

Integration and system testing audit

 

2.3.1.7

Maintenance audit

 

2.3.1.8

Audit and inspection

 

2.3.1.9

Peer review

 

2.3.1.10

Defect control

 

2.3.1.11

Subcontractor’s quality control

 

2.3.2

Project planning process category

 

2.3.2.1

Project plan

 

2.3.2.2

Project estimation

 

2.3.2.3

Project risk avoidance

 

2.3.2.4

Project quality plan

 

2.3.3

Project management process category

 

2.3.3.1

Process management

 

2.3.3.2

Process tracking

 

2.3.3.3

Configuration management

 

2.3.3.4

Change control

 

2.3.3.5

Process review

 

2.3.3.6

Intergroup coordination

 

2.3.4

Contract and requirement management process category

 

2.3.4.1

Requirement management

 

2.3.4.2

Contract management

 

2.3.4.3

Subcontractor management

 

2.3.4.4

Purchasing management

 

2.3.5

Document management process category

 

2.3.5.1

Documentation

 

2.3.5.2

Process database/library

 

2.3.6

Human resource management process category

 

2.3.6.1

Staff selection and allocation

 

2.3.6.2

Training

 

3

Constraints of assessment

For instance, resources, budget, and critical milestones

 

 

 

 

 

 

 

 

 

 

 

 

4

Assessment output requirements

Tick and describe additional output of assessment

4.1

Project process capability level

 

4.2

Process capability profile

 

4.3

Process strengths and weaknesses analysis report

 

4.4

Potential process improvement opportunities

 

4.5

Executive summary of assessment results 

 

 

 

 

5

Background factors which may affect performance

 

 

 

 

 

 

 

 

 

 

 

 

Template E.3  Assessment Team and Responsibilities

 

 ID#:                                                                                                                       Date:                                                                  

      ---------------------------------------------                                       ------------------------------------       

No.

Role [Name]

Responsibility

1

Sponsor

 

 

 

- prepare assessment agreement

- select unit representative(s)

- organize assessment supporting activities

- review assessment report

- report to higher management

2

Lead Assessor

 

 

 

- prepare assessment agreement with sponsor

- select assessor(s) with sponsor

- develop assessment brief

- organize assessment activities

- review assessment report

- present assessment report

3

Assessors

 

3.1

Assessor 1

 

 

 

 

 

 

 

 

 

 

4

Others

 

4.1

Project Management Representative

 

 

 

 

 

 

 

4.2

Project Technical Representative

 

 

 

 

 

 

 

 

 

 

 

Table E.4  Assessment Confidentiality Agreement

 

Assessment Confidentiality Agreement

ID#:                                                                                            Date:                                                                     

1.  Scope and purpose of this document

This document has been agreed to provide mutual confidentiality to all parties involved in the assessment to be conducted at Organization X during <DD1/MM1/YY1> to <DD2/MM2/YY2>.

2.  Parties to the agreement

The parties in this agreement will be Organization X (herein referred to as “Party A”) and Organization Y (herein referred to as “Party B”).

3.  Confidentiality

Throughout the course of the assessment, and all times thereafter, the parties are hereby bound to observe complete confidentiality as to all matters concerning the affairs of each other; and all details relating to the assessment, now and in the future. None of the parties (including any associated companies or subsidiaries) will disclose information regarding the outcome of the assessment or engage in publicity pertaining to the other party without prior agreement from the other party.

All parties hereby confirm their acceptance.

Signed for and on behalf of Party A     Signed for and on behalf of Party B

 

Signature   ………………………        Signature   ………...……….…….

Full name                                               Full name     

(print)   …………………….……        (print)  …………………………..                   

Position        Project manager             Position        Lead assessor

Address     ……………………….                 Address     ………….………..…...

                  ………………….……                         …………..……………

                  ……………………….                         ………………..………

Date                                                        Date            

Place         ………………..………       Place        …………..……………

 

 

Table E.5  Assessment Schedule and Resources

 

 ID#:                                                                                              Date:                                                                    

      ---------------------------------------------                                       ---------------------------------------                  

 

No.

Subject

Responsibility

Resource

Planed

date

Completed date

1

Initiation of an assessment

Lead assessor/sponsor

 

 

 

2

Sponsor commitment

Sponsor

 

 

 

3

Define assessment purpose

Lead assessor/sponsor

 

 

 

4

Define assessment scope

Lead assessor/sponsor

 

 

 

5

Sponsor approval of assessment input

Lead assessor/sponsor

 

 

 

6

Appoint assessment team

Lead assessor/sponsor

 

 

 

7

Prepare assessment confidentiality agreement

Lead assessor/sponsor

 

 

 

8

Plan schedule and resources

Lead assessor/sponsor

 

 

 

9

Determine assessment reference model, assessment model, and tool

Assessors

 

 

 

10

Map customer’s processes to SEPRM model

Assessors

 

 

 

11

Define processes to be assessed and target capability levels

Assessors/ Sponsor

 

 

 

12

Develop assessment brief

Lead assessor

 

 

 

13

Organizational unit briefing

Lead assessor/ sponsor

 

 

 

14

Data collection

Assessors/ Assessees

 

 

 

15

Data validation

Assessors/ Assessees

 

 

 

16

Capability rating and analysis

Assessors/ Assessees

 

 

 

17

Briefing initial assessment results

Assessors/ sponsor/

assessees

 

 

 

18

Process strengths and weaknesses analysis

Assessors

 

 

 

19

Process improvement opportunity analysis

Assessors

 

 

 

20

Develop assessment report

Lead assessor/ sponsor

 

 

 

21

Review and presentation of assessment report

Lead assessor/ sponsor/ assessees

 

 

 

22

Action plan for process improvement

Sponsor/ competent assessor/ assessees

 

 

 

23

Other (to be specified)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Table E.6  Processes to be Assessed and Target Capability Levels

 

 ID#:                                                                                                 Date:                                                                    

      ---------------------------------------------                                       ---------------------------------------                  

 

No.

Process

Selection in

Assessment

Target

Capability

Level

Corresponding

Processes

on Site

1

Organization subsystem

 

 

 

1.1

Organization structure category

 

 

 

1.1.1

Organization definition

 

 

 

1.1.2

Project organization

 

 

 

1.2

Organization process category

 

 

 

1.2.1

Organization process definition

 

 

 

1.2.2

Organization process improvement

 

 

 

1.3

Customer service category

 

 

 

1.3.1

Customer relations

 

 

 

1.3.2

Customer support

 

 

 

1.3.3

Software/system delivery

 

 

 

1.3.4

Service evaluation

 

 

 

2

Development

 

 

 

2.1

Software engineering methodology category

 

 

 

2.1.1

Software engineering modeling

 

 

 

2.1.2

Reuse methodologies

 

 

 

2.1.3

Technology innovation

 

 

 

2.2

Software development category

 

 

 

2.2.1

Development process definition

 

 

 

2.2.2

Requirement analysis

 

 

 

2.2.3

Design

 

 

 

2.2.4

Coding

 

 

 

2.2.5

Module testing

 

 

 

2.2.6

Integration and system testing

 

 

 

2.2.7

Maintenance

 

 

 

2.3

Software development environment category

 

 

 

2.3.1

Environment

 

 

 

2.3.2

Facilities

 

 

 

2.3.3

Development  support  tools

 

 

 

2.3.4

Management  support  tools

 

 

 

3

Management

 

 

 

3.1

Software quality assurance category

 

 

 

3.1.1

SQA process definition

 

 

 

3.1.2

Requirement review

 

 

 

3.1.3

Design review

 

 

 

3.1.4

Code review

 

 

 

3.1.5

Module testing audit

 

 

 

3.1.6

Integration and system testing audit

 

 

 

3.1.7

Maintenance audit

 

 

 

3.1.8

Audit and inspection

 

 

 

3.1.9

Peer review

 

 

 

3.1.10

Defect control

 

 

 

3.1.11

Subcontractor’s quality control

 

 

 

3.2

Project planning category

 

 

 

3.2.1

Project plan

 

 

 

3.2.2

Project estimation

 

 

 

3.2.3

Project risk avoidance

 

 

 

3.2.4

Project quality plan

 

 

 

3.3

Project management category

 

 

 

3.3.1

Process management

 

 

 

3.3.2

Process tracking

 

 

 

3.3.3

Configuration management

 

 

 

3.3.4

Change control

 

 

 

3.3.5

Process review

 

 

 

3.3.6

Intergroup coordination

 

 

 

3.4

Contract and requirement management category

 

 

 

3.4.1

Requirement management

 

 

 

3.4.2

Contract management

 

 

 

3.4.3

Subcontractor management

 

 

 

3.4.4

Purchasing management

 

 

 

3.5

Document management category

 

 

 

3.5.1

Documentation

 

 

 

3.5.2

Process database/library

 

 

 

3.6

Human resource management category

 

 

 

3.6.1

Staff selection and allocation

 

 

 

3.6.2

Training

 

 

 

 

 

Table E.7  Assessment Brief

 ID#:                                                                                              Date:                                                                    

      ---------------------------------------------                                       ---------------------------------------                

No.

Item

Remark

1

Organization

Refer to Template E.1

 

 

 

 

 

 

2

Department to be assessed

Refer to Template E.1

 

 

 

 

 

 

3

Project(s)

Refer to Template E.1

 

 

 

 

 

 

4

Sponsor

Refer to Template E.1

 

 

 

 

 

 

5

Purpose of assessment

Refer to Template E.1

 

 

 

 

 

 

 

 

 

6

Scope of assessment

Refer to Template E.2

 

 

 

 

 

 

 

 

 

7

Constraints of assessment

Refer to Template E.2

 

 

 

 

 

 

 

 

 

8

Assessment team

Refer to Template E.3

 

 

 

 

 

 

 

 

 

9

Resources needed

Estimate amount of effort required and type of resources

 

 

 

 

 

 

 

 

 

10

Key milestones

Refer to Template E.5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

Summary of process to be assessed and target capability level(s)

Refer to Template E.6

 

 

 

 

 

 

 

 

 

12

Assessment approach

 

 

Describe method and approach adopted for the assessment

 

 

 

 

 

 

 

 

 

13

Other

To be specified by assessors

 

 

 

 

 

 

 

 

 

 

 

Table E.8  Process Strengths and Weaknesses Analysis

   ID#:                                                                                       Date:

        ---------------------------------------------                                       --------------------------------------- 

            

No.

Process

Assessed

Level

[AL]

Targeted

Level

[TL]

Strengths(+)/

Weaknesses (-)

[AL-TL]

1

Organization

 

 

 

1.1

Organization structure category

 

 

 

1.1.1

Organization definition

 

 

 

1.1.2

Project organization

 

 

 

1.2

Organization process category

 

 

 

1.2.1

Organization process definition

 

 

 

1.2.2

Organization process improvement

 

 

 

1.3

Customer service category

 

 

 

1.3.1

Customer relations

 

 

 

1.3.2

Customer support

 

 

 

1.3.3

Software and system delivery

 

 

 

1.3.4

Service evaluation

 

 

 

2

Development

 

 

 

2.1

Software engineering methodology category

 

 

 

2.1.1

Software engineering modeling

 

 

 

2.1.2

Reuse methodologies

 

 

 

2.1.3

Technology innovation

 

 

 

2.2

Software development category

 

 

 

2.2.1

Development process definition

 

 

 

2.2.2

Requirement analysis

 

 

 

2.2.3

Design

 

 

 

2.2.4

Coding

 

 

 

2.2.5

Module testing

 

 

 

2.2.6

Integration and system testing

 

 

 

2.2.7

Maintenance

 

 

 

2.3

Software development environment category

 

 

 

2.3.1

Environment

 

 

 

2.3.2

Facilities

 

 

 

2.3.3

Development  support  tools

 

 

 

2.3.4

Management  support  tools

 

 

 

3

Management

 

 

 

3.1

Software quality assurance category

 

 

 

3.1.1

SQA process definition

 

 

 

3.1.2

Requirement review

 

 

 

3.1.3

Design review

 

 

 

3.1.4

Code review

 

 

 

3.1.5

Module testing audit

 

 

 

3.1.6

Integration and system testing audit

 

 

 

3.1.7

Maintenance audit

 

 

 

3.1.8

Audit and inspection

 

 

 

3.1.9

Peer review

 

 

 

3.1.10

Defect control

 

 

 

3.1.11

Subcontractor’s quality control

 

 

 

3.2

Project planning category

 

 

 

3.2.1

Project plan

 

 

 

3.2.2

Project estimation

 

 

 

3.2.3

Project risk avoidance

 

 

 

3.2.4

Project quality plan

 

 

 

3.3

Project management category

 

 

 

3.3.1

Process management

 

 

 

3.3.2

Process tracking

 

 

 

3.3.3

Configuration management

 

 

 

3.3.4

Change control

 

 

 

3.3.5

Process review

 

 

 

3.3.6

Intergroup coordination

 

 

 

3.4

Contract and requirement management category

 

 

 

3.4.1

Requirement management

 

 

 

3.4.2

Contract management

 

 

 

3.4.3

Subcontractor management

 

 

 

3.4.4

Purchasing management

 

 

 

3.5

Document management category

 

 

 

3.5.1

Documentation

 

 

 

3.5.2

Process database/library

 

 

 

3.6

Human resource management category

 

 

 

3.6.1

Staff selection and allocation

 

 

 

3.6.2

Training

 

 

 

 

 

Table E.9  Process Improvement Opportunities Analysis

ID#:                                                                                        Date:                                       

       ---------------------------------------------                                       ---------------------------------------          

 

No.

Process

Strengths(+)/

Weaknesses (-)

[AL-TL]

Improvement

Priority

(IP)

Remarks

and

Risks

1

Organization

 

 

 

1.1

Organization structure category

 

 

 

1.1.1

Organization definition

 

 

 

1.1.2

Project organization

 

 

 

1.2

Organization process category

 

 

 

1.2.1

Organization process definition

 

 

 

1.2.2

Organization process improvement

 

 

 

1.3

Customer service category

 

 

 

1.3.1

Customer relations

 

 

 

1.3.2

Customer support

 

 

 

1.3.3

Software and system delivery

 

 

 

1.3.4

Service evaluation

 

 

 

2

Development

 

 

 

2.1

Software engineering methodology category

 

 

 

2.1.1

Software engineering modeling

 

 

 

2.1.2

Reuse methodologies

 

 

 

2.1.3

Technology innovation

 

 

 

2.2

Software development category

 

 

 

2.2.1

Development process definition

 

 

 

2.2.2

Requirement analysis

 

 

 

2.2.3

Design

 

 

 

2.2.4

Coding

 

 

 

2.2.5

Module testing

 

 

 

2.2.6

Integration and system testing

 

 

 

2.2.7

Maintenance

 

 

 

2.3

Software engineering infrastructure category

 

 

 

2.3.1

Environment

 

 

 

2.3.2

Facilities

 

 

 

2.3.3

Development  support  tools

 

 

 

2.3.4

Management  support  tools

 

 

 

3

Management

 

 

 

3.1

Software quality assurance category

 

 

 

3.1.1

SQA process definition

 

 

 

3.1.2

Requirement review

 

 

 

3.1.3

Design review

 

 

 

3.1.4

Code review

 

 

 

3.1.5

Module testing audit

 

 

 

3.1.6

Integration and system testing audit

 

 

 

3.1.7

Maintenance audit

 

 

 

3.1.8

Audit and inspection

 

 

 

3.1.9

Peer review

 

 

 

3.1.10

Defect control

 

 

 

3.1.11

Subcontractor’s quality control

 

 

 

3.2

Project planning category

 

 

 

3.2.1

Project plan

 

 

 

3.2.2

Project estimation

 

 

 

3.2.3

Project risk avoidance

 

 

 

3.2.4

Project quality plan

 

 

 

3.3

Project management category

 

 

 

3.3.1

Process management

 

 

 

3.3.2

Process tracking

 

 

 

3.3.3

Configuration management

 

 

 

3.3.4

Change control

 

 

 

3.3.5

Process review

 

 

 

3.3.6

Intergroup coordination

 

 

 

3.4

Contract and requirement management category

 

 

 

3.4.1

Requirement management

 

 

 

3.4.2

Contract management

 

 

 

3.4.3

Subcontractor management

 

 

 

3.4.4

Purchasing management

 

 

 

3.5

Document management category

 

 

 

3.5.1

Documentation

 

 

 

3.5.2

Process database/library

 

 

 

3.6

Human resource management category

 

 

 

3.6.1

Staff selection and allocation

 

 

 

3.6.2

Training