KH
Jan 11, 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.
JS
Aug 6, 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.
By Chen Y
•Apr 17, 2022
Android developing? No kidding?
By Sanket D P
•Aug 31, 2020
Plz do unenroll
By Kairat N
•Oct 18, 2021
gd
By Daniel A
•Feb 18, 2024
This comprehensive course has significantly elevated my proficiency in Java programming, particularly through an in-depth exploration of object-oriented analysis and design principles. The key takeaways include: Advanced Object-Oriented Design: Mastery of creating modular, flexible, and reusable software through the application of object-oriented design principles and guidelines. Acquisition of skills to analyze and design sophisticated software systems. Unified Modeling Language (UML): Proficiency in communicating complex designs through the use of Unified Modeling Language (UML), a standard visual notation for software modeling. Capstone Project Challenge: Application of acquired knowledge through a challenging Capstone Project involving the evolution and documentation of a Java codebase for an Android application, accompanied by comprehensive UML documentation. Key Achievements: Application of the Class Responsibility Collaborator (CRC) technique for robust problem analysis and object-oriented model design. In-depth understanding and application of object-oriented modeling principles, encompassing abstraction, encapsulation, decomposition, and generalization. Proficient knowledge and application of various types of inheritance. Clear comprehension of association, aggregation, and composition dependencies. Skill in expressing object-oriented models using UML class diagrams. Ability to seamlessly translate between UML class diagrams and equivalent Java code. Application of design guidelines for achieving modularity, separation of concerns, information hiding, and conceptual integrity, resulting in flexible, reusable, and maintainable designs. Insight into the crucial tradeoff between cohesion and coupling in software design. This course has not only enriched my Java skill set but has also empowered me with a robust foundation in object-oriented design principles, setting the stage for building high-quality, scalable software solutions.
By C S
•Jul 1, 2022
As an introductory course I found this fair. It introduced concepts at a good pace, the material was well constructed and delivered, and the content was on topic with an emphasis on software design and not coding.
After completing this course you have an idea of how to go about solving your software problems visually and can communicate the state of the issue well with others. The terminology and UML are valuable tools that I will continue to practice going forward.
I did have some issues with Android studio, but the emphasis of this course was on software design, not code/frameworks.
By Jitto J T
•Feb 18, 2021
The course helped bring all the concepts together. The concept of "Conceptual integrity" is the biggest takeaway for me - "Implementing software in a consistent manner as if it were written by one person". Over time, as multiple people work on the code base, it loses consistency and hinders readability and maintainability. That's why it is so important for teams to follow design principles, communicate frequently and effectively, and perform proper code review.Overall, a great course. I would recommend it to every one part of a software development team.
By Riccardo G
•Mar 3, 2021
A very good introduction to software architecture and OOP. Much more serious than other courses and with practical experience in Android which is useful to apply theoretical concept in real programming.
For someone not used to Java programming or Android development this is both a challenge and an opportunity to learn, but for sure requires some time more.
Finally, I really appreciated the peer-to-peer review of assignment, it was the first time for me for this kind of evaluation and I really enjoyed it.
By Carlos E M O
•Jan 20, 2025
I recommend this course because it helped me reaffirm a few system design concepts. The course material is excellent, including interviews with people from the software industry. I learned about UML during my days at university, but because of my professional role, I didn't have the chance to use it in an actual software design. That's why I am interested in taking this course and putting these tools and concepts into practice.
By Viviana D
•Nov 11, 2019
This course is a great introduction to OOP. I liked that all videos and all materials are well prepared, you can notice the effort and professionalism. The course is also very organized. Congratulations to the team. The methodology that coursera has to evaluate your knowledge is not the best since the peer reviews sometimes will not show feedback or where to improve.
By Vladislav K
•Dec 13, 2022
It was not an easy, but very exciting and useful course. Now I have a better understanding of OOP, as well as learned how to construct UML diagrams. I highly recommend this course to every developer or those who want to become one. This course provides useful knowledge on how to write programs in an object-oriented paradigm. And many thanks to the entire course team!
By Wen Z
•Aug 8, 2021
Very good introductory program design course, not only learned the way of software design, and further deepened the impression of object-oriented concepts, but also through a few major assignments to further strengthen the UML modeling language to solve practical problems; I am a beginner program Members, thank you very much for providing such a course.
By Stefano B
•Feb 3, 2021
The course is really good. Lot of documentation that summarizes all the concepts, per reviewed graded capstone projects to put in practice what you have learned in the videos. Obviously it starts "from scratch" so it could be a little too basic for some, but it's still a good way of refreshing concepts you might have sort of forgotten.
By Stefan A
•Apr 19, 2020
Very good course for the basics of software architecture and object oriented design. There is a lot about UML, which is still the industry standard. But i think, there are also a lot of other techniques in modern software design which are not discussed in the course. How is UML used in Agile projects? Are there Alternatives to UML?
By Sanan N
•Jun 2, 2023
My engagement with the subjects of this course was something I haven't experienced before. It's not one of those courses that you just watch the videos and proceed. You really have to learn the stuff in order to get the certificate. It took some hard work from me, but I realized that that's the way it SHOULD be. Thank you!
By Yurii R
•Mar 30, 2020
I got a lot of terms in the software engineering field. Also, there were useful information about software diagrams. However, practical works wasn't hard (since I was familiar with Java) especially the last capstone assignment. I think it's essential course for software developers who have some minimal practice with OOP.
By Al B
•Jan 22, 2021
I really enjoyed this course. This is the first course I took with Coursera, and the content was well taught and quality, and went beyond my expectations. I plan to use the knowledge of conceptual and technical designs, as well as the types of UML diagrams I was introduced to in future projects.
By Amr A
•Jun 7, 2020
This course is really really amazing, I just got a little thing that bugs, The final exam requires you to do a little video for andriod app, I had a little problem running andriod app on my machine first but after that It worked smoothly, It would be better if they could find a solution for that.
By Miguel A
•Oct 10, 2019
I spent a lot of time looking how to be better at practicing OOP and this course was exactly what I needed. The material was clear and well explained and just all around fun to learn. Those video transcripts are awesome. Thumbs up to the course developers. Great work and Thank you.
By Kedar M
•Apr 19, 2021
Very well designed course. Combination of theory and examples will help you apply your knowledge in everyday work. If your desire is to be a good software architect, every part of this course would be relevant to you and will help solidify the foundation you may already have.
By Akash C
•Nov 3, 2020
It was a nice refresher of Object-Oriented Design principles and their importance in a software product. I would highly recommend this course to any (Java) developer, experienced or beginner, as it would help him/her to think critically about the Software Design on the whole.
By Nilanshu V R
•Apr 28, 2022
Provides a great foundation for Object Oriented Design and the use of UML diagrams. Although the capstone assignment uses an Android project, knowing Android is not required to complete it. The capstone assignments provides guides to those who are not Android programmers.
By Vidas
•Dec 12, 2020
Old and quite complex topic of object oriented design is explained very well in this course. Everyone who will join this course - take a time, deep dive into each topic, listen to each video, take part in discussions and enjoy being a good developer - you deserve this.
By Dmitry K
•Dec 4, 2020
Good basic course. Strong practical part with UML and working on real app in Android Studio (though AStudio is too demanding to PC's resources that it becomes a pain to setup it for work). Want to see other courses of the Specialization now. Thanks to the authors!
By Mawin B
•Nov 21, 2022
The course is very nice content, it is not too detailed, in my opinion is very comfortable for non-developer as well.
I suggest that you should have basic knowledge of OOP such as classes, variables, access modifiers, it. would be easier to follow the instructor.
By Ahmad S
•May 5, 2021
Have a great experience learning this course. I enjoyed and learn a lot of new things and will definitely will help me in mu career. Thank you very much for providing such a beautiful course. A also hats off to the beautiful instructor for making things easy.