Grammar and Enterprise Architecture
December 5th, 2007by Jeremy Thomas
On the topic of enterprise architecture, some colleagues of mine talk about defining a corporate lexicon to outline what a business does, or wants to do, as a business. The aim of this activity is to arrive at a desired future-state where the business can talk about its core functions in a language that is not tied to its operational or business support systems. The language becomes an abstraction on top of those systems, and further analysis shows where core systems don’t support the corporate lexicon.
Let me give you an example of what I mean. Being a linguist at heart (I majored in Spanish in university) I thought I might simplify this approach by defining several business requirements for a telecommunications company:
- Provision broadband internet for residential customers.
- Provision broadband internet for small business customers.
- Send customers an invoice monthly.
The first thing to notice is the lexicon has been standardized. When I mean “provision” I say “provision”, not “activate” or “setup”. “Customers” are not “clients” or “accounts”.
Next, sentence structure. All of the nouns in this sentence represent core data entities, the adjectives (attributes of the nouns) represent types that extend the core data entities, and the verbs represent actions that can happen to the object pronoun (data entity) of the sentence. Each of these needs to be supported by the enterprise architecture.
Let’s analyze the first requirement more closely: Provision broadband internet service for residential customers. Verbs are highlighted in yellow, adjectives in green, nouns in blue and prepositions in red.
- There are two core data entities, “service” and “customer”.
- We need a provisioning business function for services (”service” being the object
pronounof the sentence). - “service” entities can be of type “internet”, and “internet services” can be of type “broadband”.
- “customer” entities can be type “residential”.
Furthermore, prepositions show us relationships between core data entities. In this case we see that “customers” and “services” have at least a one to one relationship (meaning a customer can have at least one service).
Applying the same analysis to all of the requirements, we’d end up with the following, semi-normalized data model:

We’d also end up with two business services (think SOA), one that sends invoices on a monthly basis, and another that provisions internet services.
Sure, this is simplified, but the requirements gathering process, when done in this way, can tell an Enterprise Architect a lot about the core data entities and functions an organization needs to support to do business. He can then perform a gap analysis to understand where his current-state architecture is deficient in supporting this future-state view.




Follow Me
December 6th, 2007 at 8:57 am
I recommend using Archimate as your enteprise architecture language.
http://www.telin.nl/NetworkedBusiness/Archimate/ART/index.html
I also recommend the Architect tool from BiZZdesign which is excellent for creating the EA models using the Archimate language.
http://www.bizzdesign.nl/html/index_en.html
You might also take a look at the FEA reference models, which are a useful start point for thinking in terms of what an organisation does, in terms of services.
http://www.whitehouse.gov/omb/egov/a-1-fea.html
December 8th, 2007 at 1:02 am
I don’t know if this post is just deliberately provocative, having the word “Grammar” in the title, but Provision is not a verb form.
It should read “Provide broadband internet service” or “Provision of broadband internet service.”
December 8th, 2007 at 10:41 am
Andy, within the telco space “to provision” is a commonly used verb. So, in this case “provision” is the conjugated command form.
In the IT space it’s also used as a verb. Check out this article from Microsoft (http://technet.microsoft.com/en-us/library/bb201741.aspx), entitled “How to Provision Exchange 2007 Server and Delegate Setup”. In this case, provision appears as an infinitive.
December 10th, 2007 at 1:50 am
I see that according to the Microsoft article, it is also possible to “de-provision” one of their servers.
December 10th, 2007 at 7:48 am
Indeed the English language has no bounds!