SOFTWARE DESIGN USING OBJECT ORIENTED PARADIGM

 

CS122                                                                              No. of hrs/week=03+03

                                                                                          No. of credits =04

 

COURSE DESCRIPTION:  This course provides detailed description of object-oriented software design using UML. The emphasis is given for the design and modeling of the software solutions to the real world problems.  The implementation and testing part will be given due importance in the laboratory course associated with the course. The instructor will recommend suitable implementation environment and appropriate case studies.

 

COURSE CONTENTS:

1.       INTRODUCTION  

§         Importance of modeling, principles of modeling, object-oriented modeling. chapter-1, Text-1

§         What is unified modeling language, An overview of UML.

       chapter-1 & 2 , Refr-1                                                                             4 Hours.

  1. STRUCTURAL MODELING

§         Classes - Terms and concepts, common modeling techniques      - chapter-4, Text-1

§         Relationships – Dependency, generalization, association, modeling simple dependencies, modeling single inheritance, modeling structural relationships  - chapter-5, Text-1

§         Common Mechanisms – Notes, stereotypes, tagged values, constraints, modeling comments, modeling new properties   - chapter-6, Text-1

§         Diagrams – class diagrams, object diagrams, component diagrams, deployment diagrams, use-case diagrams, sequence diagrams, collaboration diagrams, state-chart diagrams and activity diagrams – chapter-7, Text-1.

§         Class Diagrams – Contents, common uses – Chapter-8, Text-1.

§         Classifiers, visibility, scope, multiplicity, attributes, operations  - Chapter-9, Text-1.

§         Interfaces – chapter-11, Text-1.

§         Packages – visibility, importing, exporting – chapter-12, Text-1.

§         Advanced dependency, generalization, association, realization and refinement relationships – chapter-10, Text-1.

§         Object diagrams – chapter-14, Text-1.

-14 hours

  1. BEHAVIORAL MODELING

§         Interactions – objects and roles, links, messages, sequencing, creation, modification, representation, modeling flow of control – chapter-15, Text-1.

§         Use-cases – use-cases and actors, flow of events, scenarios, collaborations, organizing use-cases, modeling behavior of an element – chapter-16, Text-1.

§         Use-case diagrams – chapter-17, Text-1.

§         Interaction diagrams – sequence diagrams, collaboration diagrams, modeling flows of control by time ordering and organization – chapter-18, Text-1.

§         Activity diagrams – action states and activity states, transition, branching, forking and joining, swim lanes, object-flow, modeling a work-flow, modeling an operation – chapter19, Text-1.

§         Events and signals – chapter 20, Text-1

§         States, transitions, advanced states and transitions, sub states – chapter-21, Text-1.

                                                                                                            - 14 hours

  1. ARCHITECTURAL MODELING

Logical architecture, physical architecture, component diagram, deployment diagram, complex modeling of nodes, allocating components to nodes, summary.

             Chapter  7, Refr-1.                                                                                   - 4 hours.

 

  1. CASE STUDIES

      Case study of a library management system     Chapter  12, Refr-1.

 

Tutorial case studies :-                                     

§         Retail shop

§         Super market

§         Ticket reservation systems

§         Inventory control

§         Hotel management

§         Examination System

§         Banking System                                                                                       - 6 Hours.

NOTE:

1)                  More stress shall be given to system design using UML in the theory course.

2)                 Implementation language shall be C++, JAVA, or Borland C++ - BUILDER (for using STL)

3)                 A separate mini project for each student shall be made mandatory part of the course. This project will involve one of the case studies , built on OOP principles , preferably using C++ language.

4)                 25% weightage  for  the system design using UML  and  50% weightage for the implementation  using an OOP language  shall be given in the laboratory course.

5)                 A strict monitoring of the course with predefined schedule is quite essential to ensure the rigorous learning.

Text Book:

1.           THE UNIFIED MODELING LANGUAGE USER GUIDE – Booch, Jacobson, Rumbaugh – Addison Wesley, 1999 Edition.

Reference Books:

1.       UML TOOLKIT – Eriksson and Penker, John Wiley and Sons, 1998 Edition.

2.      USING UML  - Booch, Jacobson, Rumbaugh,  Pearson Education Asia, 2001 Edition.

3.      Mastering UML with Rational Rose – Wendy Boggs, Michael Boggs, BPB, 1999 Edition.

4.      Designing flexible object oriented systems with UML – Charles Ritcher, Techmedia, 2000 Edition.