Course Name: Object Oriented Analysis and Design

Course abstract

The complexity of software systems is ever on the rise – more complex problem domains being attempted (complex embedded systems), ever growing man-power engaged in increasingly intricate development processes to turnaround in shorter and shorter time, possible flexibility of software 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.

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 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 adopted1 – Java (21%), C++ (6%), C# (4%), VB / VB.NET (4%), Python (3%), Perl (2.5%), Ruby (2.5%), Objective-C (2%), Delphi/Object Pascal (2%), D (1%) – to name a few. Even out of C (14%) developers, a large section today adheres to OOAD / OOP principles.

The present course introduces OOAD grounds up starting with breaking down the root cause 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 C++ / Java.


Course Instructor

Media Object

Prof. Partha Pratim Das

Dr. 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 and the coordinator for the upcoming Technology Park of IIT Kharagpur at Rajarhat, Kolkata. He is also the Joint Principal Investigator of National Digital Library project of MHRD and leads the initiative to integrate the Institutional Digital Repositories of various institutions across India.Dr. Das has taught several courses in Computer Science. In the past 5 years he has been teaching Software Engineering, Object-Oriented Systems, Programming and Data Structure, and Compiler Design. 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.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 Image Processing and Computer Vision (human activity tracking using Kinect), Object-Oriented Systems Analysis and Design (UML, Design Patterns and C++11), Software Engineering (automated program analysis using static and dynamic instrumentation), Compiler Technology (multi-threaded debugging), Digital Geometry, and Embedded Systems.Dr. Das is a member of Association of Computing Machinery (ACM), The Institute of Electrical and Electronics Engineers (IEEE), Indian Unit for Pattern Recognition and Artificial Intelligence (IUPRAI) and VLSI Society of India (VSI).
More info

Teaching Assistant(s)

No teaching assistant data available for this course yet
 Course Duration : Sep-Nov 2020

  View Course

 Enrollment : 20-May-2020 to 21-Sep-2020

 Exam registration : 14-Sep-2020 to 02-Nov-2020

 Exam Date : 18-Dec-2020

Enrolled

4057

Registered

137

Certificate Eligible

99

Certified Category Count

Gold

1

Silver

25

Elite

44

Successfully completed

29

Participation

20

Success

Elite

Silver

Gold





Legend

AVERAGE ASSIGNMENT SCORE >=10/25 AND EXAM SCORE >= 30/75 AND FINAL SCORE >=40
BASED ON THE FINAL SCORE, Certificate criteria will be as below:
>=90 - Elite + Gold
75-89 -Elite + Silver
>=60 - Elite
40-59 - Successfully Completed

Final Score Calculation Logic

  • Assignment Score = Average of best 6 out of 8 assignments.
  • Final Score(Score on Certificate)= 75% of Exam Score + 25% of Assignment Score
Object Oriented Analysis and Design - Toppers list

SRIKANTH ADIMULAM 90%

Flipkart Pvt Ltd

AJINKYA AMBADAS GORE 87%

Indian Institute of Technology,Roorkee

GAGAN SINGH SAINI 87%

Indian Institute of Technology,Roorkee

SHYAM SUNDAR S 86%

Anna University Regional Campus Coimbatore

SOUMYADIP SANTRA 86%

RAMAKRISHNA MISSION VIVEKANANDA EDUCATIONAL AND RESEARCH INSTITUTE

VAIBHAV SINGHAL 86%

INDIAN INSTITUTE OF INFORMATION TECHNOLOGY, DESIGN AND MANUFACTURING, KANCHEEPURAM

Enrollment Statistics

Total Enrollment: 4057

Registration Statistics

Total Registration : 137

Assignment Statistics




Assignment

Exam score

Final score

Score Distribution Graph - Legend

Assignment Score: Distribution of average scores garnered by students per assignment.
Exam Score : Distribution of the final exam score of students.
Final Score : Distribution of the combined score of assignments and final exam, based on the score logic.