Topic: software change management

topics > computer science > programming > Group: software maintenance

coordination system

bug tracking system
change notification
Cleanroom software development
configuration management
database change management
database consistency and reliability
dependency analysis
examples of coordination systems
examples of programming environments
incremental development
information retrieval by cross reference
management of large software projects
managing a Thesa database
programming environment
revision delta
quality assurance
sensitivity of software to change
software management
system builds
version control
version identification


When a program is heavily used, changes to the system must be carefully controlled, Source control programs keep records of what gets changed, by whom, and why. Changes are monitored, and fault for unjustified modification can be established. Modification request procedures exist with source control programs. After a request is written, it gets evaluated and scheduled. Most modifications are grouped as a program update. Critical changes may be released as patches.

In Thesa, all changes must be refereed since a change modifies the base language. Techniques are needed for managing large Thesa databases with many users. (cbb 5/80)

Subtopic: feature and modifications up

Quote: a Feature is the fundamental unit of system functionality; a set of Initial Modification Requests (IMRs) implements a Feature; one IMR to hundreds; may include hardware [»puruR6_2005]

Subtopic: software change management up

Quote: continuing communication and coordination required for software change management of large systems [»tichWF9_1979]
Quote: programmers treat a change management system as a necessary evil [»knudDB_1976]

Subtopic: change review board up

Quote: a change review board discourages change through bureaucracy

Subtopic: types of change up

Quote: change management systems should include the type of change (corrective, perfective, adaptive, inspection) [»puruR6_2005]
Quote: adaptive changes add new functionality or supported environments, corrective changes fix faults, perfective changes and reengineering improves software maintenance [»eickSG4_2002]
Quote: most changes for adaptive purposes; most changes added new code [»puruR6_2005]

Subtopic: atomic change up

Quote: 5ESS software link data base (SB) enables the linking of several modifications into a software update; handles dependencies

Subtopic: change notification up

Quote: Unix communications network mainly used for software maintenance (1978) [»nowiDA8_1978]
Quote: DSEE can automatically send alarms for changes to a tasklist [»leblDB5_1984]
Quote: when DSEE's history manager receives a user's modification comments it sends copies to the task's transcript [»leblDB5_1984]
Quote: DES for software maintenance; automatic change notification, system simulation [»grahRM2_1973, OK]
QuoteRef: grahRM2_1973 ;;113 All data access through DES database so can show usage info

Subtopic: dependency up

Quote: in source control, users should define dependencies between elements for warnings prior to changes and notification after changes [»leblDB5_1984]
Quote: analyze connections between modules to predicate the total number of changes required to change a set of modules [»haneFM_1972, OK]
Quote: SystemR uses a compiled library of data manipulation routines which are invalidated if a schema is modified; invalidation forces recompilation on use [»baroAJ3_1982]

Subtopic: inheritance and change up

Quote: inheritance hides the effect of change through a complicated, inheritance model; non-inheritance is more direct [»perrDE1_1990]
Quote: C# overrides must include the override keyword; supports versioning when a base class introduces a new method [»wiltS10_2000]

Subtopic: change and bug database up

Quote: features and change history managed by the IMR Tracking System; MRs and changes managed by the Extended Change Management System [»puruR6_2005]
Quote: 5ESS software development driven by the software delta (SD) and modification-assigned-to-developer (MD) data bases [»hoshJ7_1998]
Quote: GP library routine includes the name of the person responsible for making corrections and a time stamp [»randS_1957]
Quote: all changes to #5ESS initiated by an Initial Modification Request to ECMS; implemented as deltas for one or more modification requests [»perrDE4_1998]
Quote: a DSEE tasklist contains references to tasks; for managing each user's active tasks and each library's active and completed tasks [»leblDB5_1984]
Quote: a DSEE task has a title which describes a high-level activity and a list of textual items defining necessary sub-tasks [»leblDB5_1984]
Quote: DSEE tasks are displayed graphically as active items and completed items; the later forms the 'transcript'; the former includes the 'current task' [»leblDB5_1984]
Quote: DSEE advice manager for common tasks; contains task templates and forms [»leblDB5_1984]

Subtopic: analyzing change history up

Quote: richly linked visualization tool for software change data; discovery of high-level structures; effective access to details; used everyday [»eickSG4_2002]
Quote: predict software effort from regression model of software modification and modification requests [»mockA5_2003]
Quote: study of 12 years of change, quality, and configuration history for a #5ESS subsystem; up to 200 developers for US and international versions [»perrDE4_1998]
Quote: study of 15-year change management history of telephone switch software; 100 million lines organized into 5000 directories by 10,000 developers [»eickSG1_2001]

Subtopic: parallel development up

Quote: 60 features under development at peak of a #5ESS subsystem release [»perrDE4_1998]
Quote: 9 releases for a #5ESS subsystem under simultaneous feature development

Subtopic: change statistics for files up

Quote: most changes are small; 10% of files changed one line; 95% of changes less than 50 lines [»puruR6_2005]
Quote: in 1989, less than 2% of changes touched multiple files; by 1996, over 5% touched multiple files [»eickSG1_2001]
Quote: over a decade, 31,884 MRs changed nearly 95% of the files; in a subsystem of 2 million lines of code [»puruR6_2005]
Quote: under 10 lines change in 46% of files with a 8% chance of error; over 50 lines change in 4% of files with a 35% chance of error
Quote: changed up to 900 files for a feature of a #5ESS subsystem; 2,000 modification requests [»perrDE4_1998]
Quote: every day, there was ongoing work by different developers on multiple requests concerning different features of different releases of two similar products; 12.5% to the same file [»perrDE4_1998]
Quote: only one file changed for 51% of the Initial Modification Requests and 90% of the MRs
Quote: many developers per program file; of actively developed Apache files, half had at least 4 developers making more than 10% of changes [»mockA7_2002]
Quote: for a release of a #5ESS subsystem, 25% of the files modified by four or more developers; 50% by two or more [»perrDE4_1998]
Quote: an eighth of all deltas made to the same file by different developers with 24 hours of each other; 3% overlap [»perrDE4_1998]
Quote: Lucent's 5ESS telephone switch contains 5,000 modules of 100,000,000 lines of C, C++, and domain specific languages; 20 million lines per release [»puruR6_2005]

Subtopic: change statistics up

Quote: 15% of Apache bug reports resulted in a change; higher ratio for Mozilla [»mockA7_2002]
Quote: half of Apache bugs are resolved within a day; much faster close times for high-priority problems; Mozilla much slower [»mockA7_2002]

Subtopic: actual change history up

Quote: list of all corrections to TEX over 10 years [»knutDE7_1989]

Subtopic: examples up

Quote: Cleanroom places programs under engineering change control before first execution; for reliable statistics [»lingRC10_1988]
Quote: DSEE manages over a million lines of code successfully [»leblDB5_1984]

Related Topics up

Group: coordination system   (8 topics, 217 quotes)

Topic: archives (19 items)
Topic: bug tracking system (34 items)
Topic: change (28 items)
Topic: change notification (19 items)
Topic: Cleanroom software development (38 items)
Topic: configuration management (25 items)
Topic: database change management (12 items)
Topic: database consistency and reliability (15 items)
Topic: dependency analysis (34 items)
Topic: examples of coordination systems (23 items)
Topic: examples of programming environments (17 items)
Topic: incremental development (74 items)
Topic: information retrieval by cross reference (7 items)
Topic: management of large software projects (63 items)
Topic: managing a Thesa database (34 items)
Topic: programming environment (46 items)
Topic: revision delta (18 items)
Topic: quality assurance (22 items)
Topic: sensitivity of software to change (44 items)
Topic: software management (28 items)
Topic: system builds (43 items)
Topic: version control (34 items)
Topic: version identification
(12 items)

Updated barberCB 1/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.