PSEB-XII SERIES Computer-applications
Software Engineering Methodologies
2 previous year questions.
Volume: 2 Ques
Yield: Medium
High-Yield Trend
2
2025 Chapter Questions 2 MCQs
01
PYQ 2025
medium
computer-applications ID: pseb-xii
Explain disadvantages of software engineering.
Official Solution
Correct Option: (1)
Step 1: Understanding Software Engineering.
Software engineering is the process of designing, developing, testing, and maintaining software. While it brings significant benefits in terms of creating structured and reliable software, there are also several disadvantages and challenges associated with the practice.
Step 2: Disadvantages of Software Engineering.
1. High Cost: Software engineering projects, especially large-scale ones, can be expensive due to the time and resources required for design, testing, and maintenance. The cost of hiring skilled software engineers and using advanced tools can add up.
2. Complexity: Software engineering often deals with complex systems that involve various components and layers. Managing these complexities can make development difficult and increase the chances of errors.
3. Long Development Time: Developing software using the engineering approach can take a long time, especially when using formal methodologies. This delay can hinder time-to-market for products, which can be a competitive disadvantage.
4. Maintenance Challenges: Once software is developed, it requires constant maintenance and updates. Handling this maintenance, especially when the software is large and complex, can be challenging.
5. Risk of Over-Engineering: Software engineering processes can sometimes lead to over-engineering, where the system becomes unnecessarily complex, which increases both cost and time.
Step 3: Conclusion.
While software engineering is essential for building robust and scalable software, it also presents challenges related to cost, time, complexity, and maintenance.
Software engineering is the process of designing, developing, testing, and maintaining software. While it brings significant benefits in terms of creating structured and reliable software, there are also several disadvantages and challenges associated with the practice.
Step 2: Disadvantages of Software Engineering.
1. High Cost: Software engineering projects, especially large-scale ones, can be expensive due to the time and resources required for design, testing, and maintenance. The cost of hiring skilled software engineers and using advanced tools can add up.
2. Complexity: Software engineering often deals with complex systems that involve various components and layers. Managing these complexities can make development difficult and increase the chances of errors.
3. Long Development Time: Developing software using the engineering approach can take a long time, especially when using formal methodologies. This delay can hinder time-to-market for products, which can be a competitive disadvantage.
4. Maintenance Challenges: Once software is developed, it requires constant maintenance and updates. Handling this maintenance, especially when the software is large and complex, can be challenging.
5. Risk of Over-Engineering: Software engineering processes can sometimes lead to over-engineering, where the system becomes unnecessarily complex, which increases both cost and time.
Step 3: Conclusion.
While software engineering is essential for building robust and scalable software, it also presents challenges related to cost, time, complexity, and maintenance.
02
PYQ 2025
medium
computer-applications ID: pseb-xii
Explain stages of SDLC.
Official Solution
Correct Option: (1)
Step 1: Understanding SDLC.
The Software Development Life Cycle (SDLC) is a structured approach used for software development. It defines the stages of software development, from initial planning to maintenance, and ensures that the software is developed in a methodical, cost-effective, and high-quality manner.
Step 2: Stages of SDLC.
The SDLC is typically divided into the following stages:
1. Planning: In this phase, the project's goals, scope, and requirements are defined. A detailed project plan is created, and resources are allocated. The feasibility of the project is also assessed.
2. System Design: Based on the requirements gathered in the planning phase, the system architecture is designed. This phase focuses on creating a blueprint for the system, including databases, interfaces, and application frameworks.
3. Implementation: In this phase, actual development begins. The system is built according to the design specifications, and coding is done to create the software components.
4. Testing: After the system is developed, it is tested for defects, bugs, and errors. Various testing techniques such as unit testing, integration testing, and system testing are used to ensure the software functions as intended.
5. Deployment: Once the software passes testing, it is deployed to the production environment for use. This phase may also include training users and ensuring that the system operates in the real-world environment.
6. Maintenance: After deployment, ongoing maintenance is required to fix bugs, provide updates, and ensure the system continues to meet the user's needs. Maintenance ensures the software remains operational and up-to-date.
Step 3: Conclusion.
SDLC provides a structured approach to software development, helping developers create efficient, reliable, and maintainable software. Each phase focuses on a specific aspect of development, ensuring that the final product meets the needs of stakeholders and users.
The Software Development Life Cycle (SDLC) is a structured approach used for software development. It defines the stages of software development, from initial planning to maintenance, and ensures that the software is developed in a methodical, cost-effective, and high-quality manner.
Step 2: Stages of SDLC.
The SDLC is typically divided into the following stages:
1. Planning: In this phase, the project's goals, scope, and requirements are defined. A detailed project plan is created, and resources are allocated. The feasibility of the project is also assessed.
2. System Design: Based on the requirements gathered in the planning phase, the system architecture is designed. This phase focuses on creating a blueprint for the system, including databases, interfaces, and application frameworks.
3. Implementation: In this phase, actual development begins. The system is built according to the design specifications, and coding is done to create the software components.
4. Testing: After the system is developed, it is tested for defects, bugs, and errors. Various testing techniques such as unit testing, integration testing, and system testing are used to ensure the software functions as intended.
5. Deployment: Once the software passes testing, it is deployed to the production environment for use. This phase may also include training users and ensuring that the system operates in the real-world environment.
6. Maintenance: After deployment, ongoing maintenance is required to fix bugs, provide updates, and ensure the system continues to meet the user's needs. Maintenance ensures the software remains operational and up-to-date.
Step 3: Conclusion.
SDLC provides a structured approach to software development, helping developers create efficient, reliable, and maintainable software. Each phase focuses on a specific aspect of development, ensuring that the final product meets the needs of stakeholders and users.