An Introduction to Embedded Software Architecture and Design Class 2: Software Architecture using UML December 2, 2014 Jacob Beningo, CSDP
Course Overview Introduction to Embedded Software Architecture Software Architecture using UML Understanding Embedded Software Architectures From Architecture to Implementation Software Architecture of a UAV and Review
Session Overview Introduction to UML Models, Views and Diagrams Use Cases Class Diagrams Component Diagrams Sequence Diagrams State Charts
Introduction to UML Software Architecture Definition Review Encompasses decisions about the organization of a software system Considerations include Usage Performance Functionality Reuse Technology Constraints
Introduction to UML Models Representations of the software as it is to be built Communicates the requirements of stakeholders Allow review and reasoning of a component of a system Act as a blueprint for the designers Give us a feel for system complexity
Introduction to UML Stakeholders Views Each one has their own view, their own perspective on how the system works Many different types Views Architectural view is an abstraction of a system from a particular perspective
Introduction to UML The Value of UML UML is for Open Standard Supports the entire software development lifecycle Supports diverse application areas UML is for Visualizing Specifying constructing Source: www.uml.org
Models, Views and Diagrams Collaboration Object Use Case Class UML Model Diagrams Sequence Deployment Statecharts Component Activity
Models, Views and Diagrams Use Case Diagram
Models, Views and Diagrams Class Diagram
Models, Views and Diagrams Object Diagram
Models, Views and Diagrams Component Diagram
Models, Views and Diagrams Deployment Diagram
Models, Views and Diagrams Lifeline Sequence Diagrams Shows interactions between objects Actions occur sequentially in the time domain Can implement alternative messages Message Time Optional Guard
Models, Views and Diagrams Collaboration Diagram
Models, Views and Diagrams Statechart Diagram
Models, Views and Diagrams Activity Diagram
Additional Resources Download Course Material for Edraw UML Templates Updated C Doxygen Templates Misc Papers and Websites for further reading From www.beningo.com under - Blog and Articles > Software Techniques > CEC Software Architecture Materials
Jacob Beningo Newsletters P.O. Box 400 Embedded Monthly Linden, Michigan 48451 www.beningo.com Newsletters Embedded Monthly Low Power Design http://eepurl.com/2xJFr Training Bootloaders Embedded Software C/C++ : jacob@beningo.com : 810-844-1522 : Jacob_Beningo : Beningo Engineering : JacobBeningo : Embedded Basics Jacob Beningo Principal Consultant