Course Overview
|
Course Synopsis
|
The course focuses on the development techniques for industrial level software. The intent of the course is to equip students with the concepts to help them get a strong base in software industry. In particular the course discusses initial software engineering related concepts, different development methodologies (like structured development, object-oriented development etc), Software architecture, effective coding practices and testing in broad.
|
Course Learning Outcomes
|
At the end of the course, you should be able to:
- Extract and analyze software requirements
- Develop some basic level of software Architecture/Design
- Apply standard coding practices
- Apply different testing techniques
- Describe debugging and its effectiveness.
|
Course Calendar
|
1
|
Introduction to Software Engineering
|
2
|
Introduction to Software Development
|
3
|
Requirements Engineering
|
4
|
Requirements Engineering (Contd.)
|
5
|
Relationship of Several components of Software Requirements
|
6
|
Relationship of Several components of Software Requirements (contd.)
|
8
|
State Transition Diagrams
|
Assignment No. 1
10
|
Prototyping & GUI Design
|
Quiz No.1
13
|
Object Oriented Analysis & Design
|
14
|
Object Oriented Analysis
|
16
|
Derivation of the Object Model – The Coad Methodology
|
GDB No.1
18
|
Case Study of Connie’s Convenience Store - A point of Sale System
|
Quiz No.2
19
|
Identify Structures (Cont.)
|
22
|
Software & System Architecture
|
Mid Term Exam
26
|
Introduction to Design Patterns
|
28
|
Good Programming Practices & Guidelines
|
29
|
File Handling Tips for Java & C++
|
30
|
Layout & Comments in Java and C++
|
Assignment No. 2
32
|
Clarity through Modularity
|
Quiz No.3
36
|
Software Verification and Validation
|
37
|
Testing Vs.Development
|
Quiz No.4
38
|
Equivalence Classes or Equivalence Partitioning
|
Final Term Exam
|
|
|