Software Engineering - Syllabus
Embark on a profound academic exploration as you delve into the Software Engineering course () within the distinguished Tribhuvan university's CSIT department. Aligned with the 2065 Syllabus, this course (CSC-351) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.
This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.
Units
1.1 Introduction to Software Engineering: Definition of software, software engineering. Comparing between other engineering and software engineering.
1.2 System Engineering: Introduction to System, System properties, system and their environment, system modeling.
1.3 Software Process: Introduction, software process model, process iteration, software specification, software design and implementation, software validation, software evolution.
1.4 Project Management: Introduction, management activities, project planning, project scheduling, risk management.
Unit 2
2.1 Software Requirements: Introduction, Types of requirements, requirements engineering process: Feasibility study, requirements elicitation and analysis, requirement validation, requirement management.
2.2 Software Prototyping: Introduction, prototyping in the software process, rapid prototyping techniques, user interface prototyping.
2.3 Formal Specification: Introduction, formal specification in software process, interface specification, behavioral specification.
Unit 3
3.1 Architectural Design: Introduction, system structuring, control models, modular decomposition, domain specific architecture.
3.2 Object Oriented Design: Introduction, Features of object oriented design, object oriented software engineering.
Unit 4
4.1 Verification & Validation: Introduction, verification and validation planning, software inspection, cleanroom software development.
4.2 Software Testing: Introduction, types of testing, testing work benches.
4.3 Critical system validation: Introduction, formal methods and critical systems, reliability validation, safety assurance, security assessment.
4.4 Software Cost Estimation: Introduction, productivity, estimation techniques.
4.5 Software Reengineering: Introduction, source code translation, reverse engineering.