RW - Navigation

RW - Recent

Last 10 entries [comments]:


Last 10 posts [threads/views]:


Last 10 pages updated:

There are 487 wiki pages in total.

RSS logoRSS Feed

The Residual World::Tag = 'Software'

Entries that have been tagged with 'Software'.-

Trapped in an Unfulfilled Relationship? Perhaps Wise Not to Rush for a Tool Just Yet

by Nic Plum on Thursday 24 June, 2010 - 16:04 GMT

Posted in Architecture ModellingTools

Tags: exploitisserelationshipsoftwaretool

A Blast from the Past - ISSE as it Used to BeRelationships are one of the cornerstones to using an architecture framework, even more so if you’ve constrained the permutations of allowed relationships and object types though imposing a metamodel. For starters if you select (choose) an element in your model you know that it can only be connected to a limited set of other types of object and using one or a few relationships. So before you even touch the element you have expectations and therefore ideas about how you might then navigate through the model. Equally it helps you to spot errors.

If someone comes and asks what, if any dependency there is between System A and System P you immediately know what possible paths to look for in terms of the constructs provided by the metamodel.

So why, then are relationships very much second class citizens in modelling tools? I suspect the answer lies in their pedigree. Most will have developed from tools for the creators of software where the focus is on defining classes and attributes and on the objects themselves. Of course you can explore relationships but there are often very few ways of making these more explicit. For a software project the scope is often much more limited - usually local to the organisation whereas often what we’re up against is trying to map out how bits of an entire sector relate to each other. In this case we’re often asked to define or explore the relationships between a system and the ‘residual world’ as much as any exploration within the system itself. For the software creator the end result is the generation of code (from the same tool) rather than a model of their world where probably the number of relationships far exceed the number of objects.

The exploration of relationships is concerned primarily with access to the underlying database rather than the views that sit on the top. How easy is it in your tool of choice to expand or follow paths? Is it purely manual with experience driving it or does the tool itself help or offer suggestions? Does it offer many ways to query the database and how easy or hard is it? One of the best exploitations of relationships in a tool I’ve seen was in the probably now defunct ISSE, the then prescribed tool for the MoD’s Integration Authority within the Defence Procurement Agency. What ISSE did nicely was provide a dialog from which you could add a succession of lines, each representing a metamodel stereotype - relationship - stereotype so that you could construct a path. For example, you might simply have Capability Configuration - Resource Interaction - Capability Configuration. What ISSE would then allow is for the architect to tell it how many of these steps (iterations) to follow when starting from the selected model element and the result could be shown in detail or using a summarised notation with a dotted line. This made it much easier to quickly explore the database and find out if and how things depended on each other.

I’ve not seen anything quite like this since which is a shame. I suspect Im going to have to wait patiently as all sorts of clever features for coders are delivered and keep my fingers crossed that someone has actually figured out that the needs of the 2 communities that use these tools are different.


Comment on this article

Related Articles

    Sharing tags:

    External Links

    1.2.004 adl admin advice applescript application architecture architecture description architecture description language architecture framework artefact artisan studio award berlow blog boundary browser bug c3 capability capability configuration colaboration collaboration committee compare compliance concept concert conference configuration control conformance consistency content contrast css cv01 def stan defence definition demonstration denmark department for transport develop discovery dndaf document dod dodaf drawing enterprise enterprise architect ertms event evolve exchange exploit forum fun geneology gfdl gnu graph group handbook hazard head-model history humour ibm rhapsody iec ieee ieee1471 iet ietf implement implementation incose innovation institute integrated ea interoperability introduction ipad iso iso42010 isse keynote knowledge language linkedin lockheed martin london london underground m3 mac management mdg meaning meeting metamodel mil std modaf model modelling style naf nato natural language needline news nist no magic magicdraw noun omg omnigraffle ontology open source opensource operational organisation oxfordshire perspective plan platform playlist portability presentation procurement profile project public publication publish purpose rail relationship release repository research resource rfc4677 risk role rssb rule safety sea search security sentence service singapore site softeam modelio software solution song sos sourceforge sparx systems sparx systems enterprise architect specification spreadsheet stakeholder concern standard steering group stencil stereotype store strategy structure support sysml system system authority system of systems systems engineering team template test threat

    All articles/posts © of the respective authors

    Site design and architecture © 2010 - 2019 Eclectica Systems Ltd.