Dependency Modelling

Post Reply
menoprog
Posts: 6
Joined: 21 Jul 2016, 03:29

Version: 5.0.5

With reference to:
viewtopic.php?f=8&t=200

Hello,

Where and how does one unambiguously represent Application Provider A's physical dependency on Application Provider B, such that if B doesn't exist (or fails), A also fails.

Example:
I have two Application Providers, A and B. A sends data to B, and if B fails (or simply doesn't exist) then A will fail. A, therefore, has a physical dependency on B. B could be a web service, or message queue, or some other receiver of A's data, either on the same node or a different node.

In thea Static Architecture for A, I add A and B, then drag from A to B which creates a "A depends on B" line.
The Impact Analysis view for A shows what I want, that A "would be impacted by the removal of or changes to" B

However, if I understand the above post correctly, drawing the Static Architecture this way is actually saying that A consumes data from B, and this is indeed reflected in the Application Dependencies view for A, where there is a big arrow from B to A presumably indicating that data flows from B to A.

However, it is A that sends data to B, and B must exist for A to function.

To repeat the question, how does one unambiguously represent A's physical dependency on B, such that if B doesn't exist (or fails), A is impacted (e.g. fails).

Many thanks
Bradley
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hello!

Firstly, apologies for not replying sooner about this.

Depending on what you mean by 'physical', there are two answers to this.

Firstly, from a logical perspective - that application A receives information from application B - A depends on B. If B does not supply this information to A, then this is a problem for A. Using the same model to capture both perspectives - the flow of information between A and B and the dependencies between A and B works well and avoids modelling the same knowledge in more than one place.

Secondly, if you are interested in knowing the dependencies that exist at a physical level - e.g. that Application A in Production depends on Application B in Production, then we can model that in the Physical Application Layer. Here, the aim is to be specific about the dependencies that exist between instances of the applications. On the Application Deployment class, we can be specific about the dependencies that exist at this level of abstraction and specify that dependency between A in Production and B in Production by creating the Application Software Instances for each of A and B and then making the connection in the "Is Dependent upon Technology Instances" slot of Application A's Application Software Instance.

Jonathan
Essential Project Team
menoprog
Posts: 6
Joined: 21 Jul 2016, 03:29

Thanks Jonathan.
Post Reply