Q.1 What is the primary goal of Software Configuration Management (SCM)?
To improve software performance
To manage changes and versions of software artifacts
To increase coding speed
To test software functionalities
Explanation - SCM is focused on tracking and controlling changes in software, including versions, releases, and configurations.
Correct answer is: To manage changes and versions of software artifacts
Q.2 Which of the following is a core activity of SCM?
Code compilation
Version control
UI design
Database indexing
Explanation - Version control is a central activity in SCM to manage changes to source code and other artifacts.
Correct answer is: Version control
Q.3 Which SCM tool is widely used for distributed version control?
Git
SVN
ClearCase
RCS
Explanation - Git is a popular distributed version control system allowing multiple developers to work independently.
Correct answer is: Git
Q.4 What is a baseline in SCM?
A backup of the entire software
A reference point in software development
A testing strategy
A coding guideline
Explanation - A baseline is a formally reviewed version of a software artifact that serves as a reference for further development.
Correct answer is: A reference point in software development
Q.5 Which of the following is NOT a purpose of SCM?
Change control
Configuration identification
Software licensing
Status reporting
Explanation - SCM deals with managing software changes, not licensing issues.
Correct answer is: Software licensing
Q.6 What is the main function of a version control system?
To compile code faster
To track revisions and changes
To optimize software algorithms
To design software architecture
Explanation - Version control systems maintain a history of changes made to files, enabling rollback and collaboration.
Correct answer is: To track revisions and changes
Q.7 Which of the following describes 'change control' in SCM?
Controlling team communication
Managing modifications to software artifacts
Managing hardware upgrades
Designing new features
Explanation - Change control ensures that modifications to software are proposed, reviewed, approved, and documented systematically.
Correct answer is: Managing modifications to software artifacts
Q.8 What is the difference between SCM and version control?
SCM is broader and includes version control
Version control is broader and includes SCM
They are exactly the same
Version control is unrelated to SCM
Explanation - SCM encompasses version control, build management, change control, and release management, making it broader.
Correct answer is: SCM is broader and includes version control
Q.9 Which SCM activity involves creating builds and releases?
Configuration auditing
Release management
Code refactoring
Requirement gathering
Explanation - Release management coordinates the preparation, build, and delivery of software releases.
Correct answer is: Release management
Q.10 Which of the following is a benefit of using SCM?
Faster compilation
Improved tracking and accountability
Reduced hardware costs
Automated UI design
Explanation - SCM improves the traceability of changes and accountability of team members.
Correct answer is: Improved tracking and accountability
Q.11 Which file type is most commonly tracked in SCM?
Executable binaries only
Source code and configuration files
Temporary log files
OS system files
Explanation - SCM systems primarily manage source code, documentation, and configuration files, not temporary system files.
Correct answer is: Source code and configuration files
Q.12 What does 'branching' in SCM allow?
Parallel development of different versions
Faster compilation
Code optimization
Automated testing
Explanation - Branching enables multiple versions of the software to be developed simultaneously without interfering with each other.
Correct answer is: Parallel development of different versions
Q.13 Which SCM process ensures compliance with the baseline?
Configuration auditing
Change control
Code merging
Bug tracking
Explanation - Configuration auditing verifies that the software matches its approved baseline and standards.
Correct answer is: Configuration auditing
Q.14 What does 'merging' in SCM refer to?
Combining changes from different branches
Deleting unused files
Creating a backup
Automating tests
Explanation - Merging integrates changes made in separate branches into a unified version of the code.
Correct answer is: Combining changes from different branches
Q.15 Which SCM tool is centralized rather than distributed?
Git
SVN
Mercurial
Bazaar
Explanation - SVN (Subversion) is a centralized version control system where all changes are committed to a central repository.
Correct answer is: SVN
Q.16 Which of the following is a type of configuration item in SCM?
Source code file
Requirement document
Test plan
All of the above
Explanation - Configuration items include any software artifacts such as source code, documentation, and test plans that need version control.
Correct answer is: All of the above
Q.17 Which activity tracks the status of changes in SCM?
Change control
Version tagging
Release deployment
Unit testing
Explanation - Change control tracks proposed, approved, and implemented changes, maintaining the status and history.
Correct answer is: Change control
Q.18 What is the purpose of tagging in SCM?
Marking specific versions for reference
Deleting old branches
Automating code testing
Compiling code faster
Explanation - Tagging allows specific versions of files or releases to be labeled for easy reference in the future.
Correct answer is: Marking specific versions for reference
Q.19 Which SCM activity focuses on identifying and defining items to control?
Configuration identification
Change control
Build management
Release auditing
Explanation - Configuration identification defines and labels configuration items so they can be tracked and managed effectively.
Correct answer is: Configuration identification
Q.20 What is 'build management' in SCM?
Compiling and linking software components
Tracking user requirements
Managing team schedules
Writing test cases
Explanation - Build management automates the process of compiling, linking, and packaging software artifacts for deployment.
Correct answer is: Compiling and linking software components
Q.21 Which of the following best defines 'release management'?
Tracking software bugs
Planning, scheduling, and controlling software releases
Optimizing code performance
Designing software architecture
Explanation - Release management oversees the preparation, packaging, and deployment of software to ensure quality and timeliness.
Correct answer is: Planning, scheduling, and controlling software releases
Q.22 Which SCM practice reduces conflicts when multiple developers work on the same file?
Branching and merging
Release tagging
Change auditing
Configuration identification
Explanation - Branching allows parallel development, and merging reconciles changes to reduce conflicts.
Correct answer is: Branching and merging
Q.23 Which of the following SCM concepts helps in rollback to a previous version?
Version control
Build automation
Code review
Release scheduling
Explanation - Version control maintains the history of all changes, allowing developers to revert to previous versions if needed.
Correct answer is: Version control
Q.24 What is a 'fork' in SCM systems like Git?
A copy of a repository allowing independent development
A type of branch used internally
A backup of a configuration item
A software bug tracking mechanism
Explanation - A fork creates an independent copy of a repository for separate development without affecting the original project.
Correct answer is: A copy of a repository allowing independent development
Q.25 Which activity ensures that all SCM processes are properly followed and documented?
Configuration auditing
Code optimization
Unit testing
Requirements elicitation
Explanation - Configuration auditing checks adherence to SCM policies, standards, and documentation for accountability.
Correct answer is: Configuration auditing
