Software Engineering - 北京化工大学信息科学与技术...
Transcript of Software Engineering - 北京化工大学信息科学与技术...
![Page 1: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/1.jpg)
Software Engineering
Zheng Li(李征)
Jing Wan(万静)
![Page 2: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/2.jpg)
Part Three: Quality Management
Chapter 21:
Software Configuration Management
![Page 3: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/3.jpg)
3
These slides are designed to accompany Software Engineering: A
Practitioner’s Approach, 8/e (McGraw-Hill 2014). Slides copyright
2014 by Roger Pressman.
Chapter 21: Software Configuration Management
The “First Law”
No matter where you are in the system life cycle,
the system will change, and the desire to change
it will persist throughout the life cycle.
Bersoff,et al, 1980
![Page 4: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/4.jpg)
Software Configuration Mangement
Software Configuration:
The items that comprise all information produced as part of the software process ( programs, data, documents, and more...) are collectively called a software configuration.
4
programs documents
dataSoftware
Configuration
Items(SCI)
![Page 5: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/5.jpg)
Software Configuration Mangement
Baselines The IEEE (IEEE Std. No. 610.12-1990) defines a baseline as:A
specification or product that has been formally reviewed and
agreed upon, that thereafter serves as the basis for further
development, and that can be changed only through formal
change control procedures.
A baseline is a milestone in the development of software that is
marked by the delivery of one or more software configuration
items and the approval of these SCIs that is obtained through a
formal technical review
5
![Page 6: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/6.jpg)
Software Configuration Mangement
Baselines
6
SCIs
SCIs
modified
Software
engineering
tasks
Formal
technical
reviewsSCIs
approved
SCIs
extracted
SCM
controls
SCIs
stored
Project database
System Specification
Software RequirementsDesign Specification
Source CodeTest Plans/Procedures/Data
Operational System
BASELINES:
![Page 7: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/7.jpg)
The SCM Process
Identification: How does a software team identify the discrete elements of a software configuration?How does an organization manage the many existing versions of a program (and its documentation) in a manner that will enable change to be accommodated efficiently?
Version Control: How does an organization control changes before and after software is released to a customer?
Change Control: Who has responsibility for approving and ranking changes?
Configuration Auditing: How can we ensure that changes have been made properly?
Reporting: What mechanism is used to appraise others of changes that are made?
7
![Page 8: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/8.jpg)
The SCM Process
8
identification
change control
version control
configuration auditing
reporting
SCIs
Software
Vm.n
![Page 9: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/9.jpg)
The SCM Process
Version Control
It combines procedures and tools to manage different versions of configuration objects that are created during the software process
Four major capabilities:
a project database (repository) that stores all relevant configuration objects
a version management capability that stores all versions of a configuration object (or enables any version to be constructed using differences from past versions);
a make facility that enables the software engineer to collect all relevant configuration objects and construct a specific version of the software.
an issues tracking (also called bug tracking) capability that enables the team to record and track the status of all outstanding issues associated with each configuration object.
9
![Page 10: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/10.jpg)
The SCM Process
Change Control
change request from user
developer evaluates
change report is generated
change control authority decides
request is queued
for action
change request
is denied
user is
informed
need for change is recognized
change control
process—II
assign people to SCIs
check-out SCIs
make the change
review/audit the change
establish a “baseline” for testing
change control process—II
perform SQA and testing activities
promote SCI for inclusion in next release
rebuild appropriate version
review/audit the change
include all changes in release
check-in the changed SCIs
distribute the new version
![Page 11: Software Engineering - 北京化工大学信息科学与技术 …cist.buct.edu.cn/staff/zheng/CSE48300C/14_Quality_4.pdfThese slides are designed to accompany Software Engineering:](https://reader033.fdocuments.net/reader033/viewer/2022042801/5ac92e3e7f8b9a42358cf93e/html5/thumbnails/11.jpg)
Most of Slides are from the slide set to accompany
Software Engineering: A Practitioner’s Approach, 8/e
by Roger S. Pressman and Bruce R. Maxim
Slides copyright © 1996, 2001, 2005, 2009, 2014 by Roger S. Pressman
For non-profit educational use only