What is the first phase of the Software Development Life Cycle (SDLC)?
A Implementation
B Planning
C Testing
D Design
The first phase of the SDLC is Planning, where the project scope, objectives, and requirements are defined. This phase establishes a foundation for the entire software development process, ensuring the project aligns with user needs.
Which model emphasizes a sequential flow of software development stages?
A Spiral
B V Model
C Agile
D Waterfall
The Waterfall model follows a sequential approach where each phase is completed before moving to the next. This method is best for projects with clearly defined requirements and low expected changes during development.
In Agile development, what role does a ‘Scrum Master’ play?
A Team facilitator
B Stakeholder
C Project manager
D Developer
The Scrum Master in Agile is responsible for facilitating the team’s progress, removing obstacles, and ensuring the team follows Agile practices. They are not the project manager but help the team remain focused and productive.
What does ‘Test Driven Development’ (TDD) prioritize in software engineering?
A Documentation
B Debugging
C Test creation
D Code writing
Test Driven Development (TDD) prioritizes writing tests before writing the actual code. This ensures that each piece of functionality is validated from the start, helping to prevent bugs and improve the design of the software.
What type of diagram is used in UML to represent the structure of a system?
A State
B Class
C Activity
D Sequence
A Class diagram in UML represents the static structure of a system by showing its classes, attributes, methods, and the relationships between them. It’s essential for object oriented design and system modeling.
Which of the following is a key benefit of using version control systems?
A Faster deployment
B Faster coding
C Collaboration
D Code security
Version control systems like Git enable multiple developers to collaborate on the same codebase. They can track changes, merge contributions, and resolve conflicts, making it easier to work together on large projects.
What is the main objective of software refactoring?
A Writing new features
B Improving readability
C Debugging
D Adding documentation
Refactoring involves restructuring existing code to improve its readability and maintainability without changing its external behavior. It helps reduce technical debt and makes the codebase easier to understand and modify.
What phase of the SDLC involves coding the software?
A Implementation
B Deployment
C Testing
D Design
The Implementation phase of SDLC is where developers actually write the source code based on the design specifications. This phase converts the software design into a working program or system.
What does the term ‘Microservices’ refer to?
A Modular applications
B Large systems
C Small, independent services
D Monolithic systems
Microservices is an architectural style where software is composed of small, loosely coupled, and independently deployable services. Each service performs a specific function, improving scalability and flexibility.
Which of the following is considered a functional requirement?
A Security
B Data processing
C Scalability
D System uptime
Functional requirements describe specific behaviors or functions of a system. For example, data processing defines the system’s ability to collect, store, and manipulate data, which is a core functionality of most systems.
What is the purpose of continuous deployment (CD) in DevOps?
A Automating deployments
B Code merging
C Writing tests
D Managing documentation
Continuous Deployment (CD) is the practice of automating the deployment process, ensuring that every code change is automatically deployed to production. This helps deliver software faster, with fewer manual steps and reduced errors.
What does ‘API’ stand for?
A Access Protocol Interface
B Application Performance Indicator
C Application Program Interface
D Automated Process Integration
API stands for Application Programming Interface, which is a set of protocols that allow different software components to communicate with each other. APIs define how different software systems or services interact and share data.
What is the goal of software maintenance?
A Fixing defects
B Optimizing features
C Writing code
D Designing interfaces
Software maintenance involves updating and fixing software after its initial release. This includes correcting bugs, improving performance, and adding new features or modifications to meet evolving user needs.
Which of the following is an example of a software testing type?
A Integration testing
B Version control
C System architecture
D Code optimization
Integration testing is a software testing type that focuses on ensuring that different components of the system work together as expected. It checks how various modules or systems interact when integrated into a whole.
Which of the following is considered a non functional requirement?
A Feature set
B Performance
C Data storage
D User interface
Non functional requirements specify how well the system performs, rather than what it does. Performance, such as speed, scalability, and reliability, is a key aspect of non functional requirements that defines system behavior under various conditions.