BIT 5th Semester
Software Engineering Syllabus


Software Engineering

Course Title: Software Engineering

Course No: BIT302

Nature of the Course: Theory + Lab

Semester: V

Full Marks: 60+20+20 Pass Marks: 24+8+8 Credit Hrs: 3

Course Description

This course familiarizes students with different concepts and techniques of software engineering mainly focusing on software practices, different process models, requirements engineering, project management, project planning, quality assurance and software testing techniques.

Course Objectives

The main objective of this course is to give knowledge of software engineering so that the students will be able to use different methodologies and techniques to develop high quality software.

Course Contents

Unit 1: Introduction 2 Hrs.

Professional Software Development, Software Engineering Ethics, Case Studies

Unit 2: Software Process Model 8 Hrs.

Software Process Models, Process Activities, Coping with Change, Process Improvement, Agile Software Development

Unit 3: Requirements Engineering 3 Hrs.

Functional and Non-Functional Requirements, Requirements Engineering Processes, Requirements Elicitation, Requirements Validation, Requirements Change

Unit 4: System Modeling 6 Hrs.

Context Models, Interaction Models, Structural Models, Behavioral Models, Model Driven Architecture

Unit 5: Architectural Design 6 Hrs.

Architectural Design Decisions, Architectural Views, Architectural Patterns, Application Architectures

Unit 6: Design and Implementation 5 Hrs.

Object-Oriented Design Using the UML, Design Patterns, Implementation Issues, Open-Source Development

Unit 7: Software Testing 5 Hrs.

Introduction to Software Testing, Development Testing, Test-Driven Development, Types of Testing

Unit 8: Project Management and Planning 5 Hrs.

Introduction to Project Management, Management Activities, Introduction to Project Planning, Software Pricing, Plan-Driven Development, Project Scheduling, Agile Planning, Estimation Techniques, COCOMO Cost Modeling

Unit 9: Software Quality Assurance 3 Hrs.

Introduction to Software Quality, Software Quality Assurance, Software Reviews

Unit 10: Configuration Management 2 Hrs.

Introduction to Version Management, Change Management and Release Management

Laboratory Works:
Student should use project management tools focusing on resource management, project scheduling and people management. They should be use CASE tools for drawing UML diagrams. They should use tools for realizing agile development, version control and change control respectively. They should be able to develop test cases and use tools to demonstrate different types of testing.

References:

1. Software Engineering, 10th Edition, Ian Sommerville, Pearson Education 2016
2. Software Engineering: A Practitioner's Approach, 8th Edition, Roger S. Pressman and Bruce R. Maxim, McGraw-Hill Education 2015
3. C. Ghezzi, M. Jazayeri and D. Mandrioli, Fundamentals of Software Engineering Prentice Hall of India, Ltd.
4. G. Booch, J. Rambaugh, J. Jacobson, The unified Modeling Language – User Guide Addison - Wesley
Source: Tribhuvan University

tu BIT Software Engineering

5th semester Software Engineering

TU BIT Software Engineering Syllabus