0% found this document useful (0 votes)
60 views3 pages

SW Construction Course Outlines CS-322 Sem-5

This document provides details about a course on software construction, including its code, title, credit hours, prerequisites, textbooks, reference materials, objectives, topics covered each week, and assessment methods. The course aims to teach students how to construct reliable software by applying design patterns, principles of modularity, cohesion and coupling, UML diagrams, and following coding guidelines.

Uploaded by

kashifmir302
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views3 pages

SW Construction Course Outlines CS-322 Sem-5

This document provides details about a course on software construction, including its code, title, credit hours, prerequisites, textbooks, reference materials, objectives, topics covered each week, and assessment methods. The course aims to teach students how to construct reliable software by applying design patterns, principles of modularity, cohesion and coupling, UML diagrams, and following coding guidelines.

Uploaded by

kashifmir302
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 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