Experience Embedded

Professional Training, Consulting and Project Support

Software Architectures for Embedded Systems and Real-Time Systems - Live Online Training

  • Content
     
  • Objectives
     
  • Participants
     
  • Requirements
     

The software architecture training highlights the terminology and the significance of software architects.

It explains the tasks and responsibilities of software architects and their role in the project and presents state-of-the-art methods and techniques for the development of software architectures.

After the software architecture training, you are able to coordinate software architectures with your project team, to document the software architectures and to perform the main software architecture design steps yourself.

The software architecture training addresses software architects, software developers, software development managers and software team managers.

Project experience in software development; knowledge of a high-level language; principles of the UML notation for software modeling of advantage.

Software Architectures: Introduction and Terminology

  • Definition of terms
  • Benefits and objectives of a software architecture
  • Elements of a software architecture
  • Relation to the development process
  • Role and responsibilities of the software architect
  • Practical tips

Software Architecture Development Procedures

  • Different software architecture development procedures: hierarchial, iterative, incremental, agile, model-driven, domain-driven
  • Dependencies and relations of the different procedures
  • Presentation of a typical procedure

The Role of a Software Architect

  • Characteristics and responsibilities of the software architect
  • Software architect teams
  • Collaboration with other roles

Software Architecture Development: Principles and Preconditions

  • Typical development scenarios under favorable and unfavorable conditions
  • Requirements: functional and non-functional
  • Influencing factors for software architectures
  • Factor analysis demonstration
  • Risk management

Notation and Documentation of Software Architectures with the UML (Unified Modeling Language)

  • Static and dynamic views
  • Quality features of the software architecture documentation
  • Documentation and communication of software architectures for the stakeholders
  • Content and focus of documentation
  • Description and communication of interfaces
  • Definition and use of different architecture views
  • Document-based versus model-based procedures
  • Demonstration: From requirements to the software architecture model
  • Exercise: Development of an embedded software architecture comprising structure and interactive behavior, based on drawn up textual requirements

Design of Software Architectures

  • Functional and non-functional requirements as a basis for high-quality software architecture
  • Positive and negative impact of quality requirements on the software architecture
  • Impact of safety and security, reliability, portability, performance and other quality requirements on the architecture
  • Project specific factors of influence on the software architecture
  • Continuous refinement of the software architecture through incremental and iterative processes
  • Architecture construction kit and reusability
  • Basic concepts, elements, element coupling via interfaces
  • Design principles
  • Architecture design patterns
  • Architecture guidelines
  • Runtime architecture
  • Architectures for multiprocessor and multicore systems
  • Verification of software architectures
  • Hypervisor and virtualization
  • Platform independence
  • Exercise: Extending the architecture with a runtime architecture

Quality Assessment and Quality Assurance of Software Architectures

  • Quality models
  • Relation and interdependency of quality features
  • Methods to achieve the specified quality features of software systems
  • Assessment of software architectures (quality and implementation)
  • ATAM (Architecture Tradeoff Analysis Method)
  • Practical tips for quality assessment and quality assurance
  • Exercise: Quality assessment for various software architectures

Tools for Software Architects

  • Modeling
  • Static and dynamic analysis
  • Generation
  • Requirements management
  • Documentation
  • Version and configuration management
  • Build process and build systems
  • We provide you with an unbiased product overview for efficient product selection

Proven Examples of Software Architectures

  • Typical software architectures for embedded systems
  • Software layers, software layer models
  • Practical tips

Practical Exercises in the Software Architecture Training

  • From requirements to the verification and assessment of the software architecture using the example of an embedded system (electric motor control) based on real hardware
  • Throughout the exercise, you will use the modeling tool 'Enterprise Architect' (Sparx Systems), or paper and pencil as an alternative

MicroConsult PLUS:

  • We will provide you with a download link for your exercises from this workshop as well as the solutions developed by MicroConsult.
  • For the measurement device application, you get the program code and a UML model as well as a UML model for the electric motor application.
  • You get a tool and software component overview for the development of embedded software architectures.
  • You also get an embedded software architecture checklist summarizing all key topics. You can adapt this checklist to your project requirements.
  • You get helpful notation overviews for UML and SysML.

The training price includes:
Training documentation, your training certificate and target HW etc. where required.


ALL INCLUSIVE!

We will send you a binding confirmation if the training takes place, at the latest, 3 weeks before the training starts.

Several days before the Live Online Training, you will get e-mails with …

  • detailed information regarding your training
  • your training documents (download link)
  • an invitation to an optional test session with your trainer
  • an invitation for the training days, with link and access data

Any target HW that might be required for the training will be shipped to you in advance.


PROCEDURE

Live-Online-Training

Training code: LE-EMB-AR
* Price per attendee, in Euro plus VAT


> Registration form download (PDF)
> Training details as PDF

Face-To-Face - English

Date Duration
21.06. – 24.06.2021 4 days  
18.10. – 21.10.2021 4 days  
06.12. – 09.12.2021 4 days  
31.01. – 03.02.2022 4 days  

Live Online - German

Date Duration
21.06. – 24.06.2021 4 days  
18.10. – 21.10.2021 4 days  
06.12. – 09.12.2021 4 days  

Face-To-Face - German

Date Duration
21.06. – 24.06.2021 4 days  
18.10. – 21.10.2021 4 days  
06.12. – 09.12.2021 4 days  
31.01. – 03.02.2022 4 days  

Software Architectures for Embedded Systems and Real-Time Systems - Live Online Training

Content

Software Architectures: Introduction and Terminology

  • Definition of terms
  • Benefits and objectives of a software architecture
  • Elements of a software architecture
  • Relation to the development process
  • Role and responsibilities of the software architect
  • Practical tips

Software Architecture Development Procedures

  • Different software architecture development procedures: hierarchial, iterative, incremental, agile, model-driven, domain-driven
  • Dependencies and relations of the different procedures
  • Presentation of a typical procedure

The Role of a Software Architect

  • Characteristics and responsibilities of the software architect
  • Software architect teams
  • Collaboration with other roles

Software Architecture Development: Principles and Preconditions

  • Typical development scenarios under favorable and unfavorable conditions
  • Requirements: functional and non-functional
  • Influencing factors for software architectures
  • Factor analysis demonstration
  • Risk management

Notation and Documentation of Software Architectures with the UML (Unified Modeling Language)

  • Static and dynamic views
  • Quality features of the software architecture documentation
  • Documentation and communication of software architectures for the stakeholders
  • Content and focus of documentation
  • Description and communication of interfaces
  • Definition and use of different architecture views
  • Document-based versus model-based procedures
  • Demonstration: From requirements to the software architecture model
  • Exercise: Development of an embedded software architecture comprising structure and interactive behavior, based on drawn up textual requirements

Design of Software Architectures

  • Functional and non-functional requirements as a basis for high-quality software architecture
  • Positive and negative impact of quality requirements on the software architecture
  • Impact of safety and security, reliability, portability, performance and other quality requirements on the architecture
  • Project specific factors of influence on the software architecture
  • Continuous refinement of the software architecture through incremental and iterative processes
  • Architecture construction kit and reusability
  • Basic concepts, elements, element coupling via interfaces
  • Design principles
  • Architecture design patterns
  • Architecture guidelines
  • Runtime architecture
  • Architectures for multiprocessor and multicore systems
  • Verification of software architectures
  • Hypervisor and virtualization
  • Platform independence
  • Exercise: Extending the architecture with a runtime architecture

Quality Assessment and Quality Assurance of Software Architectures

  • Quality models
  • Relation and interdependency of quality features
  • Methods to achieve the specified quality features of software systems
  • Assessment of software architectures (quality and implementation)
  • ATAM (Architecture Tradeoff Analysis Method)
  • Practical tips for quality assessment and quality assurance
  • Exercise: Quality assessment for various software architectures

Tools for Software Architects

  • Modeling
  • Static and dynamic analysis
  • Generation
  • Requirements management
  • Documentation
  • Version and configuration management
  • Build process and build systems
  • We provide you with an unbiased product overview for efficient product selection

Proven Examples of Software Architectures

  • Typical software architectures for embedded systems
  • Software layers, software layer models
  • Practical tips

Practical Exercises in the Software Architecture Training

  • From requirements to the verification and assessment of the software architecture using the example of an embedded system (electric motor control) based on real hardware
  • Throughout the exercise, you will use the modeling tool 'Enterprise Architect' (Sparx Systems), or paper and pencil as an alternative

MicroConsult PLUS:

  • We will provide you with a download link for your exercises from this workshop as well as the solutions developed by MicroConsult.
  • For the measurement device application, you get the program code and a UML model as well as a UML model for the electric motor application.
  • You get a tool and software component overview for the development of embedded software architectures.
  • You also get an embedded software architecture checklist summarizing all key topics. You can adapt this checklist to your project requirements.
  • You get helpful notation overviews for UML and SysML.