Anda di halaman 1dari 2

HDD

Object Oriented Concepts

Object Oriented Concepts


Course Description
SE29 Object Oriented Concepts Course number Course Name Nagendra R Setty Author(s) Pre-requisites for attending course: Software Development Methodology and Programming Fundamentals Stream Target SE Compet Type Category PM D D 3 (Eg. Project encies2 (ERole1 (Eg.PL/O Mgmnt/Customer Essential, (Eg. (TK, P, S/DB/NM Interface/Consulti DSE/PA/ T, D, A, /SE/TO) ng etc.) Desirable) PM PS) etc.) Estimated course 1 day (3.5 hours of lecture) duration

PL

Course Objectives
Sl# 1. Objective To create an appreciation/ awareness of techniques to handle complexity of modern software systems and to look at the different approaches of solving a problem statement (Structured Programming and Object Oriented Programming). To introduce the basic concepts of Object Oriented Programming (OOP). Demonstrable knowledge/skills Ability to appreciate the reasons behind the complexity of modern software systems and also understand the techniques useful in breaking down a problem into smaller parts. Ability to appreciate what methodology is being used in OOP to manage complexity. Ability to differentiate between Procedural programming and Object Oriented Programming Knowledge of classes and objects. Knowledge of encapsulation and how encapsulation manages complexity. Ability to understand the concept of data hiding. Knowledge of encapsulation, single and multiple inheritances, multilevel inheritance and polymorphism. Knowledge of representing a class, its member variables and methods in UML class diagram format. Knowledge of how to go about identifying classes, their member variables and methods. How to avoid the common pitfalls in Object Oriented design.

2.

To introduce the concept of Abstraction, Class, Object, Member Data, member methods, Encapsulation and Data hiding

3.

To introduce Inheritance, Abstract Class, Polymorphism and Binding

4.

To introduce the UML class diagram notation To introduce a simple and effective Object Oriented Design methodology

5.

Course Design
Sl# Unit name Unit objectives and keywords Lecture Duration

PM Stream (Choose one)-SE: Software Engineer, PA: Programmer Analyst, PM: Project Manager Competencies (Choose appropriate ones)-TK:Technical Knowledge, Programming, Testing, Design, Analysis, Pre-sales. 3 Category (Choose one)-PL: Programming or Programming Language, OS: Operating Systems, DB: Database, NM: Networks and Middleware, SE: Software Engg, TO: Technical Overview
2

ER/CORP/CRS/SE29/001

Version No: 3.0

HDD

Object Oriented Concepts

(Hrs.) 1. Managing Software Complexity To emphasize the need to manage software complexity To introduce the concept of Structured Procedural Programming To emphasize the need for object oriented programming To draw a comparison between Structured Programming and OO Programming To introduce the concept of an object and its constituents To introduce the concept of Abstraction To introduce the concept of a Class To introduce the concepts of Encapsulation and information hiding To introduce Data Access Specifiers To introduce UML Notations of a class To explain the concept of inheritance To explain the advantages of using Inheritance to share Implementation To introduce the concept of Generalization and Specialization To introduce the different forms of generalization To introduce UML class diagram representations of all relations, multiplicity of relationships To introduce the concepts of Multiple and Multilevel Inheritance To introduce Abstract classes To explain the concept of Polymorphism To introduce the concept of Binding SpedFast courier case To design a solution from requirements D-Rail Inc case To rectify the problems in the already given OO Design of D-Rail Inc. 0.75

2.

Basic concepts of Object Oriented Technology

3.

Advanced concepts of Object Oriented Technology

1.75

4.

Case Studies

2.0

References
1. 2. 3. 4. 5. 6. 7. Brad J. Cox, Andrew J. Novobilski Object-Oriented Programming An evolutionary approach, Addison-Wesley, 1991. T. Budd. An introduction to Object-Oriented Programming, Addison-Wesley, 1997. J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen. Object-oriented modeling and design. Prentice-Hall, Englewood Cliffs, N.J., 1991. G. Booch. Object-oriented analysis and design with applications. Benjamin/Cummings, Redwood City, CA, 1994. Prabal Sengupta, Bidyut Baan Chaudhuri : Object Oriented Programming fundamentals and Application , PHI, 1998 Object-Oriented Programming Concepts : http://docs.rinet.ru/KofeynyyPrimer/ch4.htm What is Object-Oriented Programming?: http://chitu.okoli.org/mis/teach/oop/definition.html

ER/CORP/CRS/SE29/001

Version No: 3.0