This site defines a Multi-Aspect System Architecture for EPS products. Having multiple aspects or views helps to keep the model simple enough to be understand, but detailed enough information for formal or systematic analysis.

There are some well-known multiple-views architectures, such as the 4 + 1 Architectural View Model or even the OMG Systems Modeling Language (Figure 3. Structure - Behaviour - Requirements - Parametrics).

This microsite provides deep insight into each technical detail of the concept, allowing you to recognise and take advantage of a well-organised development and documentation system instead of using the existing one.

Table of Content

These terms used in this document have the following meanings:

The internal relations of the different EMA-components can be found
on the following -diagram.

EMA defines the following aspects, resolutions and views, as the diagram shows below.

This aspect focuses on the expected functions and capabilities of the system, without considering their realization. Features describe the "problem space" (see the ).
This aspect has only system-level resolution.

System Features View

The view describes what is expected from the system, what functionality is to be provided in order to fulfill the product goals. The view characterizes the whole system by a set of features.

The following table contains the completed feature-list of the project R8-based BMW 35up.
(These links are available within the Intranet of ThyssenKrupp Presta.)

Expected Granularity:

Number of features: 25-40.
Number of requirements: 300-500.
The Functional Architecture Aspect describes what the key parts of the system do, without describing very detailed how it is realised (see the ). The intention of this aspect is to provide an overview, a "big picture" about the system as a solution.

The Functional Architecture describes the whole system from a solution perspective of high abstraction level by

The key building block of the Functional Architecture is the System Function.

A System Function can be characterized by

The Functional Architecture is kept intentionally on a high abstraction level to avoid a deep dive into details too early in order to maintain a holistic view of the entire system (aka "big picture"). Therefore it has only

Expected Granularity:

Number of System Functions: 60-100
Number of System Function Groups: 20-30

This aspect focuses on the physical breakdown of the system into physical components (see the ). It has only system-level resolution.

System Interfaces and Components View

This view describes the system boundaries and its most important – mostly hardware – building blocks. The view contains the

The view (and the aspect System Component Breakdown, as well) is based on preliminary knowledge about the product originated from

Expected Granularity:

Number of system interfaces: 5-10.
Number of system components (SBS elements): 10-12.

This aspect focuses also onto the breakdown of the system into smaller components but it is more concrete and focuses only to the software parts of the system (see the ). The scope of this aspect is the software used within the System, including the software runs on

The aspect has two resolution levels in order to have a comprehensive and a detailed view.

Software Architecture Aspect – High Level (low resolution) Software View

The view provides a high level perspective about the software elements of the system (see an example on the ). The most complex software runs on the ECU main microcontroller.

This High Level Software View is more detail-rich and more formal than the Functional Architecture Aspect but still has high abstraction level in order to remain comprehensive. The High Level Software View describes the software by

A Software Subsystem is characterized by

The Service is associated to an interface (or port) where the software subsystem expresses its functionality to other ones or to the software boundaries. A Service can be characterized by one or multiple Service Primitives. Service Primitives are syntax-less abstract operations such as "write a block of NvM" or "provide measured column torque".

A Service offered to the other components is expressed as Provided Service and the need for service is expressed as a Required Service. The provided and required Services are represented as connection ports on a Software Subsystem.

The static mapping (actual usage) of provided and requested services is represented as connector on a diagram similar to a component diagram.

Expected Granularity:

Number of Software Subsystems: 20-30
Number of Software Subsystem Interfaces: ~100

Software Architecture Aspect – Low Level (high resolution) Software View

This view provides the most details about the software elements of the system. The View can be considered as a "zoom-into" of a Software Subsystem.

The representation of the Low Level Software View is a set of Software Component diagrams,

Expected Granularity:

Number of Software Components: 150-200
Number of Runnables: ~500
Number of non-AUTOSAR software components: ~50
The discussed aspects can be followed on the next figures. The feature is Providing Absolute Rack Position to the Vechicle Communication Interface.

HiRes views can illustrate the relations among the different aspects.

EMA EMA is an acronym as EPS Multi-Aspect Archhitecture. EMA () are also small wooden plaques on which shinto worshippers write their prayers or wishes.