The Software Development Life Cycle (SDLC) is a structured approach to software development that outlines the stages of planning, designing, developing, testing, and maintaining software. It provides a systematic process for creating software applications, ensuring quality and consistency.
What is the main purpose of the Waterfall Model in software development?
A Iterative development
B Clear, structured approach
C Continuous feedback
D Rapid prototyping
The Waterfall Model is a linear and sequential approach to software development where each phase must be completed before moving on to the next. It emphasizes a structured and predictable process, ideal for projects with well defined requirements.
Which software development methodology focuses on iterative development and flexibility?
A Agile
B Spiral
C V-Model
D Waterfall
Agile methodology emphasizes flexibility, collaboration, and rapid iterations in development. It encourages adapting to changes and delivering small, incremental improvements to software rather than sticking to a rigid, predefined plan like in the Waterfall model.
What is UML used for in software development?
A Writing code documentation
B Creating user interfaces
C Debugging code
D Visualizing system architecture
Unified Modeling Language (UML) is a standardized way to visualize the design of a software system. It includes diagrams like class diagrams, sequence diagrams, and use case diagrams that help developers and stakeholders understand system architecture.
Which of the following is an example of a non functional requirement?
A User interface design
B System performance
C Database queries
D User authentication
Non functional requirements specify criteria for the system’s operation rather than its functionality. System performance, scalability, security, and reliability are all examples of non functional requirements, which define how well the system should perform.
What does API stand for?
A Application Programming Interface
B Application Performance Indicator
C Automated Programming Instruction
D Automated Processing Interface
An Application Programming Interface (API) is a set of protocols and tools for building software applications. It defines how different software components interact, allowing systems to exchange data and functionality without needing to understand the internal workings of each other.
Which of the following is a feature of Object Oriented Design (OOD)?
A Linear execution
B Modular testing
C Data encapsulation
D Sequential processing
Object Oriented Design (OOD) focuses on using objects to represent real world entities. One of its core principles is data encapsulation, which hides the internal state of an object and only exposes methods to interact with that data, ensuring greater control and security.
Which diagram is commonly used to represent the flow of control in a system?
A Use Case Diagram
B Class Diagram
C Activity Diagram
D Sequence Diagram
Activity diagrams in UML are used to model the dynamic aspects of a system. They depict the flow of control or data from one activity to another and are particularly useful in representing workflows and business processes.
What is the main function of version control systems like Git?
A Designing user interfaces
B Managing project deadlines
C Generating software documentation
D Tracking changes to code
Version control systems like Git are used to manage and track changes made to source code. They allow multiple developers to collaborate, maintain a history of code revisions, and revert to earlier versions when necessary.
Which of the following is part of Continuous Integration (CI)?
A Automated testing
B End user training
C Database management
D Manual coding
Continuous Integration (CI) involves automatically integrating code changes from multiple contributors into a shared repository frequently, often with automated testing. This helps ensure that code changes are functional and donβt introduce bugs into the system.
What does DevOps primarily focus on in software development?
A Defining system architecture
B Writing efficient code
C Collaboration between development and operations
D Reducing hardware costs
DevOps is a set of practices that emphasize collaboration between software developers and IT operations. The goal is to shorten the development lifecycle, improve deployment frequency, and ensure high quality software through automation and collaboration.
Which of the following is a common software architecture pattern?
A MVC (Model View Controller)
B Hybrid Design
C Recursive Design
D Structured Programming
MVC (Model View Controller) is a common software architecture pattern used to separate the concerns of an application. It divides the application into three interconnected components: Model (data), View (user interface), and Controller (logic that handles input).
What is the main goal of software refactoring?
A Increase project costs
B Add new features
C Improve software performance
D Clean up and improve code structure
Refactoring is the process of restructuring existing code without changing its external behavior. The main goal is to improve code readability, maintainability, and scalability by cleaning up or simplifying the code structure.
What is the primary purpose of software testing?
A To improve performance
B To fix bugs
C To identify and fix errors
D To write documentation
The primary purpose of software testing is to identify bugs or errors in a system and ensure that it behaves as expected. Testing helps improve the quality and reliability of software by finding and resolving issues before release.
Which of the following is considered a functional requirement?
A Data encryption
B Login functionality
C Performance under load
D System uptime
Functional requirements define the specific behaviors or functions of a system. Login functionality, such as user authentication, is a functional requirement as it specifies a feature the system must perform.