You are on page 1of 5

Department of

Computer Science

Tentative Weekly Course Plan

Course Title Software Engineering


Course Code COSC-1104 Credit Hour 3

Course Learning Outcomes (CLOs):

1. Demonstrate Basic project management skills for solving real world problems.
2. Understand and be able to apply the principles of Software engineering practice and process.
3. Build Software using modern tools to solve real world problems.
4. Analyze Real world problems by using software engineering constructs.

1. Reference Books

i. Software
i Engineering by Ian Somerville, Pearson Publishers, 10th Edition, 2015,
ISBN:
. 13-978-0133943030.

Resource Material
ii. Software
i Engineering: A Practitioner’s Approach by Roger S. Pressman,
McGraw-Hill
i Education, 8th Edition, 2014; ISBN: 13-978-0078022128.

2. Web Resources

i. http://www.sei.cmu.edu/

ii. https://www.tutorialspoint.com/index.htm

TOPICS TO BE COVERED

Week # Topics (outline of main topics and sub topics) Tutorial


/Laboratory

Introduction to Software Engineering


• What is Software
• What is Software Crisis
• Software Engineering Evolution
1 • What is Software Engineering
• Professional Software Development
• Software Engineering Ethics
• Case Studies
• Software Products, Generic vs Custom Products

Page # 1 / 5
Department of
Computer Science

Fundamentals of Software Engineering


• Software Engineering
• Importance of Software Engineering
2 • Software Process Activities
• Issues that affect Software
• Software Engineering Diversity
• Types of Applications

Software Processes
• SE fundamentals
• Web Software Engineering
• SE Ethics
• ACM / IEEE Code of Ethics
3
• Case Studies
• Embedded System Case Study
• Information System Case Study
• Sensor Based System Case Study

Software Processes continued


• The Software Process
• Plan Driven & Agile Processes
4
• Process Models
• Water Fall Model
• Incremental Model
• Integration & Configuration Model

Software Process Activities


• Process Activities
• Software specification
• Design & Implementation
5 • Software Testing
• Coping with Change
• Software Prototyping
• Incremental Delivery
• Boehm’s Spiral Model

Page # 2 / 5
Department of
Computer Science

Agile Software Development


• Agile methods
• Agile development techniques
• Extreme Programming (XP)
6 • XP
• User Stories
• Refactoring
• Test First Development
• Pair Programming

Agile Software Development continued


• Agile Project Management
7 • Scrum
• Scrum Sprints

Agile Software Development continued


• Scaling Agile Methods
• Scaling Out and Scaling Up
8
• Agile Methods for Large Software Systems
• IBM Agility at Scale Model

Mid Term Exam

Requirements Engineering
• Rational Unified Process Model
• What is Requirement?
• Functional & Non-Functional Requirements
• Requirements Engineering Process
9
• Requirements Elicitation,
• RE Techniques,
• Interviewing,
• Ethnography,
• Stories & Scenarios

Requirements Engineering continued


• Requirement Specification
10 • Requirements Validation
• Requirements Validation techniques,
• Requirements Change Management

Page # 3 / 5
Department of
Computer Science

System Modeling
• Systems Modeling,
• Interaction Perspective
• External, Structural and Behavioral Perspective
11
• Introduction to UML,
• Context Model,
• Use Case Diagram,
• Activity Diagram

System Modeling continued


• Class Diagram, Association, Aggregation, Composition,
12
Inheritance, Multiplicity
• Sequence Diagram

Architectural Design
• Package Diagram
• Collaboration Diagram
13 • Component Diagram
• Architectural Design
• Architectural Views
• Architectural Patterns

Software Testing
• Testing
• Verification & Validation
• Development Testing
14 • Performance testing,
• Stress Testing,
• Unit Testing,
• Component, Integration, Regression testing,
• White box and black box testing

Software Project Management


• Software Project Management, Management activities, Types of
15 project plan, Project scheduling, The risk management process,
SPM, SPM and its Levels, Time, Cost & Scope triangle

Global Software Development, The four approaches to GSD, Issues in


16 GSD, Work allocation

Final Term Exam

Page # 4 / 5
Department of
Computer Science

Student Evaluation Criteria:


Workshop / Assignments/Case study 10%

Surprise Test/Sudden Test, Quizzes 10%

Semester Project 0%

Mid Term Paper 30%

Final Term paper 50%

Total 100%

Student Responsibilities:
Students must attend class. Failure to attend class may result in failure in the course. Students must also arrive on time
and remain in class for the entire period. Cellular Phones and Beeper must be Turned off (Proper classroom
decorum [behavior] adopts, Course outlines and calendars explain requirements and assignments, students are
responsible for knowing what they say. Students are also responsible for doing all assigned work on time. Excessive
absences (more than 03) will result in “F Grade”. Students may prepare Sketchbook for taking notes and for references.

_______________________________
Instructor/ Subject Specialist

____________________________
Chairman/ Head of Department

Page # 5 / 5

You might also like