BCS054 OBJECT ORIENTED SYSTEM DESIGN with C++
Course Outcome (CO) Bloom’s Knowledge Level (KL)
At the end of course, the student will be able to:
To understand the application development and analyze the insights of object-oriented K2, K4
CO 1
programming to implement application
CO 2 To understand, analyze and apply the role of overall modeling concepts (i.e. System, K2, K3
structural)
CO 3 To understand, analyze and apply oops concepts (i.e. abstraction, inheritance) K2, K3, K4
CO 4 To understand the basic concepts of C++ to implement the object-oriented concepts K2, K3
CO 5 To understand the object-oriented approach to implement real world problem. K2, K3
DETAILED SYLLABUS 3-0-0
Unit Topic Proposed
Lecture
Introduction: The meaning of Object Orientation, object identity, Encapsulation, information
I hiding, polymorphism, generosity, importance of modelling, principles of modelling, object- 08
oriented modelling, Introduction to UML, conceptual model of the UML, Architecture.
Basic Structural Modeling: Classes, Relationships, common Mechanisms, and diagrams. Class
&Object Diagrams: Terms, concepts, modelling techniques for Class & Object Diagrams.
Collaboration Diagrams: Terms, Concepts, depicting a message, polymorphism in collaboration
Diagrams, iterated messages, use of self in messages. Sequence Diagrams: Terms, concepts,
depicting asynchronous messages with/without priority, call-back mechanism, broadcast
II 08
messages.
Basic Behavioural Modeling: Use cases, Use case Diagrams, Activity Diagrams, State Machine,
Process and thread, Event and signals, Time diagram, interaction diagram, Package diagram.
Architectural Modeling: Component, Deployment, Component diagrams and Deployment
diagrams.
Object Oriented Analysis: Object oriented design, Object design, combining three models,
Designing algorithms, design optimization, Implementation of control, Adjustment of inheritance,
Object representation, Physical packaging, Documenting design considerations.
Structured analysis and structured design (SA/SD), Jackson Structured Development (JSD).
III Mapping object-oriented concepts using non-object-oriented language, translating classes into data 08
structures, passing arguments to methods, Implementing inheritance, associations encapsulation.
Object oriented programming style: reusability, extensibility, robustness, programming in the
large. Procedural v/s OOP, Object oriented language features. Abstraction and Encapsulation.
C++ Basics: Overview, Program structure, namespace, identifiers, variables, constants, enum,
operators, typecasting, control structures
IV C++ Functions: Simple functions, Call and Return by reference, Inline functions, Macro Vs. Inline 08
functions, Overloading of functions, default arguments, friend functions, virtual functions
Objects and Classes: Basics of object and class in C++, Private and public members, static data
and function members, constructors and their types, destructors, operator overloading, type
conversion. Inheritance: Concept of Inheritance, types of inheritance: single, multiple, multilevel,
V 08
hierarchical, hybrid, protected members, overriding, virtual base class
Polymorphism: Pointers in C++, Pointes and Objects, this pointer, virtual and pure virtual
functions, Implementing polymorphism