Listing all articles in The Residual World under the category 'NAF' :
by Nic Plum on Monday 02 March, 2015 - 23:00 GMT
Integrated EA presents an interesting and useful opportunity to learn, listen and talk about enterprise architecture, mostly but not always from a defence and aerospace application and not just from the UK but other parts of Europe and the world that have experience in the application of MODAF, DODAF, NAF and similar architecture frameworks. The event was created by Ian Bailey of Model Futures who was one of the ‘elves’ behind the creation of MODAF and who has maintained parts of the documentation and the MODAF metamodel (M3) since. This year’s Integrated takes place this week on 3/4th March 2015 at One Great George Street, London.
Ian has posted on the Integrated EA blog about the imminent demise of MODAF as a distinct architecture framework since it is about to join forces with the Nato Architecture Framework (NAF). Ignoring the name, NAF hasn’t had a good record over the years in terms of its documentation and because the metamodels for NAF and MODAF were significantly the same it was often the case that architects would use MODAF documents to produce NAF views (or ‘models’ as NAF calls them - the terminology differs between frameworks and the ISO/IEC/IEEE 42010 standard).
The post makes for interesting reading. In his post Ian mentions TRAK:-
MODAF spawned TRAK, which was free of the legacy user base MODAF had, and so was able to do a lot of things we’d been trying to do in MODAF for a long time
I’m still jealous of the freedom Nic had when he developed TRAK, and I still like the idea of an open-source framework.
so we must clearly be doing something right which is nice to know as Ian knows his stuff! Presumably this must also apply to NAF - unless they’ve ditched their roots or elected not to make some aspects backwards-compatible.
On this very site in 2011 I suggested that it would be a good idea to merge MODAF and NAF since they were converging, it didn’t seem sensible to have two similar but different sets of documentation etc. and the overhead in terms of maintenance and development cost must be significant. In the interim period we’ve had the economic downturn / crash and the financial imperative for efficiency / cost saving must be even greater. What never occurred to me was that MODAF would disappear or be absorbed into NAF. It therefore seems very unfair that the reward for MODAF being more consistent, having better documentation and being ahead is to lose its own identity. I suppose there is still much collaborative effort but all of the user-facing terminology seems to be very much that of NAF.
A quick look at the new set of NAF::’Models’ ( aka MODAF::’Viewpoints’) shows that there has been some attempt to simplify the naming of the models/viewpoints (something TRAK has had from its inception). It’s also nice to see some principle of organisation for the models/viewpoints in the grid view. This is very reminiscent of Zachman. They have also attempted some rationalisation to improve consistency. What seems to have disappeared is the MODAF Acquisition Viewpoint and it looks as though the MODAF AcV-2 Programme Timelines View is now part of the NAF:Logical Specifications. [ How any high level architecture description can be considered to be a ‘specification’ is beyond me since it doesn’t support the basic ideas behind attributes of requirements let alone completeness of specification. This seems to be the Holy Grail of folks with a software background but inconsistent with readability / understandability / basic user interface principles e.g. if it’s complete enough as a coded specification it’s also likely to be highly technical, use formal notation that is capable of supporting machine-validation and completeness-checking and increasingly impenetrable to the user. This also ignores the “..ilities” and non-functional aspects of a specification because most notations seem to be designed to describe structure, messaging or behaviour.] The MODAF AcV-1 which described the structure of projects seems to have disappeared. It ought to fit under the NAF Structural heading but this is occupied by the NAF Logical Scenario which is an entirely different view so there are clearly going to be some significant problems to overcome in eliminating MODAF viewpoints and merging MODAF views with the NAF cousins.
If only the new NAF would take on board some reasonable amount of compliance with the international standard in terms of terminology we’d start to see some real progress based on standardisation. There are encouraging signs that someone behind NAF is taking some notice of the standard e.g. ‘A3 Architecture Correspondence. ISO 42010’ which I assume has something to do with correspondence rules but without any detail it’s impossible to see whether this complies. “It’s progress Jim, ..”.
MODAF might be nearly dead but it’s very hard to shout “long live NAF” - yes, Ian, something must really be done with that acronym otherwise we’ll have have “NAF models ..”, “NAF specifications” … and you can only have so much NAF-ness!
by Nic Plum on Friday 25 February, 2011 - 15:45 GMT
The NATO Architecture Framework (NAF) has been around for many years now. It has been on a convergence path with MODAF from version 3 (released in November 2007) and the latest version, 3.1 appears to be even more closely aligned with MODAF than ever. I say ‘appears’ since there is only 1 part - Chapter 5 - that has been released and the remainder is subject to an official delay.
The documentation for NAF isn’t the best as it describes on Wikipedia with respect to version 3:
The documentation of the NAF Rev 3 views (Chapter 4) does not always align well with the NAF Meta Model (Chapter 5). This is particularly the case with some of the examples, which are based on DoDAF version 1.0. Some NAF users find it useful to first of all refer the official MODAF Documentation - . This is a useful strategy, as the MOD documentation can be somewhat easier to follow, and NAF and MODAF share a common meta-model.
There is certainly a consistency problem. At version 3 the framework consists of 7 views each of which has a number of subviews. A NAF::View is a collection of NAF::Subviews that are related by the subject matter. This terminology actually came from DODAF 1.X.
Chapter 7, Architecture Definitions, Terminology and Ontology, 7.2.1 defines NAF::View:
A set of subviews grouped by purpose.
clearly a collection of subviews, and defines NAF::Subview as
A pattern from which to develop individual products by establishing the purposes and audience for a product and the techniques for its creation and analysis.
Note: this is calledViewpointin IEEE-1471-2000;perspectiveis often used in the same sense.
Under 7.2.3 NAF Metamodel Terminology it then defines NAF::View as:
A specification of a way to present an aspect of the architecture. Views are defined with one or more purposes in mind - e.g. showing the logical topology of the enterprise, describing a process model, defining a data model, etc
MODAF 1.2.004 defines MODAF::View as:
A specification of a way to present an aspect of the architecture. Views are defined with one or more purposes in mind - e.g. showing the logical topology of the enterprise, describing a process model, defining a data model, etc.
It is clear that the NAF::View definition has therefore been taken directly from MODAF. Unfortunately in cut and pasting they didn’t remember that MODAF is organised using Viewpoints (collections of views) and Views unlike NAF. NAF is therefore inconsistent. It actually has 3 places where View is defined since it also appears in Chapter 5. This is another problem as it isn’t stated where the
master source of truth is so that in the event of conflict the user knows which takes precedence. As a general principle consistency is not improved by having something defined in any more than one place.
This was version 3 of NAF. Has version 3.1 improved matters? In a word,
No. Looking at the only part of version 3.1 that is in public view, Chapter 5, the definition is still the same. On top of this in places the description under some of the subviews things like
The NSOV-2 view defines…. What appears to be happening is that NAF is adopting the MODAF Viewpoint/View terminology instead of it’s own View/Subview terminology. Unfortunately it’s done this only partially - 3.1 doesn’t define either Subview or Viewpoint for the collection and still has subviews as headings (not views) so we have the strange situation where a view is both the collection and the individual specification. This doesn’t make for good or easy reading.
One of the advantages of standardisation is that is provides a common language. ISO/IEC 42010:2007 defines a view:
A representation of a whole system from the perspective of a related set of concerns.
and viewpoint as:
A specification of the conventions for constructing and using a view. A pattern or template from which to develop individual views by establishing the purposes and audience for a view and the tech- niques for its creation and analysis.
so a NAF::Subview and MODAF::View is closest in spirit to the ISO 42010::Viewpoint (practice is different as neither framework specifies the view content - they are narratives - hence the response by the tool vendors in creating the UPDM to constrain what can appear in the products for tools). NAF uses
ArchitecturalProduct to refer to the thing the architect produces in response to the NAF::Subview specification. This term doesn’t appear in the description of the views - another source of inconsistency as often different terminology is used or words are used in senses that aren’t in keeping with the definition of the terms in the metamodel. To be consistent there has only to be one definition and this has to be used wherever that term appears whether in user documentation or architecture description. How can you expect the user to be consistent if the specification isn’t. If you advocate the importance of consistent meaning (semantics) you have be consistent in the specification - none of the casual use that we all use in everyday conversation. You have to be pedantic.
The NATO Architecture Framework therefore seems to be suffering in the transition to version 3.1 and also because of the similarity between it and MODAF where terms have previously been used in a different sense. Unlike at the start both MODAF and the NATO AF are now very similar. In fact they’re so similar that you have to ask whether it’s worth maintaining two distinct architecture frameworks that are separated only by a small technical gap? As the Wikipedia article suggests you can use the MODAF documentation to help produce NAF architecure descriptions (don’t blame me for the acronym!). The sovereignty gap might be wider but is it really worth the price? Particularly in these cash-strapped economic times it no longer seems to be efficient use of tax payer’s money to maintain the overhead of both - isn’t it about time they reconciled any differences and merged? This has to be a reasonable savings measure in either or both NATO’s and the MOD’s budget.
by Nic Plum on Thursday 10 February, 2011 - 13:48 GMT
ISO/IEC 42010 advocates or, more likely, is predicated on the assumption that an architecture description of a complex system needs many architecture views.
Since the initial publication of IEEE Std 1471, there has been wide acceptance for the use of multiple viewpoints to express architectures of systems, and for system concerns as a primary motivation for the content of architectural descriptions. This revision builds upon these core concepts, and captures additional consensus in the areas of architecture frameworks and architecture description languages.
Each view describes the real world architecture and addresses a different set or concerns or questions posed. The typical concerns each view addresses are defined within an architecture viewpoint which is a specification for each view type. Note that this use of ‘viewpoint’ is not that same as that used in MODAF and DODAF where viewpoint is a collection of architecture views, not a specification.
Pretty obviously these need to overlap so that the reader can move around the architecture description and also understand the context for any part. For example there’s no point in showing a function without showing the thing that performs the function and this in turn might realise or implement part of a concept. Overlapping views are therefore a good thing. This in turn requires overlap between the defining viewpoints (ISO terminology).
Whilst some overlap is always good, too much overlap in invariably bad. If there is too much overlap in the things that can be shown in different view types then it becomes difficult if not impossible for the reader to understand the purpose of each view type and differentiate between them. It also leads to inconsistency in the way that an architect approaches the task since if the same content can be shown on 2 view types one architect might choose one view type and another might choose the second. From the reader’s point this is confusing since there is no clear expectation in terms of finding particular objects and relationships. In essence it is a human factors problem since with too much overlap the affordance suffers as there is no longer a clear distinction between view type and the likely view content. From the point of ISO/IEC 42010 the risk is that there is no longer any clear distinction in terms of the concerns addressed by each view type.
This is best illustrated by practical example. The following is taken from MODAF 1.2.004 and looks at the MODAF::SV-1 Resource Interaction Specification View vs the MODAF::SV-2 set (SV-2a System Port Specification View, SV-2b System Port Connectivity Description View and SV-2c System Connectivity Clusters View).
The MODAF System Viewpoint states:
The primary purpose of an SV-1 is to show resource structure; i.e. to identify the primary sub- systems, posts and roles and their interactions. SV-1 contributes to user understanding of the structural characteristics of the capability.
but goes on to add:
In its simplest form, an SV-1 can be used to depict systems and sub-systems, and identify the interfaces between them; however, this rarely adds more to that which can be shown in an SV-2, product.
If possible, an SV-1 will show resources and their interactions for the entire architecture on the same diagram
It’s immediately confusing since the stated intent is to show structure (despite the name of the view) but then adds interactions and itself identifies that there is hardly any difference between the SV-1 and SV-2 since both can legitimately be used to describe both structure and identify interfaces between the structural parts. In terms of the definition there is no distinction between the different concerns addressed and therefore you might choose the SV-1 to describe structure and interaction whilst I might choose the SV-2. [Note: The MODAF::SV-2 can only be used for System and Software not for Human Resource (Organisation, Job and Role) unlike the MODAF::SV-1]
At 1.2.004 there is even less differentiation since it now can be used not only to identify but to characterise interfaces:
If SV-1 is developed as a composite structure model (e.g. in SysML, UML), Resource Ports may be used to convey how interactions are dealt with internal to the resource when the resource has parts. Resource Ports may also specify the interfaces they require or provide.
(As an aside there are also inconsistencies between what appears in the textual description, the data objects and the fragment of simplified metamodel since the data objects section does not appear to list all the types of object that can appear on a SV-1.)
There is so much overlap between the MODAF:SV-1 and SV-2 that it is no longer clear what distinguishes the two (you can show structure and interactions on both) and therefore why you need both. Certainly the stated emphasis on structure isn’t reflected in the definition of the SV-1.
To be fair to MODAF this looks to be a problem inherited from DODAF:
Systems Viewpoint. SV-1: Systems Interface Description
A primary purpose of a SV-1 DoDAF-described Model is to show resource structure, i.e., identify the primary sub-systems, performer and activities (functions) and their interactions. SV-1 contributes to user understanding of the structural characteristics of the capability.
The NATO Architecture Framework, version 3.1 doesn’t state a structural intent quite as boldly although it does say for the NSV-1 System interface description:
In a sense NSV-1 and NSV-4 provide complementary representations (structure and function)
structural were limited to composition and configuration relationships and exclude flows then the SV-1s would be structural. They don’t, however, and the fact that their name includes
Interface (not structure) suggests that the intended focus of each of these views are the flows. Very much a case of mixed messages which doesn’t help the architect.
This shows that it is vital to keep clear water between the focus and therefore the concerns addressed by each view type.
Wiki Pages for NAF
A selection of 10 pages from the wiki:
- NAF::Actual Post
- NAF::NSOV-5 Service Behaviour Subview
- NAF::NSV-6 Systems Data Exchange Matrix Subview
- NAF::NAV-1 Overview and Summary Information Subview
- NAF::NSV-2d Systems Communication Quality Requirements Subview
- NAF::NSOV-2 Service Definitions Subview
- NAF::Project Milestone