HLD-methodology of embedded systems design

The choice of ES architecture is crucial for medium and large projects. The architecture treatment previously existed assumed the system representation as a set of physical and logic organization partitions. Today such treatment is insufficient for ES design. Thereby, modern treatment has been expanded and now evidently includes: the system operational environment, communication with it, system design, operation and development principles.
Within the system design methodologies with a prevailing software component (which considerable ES amount refers to), it is necessary to deal with the questions of requirements gathering, work organization with interested parties (stakeholders), working process organization and developers team progress issues.  
According to the given requirements and tendencies, HLD-methodology is being formed and developed. The methodology purpose is conscious, reasonable and controllable ES design. Today, the ideological and conceptual basis for HLD-methodology is laid, and, by the current moment, research is concentrated on the following problems:
    1. The formal description and expansion of design decisions search space for ES, formalization of work techniques with this space.
    2. Formalization and automation of work with a set of architectural abstractions.
    3. Formalization and optimization of architectural decisions synthesis process.
It is possible to refer to the following methodology features:
    1. Supplement of developer’s ES image by a set of project aspect representations. It is caused by the complexity of ES design problem along with high specialization of developers and a variety of tools being used. The design process is based on the usage of a project aspect space concept, an architectural aggregate and an aspect model.
    2. ES architecture fixation not only in the conceptual moments of target system, but also in mechanisms (principles), put in its development. Architectural decisions evaluation. It is necessary for abstraction level increasing of reusable elements and narrowing decisions space of the realization stage. It is promoted by the proposed methods of design space expansion and use of design mechanisms concept.
    3. Work with ES on abstract level within the maximum number of project steps. It allows to raise flexibility, adaptability, reuse, to improve other characteristics of the project. It is reached substantially by means of design consideration as the organization of the computation process, including processes of operation and development stages, and also by means of special system of architectural abstractions (concept of virtual machines, computational model, computational mechanism, computational process, and others).
As the base of HLD-methodology, fundamental ideas of System Level Design, system engineering, and Hardware/Software Co-Design act in combination with practical experience of various ES creation and implementation. It is possible to attribute the following ideas to the most important and unique parts of the methodology:
    1. Aspect space, which allows to take functional and nonfunctional requirements to complex system into consideration.
    2. Design space, which provides flexibility in changing the system’s under design characteristics choosing a necessary set of design decisions.
    3. Design abstractions system, including such concepts as computational mechanism, computational platform, architectural aggregate, and allowing to construct new systems on the basis of available architectural solutions library.