UofA - Software Architecture
- Offered byCoursera
Software Architecture at Coursera Overview
Duration | 10 hours |
Start from | Start Now |
Total fee | Free |
Mode of learning | Online |
Difficulty level | Intermediate |
Official Website | Explore Free Course |
Credential | Certificate |
Software Architecture at Coursera Highlights
- 25% started a new career after completing these courses.
- 25% got a tangible career benefit from this course.
- 12% got a pay increase or promotion.
- Earn a certificate from the university of Alberta upon completion of course.
Software Architecture at Coursera Course details
- The way that software components ? subroutines, classes, functions, etc. ? are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.
- In the Capstone Project you will document a Java-based Android application with UML diagrams and analyze evaluate the application?s architecture using the Architecture Tradeoff Analysis Method (ATAM).
- After completing this course, you will be able to:
- ? Compare and contrast the components, connections, protocols, topologies, constraints, tradeoffs, and variations of different types of architectural styles used in the design of applications and systems (e.g., main program and subroutine, object-oriented, interpreters, pipes and filters, database centric, event-based).
- ? Describe the properties of layered and n-tier architectures.
- ? Create UML ipackage, component, and deployment diagrams to express the architectural structure of a system.
- ? Explain the behaviour of a system using UML activity diagrams.
- ? Document a multi-application system with a layered architecture.
Software Architecture at Coursera Curriculum
UML Architecture Diagrams
3.1.1 ? Architecture Overview and Process
3.1.2 ? Kruchten's 4 + 1 Model View
3.1.3 ? UML Component Diagram
3.1.4 ? UML Package Diagram
3.1.5 ? UML Deployment Diagram
3.1.6 ? UML Activity Diagram
Meet Your Presenter ? Sam Jeffery
Meet Your Facilitators
Software Architecture ? Course Notes
Software Architecture Glossary
Discussion: Introduce Yourself
Peer Review Request Forum
Capstone Assignment 3.1 - Draw a Component Diagram (Solution)
Capstone Assignment 3.2 - Draw a Deployment Diagram (Solution)
Module 1 Review
Architectural Styles
3.2.1 ? Abstract Data Types and Object-Oriented
3.2.2 ? Main Program and Subroutine
3.2.3 ? Databases
3.2.4 ? Layered Systems
3.2.5 ? Client Server n-Tier
3.2.6 ? Interpreters
3.2.7 ? Pipes and Filters
3.2.8 ? Event Based
3.2.9 ? Process Control
State Transition Systems
Publish?Subscribe
Discussions: Architectural Styles
Module 2 Review
Architecture in Practice
3.3.1 ? Quality Attributes
3.3.2 ? Analyzing and Evaluating an Architecture
3.3.3 ? Relationship to Organizational Structure
3.3.4 ? Product Lines and Product Families
Module 3 Review
Capstone Challenge
Capstone Assignment 3.3 - Analyze and Evaluate an Architecture (Solution)
Discussion: Last Word ? Software Architecture
Acknowledgements
Credits
Final Exam
Software Architecture at Coursera Admission Process
Important Dates
Other courses offered by Coursera
Software Architecture at Coursera Students Ratings & Reviews
- 4-51