Object Oriented Analysis And Design

By Prof. Partha Pratim Das, Prof. Samiran Chattopadhyay, Prof. Kausik Datta   |   IIT Kharagpur
Learners enrolled: 3559
The complexity of software systems is ever on the rise – more complex problem domains being attempted (complex embedded systems), ever growing number of developers engaged in increasingly intricate development processes to turnaround in shorter and shorter time, flexibility of software and models of implementation being stretched to the limit with XaaS, platforms getting challenging with widely expanding distribution, cloud computation etc. Hence the analysis and design of software require well-organized and structured approaches to manage the challenges of complexity – even more than ever before. 
Over the past two decades, methods of Object-Oriented Analysis, Design and Programming have proved to be effective solutions in handling the inherent complexity of software design, development, testing and maintenance. Concepts of OOAD like Abstraction, Encapsulation, Modularity, Hierarchy, Object, State, Behavior, Identity, Class, Operation, Interface, Inheritance, Association, Aggregation, Decomposition, Use-case, etc. have become the lingua franca for the software developers; ubiquitous notation of UML (Unified Modeling Language) has firmly established itself as the vehicular language for design; and many object-based as well as object-oriented languages have become available and have been widely adopted (based on TIOBE Index for May 2019) – Java (16%), C++ (8%), Python (8%), VB / VB.NET (5.5%), C# (4%), Perl (1.5%), Ruby (1.5%), Objective-C (1.5%), Delphi/Object Pascal (1.5%), D (1%) – to name a few. Even out of C (14%) developers, a large section today adheres to OOAD / OOP principles in design and disciplined modular implementation. 

The present course introduces OOAD grounds up – starting with breaking down the root causes of inherent software complexity. After an in-depth exposure to Object Models, Classes and their interactions, the course takes a thorough tour of the diagrams of UML 2.0. Several systems examples help students understand the concept and tutorials offer quick practice. The course ends with a brief discourse on OOP in C++. 
While this course can be followed independently (with some programming background), it would help in practicing OOP in C++ or Java. Hence this course is advised in conjunction with a course on C++ / Java.


1. Basic Knowledge of Programming & Data Structure 
2. Experience of Programming Projects would help; but is not mandatory 
3. Attending a course on C++ with this course will help

INDUSTRY SUPPORT : Object-Oriented Analysis and Design is at the core of software development processes. Hence all software development companies have a need for the same. These include – Microsoft, Samsung, Xerox, Yahoo, Google, IBM, TCS, Infosys, Amazon, Flipkart, etc.
Course Status : Completed
Course Type : Core
Duration : 8 weeks
Category :
  • Computer Science and Engineering
Credit Points : 2
Level : Undergraduate/Postgraduate
Start Date : 25 Jul 2022
End Date : 16 Sep 2022
Enrollment Ends : 08 Aug 2022
Exam Date : 25 Sep 2022 IST

Note: This exam date is subjected to change based on seat availability. You can check final exam date on your hall ticket.

Page Visits

Course layout

Week 1: Software Complexity: Understanding the challenges OOAD can address
Week 2: Object Model: Defining the primitives of the OO paradigm
Week 3: Classes and Objects: Bringing in the broader perspectives
Week 4: Classes and Objects: Identification approaches using OOAD
Week 5: Unified Modeling Language
Week 6: Unified Modeling Language
Week 7: Unified Modeling Language
Week 8: OOAD Case Studies: Applying OOAD in different contexts

Books and references

Text Books / Basic Material
  1. Object-Oriented Analysis and Design with Applications, Third Edition by Grady Booch, Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, Jim Conallen, and Kelli Houston, 2007. This book will be followed in the course. 
  2. Learning UML 2.0 by Russ Miles & Kim Hamilton (O’Reilly), 2006 
  3. Presentations used in the Course

Reference Material 
  1. Object Management Group (OMG): http://www.omg.org/. This is the official Site for UML. 
  2. Design Patterns: Elements of Reusable Object-Oriented Software with Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, 2003

Instructor bio

Prof. Partha Pratim Das

IIT Kharagpur
Prof. Partha Pratim Das received his BTech, MTech and PhD degrees in 1984, 1985 and 1988 respectively from IIT Kharagpur. He served as a faculty in Department of Computer Science and Engineering, IIT Kharagpur from 1988 to 1998. In 1998, he joined Alumnus Software Ltd as a Business Development Manager. From 2001 to 2011, he worked for Interra Systems, Inc. as a Senior Director and headed its Kolkata Center. In 2011, he joined back to Department of Computer Science and Engineering, IIT Kharagpur as Professor. Dr. Das has also served as a Visiting Professor with Institute of Radio Physics and Electronics, Calcutta University from 2003 to 2013.

Dr. Das is currently the Head of Rajendra Mishra School of Engineering Entrepreneurship, the Professor-inCharge of the upcoming Research Park of IIT Kharagpur at Rajarhat, Kolkata, and the Joint Principal Investigator of National Digital Library of India project of MHRD.

Dr. Das has taught several courses in Computer Science including Software Engineering, Object-Oriented Systems, Programming and Data Structure, Compiler Design, Design and Analysis of Algorithms, Information System Design, Database Management Systems, Computational Geometry, Principles of Programming Languages, Embedded Systems, and Image Processing. Jointly with 2 others, he has also offered a course on Introduction to Design of Algorithms under the T10KT program of NME-ICT, MHRD (https://www.facebook.com/t10kt.algorithms/) to nearly 7000 teachers. Further, Dr. Das has been offering Programming in C++ and Object-Oriented Analysis and Design in NPTEL-NOC. Both courses are regularly attended by thousands of students.

Dr. Das has published over 40 technical papers in international journals in areas of Digital Geometry, Image Processing, Parallel Computing and Knowledge-based Systems. In 2013 he has co-authored a research monograph titled Digital Geometry in Image Processing (CRC Press). His current interests include Human-Computer Interactions, Computer Analysis of Indian Classical Dance, Object-Oriented Systems Analysis and Design, Software Engineering, Compiler Technology, and Technology Enabled Learning. Dr. Das is a member of Association of Computing Machinery (ACM), The Institute of Electrical and Electronics Engineers (IEEE), and Indian Unit for Pattern Recognition and Artificial Intelligence (IUPRAI).  

Prof. Samiran Chattopadhyay

Samiran Chattopadhyay obtained his B Tech and M Tech degree in 1987 and 1989 respectively from IIT Kharagpur. He obtained his PhD degree from Jadavpur University in 1993. He served as a faculty in the Department of Computer Science and Engineering, Jadavpur University from 1989 to 1993. In 1993, he moved to industry and joined back the same department in Jadavpur University as an Associate Professor in 1997. Since 2001, he is a Professor of Information Technology in Jadavpur University.

Dr. Chattopadhyay is also a visiting fellow of the University of Northumbria, Newcastle upn Tyne UK. He was an adjunct faculty at IIT Kharagpur for the Distributed Systems course and a visiting faculty member for the MTech course by IIT Kharagpur which was offered in distance learning mode.
Dr. Chattopadhyay has more than two decades of experience of serving reputed Industry houses including Mindware, Computer Associates TCG Software, Interra Systems India Ltd. He is also a project consultant of the prestigious National Digital Library Mission of Government of India.

Dr. Chattopadhyay has taught several courses in Computer Science including Software Engineering, Object-Oriented Systems, Programming and Data Structure, Compiler Design, Design and Analysis of Algorithms, Information System Design, Database Management Systems, Ad hoc Wireless Networks, Cloud Computing. Dr. Chattopadhyay has been a co-faculty in Database Management Systems in NPTEL-NOC.

Dr. Chattopadhyay has published over 60 technical papers in international journals in the areas of Wireless Networks, Network Security, Machine learning applications. He has co- authored a research monograph titled ‘Digital Geometry in Image Processing’, a textbook titled ‘Data Structures through C’ and ‘Big Data in e-Healthcare’. His current research interests include Network Security, Machine learning, Wireless network and Pervasive computing..

Prof. Kausik Datta

Kausik Datta has over 23 years of experience in engineering and management at the EDA industry. Currently he is working as Principal Engineer and Manager at Mentor Graphics (India) Pvt. Ltd., Kolkata and leading the Front-end Analyzer Group. Prior to working with Mentor Kausik had worked with Interra Systems, Delsoft and Siemens on software development in EDA and Telecom domain. Kausik received his Bachelor of Engineering degree in Electrical Engineering from Jadavpur University, and his M. Tech. in Computer Science from the Indian Statistical Institute, Kolkata.

Course certificate

The course is free to enroll and learn from. But if you want a certificate, you have to register and write the proctored exam conducted by us in person at any of the designated exam centres.
The exam is optional for a fee of Rs 1000/- (Rupees one thousand only).
Date and Time of Exams: 25 September 2022 Morning session 9am to 12 noon; Afternoon Session 2pm to 5pm.
Registration url: Announcements will be made when the registration form is open for registrations.
The online registration form has to be filled and the certification exam fee needs to be paid. More details will be made available when the exam registration form is published. If there are any changes, it will be mentioned then.
Please check the form for more details on the cities where the exams will be held, the conditions you agree to when you fill the form etc.


Average assignment score = 25% of average of best 6 assignments out of the total 8 assignments given in the course.
Exam score = 75% of the proctored certification exam score out of 100

Final score = Average assignment score + Exam score

YOU WILL BE ELIGIBLE FOR A CERTIFICATE ONLY IF AVERAGE ASSIGNMENT SCORE >=10/25 AND EXAM SCORE >= 30/75. If one of the 2 criteria is not met, you will not get the certificate even if the Final score >= 40/100.

Certificate will have your name, photograph and the score in the final exam with the breakup.It will have the logos of NPTEL and IIT Kharagpur .It will be e-verifiable at nptel.ac.in/noc.

Only the e-certificate will be made available. Hard copies will not be dispatched.

Once again, thanks for your interest in our online courses and certification. Happy learning.

- NPTEL team

MHRD logo Swayam logo


Goto google play store