Book a Demo

Author Topic: Modelling interface and properties  (Read 10448 times)

newarchitect

  • EA Novice
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Modelling interface and properties
« on: May 19, 2015, 12:20:59 am »
Hi guys,

I'm a newbie and wanted to start using Enterprise Architect to document a high level logical view of our system architecture. I am using components to capture systems/applications but wanted to check the best way of modelling interfaces and capturing interface properties.  (e.g. for each interface, I would want to capture a data format, delivery mechanism, frequency volumes etc.)

How would I do this in EA?

Thanks for any advice.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Modelling interface and properties
« Reply #1 on: May 19, 2015, 05:50:58 am »
Hmm. I wrote a whole book about this. A bit tricky to answer your question within 5000 characters. You can read online if you like.

q.

edbridge

  • EA User
  • **
  • Posts: 22
  • Karma: +0/-0
  • Architect for change.
    • View Profile
Re: Modelling interface and properties
« Reply #2 on: May 19, 2015, 11:49:33 pm »
It's not clear exactly what level of documentation you're trying to model.
There are a number of modeling paradigms that EA supports, each more focussed on differing aspects of a system, thought there is much overlap.

I would suggest that if you're trying to explain how the business relates to the automation, Archimate provides an excellent modeling paradigm.

If you are documenting Business process, BPMN is ideal

If you are documenting the internals of programs UML has the tools you need. You might note that you can create data structure documentation in one model and reference it in others, which is quite powerful. Moreover, the ability to create sub-diagrams (New child diagrams) allows virtually unlimited drill down to detail, and the property pages add places to add additional specifics.

There are documents and tutorials on each of these. And Qwerty's books will help in realizing the models using EA.

newarchitect

  • EA Novice
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: Modelling interface and properties
« Reply #3 on: May 23, 2015, 02:21:17 am »
Thanks guys, I'll get the book for more of an insight.

Basically I am trying to document a logical overview of systems (as black boxes) and the interfaces/information shared between them. For example I have system A and system B with a well defined interface for sending data between them.

I want to use EA to document this information and present it in a clickable form (e.g. a website). I attempted to do this in EA using UML component diagrams and splitting systems (modelled as UML components) and interfaces in separate packages. I managed to document the interface properties using linked documents.

The only issue I ran into was how to model the relationship between the two systems. Initially I used an information flow from system A to system B and associated information flow to the interface but I found when I tried to use the interface reverse lookup functionality (to see where it was used) the list came back as blank. Futhermore, when I generated the documentation to HTML, the interface was not clickable on the diagram.

Any pointers?

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Modelling interface and properties
« Reply #4 on: May 23, 2015, 02:51:00 am »
I can not help much with the HTLM report (probably others) but can you explain what you did with the information flow step by step?

q.

newarchitect

  • EA Novice
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: Modelling interface and properties
« Reply #5 on: May 23, 2015, 06:00:23 am »
No problem Qwerty.

Using EA 12.0. I have 3 packages under a root node.

Context diagrams (with one blank component diagram Test)
Systems (with two components SystemA and SystemB)
Interfaces (with one interface SYSA_SYSB_001)

1. Open the component diagram Test
2. Drag SystemA and SystemB from the project browser to the diagram as links.
3. Click SystemA and drag the arrow from SystemA to SystemB.
4. On the dialog popup Click Information Flow
5. You get the information items conveyed popup. Click Add and click the interface SYSA_SYSB_001
6. The information flow now shows SYSA_SYSB_001 on the diagram.
7. If you right click the information flow and select "Find items conveyed" it selects the interface SYSA_SYSB_001 in the project browser.
8. Save the diagram.

Now in the project browser, if you right click the interface and click "Find in all diagrams", I thought it might allow me to see the interface being used on the test diagram but it only shows me a blank element usage dialog box.
« Last Edit: May 23, 2015, 06:14:10 am by sbhachu »

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Modelling interface and properties
« Reply #6 on: May 23, 2015, 06:59:53 am »
There's at least one formal error. An interface is not conveyed. Only classes are conveyed. See below.

Now for the error you think it is. It isn't an error. Or maybe a missing feature. Since the element is not really used on the diagram it will not appear in the list. There are a couple of threads here which show how you can find conveyed items (just search the whole time range for conveyed and you should find the relevant threads).

Now for the conveyed interface. Create a provided and a required interface for both components. Draw a Realize from the provided to the interface and a dependency from the required. Create the information flow between both interfaces and convey "SomeClass". It should look like this:


q.

newarchitect

  • EA Novice
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: Modelling interface and properties
« Reply #7 on: May 26, 2015, 08:04:43 pm »
Many thanks qwerty.

Amy_N

  • EA User
  • **
  • Posts: 28
  • Karma: +1/-0
    • View Profile
Re: Modelling interface and properties
« Reply #8 on: May 29, 2015, 04:47:52 pm »
Sorry just jumping in on this discussion as I'm also looking at interfaces at the moment. I really like the idea of showing the interface realised by the component's provided interface or a dependency from a required interface.

However I have noticed when looking at the interface's links (in properties) it then shows the relationship to the provided/required interface and not the actual component name anywhere. This is also true if you do a relationship matrix. My customer is really keen on having a matrix showing where each interface is used.

Is there anyway to do this without linking directly to the component?

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Modelling interface and properties
« Reply #9 on: May 30, 2015, 09:20:49 pm »
I guess that a smart SQL could do the job.

q.

johnks

  • EA User
  • **
  • Posts: 28
  • Karma: +2/-0
    • View Profile
Re: Modelling interface and properties
« Reply #10 on: May 13, 2016, 02:38:44 am »
Hi - just picking up an old thread as it's relevant to work I'm doing.

I also am keen to represent interfaces at a high level for my client who is using Sparx to document solution architectures for all their IT projects. We are using components and information flows to create context (component) diagrams that describe the high level integrations that each project intends to deliver (or will impact in some way) and are considering how we might relate the information flows in those diagrams to a catalogue of exposed interfaces that we maintain for our components.

We are considering linking an information flow to the interface elements using "information items conveyed" (Sparx supports this) as it allows us to represent integration as simple boxes and lines between components without having to add the interfaces themselves as boxes. The downside (as pointed out) is that it's not easy to navigate from the interface in the project browser to the information flow conveying it in a diagram. This is also the case if you convey classes.

Amy_N or newarchitect - have you "solved" the above? I'd be interested to know what approach you adopted?

Many thanks!  :)

John
John S

Amy_N

  • EA User
  • **
  • Posts: 28
  • Karma: +1/-0
    • View Profile
Re: Modelling interface and properties
« Reply #11 on: May 24, 2016, 03:06:39 pm »
Hi There. We have gone with using the Sparx 'interface' object to define the interfaces and have it 'realised' by the components. We have used the 'info flow' to show the flow of info between the components.

I can try and send you an image if this doesn't make sense?

johnks

  • EA User
  • **
  • Posts: 28
  • Karma: +2/-0
    • View Profile
Re: Modelling interface and properties
« Reply #12 on: May 24, 2016, 10:37:29 pm »
Hi Amy

We've decided to do the same thing  :)

We link components (as instances) with information flows and then convey interfaces within them. We manage a catalogue of baseline components and interfaces that the user must select from when building the diagrams.

To get the most out of this approach, we are using the latest version of Belleken's Navigator which allows us to navigate between information flows that are on the diagrams and their conveyed interfaces in the project browser.

John
John S