The Residual World::Tag = 'Ieee1471'
Entries that have been tagged with 'Ieee1471'.-
Architecture Description Language (ADL) vs Architecture Framework
by Nic Plum on Sunday 24 October, 2010 - 18:38 GMT
Posted in Architecture Framework • Architecture Modelling • Standards
Tags: adl • architecture description • architecture description language • architecture framework • ieee1471 • iso42010 • management • plan • standard
This arose out of an email conversation I’ve been having with Rich Hilliard and Dave Emery relating to ISO/IEC 42010 which is now at the Final Committee Draft stage. I’d been looking at ArchiMate in terms an architecture description language for use with TRAK. The ability to use ArchiMate with TRAK will be the subject of another post but it highlights the point that ISO/IEC 42010 will allow multiple architecture description languages to be used within an architecture description.
p15 of ISO/IEC 42010 FCD dated 17th June 2010
architecture description language
form of expression used for the description of architectures
architecture framework
conventions, principles and practices for the description of architectures established within a specific domain of application and/or community of stakeholders
p25
An architecture description language (ADL) is any form of expression for use in architecture descriptions. Like an architecture framework, an ADL frames some system concerns for some audience of stakeholders using one or more model kinds and/or viewpoints. An ADL can be very specific; defining a single model kind, or it could define several viewpoints, and correspondence rules. Often an ADL also makes available automated tools to aid the creation and analysis of models.
p31
An architecture description could comply with no, one or more architecture frameworks. For an architecture description to comply with more than one framework would imply some reconciliation between each framework’s stakeholders, concerns, viewpoints, model kinds and correspondence rules.
p32
An ADL need not provide any architecture viewpoints; it can define one or more model kinds for use in architecture viewpoints defined elsewhere.
Examples of ADL include - the UML, SysML, BPMN and ArchiMate. There are many other possibilities. Examples of architecture frameworks of relevance to this site include DODAF, MODAF, CNDAF, NAF and TRAK. The UML is a common ADL used for MODAF, DODAF etc and the ADL camp divides into UML/non-UML.
Of interest is what happens when you use more than one ADL or indeed a single ADL. If you use an architecture framework how much of the framework is covered by the ADL? Does this matter? Well it does if you chose the framework because it covers the concepts or areas that you feel are important to be able to represent but then choose an ADL that cannot cover the metamodel of the framework. At the very least this needs to be an explicit and conscious decision that is recorded and periodically reviewed.
If an ADL only partially covers the framework chosen it makes sense to consider using multiple ADLs. There are often other reasons for using ADLs such as familiarity, availability of toolsets. If you do choose to use multiple ADLs you need again to look at the coverage but you also then have to decide when each is best used. This might include a definition of the architecture framework viewpoints each is used for. If there are overlaps how do you deal with them? There are also interoperability considerations - if I create a model using one ADL is is sensible/possible to consider importing this into the other? Will this fragment repositories and if so how do you integrate them or stop things falling into the divide?
Someone has to make an assessment of the suitability/fitness for purpose of the ADL set against the framework proposed and identify any limitations or practical problems. It might be that certain types of model and probably viewpoint are developed and maintained by a particular community so this might drive the choice of ADL.
Where would this assessment and decision-making sit? It isn’t part of the framework as the frameworks are usually ADL- agnostic and the choice in any case is a local one and part of the implementation of a framework. It isn’t also part of a global standard such as ISO/IEC 42010. A standard might highlight these as general or typical considerations but again the choice and the justification of this choice is local. It has to be placed within some local formal framework which sounds like an Architecture Description Modelling Plan for the sake of better terminology.
This plan ought to state at the very least:
- scope in which the architecture description task as a whole sits
- architecture framework to be used (with justification/rationale)
- types of architecture description and purpose / relationships between them
- architecture description language(s) used
- justification/rationale
- coverage of each ADL vs framework
- viewpoints each is suitable for
- how interoperability between ADLs is managed
- limitations / exclusions and impact
how the architecture description task is managed
- organisation(s)
- toolsets
In this sense it should cover similar areas, or have similar content to other engineering management plans.
Has anyone had any practical experience in this area? What did you do? any problems? Comments welcome, as usual!
Comments
Related Articles
Sharing tags:
- What Would a TRAK View Look Like in a Graph Database? Part 1 (22% )
- MODAF is Dead - Long Live ‘NAF’? (11% )
- Definitions - What Exactly is a Risk? (11% )
- Definitions - What Exactly is a Risk Part 2? (11% )
- Solution Risk, Vulnerability, Threat and Mitigation - Does Risk Need to be Separate from Event? (11% )
External Links
- Latest draft of ISO/IEC 42010 https://www.iso-architecture.org/ieee-1471/docs/ISO-IEC-IEEE-latest-draft-42010.pdf
- ANSI/IEEE Std 1471 :: ISO/IEC 42010 site - https://www.iso-architecture.org/ieee-1471/
How ISO/IEC 42010 Controls Architectural Description
by Maestoso on Sunday 31 January, 2010 - 10:56 GMT
Posted in Architecture Framework • Standards
Tags: architecture description • concept • consistency • exchange • ieee1471 • iso • iso42010 • model • rule • standard
ANSI/IEEE Std 1471 :: ISO/IEC 42010 - Recommended Practice for Architectural Description of Software-Intensive Systems
ISO/IEC42010:2007 states that ‘most architects must work within an architecture framework’ where this is defined as a predefined set of concerns, stakeholders, viewpoints and viewpoint correspondence rules; established to capture common practice for architecture descriptions within specific domains or user communities.
It controls architectural modelling at a high level by requiring architecture viewpoints that specify what concerns a particular view answers and what content a view must contain. It does not specify how the modelling is done or what presentation language must be used, for example UML, SysML, BPMN.
UPDATE. The re-issue of the standard as ISO/IEC/IEEE 42010:2011 changes the underlying conceptual metamodel in the standard. This is shown on ISO/IEC/IEEE 42010 website.
IEEE 1471 does not specify any particular one because it states that these are specific to the needs of a particular domain and there is not, as yet, any consensus on generic architecture frameworks.
In ISO 42010:2007 it specifies that an analysis be undertaken of the consistencies across the architectural views and any known inconsistencies be identified. Where does this consistency arise from, however, and what is the scope? It is perfectly possible for an architecture description comprising a set of models to be self-consistent. The problem is that another architect can choose to model using different object types and whilst again consistent the 2 architects will have produced 2 architecture descriptions that can’t easily be exchanged or re-used.
IEEE 1471 is evolving and not only has the name changed to better reflect the application of architecture modelling - ‘Systems and Software Engineering - Architecture Description’ [draft 7, 25th January 2010]. It also has more on architecture frameworks and states that
Correspondences and correspondence rules as specified in 5.7.2 and 5.7.3 may be used to express, record, enforce and analyze consistency between models, views and other AD elements.
IEEE 1471 is definitely heading in the right direction and provides useful principles and rules. Simply making a reference to IEEE 1471, however, is not sufficient in order to control architectural modelling to the level needed to be able to maximise the likelihood of success for the exchange of architecture descriptions (or models). Correspondence rules are necessary but there are potential problems with sets of text-based rules (this affects any requirement collection). A metamodel defines that only the allowed element types and relationships that can be used in a model or architecture description. In essence it provides the architect with a mandated language of nouns (element types) and verbs (relationships) to describe the system of interest. It is also visual and a very concise form of specification. There will always be the need for additional rules to specify consistency between views for the system of interest but having a metamodel is essential to a consistent set of building blocks from which to construct the views.
I’d argue strongly that having a declared metamodel is fundamental to defining an architecture framework and that without one you can’t hope to control consistency of modelling or meaning (semantics).
Even with a well-defined and controlled architecture framework there will be problems in exchanging architecture descriptions (and models) since modelling is a creative art providing many ways of modelling a particular thing and we have local or personal modelling styles. If we don’t share or have good access to a central set of definitions which includes elements and probably agreed boundaries (i.e. agreed understanding of the system breakdown structure) it is likely that elements will have different semantics.
IEEE 1471 is a good start and an architecture framework with a metamodel helps, but there is a lot more to put in place to be able to successfully exchange and collaboratively develop architecture descriptions (and models).
Comments
Related Articles
- {REL[6165][related1_blog]PCA6ozxDREL}
Sharing tags:
- What Would a TRAK View Look Like in a Graph Database? Part 1 (20% )
- Risk and Threats - The Common Ground Between Security and Safety? (20% )
- Definitions - What Exactly is a Risk? (10% )
- Definitions - What Exactly is a Risk Part 2? (10% )
- Solution Risk, Vulnerability, Threat and Mitigation - Does Risk Need to be Separate from Event? (10% )
External Links
Perspectives - Structure / Grouping of TRAK Viewpoints
by Nic Plum on Sunday 06 December, 2009 - 09:52 GMT
Posted in Architecture Framework • TRAK • Standards
Tags: capability • concept • ieee1471 • iso42010 • management • operational • perspective • procurement • solution • trak
—Edited to reflect changes in names of TRAK Enterprise and Concept Perspectives—
Architectural frameworks normally provide ways of grouping views that have a common aspect and these collections are known as perspectives.
TRAK provides the following perspectives:-
- Enterprise (was ‘Capability’) concerned with the overall enterprise and capabilities needed.
- Concept (was ‘Operational’) concerned with the logical ‘what’
- Procurement concerned with projects and delivery of solutions
- Solution concerned with the behavioural and physical aspects of the solution
- Management concerned with the management of architectural views
They provide a way of simplifying and organising the architectural description.
TRAK defines a set of architectural viewpoints and view contents. Elements shown on a view have to be part of the underlying metamodel and can only be connected using the allowed relationships. TRAK specifies what can be shown and how it is presented and organised. This is shown in the context of IEEE 1471 in Figure 4?1. It is the architecture element conforms to metamodel relationship outside the IEEE 1471 space and the framework defines architecture viewpoint and framework defines perspective that provide conformity and consistency.
Each TRAK viewpoint (and therefore view) is designed to address specific concerns or questions.
Enterprise Perspective
This perspective covers the enduring capabilities that are needed as part of the bigger enterprise. These are high level needs that everything else contributes to and form part of the long term strategic objectives that need to be managed. It provides a mechanism to link into the higher level goals such as Keep London moving.
Concept Perspective
The concept perspective covers the logical view of what is needed. It covers the logical connection of concept nodes, for example a service control centre, to other nodes with no recognition of how this might be realised either by organisation or technology. It provides a means of stating the operational exchange needs and information required.
Procurement Perspective
The procurement perspective provides a top level view of the solution to the problem outlined in the capability perspective and developed in the operational perspective in that it provides a way of showing how projects deliver solutions to provide capability. It provides a way of showing time dependency between projects and is an essential prerequisite for investigating capability gaps in the capability perspective. It also provides a mechanism for showing how organisations and projects relate to the systems being delivered.
Solution Perspective
The solution perspective provides views of the solution or potential solution, recognising that there may be many potential solutions which might meet the logical needs expressed in the operational perspective. Functional views provide a means of describing the behaviour in terms of functions, activity, sequence, state and interactions. Physical views describe how the system is organised, how information is routed and where parts are or must be.
Management Perspective
The management perspective covers views that are concerned with the management and production of the architecture products. It enables the scope of any architecture task to be defined and the provides ways of recording what was done and capturing the intended understanding so that the architecture can be provided to others or re-used.
Comments
Related Articles
- {REL[126][related1_blog]PCA6ozxDREL}
Sharing tags:
- Risk and Threats - The Common Ground Between Security and Safety? (30% )
- What Would a TRAK View Look Like in a Graph Database? Part 1 (20% )
- Solution Risk, Vulnerability, Threat and Mitigation - Does Risk Need to be Separate from Event? (10% )
- Definitions - What Exactly is a Risk? (10% )
- Just When You Thought It Was Safe - EntiTy Returns (10% )