SE318 Chapter29 Part 1 Exercises

31
Question 28.8 Give two advantages and disad vantages of the approach to process assessment and improv ement that is embodied in the process improvement frameworks such as the CMMI.

Transcript of SE318 Chapter29 Part 1 Exercises

Page 1: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 1/31

Question 28.8

• Give two advantages and disadvantages of

the approach to process assessment and

improvement that is embodied in the process

improvement frameworks such as the CMMI.

Page 2: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 2/31

Answer 28.8

Advantages of process improvement

frameworks

• 1-) Provides a means of measuring the state of

a process and a structured approach to

introducing process improvements.

• 2-) Useful as a way of building on the

experience of others in process improvement.

Page 3: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 3/31

Answer 28.8 

Disadvantages of process improvementframeworks

• 1-) Like any measurement system, there is a

tendency to introduce improvements toimprove the measured rating rather thanconcentrate on improvements that meet realbusiness goals.

• 2-) Expensive and bureaucratic to operate. Notsuitable for agile approaches.

Page 4: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 4/31

CHAPTER 29

Configuration Management(CM)

Page 5: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 5/31

Pre Info

• Requirements always change during

development and use.

• It is a must to incorporate these requirments

into new versions.

• That’s why you need to manage evolving

systems because it is easy to lose track of

what changes have been done.

Page 6: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 6/31

Pre Info

Versions incorporate proposals for;

• Change

Corrections of faults• Adaptations for different hardware and

operating systems.

Page 7: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 7/31

What is CM? 

• Configuration management is the

development and use of standards and

procedures for managing an evolving software

system.

Page 8: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 8/31

What does CM do?

• Define how to record and process proposed

system changes

• Identify different versions of the system.

• Store versions of the system components

Page 9: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 9/31

What if you don’t have CM!! 

• modify wrong version of a system

• Deliver wrong version

Lose track

Page 10: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 10/31

System Families

Server 

version

Linux

version

PC versionInitial

system

Desktop

versionWindows XP

version

HP

version

Sun

version

Page 11: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 11/31

Configuration Management Planning

• Describes the standards and procedures that

should be used for configuration

management.

Page 12: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 12/31

Configuration Management Planning 

• It is organised into a number of sections asfollows;

• 1-Define what is to be managed.

2-Set out who is responsible• 3-Defines policies for change control and version

management.

• 4- Describes the tools which should be used to

assist the CM process(CVS version management)• 5-Defines the CM database used to record

configuration information.

Page 13: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 13/31

Configuration Item Identification 

In large systems there may be thousands of

•  source code modules

Test scripts• Design documents

They are created by different people with

identical names

Page 14: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 14/31

Configuration Item Identification 

• To keep track of all this information so that the

right file can be found when it is needed.

• That’s why you need a consistent

identification scheme.

• Exp. PCL-TOOLS/EDIT/FORMS/DISPLAY/AST-INTERFACE/CODE

Page 15: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 15/31

Configuration hierarchy

PCL-TOOLS

EDIT

STRUCTURES

BIND

FORM

COMPILE MAKE-GEN

HELP

DISP LAY QUERY

AST-INTERFACEFORM-SPECS FORM-IO

CODEOBJECTS TESTS

Page 16: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 16/31

Configuration Database

• Is used to record all relevant information

about system configurations and configuration

items.

• It also keeps data to answer such questions as

follows;

Page 17: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 17/31

Configuration Database 

• 1-Which customers have taken delivery of particularversion of the system?

• 2-What hardware and operating system configurationis requried to run a given system version?

• 3-How many versions of a system have been createdand what were their creation dates?

• 4-What versions of a system might be affected if aparticular component is changed?

5-How many change requests are outstanding on aparticular version?

• 6-How many reported faults exist in a particularversion?

Page 18: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 18/31

Change Management

• Software systems are subject to continualchange requests:

 – From users;

 – From developers; – From market forces.

• Change management is concerned with

keeping track of these changes and ensuringthat they are implemented in the most cost-effective way.

Page 19: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 19/31

Request change by completing a change request fo

Analyze change request

if change is validthen 

Assess how change might be implemented

Assess change cost

Submit request to change control boardif change is acceptedthen 

repeat make changes to software

submit changed software for quality approval

until software quality is adequate

create new system version

else reject change request

else reject change request

The change management process

Page 20: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 20/31

Change request form

Change Request Form

Project: Proteus/PCL-Tools Number: 23/02Change requester: I. Sommerville Date: 1/12/02Requested change:  When a component is selected from the structure, displaythe name of the file where it is stored.

Change analyser:G. Dean Analysis date:10/12/02Components af fected: Display-Icon.Select, Display-Icon.Display

Associated components: FileTable

Change assessment: Relatively simple to implement as a file name table isavailable. Requires the design and implementation ofa display field. No changesto associated components are required.

Change priority:Low

Change implementation:Estimated effort: 0.5 days

Date to CCB: 15/12/02 CCB decision date:1/2/03CCB decision:Accept change. Change to be implemented in Release 2.1.Change implementor: Date of change:Date submitted to QA: QAdecision:Date submitted to CM:Comments

Page 21: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 21/31

Version and Release Management 

The goals are

• Identify versions

Keep track of the versions

Page 22: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 22/31

What is version of a system?

Version is an instance of a system which differs the

current instance from others.

Versions of a system occurs from different reasons.

• different functionality

• Improved performance

• Repaired faults

• Designed from different hardware or software

configurations

Page 23: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 23/31

Version Identification

In large system, there are hundreds of software

components, can exists in different versions.

That is why we need identification...

3 types;

• Version numbering

Attribute-based identification• Change-oriented identification

Page 24: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 24/31

Version numbering

• A version number is added to the component

or system name.

• Example;

•   1.0

•   1.1

  2.1.1

Page 25: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 25/31

Version derivation Structure

Page 26: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 26/31

Attribute-based identification

This type includes identifying attributes;

• Customer

• Development language

• Hardware platform

• Creation date

• Example: AC3D(language=Java,platform =XP,date=Jan2003)

Page 27: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 27/31

Change-oriented identification

• To retrieve a version, you need to discover the

relationships between versions and changes.

Page 28: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 28/31

Release Management

System release managers are responsible of;

• Deciding when the system can be released to

customers

• Process of creating the release

• Distribution media (CD..)

Documenting the release

Page 29: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 29/31

Release Management 

A system release is not just the executable code

of the system. The release includes more;

• Configuration files

• Data files

• An installation program

Electronic and paper documentation

Page 30: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 30/31

Release Decision Making

If releases are too frequent

• Customers may not upgrade to new release

If releases are infrequent

• Market share can decrease

These are not for custom softwares

• For those, infrequent release may meanincreasing divergence from its functionalities

Page 31: SE318 Chapter29 Part 1 Exercises

8/10/2019 SE318 Chapter29 Part 1 Exercises

http://slidepdf.com/reader/full/se318-chapter29-part-1-exercises 31/31

Factors influencing system release

strategy

Facto r Description

Technical quality of the system

If serious system faults are reported which affect the way in whichmany customers use the system, it may be necessary to issue a fault

repair release. Howeve r, minor system faults may be repaired by issuing patches (often distributed over the Internet) that can be applied to the

current release of the system.

Platform change s You may have to create a new release of a software application when anew version of the operating system platform is released.

LehmanÕs fifth law(see Chapter 21)

This sugge sts that the increment of functionality that is included in eachrelease is approximately constant. Therefore, if there has been a system

release with significant new functionality , then it may have to befollowed by a repair release.

Competition A new system release may be necessary because a co mpeting p roduct is

available.Marketingrequirements

The marketing d epartment of an organisation may have made acommitment for releases to be available at a particular date.

Customer change proposals

For customised systems, customers may have made and paid for aspecific set of system change proposals and they expect a system release

as soon as these have been implemented.