CMP 519 Software Engineering
CMP 519 Software Engineering
1. Course Description:
The main objective of this course is to provide required knowledge on the various issues of
software project management and related tasks including planning, design, development,
implementation, maintenance and cross life cycle activities using object oriented concepts and
models.
2. General Objectives:
● Understand and apply the fundamental principles of software engineering and Unified Modeling
Language (UML) basics, in the development of software solutions.
● Analyze and specify software requirements, develop use cases and scenarios, apply in object
oriented software engineering
3. Contents in Detail
1
Unit I: Introduction (5 hrs.)
● Work Products
● Agile Models
● Functional Requirements
● Non-functional Requirements
2
● Benefits of Agile Methodologies
● Continuous Integration/Continuous
Deployment (CI/CD)
3
Unit III: Requirements Engineering and Elicitation
(6 Hours)
● Traceability of Requirements
● Maintaining Traceability
4
● Documenting Requirements
● Abstraction
● Inheritance
● Polymorphism
● Class Diagrams
● Sequence Diagrams
● Activity Diagrams
5
● Modeling Associations and Aggregations
● Iterative Refinement
6
● 5.3 Selecting and Applying Design Patterns
7
● Faults, Erroneous States, and Failures
● Unit Testing
● Integration Testing
● System Testing
● Regression Testing
● Designing Microservices
● Serverless Computing
9
● Impact on Development Processes
● Eco-Friendly Practices
● Energy-Efficient Coding
● Green Coding
10
● Brief Strategies for Prevention
4. Methods of Instructions:
3. Assist students to gain practical skills in data collection, analysis, and software tools
5. Classroom discussions
6: Case Study:
An individual case study should be given to each student on a software project and should be
analyzed with any UML CASE tool (like Rational Rose Enterprise Suit 2000) and implemented
in OO. 25 % to 50% of sessional marks should be allocated for evaluation.
Evaluation System
The internal evaluation of a student may consist of assignments, attendance, term-exams, lab
reports and projects etc. The tabular presentation of the internal evaluation is as follows:
11
Students’ Responsibilities
Each student must secure at least 60% marks separately in internal assessment and practical
evaluation with 80% attendance in the class in order to appear in the Semester End Examination.
Failing to get such score will be given NOT QUALIFIED (NQ) to appear the Semester-End
Examinations. Students are advised to attend all the classes, formal exam, test, etc. and complete
all the assignments within the specified time period. Students are required to complete all the
requirements defined for the completion of the course.
Text Books:
2. Bernd Bruegge & Allen H. Dutoit, Object-Oriented Software Engineering Using UML,
Patterns, and Java™
References:
12