Category Archives: Enterprise Architecture

#Graphitization of the Enterprise

COPYRIGHT © 2016-2017 by Michael Herman, Toronto Canada. All rights reserved. [Updated June 16, 2018]

This article is the first in a series on #Graphitization. Click here to explore the other articles in this series.

Reprinted from #Graphitization of the Enterprise on LinkedIn.

Move beyond digitalization of the enterprise to graphitization of the enterprise. Here’s a great diagram that explains this concept. (click on the diagram to enlarge it)

graphitization-new-world-of-it
Figure 1. The New Model of IT

Graphitization of not only all of your corporate information assets across all of your constituencies and stakeholders – at the data, application entity, and business object level – but also the graphitization of all of the interconnections between every business process, application system, infrastructure component, cloud service, vendor/service provider, and business role that uses, manages, or stores corporate information (Crossing the EA Chasm: Automating Enterprise Architecture Modeling #2).

Use graphitization to make your existing corporate information more available, more usable, and more informative. Graphitization enables you to “Keep Calm and Have IT Your Way“.

What is #Graphitization?

#Graphitization is a data science and enterprise architecture-inspired framework and process model for modeling, ingesting, organizing, analyzing, and visualizing any domain of endeavor by using graphs – networks of connected objects and relationships with each object and relationship annotated with additional descriptive information (metadata).

The primary applications of #Graphitization are:

  • System optimization,
  • Systems life cycle management, and
  • Transformative Change in resulting in positive increases in business value for the system being studied.

A system is defined as any collection of strategies, system components, assets, architectures or processes.

Using #Graphitization

Use graphitization of your organization to help close both the Enterprise Architecture Chasm and the Operational Data Chasm. See below.

progressive-ea-model-1-0-11-peam4-operational-data-chasm
Figure 2. Continuous Transformation Framework: Enterprise Architecture Chasm and Operational Data Chasm

progressive-ea-model-1-0-11-peam5-1010
Figure 3. Continuous Transformation Framework: Process Groups and Activities

To learn more about other applications of graphitization, check out the following articles:

Best regards and best wishes for the New Year,

Michael Herman (Toronto)
Parallelspace Corporation
mwherman@parallelspace.net

6 Comments

Filed under continuous transformation, Crossing the EA Charm, Data Science, Digital Transformation, Enterprise Architecture, Enterprise Architecture Chasm, Graphitization, ModelMate, Operational Data Chasm, Progressive Enterprise Architecture Map (PEAM)

Crossing the EA Chasm: Reflections on the Current State of ArchiMate

COPYRIGHT © 2016-2017 by Michael Herman, Toronto Canada. All rights reserved.

HBR: Great CEOs See the Importance of Being Understood

It is very interesting to read the above HBR article and then reflect on the current state of the ArchiMate language for Enterprise Architecture. Here are a few quotes from the article (as well as a few homework questions).

Best wishes for the New Year (modeled as a Principal, Driver, Goal, or Constraint? :-))

Here are 5 quotes from the HBR article:

  • “Perfecting and polishing a message matters less than how it’s reflected and refined by the intended audiences.”

Does ArchiMate support reflection and refinement in the minds of stakeholders? What needs to be changed/improved? What are the useful qualities needed for a language to support reflection and refinement in the minds of stakeholders (reflection and refinement by the stakeholders themselves)?

  • “One of the greatest obstacles in promoting more proactive, pro-user initiatives, she quickly discovered, was that her people were prisoners of their existing vocabulary. They interpreted her calls for customer obsessiveness by intensifying existing efforts rather than discussing or describing new ways to add new value.”

Is this also a description of ArchiMate’s current state? Are we stuck in a deepening “hole of hieroglyphics”? [link]  Are we prisoners of ArchiMate’s existing vocabulary?

  • “Microsoft’s Satya Nadella, for example, has been linguistically maneuvering from a proprietary Windows/Office software legacy to cloud computing, platform, and open systems contexts. Machine learning, for example, is now as integral to Microsoft’s new value vocabulary…”

Is Machine Learning part of the ArchiMate vocabulary? …maybe …early stage at best. Does ArchiMate resemble an open technology environment for fostering innovation in enterprise architecture?

  • “Entrepreneurial founders, of course, have both semantic and rhetorical advantages over their successors in this regard. A company’s creator disproportionately owns and influences its vocabulary.”

This quote has 2 edges represented by each of these 2 sentences. Food for thought.

  • “Understanding the importance of being understood is what makes great CEOs great communicators.”

This also applies to CIOs and enterprise architects. How does ArchiMate help CIOs and enterprise architects become great communicators? …or does it hinder them? How can this situation be improved?

For more thoughts on this topic, check out:

Best wishes for the New Year (modeled as a Principal),

Michael Herman
Parallelspace Corporation
mwherman@parallelspace.net

*ArchiMate is a registered trademark of The Open Group.

7 Comments

Filed under ArchiMate, Automated Enterprise Architecture Modeling, Crossing the EA Charm, Enterprise Architecture, ModelMate

Crossing the EA Chasm: The Surveyor

This poem is about land surveyors. It, just as easily, could be about enterprise architects, mapmakers, data scientists, bloggers, and journalists – bastions of the past, envisionaries of the future.

The Surveyor

He thrives on patterns,

his marks and monuments

transform a wilderness

and by his carefully tagged

and numbered squares,

neat roads, correction lines

and small cadastral lots

he clothes in certainty,

in geometrical designs,

man’s ancient rights.

He scans the skies,

reading some far-off star

by which he plots

meridians and makes his maps,

stitching a new-found world

into a patchwork quilt,

a net of metes and bounds,

so lands may know their own

and live in peace.

 — DON W. THOMSON

 

Best wishes for 2017. Hold on tight. It’s going to be quite a ride.

Source: http://www.surveyhistory.org/surveyor_poem.htm

1 Comment

Filed under Crossing the EA Charm, Enterprise Architecture, Enterprise Architecture Chasm

Crossing the EA Chasm: Re-visioning the ArchiMate Specification

It’s not a typo.  “Re-visioning” is the right word; one part, re-envisioning, and one part, revisioning: re-visioning of the ArchiMate 3.0 Specification.

This article presents a new architectural point-of-view for describing the ArchiMate language based on a layered architecture reference model for languages.

Motivation

Frequent feedback is that ArchiMate views are too technical and not “senior management friendly”. No enterprise architect wants to take an enterprise architecture view straight from their favorite modeling tool into a meeting with their CIO (unless their CIO is a very technical person). How can ArchiMate be customized or improved to address this?

ArchiMate often does not work well across heterogeneous or mixed-platform enterprise architectures. For example, it is difficult to work across mixed technology on-premise environments as well as heterogeneous cloud-based IaaS, PaaS, and SaaS platforms supported by a diverse complement of vendors (e.g. Microsoft Azure, Amazon WWS, IBM BlueMix, Salesforce, Google Cloud Platform, SAP, Oracle, VMware, etc.).

This situation is further complicated because none of these platform vendors document their architectures using ArchiMate. Every vendor documents their platforms and architecture reference models using their own collection of concepts, symbols, and stencils.

As of November 2016, there are approximately 3600 ArchiMate certified professionals worldwide according to The Open Group ArchiMate website (approximately 2600 ArchiMate Level 2 certifications and approximately 1000 Level 1 certifications – not accounting for overlaps). By comparison, there are approximately 730,000 Project Management Professional (PMP) professionals worldwide and, according to the OMG, “several tens of thousands of developers hold the OMG Certified UML Professional (OCUP) certification (including the updated OCUP 2 certification program)”. The implication is it should be possible to increase the broader adoption of ArchiMate beyond its current levels.

Another key motivation is to provide an architectural framework that makes it easier to understand how ArchiMate can be customized; making ArchiMate visualizations of EA models more approachable, easier to understand, and accepted by a broader audience. Customization is discussed near the end of this article.

To begin looking at how ArchiMate can be improved in terms of how it is described and how it is used, let’s start by looking at the ArchiMate 3.0 Specification and how ArchiMate is currently documented; and then, look at how the Specification can be improved (or augmented with a companion architecture reference model).

Current ArchiMate 3.0 Specification

What follows is a collection of quotations from the ArchiMate 3.0 Specification.  The quotations have been annotated as follows:

  • Italics have been added for emphasis and to identify key words and phrases
  • Numbered bullets (01) have been added for reference purposes. A legend based on the ModelMate Information Architecture for ArchiMate (described below) appears in Appendix A.
  • NOTE: The numbered bullets and legend (and italicized phrases) are not part of the ArchiMate 3.0 Specification.

Annotated Excerpts from the ArchiMate® 3.0 Specification

Start of excerpts.

Introduction
1.1 Objective

This standard is the specification of the ArchiMate Enterprise Architecture modeling language 01020304, a visual language 06 with a set of default iconography 06 for describing, analyzing, and communicating many concerns of Enterprise Architectures as they change over time. The standard provides a set of entities 0103 and relationships 0203 with their corresponding iconography 06 for the representation of Architecture Descriptions 0409.

1.2 Overview

The ArchiMate Enterprise Architecture modeling language provides a uniform representation for diagrams that describe Enterprise Architectures 07. It includes concepts for specifying inter-related architectures 09, specific viewpoints 07 for selected stakeholders, and language customization mechanisms 010203060708. It offers an integrated architectural approach that describes and visualizes different architecture domain04 and their underlying relations and dependencies 01020304. Its language framework provides a structuring mechanism for architecture domains 04, layers 04, and aspects 04. It distinguishes between the model elements and their notation 0102030406, to allow for varied, stakeholder-oriented depictions of architecture information 07. The language uses service-orientation to distinguish and relate the Business, Application, and Technology Layers of Enterprise Architectures 030405, and uses realization relationships 020305 to relate concrete elements 0103 to more abstract elements across these layers 05.

Language Structure

3.1 Language Design Considerations

image002.png

Figure. 1 Top-Level Hierarchy of ArchiMate Concepts 0102030509

End of excerpts.

The italicized words and phrases are the key words and phrases which describe the key ideas that make up the ArchiMate language (e.g. modeling language, visual language, a default set of iconography, set of entities and relationships, etc.). The initial sections of the Specification’s Introduction (quoted above) provide a comprehensive overview of the ArchiMate language.

The numbered bullets relate the key words and phrases in the Specification’s Introduction to the ModelMate Information Architecture for ArchiMate (described later in this article).

The Specification’s Table of Contents illustrates how the current version of the specification is structured:

  • Preface
  • 1. Definitions
  • 2. Language Elements
  • 3. Generic Metamodel
  • 4. Relationships
  • 5-13. Layers and Domains of language concepts further organized by Aspects
  • 14. Stakeholders, Views, and Viewpoints
  • 15. Language Customization Mechanisms

The approach used to describe ArchiMate can be improved.

An Alternative, Architectural Approach for Describing ArchiMate

Is there an alternative (and perhaps a better way) to describe the ArchiMate language with the goal of encouraging broader adoption, greater support, and more innovative applications of the ArchiMate language?  I think there is. Let’s consider a generic architecture reference model for languages like ArchiMate.

ModelMate Information Architecture for Languages

What is the ModelMate Information Architecture for Languages? The ModelMate Information Architecture for Languages (MIAL) is an architecture reference model for analyzing and describing languages.  The initial use cases are from the enterprise architecture domain but their applicability is not limited to enterprise architecture.

There are 8 primary domains in the MIAL architecture reference model (from the bottom up):

  • Vocabulary
  • Semantics
  • Grammar
  • Visual Notation
  • Visualizations
  • Descriptive Information
  • Overall Structure
  • Text Notations

For the most part, these are familiar concepts for describing most languages; technical languages in particular. These concepts are illustrated below.

modelmate-information-architecure-for-languages-3-0-5-overview

Figure 2. ModelMate Information Architecture for Languages

The MIAL 8 domains have the following definitions:

  • Vocabulary lists the names of the nouns and verbs of the language (and possibly other language parts)
  • Semantics provides meanings for each of nouns and verbs
  • Grammar governs the composition of nouns and verbs into phrases or other constructs (phrases, sentences, paragraphs, chapters, and stories)
  • Separate from the Vocabulary elements themselves, a Visual Notation provides a collection of one or more graphic renderings of each individual noun and verb
  • Visualizations describes how the Grammar and Visual Notation can be used together to create graphical views consisting of multiple compositions of nouns and verbs (graphical phrases, sentences, and paragraphs)
  • Descriptive Information describes what kinds of additional descriptive information (metadata) can be used to annotate the nouns and verbs in the Vocabulary
  • Overall Structure of a document or model
  • Text Notations for serializing an ArchiMate model into XML, JSON, or native spoken language documentation, as examples

An additional list of definitions can be found in this glossary.

The MISL 8 domains are, in turn, subdivided into MIAL 10 essential elements:

  1. Vocabulary of nouns
  2. Vocabulary of verbs
  3. Semantic definitions for the nouns and verbs
  4. Grammar rules for governing the composition of nouns and verbs (grammatical structure)
  5. Grouping and organizing constructs
  6. Visual notation comprised of a set of graphical symbols for each noun and verb
  7. Normative descriptions to guide the creation of visualizations based on the grammar rules and visual notation
  8. Annotation of nouns and verbs with descriptive information (metadata)
  9. Overall structure of a document or model
  10. Other notations for representing the structure (e.g. text, XML, JSON, native spoken languages)

Let’s look at how this information architecture reference model can be applied to ArchiMate.

ModelMate Information Architecture for ArchiMate

What is the ModelMate Information Architecture for ArchiMate? The ModelMate Information Architecture for ArchiMate (MIAA) is an instance of the MIAL customized to serve as an information architecture reference model for the ArchiMate language.

NOTE: The ModelMate Information Architecture for ArchiMate is not part of the ArchiMate 3.0 Specification.

Below is the list of the MIAL 10 essential elements customized for ArchiMate:

01 Vocabulary of nouns (elements) – a vocabulary of words

02 Vocabulary of verbs (relationships) for relating one noun to another – another vocabulary of words

03 Semantic definitions for the nouns (elements) and verbs (relationships) for describing enterprise architecture models – a glossary of definitions

04 Grammar rules for governing the composition of elements and relationships into a model – a grammar

05 Collection of domains and layers for organizing the elements into several (mostly) horizontal categories (Strategy, Business, Application, Technology, Physical, Implementation & Migration) and a collection of aspects for organizing the elements across the domains into a number of vertical categories (Active Structure, Behavior, and Passive Structure) – a taxonomy

06 Visual notation comprised of a set of graphical symbols for each element and relationship – an iconography

07 Normative descriptions of views and viewpoints to guide the creation of visualizations based on the visual notation and grammar rules

08 Annotation of elements and relationships with descriptive information – metadata

09 Model structure comprised of the elements, relationships, views, and metadata enabling models of enterprise architectures to be created, analyzed and visualized – an information architecture reference model

10 Text-based notation (e.g. XML-based model exchange format) for describing an enterprise architecture model (a collection of elements, relationships, views, and metadata) – enabling the serialization of an enterprise architecture model based on the information architecture.

The annotated excerpts from the ArchiMate 3.0 Specification found earlier in this article unpack the text of the specification by mapping the numbered bullets found next to each of the specification’s key words and phrases to the 10 elements of the ModelMate Information Architecture for ArchiMate.

The ModelMate Information Architecture for ArchiMate is illustrated graphically in the following figure. Study this architecture reference model from the bottom up.

modelmate-information-architecure-for-archimate-3-0-3

Figure 3. ModelMate Information Architecture for ArchiMate

Organization-Level Customization

Given the layered structure of the ModelMate Information Architecture for ArchiMate, it is straightforward to see how ArchiMate lends itself to being customized at each level of the 8 domains:

  • Vocabulary
  • Semantics
  • Grammar
  • Visual Notation
  • Visualizations
  • Descriptive Information
  • Overall Structure
  • Text Notations

Extend, Replace/Update, or Remove?

Below is an initial version of the ModelMate Information Architecture for ArchiMate customization decision matrix.

mial-for-archimate-1-0-1

Table 1. ModelMate Information Architecture for ArchiMate: Customization Decision Matrix

The first thing to note is how the decision matrix drove forward the idea that the MIAL 8 domains can be categorized into 2 groups:

  • Core
  • Non-Core

The Core group includes the “bottom 4” domains characterized by almost no opportunity for customization.  The Non-Core group includes the “top 4” domains characterized by being almost totally customizable.

Future articles will go into more depth in terms of describing how each domain in the ModelMate Information Architecture for ArchiMate can be customized.

This article is the main course; now proceed to the next course in this series: Crossing the EA Chasm: ArchiMate “Keep Calm and Have It Your Way”.

For additional thoughts on these topics, check out Crossing the EA Chasm: Reflections on the Current State of ArchiMate.

Bon Appetit,
Michael Herman (Toronto)
Parallelspace Corporation
mwherman@parallelspace.net

Appendix A – ModelMate Information Architecture for ArchiMate Legend

The following legend is based on the ModelMate Information Architecture for ArchiMate.

NOTE: This legend is not part of the ArchiMate 3.0 Specification.

01 Vocabulary of nouns (elements)
02 Vocabulary of verbs (relationships) for relating one noun to another
03 Semantic definitions for the nouns (elements) and verbs (relationships)
04  Grammatical structure governing the composition of elements and relationships
05 Collection of domains and layers and aspects
06 Visual notation (iconography) for each element and relationship
07 Normative descriptions of views and viewpoints
08 Annotation of elements and relationships with descriptive information (metadata)
09 Information architecture (model structure) for enterprise architecture models
10 Text-based notation (XML-based model exchange format) for describing an enterprise architecture model

*ArchiMate is a registered trademark of The Open Group.

12 Comments

Filed under ArchiMate, Architecture Reference Models, Definitions, Enterprise Architecture, How do we think, ModelMate, ModelMate Information Architecture for ArchiMate, ModelMate Information Architecture for Languages, The Open Group

Crossing the EA Chasm: ArchiMate “Keep Calm and Have IT Your Way”

archimate-have-it-your-way

What would the nirvana of “Have IT Your Way” EA actually look and feel like?

First, a bit of required pre-reading: check out Crossing the EA Chasm: Re-visioning the ArchiMate Specification.

My apologies if you haven’t already read the preceding article. It was part of an initial draft of this article until I realized the topic of ArchiMate customization needed to stand on its own.  It became the main course; leaving this article to be the dessert and, hence, much more enjoyable.

This article consists of alternate visualizations of the same underlying ModelMate enterprise architecture model and, for the most part, the same view.  The only variables are the modeling scheme and zoom factor used to render each view:

  • Colored dots
  • ArchiMate iconography
  • Microsoft Enterprise Viso Stencil
  • Amazon Web Services (AWS) 2D iconography
  • Amazon Web Services (AWS) 3D iconography

The first figure is an animation/slide show. It depicts a succession of views – each drawn with one of the above schemes.

This slideshow requires JavaScript.

Figure 1. Single Open EA Repository: “Have It Your Way” Views
(Dots, ArchiMate, Microsoft Enterprise Stencil, AWS 2D Icons, AWS 3D Icons)

Zoom factor is an interesting variable. In the first 2 frames of the above animation, the transition from the large scale view using the “dots” scheme to the smaller scale view using the ArchiMate scheme is one example of how different schemes can benefit from being used together in the same view. In this example, it’s the benefit of masking the detail in large scale views while allowing the detail to be unwrapped in small scale views. The benefit is more esthetically pleasing and understandable views for each range of zoom factors.

parallelspace-modelmate-archimate-detail

Figure 2. ArchiMate Icons: View Detail
(same underlying ModelMate model)

Figure 2 renders the view using the ArchiMate scheme, primarily. In addition, the colors of the dots denote the combination of schemes that are available in this ModelMate model. The top color of each dot denotes the ArchiMate element type and the bottom color denotes the element type based on a fine-grained Microsoft enterprise schema/taxonomy. For example, the highlighted component is a SQL Server Instance (denoted by the dark gray color in the top half of the dot). The yellow-green color (aided by the icon) identify the component as an ArchiMate infrastructure service. (Click on Figure 2 to enlarge it.)

parallelspace-modelmate-microsoft-detail

Figure 3. Microsoft Enterprise Visio Icons: View Detail
(same underlying ModelMate model)

Figure 3 is a similar view to Figure 2 but the Microsoft Enterprise Visio Stencil is used as the primary scheme. The pink color of the selected component denotes that it is an IP Subnet; the dark purple, an ArchiMate Network element. (Click on Figure 3 to enlarge it.)

parallelspace-modelmate-aws3d-detail

Figure 4. Amazon Web Services (AWS) 3D Icons: View Detail
(same underlying ModeMate model)

Figure 4 is virtually identical to Figure 3 except the AWS 3D set of icons is used as the primary scheme for rendering this view. (Click on Figure 4 to enlarge it.)

Each of these visualizations was rendering using the Linkurious graph visualizer running against a ModelMate model materialized in a Neo4j graph database.

Next Steps

More nirvana? Being able to see multiple schemes, side-by-side and interconnected at the same time rendered in a single view (e.g. ArchiMate for on-premise, AWS and/or Azure schemes used for the cloud, MS SharePoint stencil for the SharePoint information architecture, etc.). “More news at 11…”.

The Aperitif

Lastly and simply for your humor, I offer the following cartoon as the aperitif.

eamadeeasy

Figure 5. “Enterprise Architecture Made Easy”
Credit: Geek&Poke

Have IT Your Way.

Best regards,
Michael Herman (Toronto)
Parallelspace Corporation

mwherman@parallelspace.net

*ArchiMate is a registered trademark of The Open Group.

5 Comments

Filed under ArchiMate, Automated Application Architecture Analysis, Automated Enterprise Architecture Modeling, Crossing the EA Charm, Enterprise Architecture, ModelMate, Progressive Enterprise Architecture Map (PEAM)

Crossing the EA Chasm: Automating Enterprise Architecture Modeling #2

[Updated November 6, 2016: Added Database/Web Services Farm Example #2]

In the previous article Crossing the EA Chasm: Automating Enterprise Architecture Modeling, I included a simple example of how a current state enterprise architecture model can be created and maintained automatically.

The same ModelMate enterprise architecture model has now been extended to include a total of 832,789 ArchiMate entities connected by 828,859 relationships (with several million property values) and was created automatically from scratch in about 15 minutes.

Database/Web Services Farm Example #1 (Single Subnet)

Below is a simple example of an automatically generated view depicting the database services and web services configured on the 38 servers connected to a particular IP subnet.  There’s a total of 355 nodes in this accurate and up-to-date current state view. (Click the image to enlarge it)

parallelspace-modelmate-web-database-server-farm1

Figure 1. Database/Web Services Farm Example #1 (Single Subnet)

Pretty cool. The green dots are database services (SQL Server instances to be exact – almost every possibly product edition can be found in this subnet: SQL Server Express, Developer, Enterprise, Datacenter, etc.) modeled as Infrastructure Services; the blue dots, servers (Windows physical and virtual servers) modeled as Infrastructure Nodes; and, the purple dots, web servers (IIS virtual directory applications to be exact) modeled as Infrastructure Functions.

The small orange dots represent the network adapter configurations of the network adapters configured into each server.  The most central dot is the IP gateway (network router) for this subnet.

Database/Web Services Farm Example #2 (All Subnets/All Farms)

Parallelspace ModelMate-Web-Database Server Farms2.png

Figure 2. Database/Web Services Farm Example #2 (All Subnets/All Farms)

The red dots are IP subnets (32 in this ModelMate view) connecting 208 server Nodes that host either a SQL Server Instance (376 Infrastructure Service elements) and/or an IIS Virtual Directory Application (1597 Infrastructure Function elements).  The small orange dots are network adapter configurations. (Click the image to enlarge it)

Microsoft Exchange Server Farm Example

Here’s one more example of an auto-generated view from the same ModelMate model: a Microsoft Exchange email, collaboration, and unified communications services farm. In this view, the blue dots are the Windows Services running on each of these 3 Windows Servers in this view (out of a total of 5 servers in the complete farm). The orange dot highlighted in gray near the top of the server on the right side, for example, is an IIS virtual directory application that is hosting an Outlook Web Access (OWA) web service. (Click the image to enlarge it)

Parallelspace ModelMate-Exchange Server Farm.png

Figure 3. Microsoft Exchange Server Farm Example

The larger red entity contains all of the descriptive information (metadata) for each server’s processor; the smaller red dot, the memory configuration for the server.

The Neo4j  graph database from Neo Technologies was used as a key component of the ModelMate platform. A special ModelMate tool was created for automatically uploading any SQL Server database into a graph database (including all tables, columns, primary keys, primary key constraints, composite keys, foreign keys, foreign key relationships, implied entity relationships, NULL value processing, DateTime data type handling, etc.).

Have a great weekend,

Michael Herman (Toronto)

Parallelspace Corporation

mwherman@parallelspace.net

*ArchiMate is a registered trademark of The Open Group.

4 Comments

Filed under ArchiMate, Architecture Reference Models, Automated Enterprise Architecture Modeling, Crossing the EA Charm, Data Science, Enterprise Architecture, ModelMate

Crossing the EA Chasm: Annotating Your EA Models with RACI Roles

In the LinkedIn ArchiMate posting Difference between business/application/technology process?, Anna Aaltonen asked:

“Does someone have good examples how elements Technology process and Application process differ? Maybe comparing also to element Business process. Basically, processes are the same, no matter how those are executed. Basically moving from higher level models to detailed models is just playing with hierarchy, not changing layer. I am looking for a practical example (preferably an example using all those) as well as some hints how to guide modelers (in practice), when they ask whether they should use this or that.”

One tip I use to help clarify these type of questions is to think about the constituencies served by each layer in a traditional enterprise architecture model and add the specific list of roles beside (to the right side of) each layer. Below is an example taken from the article ARMs for Metadata-Driven LOB apps: SharePoint 2013/SharePoint 2016.

parallelspace-arm-sharepoint-2013-2016-v1-0-12-roles4

Figure 1. Enterprise Architecture Layers: Constituencies

 

For each of the layers, the list of pertinent roles is listed.  I choose to further organize the roles based on  RACI categories (also check out this related article):

  • Responsible (Deliverables)
  • Accountable (Approvers)
  • Consulted (Contributors)
  • Informed

Linking back to Anna’s question, this approach helps to focus everything that exists in a particular layer relative its constituency. Business Processes serve the needs to the Business architecture layer constituency; Application Processes, the needs of the Application layer constituency layer; Technology Processes, the needs of the Technology layer constituency.

Application Processes include development, testing and maintenance. For Technology Processes, deployment, operations and upgrading are simple examples.

Best regards,

Michael Herman (Toronto)
Parallelspace Corporation
mwherman@parallelspace.net

 

1 Comment

Filed under ArchiMate, Architecture Reference Models, Crossing the EA Charm, Enterprise Architecture

Crossing the EA Chasm: Automating Enterprise Architecture Modeling #1

If you have been following my Crossing the EA Chasm blog series (and related articles), you’ll have noticed a number of common themes:

Automating Enterprise Architecture Modeling

Automated enterprise architecture modeling (and automated application architecture analysis) are activities that belong to the Listening and Learning phase of the Continuous Transformation Framework.

Progressive EA Model 1-0-9-PEAM3-EA Chasm-Auto-Dots.png

Figure 1. Progressive Enterprise Architecture Model: Continuous Transformation Framework

Supporting the above themes, the Technology layer diagram below is automatically generated from a simple, single line query applied to an automatically created and dynamically maintained model of 500+ Windows and Linux servers (blue dots) with 550+ server network adapter configurations (yellow dots) connected to 25 network gateways (blue dots representing 25 network routers/switches). The data originates from a series of tables maintained by a configuration management database (CMDB) solution. There is no way to understand what the Technology environment looks like by simply looking at these tables.  However, in the visualization below, it is easy to see that there are at least 14 different server farms, application clusters, and data centers.

Parallelspace TEAM-DevicesA.png

Figure 2. Automatically Generated Technology Layer Model and View

In this ModelMate model, servers are represented by Nodes with 179 properties;  network adapter configurations as Devices with 69 properties each; and, network gateways as Devices with 4 properties per device.

This is just the beginning as additional information about web application, database, DNS, and directory and domain management services is used to add additional  detail to the current state Technology layer of this enterprise architecture. “More news at 11…” (click here).

This effort was made easier through the use of ModelMate and the Neo4j Community Edition free, open source graph database and the Cypher query language.

Best regards,

Michael Herman (Toronto)

Parallelspace Corporation

mwherman@parallelspace.net

4 Comments

Filed under ArchiMate, Architecture Reference Models, Automated Application Architecture Analysis, Automated Enterprise Architecture Modeling, Crossing the EA Charm, Data Science, Enterprise Architecture, ModelMate, Progressive Enterprise Architecture Map (PEAM), The Open Group

#Graphitization of .NET Applications: Marrying Open EA Data with Graph Databases

[Updated October 20, 2016]

As I’ve worked to support open access to enterprise architecture data by creating the ModelMate project, the range and diversity of how enterprise data can be analyzed and visualized has proved to be amazing.  Here’s yet another example: the marrying of open EA data in ModelMate models with a graph database platform …in less than 1 day.

The native (schema-less) representation for a graph database mirrors the ArchiMate* metamodel one-for-one:

  • Entities that support named types (“labels”)
  • Relationships between directed pairs of entities that also support named types (“relationship types”)
  • Unlimited property sets per entity
  • Unlimited property sets per relationship

Add to this, powerful query capabilities, a small footprint, and hyper-scalability. For example, being able to find all of the ArchiMate concepts that are 1, 2, 3, or an infinite number of relationships away from each of the Application Components in a large model and have these queries run and visualize in milliseconds (see the examples below).

For ModelMate’s first graph database integration, Neo4j from Neo Technologies was used. It was simple and efficient to install and was useable within a few minutes.  After working most of the morning to learn the Cypher query language to integrate and query the ModelMate data, the afternoon was spent exploring the graph model and experimenting with a range of queries. The most recent ModelMate logical architecture looks like the following (October 19, 2016).

modelmategraphdbhighlighted

Figure 1. ModelMate Logical Architecture

Automated Application Architecture Analysis

What are some of the results?  Here’s a series of views created with simple, single-line queries against the ModelMate graph. The scenario is automated application architecture analysis to support migration of on-premise applications to the cloud.

This version of the VetContext ModelMate model used for this example included:

  • 8714 elements (nodes) – files, assemblies, modules, methods, fields, method calls, and field references represented as ArchiMate application and technology layer concepts
  • 16,210 relationships – modeled as ArchiMate relationships that linked the above elements into a ModelMate graph

TIP: If you click on each image, you can check out the single line query at the top of each screenshot.

vetcontexta

Figure 2. Application Architecture: Contains and References Relations (1 hop)

vetcontextb

Figure 3. Application Architecture: Contains, Defines, and References Relations (2 hops)

vetcontextd

Figure 4. Application Architecture: Accesses, Calls, Contains, Defines, References, References and Type For Relations (3 hops)

vetcontextz

Figure 5. Application Architecture: Visualize Relations between all Application Components, Artifacts, and System Software Components (any number of hops)

vetcontexte

Figure 6. VetContext ModelMate Graph: All Application Components (any number of hops)

In Figure 7 below you can see the much smaller VetContext application in the green circle in contrast with all of the public classes and methods found in the Entity Framework assembly from Microsoft (blue circle).

VetContextEFHighlighted.png

Figure 7. VetContext Application References into the Microsoft Entity Framework

Impressive for 1-day’s worth of effort (including training).

Best regards,
Michael Herman (Toronto)
Parallelspace Corporation

Mail: mwherman@parallelspace.net

p.s. What is the VetContext ModelMate model that I’m using for these blog postings?

The VetContext ModelMate model is based on the Microsoft Entity Framework sample of the same name from the book Programming Entity Framework: Code First by Julia Lerman and Rowan Miller. The ModelMate model is comprised of data from all of the .NET assemblies, modules, type definitions (including classes, enums, etc.), method definitions, field definitions, method calls and field accesses as well as the physical files that store the assemblies in the VetContext sample application. A simplified VetContext class diagram (from Visual Studio) appears below.

vetcontextclasshierarchy

Figure 8. VetContext Class Diagram

The ModelMate Scanner for .NET Application Migration reads a folder of all of the .exe and .dll files for one or more .NET applications and builds the ModelMate model. No source code is needed. The scanner reads and parses the intermediate language (MSIL) directly.

p.p.s. The original ModelMate SQL Server schema (the original data source for the ModelMate graph) looks similar to the following. This was used before ModelMate included support for graph databases.

modelmateschema-views

Figure 9. ModelMate SQL Server (non-graph database) Schema
(obsoleted by the ModelMate migration to Neo4j graph database)

 * ArchiMate is a registered trademark of The Open Group.

3 Comments

Filed under ArchiMate, Automated Application Architecture Analysis, Crossing the EA Charm, Data Science, Enterprise Architecture, Graphitization, Progressive Enterprise Architecture Map (PEAM), The Open Group

Crossing the EA Chasm: Enterprise Architecture Diagrams Your Grandmother (and CIO) Will Love

[Updated October 13, 2016]

PLEASE POST A COMMENT ABOUT WHY THIS PAGE IS IMPORTANT TO YOU.
This particular page is 1 of my top 5 most viewed pages (ever) and I’d like to understand why. Thank you!

Let’s face it – not everyone is in love with the traditional enterprise architecture diagrams that are based on the ArchiMate* standard. Here, more or less, is a typical ArchiMate view.

modelmateeff1

Figure 1. A Traditional ArchiMate View: VetContext ModelMate Model

What if there was a way to create literally any type of visualization you wanted – from a common, central, “single version of the truth” repository?  Something your grandmother (and CIO) will love?

The first step is to unlock your enterprise architecture data.

In the recent article Crossing the EA Chasm: Open Repository Strategies for Enterprise Architecture, I described an open data access strategy for providing easy access to EA data from virtually any open source or COTS (commercial-off-the-shelf) modeling, data visualization, machine learning, or business intelligence platform.

The ModelMate project is a realization of this open repository strategy for EA data.  ModelMate supports access to a central EA repository using the following protocols:

  • The Open Group ArchiMate Model Exchange File Format (EFF) import and export
  • OASIS OData interoperability REST web API
  • .NET API for C# and VB.NET developers
  • Direct access to the underlying SQL Server repository using T-SQL stored procedures

The latest version of the ModelMate architecture is depicted below (October 12, 2016).

modelmate-integrations-1-0-6-pbix

Figure 2. The Model Mate Project: Logical Architecture

What sorts of visualizations does an open repository strategy like ModelMate enable? Check out the following ModelMate Graph rendered as an interactive EA exploration tool using Microsoft Power BI, the free desktop edition. This is just one rendering – the number of possibilities is limitless.

ModelMateGraph1.png

Figure 3. VetContext ModelMate Graph rendered using Microsoft Power BI (desktop)

From Power BI Desktop, it takes a couple clicks to publish a live, interactive, web version of the model to the cloud – the same ModelMate model that was used to create Figure 1.

modelmategraph1web

Figure 4. VetContext ModelMate Graph rendered using Microsoft Power BI (cloud)

Click here to check it out for yourself: ModelMate Graphs running in the cloud.

The above “spaghetti” visual is just one of the dozens of custom visuals available for Power PI.  Here’s a sampling….

This slideshow requires JavaScript.

Figure 4. Microsoft Power BI Custom Visual Gallery

TIP: To use Data Science platforms like Power BI and R to get the most out of your EA data, consider looking into the Microsoft Professional Degree Program in Data Science.

Please email me if you have any questions or additional comments at mwherman@parallelspace.net.

Best regards,

Michael Herman (Toronto)

Parallelspace Corporation

p.s. Don’t forget to email a copy of the link to your grandmother (or your CIO).  Please add your feedback in the Comments section below.

p.p.s. Here’s an updated view of the same VetContext ModelMate model using the latest version of SPARX Enterprise Architect version 13 that was released earlier this week. The layout was created using the Digraph automated layout feature.  When you have a powerful and easy way to scan and ingest arbitrary sized datasets, features like automated layout and routing become critically important.

vetcontext-logical-architecture-1-0-6

Figure 5. VetContext ModelMate Model in SPARX Enterprise Architect 13

* ArchiMate is a registered trademark of The Open Group

3 Comments

Filed under Crossing the EA Charm, Enterprise Architecture, Microsoft Azure, ModelMate, Power BI, The Open Group