Chevron Left
Back to Object-Oriented Design

Learner Reviews & Feedback for Object-Oriented Design by University of Alberta

2,119 ratings

About the Course

This course takes Java beginners to the next level by covering object-oriented analysis and design. You will discover how to create modular, flexible, and reusable software, by applying object-oriented design principles and guidelines. And, you will be able to communicate these designs in a visual notation known as Unified Modelling Language (UML). You will be challenged in the Capstone Project to apply your knowledge of object-oriented design by evolving and documenting the Java codebase for an Android application with corresponding UML documentation. After completing this course, you will be able to: • Apply the Class Responsibility Collaborator (CRC) technique to analyze and design the object-oriented model for a problem. • Explain and apply object-oriented modeling principles and their purpose (e.g., abstraction, encapsulation, decomposition, generalization). • Explain and apply different types of inheritance • Explain the difference between association, aggregation, and composition dependencies. • Express object-oriented models as Unified Modeling Language (UML) class diagrams. • Translate between UML class diagrams and equivalent Java code. • Apply design guidelines for modularity, separation of concerns, information hiding, and conceptual integrity to create a flexible, reusable, maintainable design. • Explain the tradeoff between cohesion and coupling....

Top reviews


Aug 5, 2020

Great course to learn the concepts of Software Designing and how it is used in real business scenarios. This course is indeed very helpful for aspiring product developers who aim to be an architect.


Jan 10, 2021

Great course to learn the concepts of Software Designing and how it is used in real business scenarios. This course is indeed very helpful for aspiring product developers who aim to be an architect.

Filter by:

126 - 150 of 497 Reviews for Object-Oriented Design

By Jep

Sep 25, 2020

Good course, I had previously done most of the contents of this course time ago but still then I wanted to repass and check my knowledge. I like the content and the way the course is done. I think all developers should constantly have this principles in mind.

By Rasoul A

May 22, 2020

A wonderful course full of academic , organized and important information

I recommend it to anyone who want to be a software engineer.

I is a perfect start to deeply understand the Object-Oriented Principles before starting to implement them in programming.

By Loi N

May 25, 2021

Through Coursera, I have studied many interesting subjects that I haven't known before. Interesting assignments, the way to cross-check student's work and peer's work is so great. I will spend more time studying other's Coursera in the upcoming time.

By Mashrukh R

Jul 25, 2020

Very great explanation of key object oriented design techniques. Applying changes to the android app while using various UML diagrams helped me solidfy my understanding. Course notes were amazing as well, and I wil keep as a future reference.

By Usman A

Jun 22, 2020

It is my start at coursera, i was less confidence when i started, as i have tendency to leave things in the middle, but as the course progressed, i got more and more interest in online learning, although the presenter is talking really fast.

By Anne S T

Oct 26, 2020

I am a data scientist from a physical/mathematical background and learned a ton on new computer science skills. Never used java before and learned it during the course, definitely doable with programming experience from other languages.

By José C G P

Sep 1, 2020

Production-wise, it's one of the best MOOCs I've taken. Education-wise, it's great for any aspiring software engineer, as it covers design, programming, best practices, and important software development principles and patterns.

By Ignas P

Oct 6, 2020

Course covers object oriented software development design as well from fundamentals to abstract concepts. I recommend this course for all interested level-up their software design skill towards being software architect.

By marco s

Oct 12, 2020

I really liked this course. It was my first contact with UML, and the course gives you some really good assignments on it. You also get intuition on what steps to follow when dealing with clients in software projects.

By Omar M U

Jan 9, 2021

Useful knowledge and practice for both experimented developers and starting ones too. The course helps you to build reference for when you need to come back and apply these concepts in your real life job as a dev.

By Mahmud I Z

Nov 1, 2020

Some topic of this course should elaborate more with more example such as state diagram, activity diagram.

The project seems relatively easy. I suggest to make it a little bit harder with some complex scenarios.

By Saurabh B

May 4, 2020

A great course by University of Alberta and thanks to Coursera for making this course available to larger audience, this course increases your understanding of object-oriented concepts with depth and clarity.

By kamel m k

May 17, 2020

what a wonderful course, I really appreciate all instructors' effort as I really become a good designer for my software program, and I suggest anyone intend to join this field of study to take this course <3

By Marthinus P F

Jun 28, 2021

Good course, loads of content and subject matter. Unfortunately you must know JAVA pretty well (basic understanding is a false perception) or you will not have a great experience in the hands-on exercises.

By Maksym B

Apr 3, 2022

The course is easy to follow and exciting to pass. My special thanks to Sam, she is really nice host of this one) Tasks is pretty easy to complete if you have an software engineering experience


Jul 27, 2020

This course is brilliant! Through this course, I gradually lay solid foundation in Object-Oriented Design, as well as improve my programming skills. I'd like to recommend it to my peers!

By Huynh V T

Feb 16, 2021

Wonderful course. I have learned the concept of OOP and design process in this course. I recommend this course to students or professional who need some basic theory for their work.

By Robert C

Apr 28, 2022

Took this course to fill in knowledge gaps, was not disappointed. I would say this course may be most valuable for developers in their first 3-6 months in the industry.

By Danilo M

May 3, 2020

This course is incredible because you can learn object-oriented design and they teach you in a simple way so that you can understand with clear and objective examples.

By Gaurav J

Sep 26, 2022

I learnt OOD concepts like never before and feel empowered to work on software in a more effective way than before.

Thank you, Coursera and University of Alberta! :)

By Lyalikov N A

Sep 19, 2021

This course is perfect. All materials were prepared well. I practiced a lot with designing UML for different situations as well as making my own code according to UML

By yousef a f

Apr 21, 2022

course introduce prefect content for beignner with good tasks that give you feedback about your progress

at last thanks for all who helped me to finish this course

By Israel E D L C

May 17, 2021

El curso, me oriento significativamente en la mejora de mi diseño de aplicativos

poniendo en practica sus lineamientos para poder tener un mejor producto.


By Philip P

Dec 26, 2021

A lot of effort went in to creating this course. It was awesome to participate in and was also fairly challenging. Thank you to the creators! Really great work.

By Renan N

Apr 27, 2020

What I've learned from this course, I can say that will be very important to my life, because in some modules I saw somethings that I don't saw in the college.