09 Lecture Flashcards
What is SCM used for?
- Mange evolving software systems
- control the costs involved in making changes to a system
Define Software Configuration Management
A set of management disciplines within a software engineering process to develop a baseline (project function)
Define Baseline
Work product that has been formally reviewed and agreed
Serves as the basis for further development
Can only be changed through change control procedures
What are the Configuration Management Roles?
- Configuration Manager
- Change Control Board Member
- Developer
- Auditor
Define Configuration Item
An Group of Software and/or Hardware designated for configuration management.
They are treated as a single entity in the configuration management porcesses (source files/ CPUs)
Which SCM Directories are there?
- Programmers Directory
- Master Directory
- Software Repository
What is the Programmer’s Directory (Dynamic Library)
- Working copy
- holds newly created and modified software etities
- is controlled by the programmer only
What is the Master Directory (Controlled Library)
- Manages the current baseline(s)
- Controls changes made to the baseline(s)
- Change must be authorized
What is the Software Repository (Static Library)
- Archive various baselines released for general use
- Copies made available to requesting Orgas
Advantages of DVCS
+ You can work offline
+ You can work incrementally
+ You can switch the context efficiently
+ You can to exploratory coding efficiently
Disadvantages of DVCS
- High learning curve
- Scaling issues
- Less administrative control
git add
add changed files to the staging area
git commit
commit selected changed files of the staging area to the local repo
git push
upload local commits to a remote repo
git pull
download and merge remote commits into your working copy