1. is concerned with the policies, processes and tools for managing changing software systems(versions)
2. Software Configuration Item
2.1. Computer programs
2.2. Documentation
2.3. Data
3. Activities
3.1. Change Management
3.1.1. Change management is intended to ensure 1- system evolution is a managed process 2- and that priority is given to the most urgent and cost-effective changes.
3.1.2. The change management process is concerned with analyzing the costs and benefits of proposed changes, approving those changes that are worthwhile and tracking which components in the system have been changed.
3.1.3. The Change Management Process
3.1.4. Factors in Change Analysis
3.1.4.1. ▶ The consequences of not making the change
3.1.4.2. ▶ The benefits of the change
3.1.4.3. ▶ The number of users affected by the change
3.1.4.4. ▶ The costs of making the change
3.1.4.5. ▶ The product release cycle
3.1.5. To avoid implementing change issues
3.1.5.1. you need to email ur teammate for the changes or use dropbox
3.1.5.2. You need to keep old files.
3.1.5.3. You need a way to detect what changed in code and who made those changes.
3.1.5.4. You need to be able to know what each of your team is working on
3.1.5.5. You need a way to push changes you made on the code to your friends without affecting their work.
3.2. Version Management
3.2.1. Version Management Systems Features
3.2.1.1. Version and release identification
3.2.1.1.1. ex v2
3.2.1.2. 2- Storage management
3.2.1.2.1. Instead of keeping a complete copy of each version, the system stores a list of differences (deltas)
3.2.1.3. Change history recording
3.2.1.3.1. This involves tagging components with key words describing the changes made.
3.2.1.4. Independent development
3.2.1.4.1. make sure they do not interfere
3.2.1.5. Project support
3.2.1.6. Version Management Tools
3.2.1.6.1. A category of software tools that help a software team manage changes to source code over time.
3.3. System Building
3.3.1. the process of creating a complete, executable system by compiling and linking the system components, external libraries, configuration files, etc.
3.4. Release Management
3.4.1. version of a software system that is distributed to customers.
3.4.2. For mass market software, it is usually possible to identify two types of release:
3.4.2.1. Major releases which deliver significant new functionality
3.4.2.2. Minor releases, which repair bugs and fix customer problems that have been reported.