Escolar Documentos
Profissional Documentos
Cultura Documentos
Pre-requisites:
Data Structures and Algorithms
Course Objective:
To understand, analyze and develop complex software by going through different phases of
software engineering methodology
Course Outline:
Introduction to software engineering, Models of the software development process, Software
requirements and specifications, Project planning, organization and management, Software
analysis and design techniques, Team project activities, Software quality assurance, Software
testing, Software Engineering tools (CASE Tools) and environments.
Recommended Reading:
1. Pressman, Roger S., "Software Engineering: A Practitioner's Approach", 6th Edition, Mc-
Graw Hill.
2. Sommerville , "Software Engineering", 8th Edition, Pearson Education
Software Engineering - Concentration Specific Outcomes (Blooms Taxonomy):
Candidates of the program are expected to demonstrate:
Specific
S.No Objective Blooms
Taxonomy
1 an ability to apply knowledge of mathematics, science, and engineering C3,
2 an ability to design and conduct experiments, as well as to analyze and interpret data C3, C5
3 realistic constraints such as economic, environmental, social, political, ethical, health C3, C5
8 a recognition of the need for, and an ability to engage in, life-long learning C1
an ability to use the techniques, skills, and modern engineering tools necessary for
engineering practice.
9 C5, C4, C6
the ability to analyze, design, verify, validate, implement, apply, and maintain software
systems
the ability to appropriately apply discrete mathematics, probability and statistics, and
systems
Course Learning Outcomes [CLOs]:
The students will be able to:
1. Model the structure and behavior a software system the UML class diagrams and state diagrams
[CLO1]
2. Design a solution to a given problem using one or more design patterns and implement the design in
a programming language [CLO2]
3. Apply software testing and quality assurance techniques at the module level, and understand these
techniques at the system and organization level [CLO3]
4. Understand common lifecycle processes including waterfall (linear), incremental approaches (such
as Unified process), and agile approaches [CLO4]
5. Work collaboratively in a small team environment to develop a moderate-sized software system from
conceptualization to completion, including requirements elicitation, system modeling, system design,
implementation, unit and system testing, integration, source code management configuration
management, and release management [CLO5]
6. Prepare technical documentations and make presentations on various aspects of a software
development project, including the technical aspects (architecture, design, quality assurance) as well
as the managerial aspects (planning, scheduling, and delivery) [CLO6]
7. Use electronic communication tools to effectively collaborate with team members in different
countries with different cultural backgrounds [CLO7]
Mapping of CLOs to PLOs
[CLOs]
PLO1 PLO2 PLO3 PLO4 PLO5 PLO6 PLO7 PLO8 PLO9 PLO10 PLO11 PLO12
CLO 1 C2
CLO 2 C5
CLO 3 C3
CLO 4 C4 C5
CLO 5 C2
CLO 6 C1
CLO 7 C3