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 UML and the use of UML in developing object-oriented systems. Various elements of UML are studied in detail giving emphasis to the steps to be followed� while� modeling various aspects of an object oriented� system.

 

COURSE CONTENTS:

 

1.      INTRODUCTION ����������������������������������������������������������������������������������������������������� ����5 hrs

         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)���������������������������������� ����������������������������� ����������� ����������������������������������������������� �����������

  1. STRUCTURAL MODELING ����������������������������������������������������������������������������������� �����������16 hrs

         Classes - Terms and concepts, common modeling techniques����� - (chapter-4, Text-1)

         Relationships � Dependency, generalization, association- simple association, aggregation & composition, modeling simple dependencies, modeling single inheritance, modeling structural relationships� -(chapter-5, 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.)

         Advanced Classes - Classifiers, visibility, scope, multiplicity, attributes, operations� - (Chapter-9, Text-1.)

         Interfaces � (chapter-11, Text-1.)

         Packages � visibility, importing, exporting, generalization � (chapter-12, Text-1.)

 

  1. BEHAVIORAL MODELING�������������������������������������������������������������������������� ����������� �14 hrs

         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.)

         State diagram � (from Refr. Text)

�����������������������������������������������������������������������������������������������������������

  1. ARCHITECTURAL MODELING� ���������������������������������������������������������������������������� �4 hrs

Logical architecture, physical architecture, component diagram, deployment diagram, complex modeling of nodes, allocating components to nodes, summary. (from� Chapter� 7, Refr-1.)������ ���� ������������������������������ ����������������������� �����������

 

  1. CASE STUDY ���������������������������������������������������������������������������������������������������������� �6 hrs

����� Case study of a library management system���� (from Chapter� 12, Refr-1.)

Tutorial case studies :-�������������������������������������

         A University System

         Banking System���

         Ticket reservation systems

�����������������������������������������������

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.

  1. Mastering UML with Rational Rose � Wendy Boggs, Michael Boggs, BPB, 1999 Edition.
  2. Designing flexible object oriented systems with UML � Charles Ritcher, Techmedia, 2000 Edition.

 

SD OOP LAB

 

Objective:-

�Lab work involves development of a mini project in C++, generating� of UML diagrams and finally developing a UML model for the mini project work. Equal� weightage has been given to both project implementation as well as� UML modeling.

 

Note:-The programs done in the first 5 weeks should aid in the development of the subsequent mini project.

 

Week 1, Week 2 
�Defining functions, invoking functions, passing parameters to functions and returning values from functions; programs involving integer arrays , character pointers, strings and menus.
 
Week 3 ,4
classes, records, array of records � defining student/employee classes, defining array of student/employee records; performing various operations on these records as well as on the array. Files � opening a file, writing objects/records to a file, reading objects/records from a file, finding the length of a file etc.
 
Week 5,� 6, 7, 8, 
Mini project:- Batches are formed with 2 students in every batch. Sample systems like Library management system, a university system, banking system� etc to taken up.
Front end is th� a simple menu and files to be used as backend/storage.(instead of databases). Each system should provide a minimum of 4/5 functionalities. 
 
Week 9
Mini� project evaluation.
 
Week� 10,11,12, 13, 14 (UML diagrams)
Various systems like Library management system, a university system,a banking system , a hospital system, a railway reservation system, a bus booking system, an ATM system were modeled using UML diagrams through Rational Rose tool. Emphasis is to be given for use case diagrams, class diagrams, sequence & collaboration diagrams. Attaching notes, files and comments to various model elements to be studied. Also generation of skeleton� code in C++/java to be demonstrated.
 
On the final day, students should submit detailed UML diagrams (involving minimum of� use case diagrams, class diagrams and sequence diagrams)� of their respective mini projects.
 
Lab References:-
 
1. �Object oriented programming with c++� - Balaguruswamy, McGrawHill publications.

2. �Mastering UML with Rational Rose� � Wendy Boggs, Michael Boggs, BPB, 1999 Edition.