PUCIT - Software Engineering - Course Outline
PUCIT - Software Engineering - Course Outline
Course Outline
Title Software Engineering
Code CS – 3901-3
3
Theory/week:
Weight: 3 Cr. Hrs.
Contact Hours: 3 Hrs.
Lectures: 2
Credit Hours Duration: 1.5 Hrs.
Lab/week:
Weight 0 Cr. Hrs.
Contact Hours 0 Hrs.
Labs. 0
Duration 0 Hrs.
Prerequisite CS – 2402 – 4 Object-Oriented Programming
Prerequisite Skills • Understanding of basic programming concepts.
Follow Up CS – 3902-3: Object Oriented Analysis & Design
Category Major
• Application of software engineering elements to the development of software in any computing application
domain where professionalism, quality, schedule, and cost are important in producing a software system.
• To convey the importance and need of software engineering
• To discuss different software development models appropriate for the development and maintenance of
Aims and Objectives software products
• To introduce the basic project management concepts for the development of a high-quality product
• To impart comprehensive knowledge regarding software development lifecycle
• To demonstrate, with justification, an appropriate set of tools to support the development of a range of
software projects
Punjab University College of Information Technology, University of the Punjab 2-7
• The students will recognize the importance and need of software engineering to cope with the modern trends in
software industry
• The students will have the knowledge of all phases of software life cycle including the artifacts that are
Learning Outcomes produced
• The students will be proficient enough to analyze, evaluate and apply a set of CASE tools
• The term project will enable the students to implement the software engineering concepts in a disciplined way,
to compete the local and international market
The Scope of Software Engineering: Definition, Motivation and Need, Software Characteristics and Applications. The
Software Process: Definition, Introduction to Software Development Life Cycle, Software Process Models. Project
Management Concepts: Essentials, 4Ps (People, Product, Process, Project); Software Measurement concepts:
Project, Process, Product and Software Quality Metrics, Software Cost Estimation techniques; Project Scheduling:
GANTT chart, Critical Path Method. Requirements Engineering: Definition, Requirements Elicitation, Requirement
Syllabus
Traceability, Requirements Analysis and Specification. Software Designing: Elementary Concepts, Data Design,
Software Architecture, Functional Independence, Interface Design, Component-level Design, Coding Standards.
Software Testing: Fundamentals, Verification & Validation, Testing Plan, Testing Techniques, White Box Testing and
Black Box Testing, Test Case Design, Unit Testing, Integration Testing, Validation Testing, System Testing, Debugging
practices.
Text Book/s A - Roger S. Pressman “Software Engineering- A practitioner’s approach”, 6th Ed.
A. Ian Sommerville “Software Engineering”, 6th Ed.
B. An integrated approach to software engineering by Pankaj Jalote
Reference Material C. Fundamentals of Software Engineering By Carlo Ghezzi
D. http://www.mhhe.com
E. http://www.sei-cmu.edu
Punjab University College of Information Technology, University of the Punjab 3-7
Marks division for sessional or project may vary on the basis of complexity of project or available time for project
Recommendations
execution and documentation.
Punjab University College of Information Technology, University of the Punjab 4-7
Source
(Book-
Topic Chapter Recommendations for Learning
Week Lecture
No. Activities
Section
No.)
Introduction: A-2.1
The Scope of Software Engineering: Motivation
1 and need for software engineering, Definition of
Software Engineering, Introduction to software
1
engineering vocabulary
The Software: A-1.2, 1.3,
2 Software characteristics, software application, 1.5
Software Myths
A Generic View of Process: A-2.1,
3 Software Engineering: A layered technology, A 2.2,2.3
process framework, CMMI
2
Process Models: A-3.1, 3.2, Project Announced
4 Introduction, The Waterfall Model, Incremental 3.3-3.3.1
Process Models-The Incremental Model
Process Models: A-3.3.2, Case Study
5 The RAD Model, Evolutionary process models, 3.4, 3.4.1 Assignment 1 (Process Models)
Prototyping
3 Process Models: A-3.4.2, Test 1 (The software process)
The Spiral Model, A Final Comment on 3.4.4,
6
Evolutionary Processes, The Formal Methods 3.5.2, 4.2
Model, Introduction to Agile Process Models
Punjab University College of Information Technology, University of the Punjab 5-7