Technology Platform Model images not rendering correctly

Post Reply
jjlong150
Posts: 3
Joined: 27 Apr 2016, 14:08

Greetings,

I'm trying to implement the Technology Platform Model report. I've built the relationships and am getting the table of 'Supporting Technology Components' to display (yay!) but am struggling to get the 'Model' diagram to render (boo!).

I've been following the report instructions I found under "View Manual Catalogue". The table says that slot "Classified As" is required for Technology_Component_Usage class instances. A little further down the page it says "For each Technology Component Select ADD in the Classified As field, navigate to the Technology Architecture Tiers defined and select the relevant tier for that usage." When I classify just the Technology_Component instances no diagram is created. When I classify the Technology_Component_Usage instances the image created looks like the example I have attached.

Do you have any advice as to what could be wrong?

Thank you,
Jeff
Essential TPM Error.PNG
You do not have the required permissions to view the files attached to this post.
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hi Jeff,

Thanks for your post.

It is certainly the Technology Component Usages that you should be classifying using the “Front End Tier”, “Middle Tier” and “Back End Tier” taxonomy terms.

Each of these usages must be a usage that features in the Technology Product Build Architecture instance that defines your Technology Platform Model and this build must be connected a Technology Product Build instance. Then, this Technology Product Build must be connected to a Technology Product Build Role instance (“Implements Technology Components” slot) that connects a Technology Component (the role) with the Technology Provider (the Technology Product Build / Technology Product that is playing the role - implementing the Component).

I think this makes a bit more sense if we take it from the Technology Product Build and work out from there.

- We define an instance of Technology Product Build to represent the technology product architecture of the platform that we want to capture.

- We can then define the ‘Technology Provider Architecture’ to describe the products that are used in this architecture and how they relate to each other.

- This creates an instance of Technology Build Architecture in which we can drag new instances of Technology Provider Usages. Note that these must be ‘wired up’ to the Technology Product to which they relate. Double click on each node on the diagram and complete the form that pops up.

- Note that each of these ‘Usages’ is the usage of a Product playing a Role, not simply a product.

More advanced models
It is possible to group technologies in this architecture into groups defined by the tiers in the Technology Architecture Tiers Taxonomy. To use this, we can create 3 instances of Technology Product Build, one for each of the terms in the Taxonomy - remembering to classify each of these using the relevant term from the Technology Architecture Tiers taxonomy.

We can create Technology Product Architectures for each of these to describe the products that are used in the Front End, Middle and Backend Tiers, remembering to connect each of the usages to the Technology Provider that is being used. Note that you can choose individual Technology Product Roles OR use Technology Product Build Roles here to capture containment.

Finally, we use this containment capability to define a Technology Product Build Architecture for our product that has 3 usages - one each for our Front End Tier architecture, Middle Tier and Back End Tier.

Check that where you have Technology Provider Roles (either a Product or a Product Build) that you have got both the Product AND the Technology Component defined.

I appreciate that these models can be a bit tricky to capture at first. I would recommend starting with a simple one that has no contained sub-architectures), getting that working and building up from there.

Do let me know if you have any questions at all about this.

Jonathan
Essential Project Team
jjlong150
Posts: 3
Joined: 27 Apr 2016, 14:08

Johnathan,

Thank you for the thorough reply. I'm a bit confused by it, as the report I am trying to get working, "technology/core_tl_app_tech_platform_model.xsl" makes no mention of 'Technology_Product_Build' classes when I view the XSL. I do get the flavor of what you described however, and I believe what I was doing with my '3 tier web app' 'Technology_Component_Architecture' was implemented in similar manner.

Let's forget about my model for a minute, as I've determined that the problem I'm encountering exists in the Essential sample repository I was using as my example.

The latest sample repository does not have Technology Platform Model data in it, so I started with the Essential 4 model "essential_demo_emm401.pprj' which does have the data, and applied the 4.0 to 4.3, and 4.3.1 to 5.0.5 update packs to the model to bring them to the current specification.

When I navigate to the "Application Catalog by Name" there is an application (i.e. 'Application_Provider') named "Contact Management Reference System". I click on the application name, and it exhibits the same problem. The UML diagram does not render but the components are listed.

core_tl_app_tech_platform_model output.PNG

I've decomposed the relationships in the diagram in the attached PDF file. I'm assuming this is the correct way to structure my data as it is similar to what you described in your reply. I noticed that the 'Technology_Component_Usage' instances in the 'Package to Package Integration' Technology_Component_Architecture do not have "Classified As" entries, however adding classifications to all the instances in the architecture had no effect. The UML image generated still contains the error. Do you see anything which would cause the UML to fail to generate?

core_tl_app_tech_platform_model data.pdf

You have the sample data available to you, so I hope you can reproduce what I am seeing on my end.

Thank you again for your help with this matter,
Jeff
You do not have the required permissions to view the files attached to this post.
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Thanks for getting back to me, Jeff - and thanks for your perseverance!

I’ve spent some time looking at this View and example models that work with this and those that are not and I think there are some things that we need to look at (on the Essential Project side) with this, that may have affected the more complex technology component architectures.

However, I have been able to get some simpler architectures working correctly and I think this might help to get your models going. In fact, I’ve been able to get the more complex models rendering as well but not quite in line with the View snapshots yet.

One simple thing to try is to REMOVE the ‘Technology Architecture Tiers’ Classification from each Technology Component Usage (the elements on the graphical models). Now, the Technology Platform Model should render the model correctly. Note, however, that for platform models that are made up of sub-platform models, those sub models will not be ‘drilled into’ (this is what we’ll take away and resolve).
This worked for me in one scenario.

However, in the particular example you mention - Contact Management Reference System, this simple approach was not enough. However, as that architecture contains a single element (usage) that encapsulates the details (‘Package to Package Integration Architecture Model’), I replaced the Technology Component Architecture of Contact Management Reference System with that of Package to Package Integration Architecture Model and then the more detailed model was rendered.

There are some things that we need to take away to improve this View - I suspect that updates to some of the components that we use to render the UML model have had some unexpected impacts - and we’ll do that.

However, you should be able to get some models rendering by avoiding that Taxonomy that classifies elements of the architecture and using ‘flatter’ models that don’t use sub-models.

Do let me know if any of this is not making sense - what I’m proposing is relatively straight-forward - and of course how you get on!

Jonathan
Essential Project Team
Post Reply