SW Construction Course Outlines CS-322 Sem-5

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Islamabad Model College for Boys H-9, Islamabad

Course Description – Software Construction CS-322

Course Code CS-322


Course Title Software Construction
Credit Hours 3 = (2+1)
Prerequisites by CS-222 Analysis and Design for Software Systems
Course(s) and
Topics
Textbook (or  E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design
Laboratory Manual Patterns, Addison-Wesley, 1995
for Laboratory  X. Jia, Object-Oriented Software Development Using Java, 2/e,
Addison-Wesley, 2003
Courses)
 P. Vora, Web Application Design Patterns, Burlington, Morgan
Kaufmann Publishers, 2009
 S.A. Keller, Structured Systems Analysis and Design – A concise
case study, Prentice-Hall, India, 2004
Reference Material  Ian Sommerville “Software Engineering”, 6th Ed.
 Software Engineering by Roger S.Pressman
 Object Oriented design by craig Larman
Course Objectives  To construct reliable software products from design
documents by using multiple approaches of software
development.
 Focus would be on testable description of modules.
Course Contents Structured and OO implementation of design using design
document(s) developed in CS-222:SAD
Modules specification from external specifications: internal
specification / logic specification using OO concepts of accessors,
mutators, constructors, polymorphism, inheritance, abstract
methods; Architectural styles for structured software systems: data-
centered / data flow / call and return / layered / client-server;
Factoring of a system: Modularity, partitioning: horizontal / vertical;
Cohesion and coupling; Cohesion classification: functional /
sequential / communication / procedural / temporal / logical / co-
incidental; Representing design: Structured charts / process design
language / interface description language /; Representing design for
OO systems: class diagram, sequence diagram, package diagram;
Design patterns: creational / structural / behavioral; Coding
guidelines; Unit test design: walkthroughs, inspections, code
reviews; Metrics: Cyclomatic complexity / data binding / cohesion
metric
Islamabad Model College for Boys H-9, Islamabad
Course Description – Software Construction CS-322

COURSE CONTENTS WITH BREAKUP


WEEK # Topics WEEK # Topics
1  SOFTWARE ENGINEERING 10  Sequence Diagram
 Software Development Activities  Message, return values
 Software Construction and its  Object creation and destruction
importance  Control information
 Software Construction main  Examples
Activities  Interaction Diagrams
 Software Quality Practical
 Module Specification
 Objects and Classes
 Real World vs Model
Representation
2  Mutable Objects 11  Package Diagram
 Immutable Object  Purpose of Package
 Accessors & Mutators  Notation
 Accessibility of Methods  Relations
 Accessors
 Mutators
 Abstraction
 Abstract & Concrete Class
 Encapsulation
3  Polymorphism 12  Design Patterns
 Overloading  Four essential Parts
 Overriding  Types of Patterns
 Inheritance  Singleton
 Super Class  State Pattern
 Super Interface  Creational pattern
 Architectural pattern and types  Factory
 Data-centered  Builder
 Data flow  Structural Patterns
 Call and Return  Behavioral Patterns
 Layered
 Client-server
4  Modularity and design 13  Coding Guidelines
 Software Modularity  Coding
 Monolithic Software  Programming Practice
 Software Partitioning  Information hiding
 Horizontal vs Vertical Partitioning  Internal documentation
 Coding standards
 Programe statements
 Software Documentation
 Code inspection and reviews
5  Cohesion 14  Unit Test Design
 Coupling  Types of testing
 Module Coupling  Traditional testing Vs Unit testing
 Cohesion Classification  Guidelines
 Functional Cohesion
 Sequential Cohesion
 Communicational Cohesion
 Procedural Cohesion
 Temporal Cohesion
 Logical Cohesion
 Coincidental Cohesion
 Advantages of Cohesion is
Software Engineering

6  Characteristics of a Good Design 15  Walkthroughs ,inspections, code
 Structured Design reviews
 Structured Charts
 Process design Language
 Sequence Construct
 If construct
 Selection Constructs
 Repetition Constructs
 Interface Description Language
7  Rational Unified Process 16  Metrics
 Unified Process  Measurement
 Iterative and Evolutionary  Indicator
Development  Types of Metric
 RUP life cycle phases  Process Metric
 Inception, Evaluation, Elaboration,  Product Metric
Construction  Project Metric
 Transition Phase  Size oriented metric
 Function oriented metric
 Cyclomatic Complexity
8  How To Draw Use Case Diagram 17  Data Binding and Cohesion Metric
 Practical
9  UML diagrams 
 Classes
 Class Attributes
 Class operations
 Relationships and its Types
 Practical

You might also like