Skip to main content
CSC-227
BS

Software Engineering

(DC) Domain Core Theory: 3 Cr. Hrs Lab: 1 Cr. Hr Total: 4 Cr. Hrs

Objectives

Main objective of the course is to provide necessary background to undertake software development projects. The course will emphasize on thoroughly analysing the user needs, designing a robust system, and constructing reliable software products from design. Focus would be on OO approach and testable description of modules. The course will also enable students to manage software systems to improve the overall quality of software products.  Students will be able to use sound engineering approaches and best practices for the development and maintenance of software systems. The practical nature of the course will enable students to collaborate effectively in team-based software projects.

Contents

The Software Development Process; Software Process Models; Analysis Principles, Requirements Gathering and Definition; Modelling/ Description of Requirements; Requirements Specification, Requirements Validation. Design Concepts and Principles, Modelling/Description of Design; Software Architecture and Architectural styles, Design Specification, Design Validation, Coding best practices, Unit test design, static checking, code reviews; Case studies for practical implementation. Overview of software management activities; Software configuration management: Change management, Version management; Software evolution: Software evolution process, Legacy systems, re-engineering; Software metrics: Product metrics, Process metrics; Quality management: Quality concepts, Quality control, Quality assurance; Process evaluation and improvement: Process characteristics, Measuring processes, analysing and changing processes, Introduction to project management; Risk management; Software Engineering Standards, Code of Ethics.


Course Learning Outcomes
CLO Description Bloom's Level PLO
CLO1 Explain the concepts & activities in the entire software engineering process and major umbrella activities — —
CLO2 Develop work products for software development activities and apply software testing techniques to evaluate the quality and correctness of software systems — —
CLO3 Develop a software system according to the developed analysis and design models for a given set of requirements and evaluate it — —
CLO4 Work effectively as a team member/leader to design and implement a software system and defend design/implementation decisions — —
CLO5 Carry out software management activities including software configuration management, quality management, and risk management, for effective software project execution. — —
In Programmes
BS BS (Computer Science)
Semester 4 — Core (Fall 2026 onwards)
Back to Course Catalog