Back close

Course Detail

Course Name Software Engineering & UML
Course Code 26CSA212
Program 5 Year Integrated B.C.A – M.C.A
Semester 4
Credits 3
Campus Mysuru

Syllabus

Unit I

Introduction to Software Engineering. Software and Software Engineering concepts. Software characteristics and challenges. Software Development Life Cycle (SDLC). Generic process framework. Software engineering ethics and professionalism.

Unit II

Software Process Models. Waterfall model. Incremental and Iterative models. Spiral model. Agile methodologies – Scrum overview. Comparison of process models.

Unit III

Requirements Engineering. User requirements vs system requirements. Functional and non‑functional requirements. Requirements elicitation techniques. Software Requirement Specification (SRS). Requirement validation and management.

Unit IV

Software Design and UML. Introduction to design concepts. Architectural design. UML fundamentals
UML diagrams: Use Case diagram, Class diagram, Sequence diagram, Activity diagram.

Unit V

Software quality concepts. Verification and Validation. Levels of testing. Testing techniques (black‑box and white‑box overview). Introduction to software maintenance

Lab Syllabus
  • CASE tool / UML tool introduction 
  • Problem identification and requirement analysis 
  • Preparation of Software Requirement Specification (SRS) 
  • Use Case modeling using UML 
  • Class diagram design 
  • Sequence diagram modeling 
  • Activity diagram modeling 
  • Architecture modeling 
  • Agile artifacts – user stories and backlog 
  • Software design review and documentation 
  • Test case design 
  • Verification and validation exercises 
  • Mini project – requirement to design 
  • Mini project – UML evaluation 

Objectives and Outcomes

Course Objectives

  • Understand the principles, processes, and methodologies involved in software development. 
  • Analyze customer requirements and convert them into structured software specifications. 
  • Design software systems using Unified Modeling Language (UML) diagrams. 
  • Apply modern software engineering tools and practices throughout the software life cycle. 
  • Develop awareness of professional ethics, teamwork, and project practices in software projects. 

Course Outcomes

COs 

Description

CO1 

Analyze software requirements and formulate problem statements using standard software engineering practices 

CO2 

Design software architectures and detailed models using appropriate UML diagrams 

CO3 

Apply suitable software development life cycle models and agile practices for project execution 

CO4 

Evaluate software quality using verification, validation, and testing concepts 

CO5 

Demonstrate ethical responsibility, teamwork, and adaptability in software development activities 

CO-PO Mapping 

PO 

PO1 

PO2 

PO3 

PO4 

PO5 

PO6 

PO7 

PO8 

CO 

CO1 

CO2 

CO3 

CO4 

CO5 

Text Books

  • Software Engineering: A Practitioner’s Approach, 8th Edition, by Roger S. Pressman and Bruce R. Maxim. McGrawHill Education, 2015.
  • Software Engineering, by Ian Sommerville. 10th Edition, Pearson Education, 2016.

Evaluation Pattern

Assessment 

Weightage (%) 

Midterm 

20 

Continuous Assessment 

50 

End Semester Exam 

30 

Total Marks 

100 

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now