Take a step towards becoming a software craftsperson!This class offers an examination of key patterns, principles, and practices for effective object-oriented design and analysis. Learn to move through understanding problems and requirements to identification of the best possible technical solutions. Design and create code that is resilient to changes, testable, reliable, and maintainable by others. Hands-on code development problems and in-depth technical explorations provide valuable skills and experiences, building your ability to provide quality programs that result in professional solutions to real-world issues and user needs.Development tools include Java and UML.

Discover new skills with $120 off courses from industry experts. Save now.


Object-Oriented Analysis & Design Specialization

Instructor: Bruce Montgomery, PhD, PMP
Included with
Recommended experience
Recommended experience
What you'll learn
Use thorough analysis techniques to identify problems and weigh solution alternatives
Identify common object-oriented design issues and solutions offered by design patterns
Develop resilient, testable, useful and useable object-based code solutions
Overview
Skills you'll gain
- Software Architecture
- User Interface and User Experience (UI/UX) Design
- Unit Testing
- Java
- Software Engineering
- API Design
- System Design and Implementation
- Software Design Patterns
- Software Development
- Software Design
- Model View Controller
- Software Testing
- Object Oriented Programming (OOP)
- Object Oriented Design
- Systems Analysis
- Test Driven Development (TDD)
- Databases
Tools you'll learn
What’s included

Add to your LinkedIn profile
May 2025
Advance your subject-matter expertise
- Learn in-demand skills from university and industry experts
- Master a subject or tool with hands-on projects
- Develop a deep understanding of key concepts
- Earn a career certificate from University of Colorado Boulder

Specialization - 3 course series
What you'll learn
Apply industry-standard languages such as Java to object-oriented software designs.
Design object-oriented solutions with structural, behavioral, and composite graphical UML diagrams
Design test cases appropriate to object-oriented applications using JUnit.
Skills you'll gain
What you'll learn
Recognize design challenges in creating maintainable object-oriented systems
Apply appropriate standard design patterns to solve typical object-oriented design issues
Understand the principles behind the patterns applied to solve object-oriented development problems
Skills you'll gain
What you'll learn
Consider practices and philosophies of creating resilient and responsive software designs
Apply practices for increasing object-oriented code quality and maintainability
Design architectures to effectively integrate object-oriented and other system components
Skills you'll gain
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor

Offered by
Why people choose Coursera for their career





Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
This specialization will take about 3 months to complete.
Experience in Java programming is recommended. Some object-oriented language experience is helpful, the class uses Java at an intermediate level.
It is recommended to complete the courses in this Specialization sequentially.
More questions
Financial aid available,