BSc CSIT · Semester VI
Software Engineering syllabus
Official TU syllabus for Software Engineering (CSC375): 10 units, 59 topics, 3 credit hours. Every unit links to its notes and solved questions.
1
Introduction
2h · 4 Q- Software and its Types
- Attributes of Good Software
- Software Engineering and its Importance
- Fundamental Software Engineering Activities
- Difference between Software Engineering and Computer Science
- Difference between Software Engineering and System Engineering
- Challenges and Cost of Software Engineering
- Professional Software Development
- Software Engineering Diversity
- Internet Software Engineering
- Software Engineering Ethics
2
Software Processes
5h · 9 Q- Software Process
- Software Process Models (Waterfall Model; Incremental Development; Integration and Configuration)
- Software Process Activities (Software Specification, Software Design and Implementation; Software Validation; Software Evolution)
- Coping with Change (Prototyping, Incremental Delivery)
- Process Improvement
3
Agile Software Development
3h · 4 Q- Agile Development
- Plan-Driven vs. Agile Development
- Agile Methods
- Agile Development Techniques
- Introduction to Agile Project Management
4
Requirements Engineering
3h · 8 Q- Concept of User and System Requirements
- Functional and Non-Functional Requirements
- Requirements Engineering Process
- Requirements Elicitation
- Requirements Specification
- Requirements Validation
- Requirements Change
5
System Modeling
6h · 7 Q- Introduction to System Modeling
- Context Models
- Interaction Models
- Structural Models
- Behavioral Models
- Model-Driven Architecture
6
Architectural Design
6h · 4 Q- Introduction
- Architectural Design Decisions
- Architectural Views
- Architectural Patterns
- Application Architectures
7
Design and Implementation
5h · 2 Q- Introduction
- Object-Oriented Design using UML
- Design Patterns
- Implementation Issues
- Open-Source Development
8
Software Testing
5h · 7 Q- Introduction
- Validation and Verification Testing
- Software Inspection
- Software Testing Process
- Development Testing
- Test-Driven Development
- Release Testing
- User Testing
9
Software Evolution
3h · 4 Q- Evolution Process
- Legacy Systems
- Software Maintenance
10
Software Management
7h · 11 Q- Software Project Management
- Project Management Activities (Project Planning, Risk Management, People Management, Reporting and Proposal Writing)
- Project Planning (Software Pricing, Plan-Driven Development, Project Scheduling, Estimation Techniques, COCOMO Cost Modeling)
- Introduction to Quality Management and Configuration Management
Textbooks and references
- Software Engineering, 10th Edition, Ian Sommerville, Pearson Education 2016
- Software Engineering: A Practitioner’s Approach, 8th Edition, Roger S. Pressman and Bruce R. Maxim, McGraw-Hill Education 2015
- Beginning Software Engineering, Rod Stephens, John Wiley & Sons Inc 2015
Study CSC375 the smart way
Solved questions, flashcards & practice