Computer Science · Chapter 6
Study notes aligned to the official NEB syllabus.
A large program is not written in one sitting by guessing. Building software that many people will depend on, a banking system, a school management system, an e-commerce site, needs a plan: understand what is wanted, design it, build it, test it, and keep it running. This organized approach is what software engineering studies, and this chapter covers the ideas at its heart: what a software project and the software development process are, the System Development Life Cycle (SDLC) that structures the work, the people who do it, how a system is designed, what software quality means, and the different software process models that arrange the phases in different ways.
A software project is a planned effort to produce a particular software product within a set time, budget and scope, using people and other resources. Like any project it has a definite start and end and a clear goal.
The software development process is the complete set of activities and steps followed to build that software, from first understanding the customer's needs to delivering and maintaining the finished product. Following a defined process, rather than coding straight away, keeps the work organized, predictable and of good quality.
The System Development Life Cycle (SDLC) is a structured framework that describes the stages a software system passes through, from planning and creating to testing and deploying, and finally maintaining it. It gives the whole team a clear roadmap so that nothing important is missed and progress can be tracked. Its main phases are:
Maintenance usually consumes the largest share of a software's total effort over its life, because software must keep adapting long after it is first delivered.