Back to all notes
Grade 12 Computer 🎁 Free ⏱️ 15 Min
📚

Software Process Model (SPM)

Topic: Software Process Model

Grade 12 Computer Science Note

Published on February 16, 2026
136 Total Views
28 Downloads
📚 Study Note

Software Development Life Cycle (SDLC)

The software development life cycle (SDLC) is a framework used by the company or individual to design, develop, and maintain high-quality software. In SDLC, there are phases for the process of software production, from initial idea to deployment and maintenance. There are 7 phases of SDLC, they are: -

a.       System Study/ Planning

b.      System Analysis

c.       System Design 

d.      Development (Coding)

e.       Testing 

f.        Deployment of software 

g.      Maintenance

Planning/ System study  

The planning or system study phase is the first step of the Software Development Life Cycle (SDLC). In this phase, the team clearly defines what they are going to build and why the project is required. It helps in understanding the purpose and scope of the software before development begins. During this phase, a feasibility study is carried out to check whether the project can be successfully completed. Time feasibility is studied to determine if the project can be finished within the given time limit. Economic feasibility is analyzed to ensure that the project is affordable and within the budget. Operational feasibility is examined to verify whether the system will work effectively in the organization and will be accepted by users.

At the end of the planning phase, the team gains a clear understanding of the project. A report is prepared based on the feasibility analysis, and a final decision is taken on whether to proceed with the project or not.

System Analysis

            System analysis is the phase where detailed requirements of the system are collected from the clients or customers and analyzed. The needs of users are carefully studied, and both functional and non-functional requirements are documented. This phase focuses on understanding what the system should do without deciding how it will be done. 

System Design

System Design converts the requirements gathered during analysis into a detailed technical blueprint. In this phase, the system architecture, database design, user interface design, and data flow are planned. It describes how the system will work and serves as a guide for developers during coding. 

Development (Coding)

Development is the phase where the actual software is built. Programmers write the source code according to the system design. Different modules of the system are developed and integrated. This has transformed the design into a working software product. 

Testing

Testing is performed to find and fix errors in the software. The system is tested to ensure it works according to the requirements. Various tests are carried out to check functionality, performance, and reliability. This phase ensures that the software is free from defects and ready to use. 

Deployment of Software

Deployment is the phase where the completed and tested software is released to the users. The system is installed and available on the internet to be used in real life. Users may be trained to use the software, and final checks are performed to ensure smooth operation. 

Maintenance

Maintenance is the final step of SDLC; after deployment, the software is continuously monitored and updated. Bugs are fixed, to increase performance, and new features may be added based on user feedback. This phase ensures the software remains as per the planning and is also up to date over time. 

Q2. How do various requirement gathering techniques help in achieving a careful grasp of user needs and system requirements during the SDLC’s analysis phase? 

Ans:- Various requirement gathering techniques play a crucial role in accurately capturing user needs, demand, and system requirements during the system development analysis phase. These phases help with the following: 

a.       Clarifying project objectives and expectations

b.      Identifying stakeholder and user requirements

c.       Defining system scope and boundaries

d.      Reducing misunderstanding and rework

e.       Improve software quality.

a. Clarifying project objectives and expectations

They ensure that stakeholders have a clear understanding of what the project aims to achieve and how it aligns with their business.

b. Identifying stakeholder and user requirements

Techniques like interviews and surveys allow for direct interaction with stakeholders, providing insights into their specific needs and expectations. 

c. Defining system scope and boundaries

Requirement gathering helps in defining the boundaries of the system, ensuring that the project stays within its scope and meets the necessary constraints. 

d. Reducing misunderstanding and rework

By accurately capturing requirements, these techniques help prevent misunderstandings and reduce the likelihood of costly rework during development. 

e.  Improve software quality.

A well-defined set of requirements leads to a more robust and reliable software product, enhancing the overall quality of the system.  

Q3. Explain the importance of system testing in the system development life cycle (SDLC).

Ans: System testing is an important phase in the Software Development Life Cycle (SDLC), performed on a fully integrated system to ensure it meets the specified requirements. It evaluates the system's compliance with both functional and non-functional requirements, ensuring the software behaves as expected in real-world scenarios. This testing is conducted after integration testing and before acceptance testing. System testing involves testing the entire system, including its design, behaviour, and user expectations. System testing ensures the entire product is validated, detecting defects that might be missed during unit or integration testing. It improves system reliability, validates requirements, and enhances user confidence. It also facilitates collaboration between development and testing teams. The importance of system testing includes:

  1. Validates Complete System – It ensures that all components work together correctly as a complete system.
  2. Detects Hidden Defects – It identifies errors that may not be found during unit or integration testing.
  3. Verifies Requirements – It confirms that the system meets user and business requirements.
  4. Improves Reliability – It checks system stability and performance in real-world scenarios.
  5. Enhances User Confidence – A properly tested system increases trust in the final product.
  6. Supports Team Collaboration – It promotes coordination between development and testing teams.

In conclusion, system testing ensures that the final product is fully validated, reliable, and ready for user acceptance.

Download Notes

Get the complete study notes in PDF format

📕
PDF Document
Size unavailable
Download

Explore More Notes

Discover more study materials

Back to All Notes