Modelling APIs Dependencies

Post Reply
trinhtuan
Posts: 14
Joined: 13 Dec 2012, 08:48

Dear All,
I need your help for this case. Thank you very much.

Inputs:
Application "A" provides APIs "A1", "A2".
Application "C" provides APIs "C1".
Application "B" uses C1, A1 and A2 in order to function as designed.

I did the followings:
1/ Create "A", "B", "C" as instants of Application_Provider.
2/ Create "A::A1", "A::A2", "C::C1" as instants of Application_Provider_Interface.
3/ Assign "A::A1", "A::A2" to ap_interface slot of A, "C::C1" to ap_interface slot of C.
4/ Create "B Dependencies" as an instant of Static_Application_Provider_Architecture then assign "B Dependencies" to B's ap_static_architecture slot. (see attachment)

My questions:
- Are steps 1, 2, 3 correct to denote the APIs? If not then how I can do it correctly?
- What does ap_interface slot mean in "A::A1", "A::A2", "C::C1"? They are already interface themselves. When do we use this slot inside an Application_Provider_Interface instant?
- Is "B Dependencies" modelling in attachment correct approach for denoting the API uses and dependencies of B? If not then how?
- How can I logically trace which applications are depended on "A", "C"? e.g. in case I made a change to "A::A1", I will know "B" is impacted.
You do not have the required permissions to view the files attached to this post.
trinhtuan
Posts: 14
Joined: 13 Dec 2012, 08:48

48 views with no comments nor responses :D
jasonp
Posts: 70
Joined: 01 Jul 2017, 07:05

Hi,

In response to your questions:

- Are steps 1, 2, 3 correct to denote the APIs? If not then how I can do it correctly?
Your modelling approach looks to be correct
- What does ap_interface slot mean in "A::A1", "A::A2", "C::C1"? They are already interface themselves. When do we use this slot inside an Application_Provider_Interface instant?
The ap_interfaces slot is used to denote the interfaces that are dedicated to the containing App. It is not typically viewed as relevant to instances of Application_Provider_Interface, but is inherited from the parent Application_Provider class. The class editor, layout tab provides the means to hide this slot in the Capture screen, if preferred.
- Is "B Dependencies" modelling in attachment correct approach for denoting the API uses and dependencies of B? If not then how?
I have attached an updated project with a few tweaks top your B Dependencies to explicitly contain usages of the Application_Provider_Interfcaces
- How can I logically trace which applications are depended on "A", "C"? e.g. in case I made a change to "A::A1", I will know "B" is impacted.
We have an out of the box view to show this called, Application Information Dependency Model. You can see an example of it in our demo viewer here:
https://essentialviewer.com/report?XML= ... e=W10%253D
Dependencies_Example.zip
You do not have the required permissions to view the files attached to this post.
trinhtuan
Posts: 14
Joined: 13 Dec 2012, 08:48

Thank you, jasonp !
Your response is very helpful.
trinhtuan
Posts: 14
Joined: 13 Dec 2012, 08:48

jasonp wrote: 23 Nov 2022, 17:33 - What does ap_interface slot mean in "A::A1", "A::A2", "C::C1"? They are already interface themselves. When do we use this slot inside an Application_Provider_Interface instant?
The ap_interfaces slot is used to denote the interfaces that are dedicated to the containing App. It is not typically viewed as relevant to instances of Application_Provider_Interface, but is inherited from the parent Application_Provider class. The class editor, layout tab provides the means to hide this slot in the Capture screen, if preferred.
Hi jasonp,
Can you please give a concrete example about the use of this ap_interfaces slot in an instant of Application_Provider?
What does the "interface" really mean in the context of an Application_Provider? The "the interfaces that are dedicated to the containing App" is a bit confusing.

Thank you very much,
Tuan
Post Reply