Tuesday, May 29, 2012

Architecture of my life: continued

Continuing down the life architecture path
(photo credit: .:Adry:.)
My earlier post Architecture of my life generated a lot of interest, which was encouraging, but it also stressed me to follow up with updates as many readers asked for that.  Moreover, I too am eager to further test out the concept to see how useful it is.

The challenge

I picked an area in my life that I wanted to improve upon, and I chose "keeping up with news".  The trigger came when I was clearing my email inbox.  I had many emails from mailing lists I subscribed to.  Each day I spend time sorting through those emails, deciding what to read later and what to discard immediately.  At the same time, I was using a RSS reader to keep up with news from news sites and blogs.  How great it would be if I could manage the email news and RSS news in one place!

Mapping out the current state


Current state diagram of the "Keep up with news" process

The first step I did was to map out the current state, so that I can understand my current processes and tools.  The figure above shows the outcome, created using the EA tool Archi.  Here are some considerations as I carry out this step:

Ensure linkage to higher level goals

I made sure that I can link this process to higher level goals, if not, why am I doing this process?  In this case, the "keep up with news" process links to "always learning", one of my nine key principles.

Understand process at the next level of detail

As I thought about the "keep up with news" process, I started thinking about what exactly I do to keep up with news.  This helped me arrive at the next level of detail: the sub-processes.  I realized that I do these sub-processes on a daily basis:
  1. Collect news from specific news sources
  2. Decide which of the collected news to read now, skip over or read later
  3. Read the news that I have decided in step #2 to "read now"
  4. Share news that I found interesting
  5. Once in a while, I also file interesting news away so that I can refer to them at a later date
  6. Once in a while, I add/remove news sources I monitor

Identify tools used to support sub-processes

Next, I identified tools used to support each sub-process.  There are more tools than i thought!  I discovered that I also used tools like Facebook and LinkedIn to keep up with news.  Here, I chose to just use a single "Facebook" box to represent different ways to access Facebook (e.g. Facebook website, iPhone app, etc)

Grouping tools based on type of news

As I discovered more tools, the diagram started getting messy.  I decided to organize them to make the diagram easier to understand.  There are three main groups of news that I read, and it was useful to organize the tools according to these groups
  • RSS news - news sites, blogs, twitter and any other places where RSS is supported
  • Mailing list news - mailing lists I subscribe to
  • Social media news - news shared by my network on Facebook and LinkedIn

Identifying gaps

Finally, with current state diagram done, the gaps in the current process became apparent:
  • Can news from different sources (RSS, mailing list, social media) be managed the same way, using the same tools?
  • Need a good way to prioritize news.  Currently, I do that by scanning through each news item.  I feel I can do better by giving some sort of score to each news source, such that news from higher scoring new sources will be read first.
  • Need a way to file news for future reference.  Currently, I email those news to Evernote, but I have not validate how searchable and useful those filed-away news are.

Designing the future state


Future state diagram of the "Keep up with news" process

Identify gap to focus on

After I have gotten clarity over my current processes, tools and gaps, designing the future state was fairly straightforward.  I decided to focus on the first gap "Can news from different sources be managed the same way, using the same tools?".

Come up with options for addressing gap

I did some searching of relevant tools and came up with a few possible options and their pros and cons:

1. Forward all news to Gmail under a special label, and then use FreeMyFeed to access that label - compromise security of my gmail account
2. Forward news to InstaPaper and subscribe to feed - does not work now for some reason
3. Create another email account that supports RSS feeds specially for news, and forward all news there

Eventually, I decided on option #2 and found Email2RSS to use in place of InstaPaper since the latter was not working for me.  The diagram above shows the new setup.

Strengths of the new setup

In this new setup, all my news are collected in one place--Google Reader--and also read in the same place.  This makes it easier for me to read news as I don't have to go to both the RSS reader and my inbox.  In addition, I can also prioritize all the news together.  You might have noticed that I have not solved the problem for Facebook and LinkedIn.  That is right, I am ignoring them for now, but I will need to address those parts at some point of time later.

Identified new sub-processes, tools and gaps

Furthermore, this new approach introduced a new sub-process "Convert mails to RSS feeds" and a new tool "Email2RSS".  I have also identified a new gap reminding myself that I need to create rules to automatically forward email news to Email2RSS.

Reflecting on the exercise

Is this too much work for solving a seemingly easy problem?  I feel the answer is "No" for a few reasons, and I also have a few thoughts about this exercise:

  1. The exercise allowed me to have a comprehensive view of the situation.  I started out trying to read all my news in one place, and then I realized that there are other places that I didn't think of (e.g. Facebook and linkedIn), and gaps that I missed (e.g. prioritizing news).
  2. It is important to prioritize the gaps!  There will always be gaps, and it is easy to get sucked into fixing every single discovered gap.
  3. This exercise created parts that I can reuse in the future.  The journey to refine each process might take several iterations.  So even if I don't get it right this time, I can still come back to these diagrams in the future and use them to improve the processes.
  4. Just enough, just in time.  Don't get stuck creating the exactly correct model, or describing every single detail!  Put in enough for what is needed.  If there is needs for details in the future, wait till then.
  5. This exercise highlights the key steps for refining any process.  It took me a while to describe the key steps, but I see it as a once-off.  In the future, when I refine other processes, I can repeat the same steps.

Wednesday, May 23, 2012

EA Heuristic #6: Examine if the metrics are frequent and granular enough to be actionable


Hilarious picture of star war soldiers watching their weight on the weighing scale.
Metrics guide our actions
(photo credit: stefan)
(this article is part of the series "12 Heuristics for Enterprise Architecting")

How can an organization recognize progress without appropriate metrics?  Metrics are helpful in assessing if the organization is doing well or not, and if not, what areas can be improved.  As such, it is useful to have at least one metric for each strategic objective.  However, metrics can be too infrequent or too high level to be useful.

Granular enough?

Metrics that encompass several areas might leave one guessing which is the problematic area.  In our exercise, some of the metrics are international rankings, which is a single number.  Even though the ranking methodologies do describe areas assessed to create the ranking, we wonder if the rankings as metrics are granular enough to be actionable. 


Frequent enough?

Once an area of improvement has been identified, metrics give feedback on the effectiveness of the corrective actions. However, if the feedback is given only once in a long period of time, it will lengthen the time needed by the entire improvement effort. In our exercise, some metrics were measured annually, so we questioned if they should be measured more frequently to allow for quick learning and refinements.

Monday, May 21, 2012

EA Heuristic #5: Address the concern of “you are echoing back what I told you”

(this article is part of the series "12 Heuristics for Enterprise Architecting")
Stop parroting me! (photo credit: Ferran PestaƱa
In some ways, the “as-is” phase of enterprise architecting exercises do not generate new content. It brings together observations from different parts of the organization and synthesizes them. Though the synthesis often produce “fresh” insights, these insights might seem obvious to the organization in retrospect, as they are often associated with pains that the organization has been suffering under. In our EA exercise, we received feedback on our “as-is” analysis that ranged from being “spot on” to “echoing back what I told you”, and that seem confusing until we sat down and analyzed the issue.

Learning from this experience, we could have explained to the organization why the EA team was not simply echoing back to them using the earlier mentioned logic. What we did do was to explain to them the EA methodology, and how we relied on it to systematically analyze the organization.

Saturday, May 19, 2012

Enabling Better Communications with Physical EA Models

A pretty BMW car.  photo credit: marco_dmoz

Physical Models: Powerful visual cues for enabling better communications

BMW's innovation centre in Munich is designed with deep considerations on how to encourage innovation and collaborations between employees.  One key feature of the building is full scale prototypes of the current cars in development placed in a highly visible central space, so that all the different teams-- engineering, sales, marketing etc--can see the prototypes.  This visual cue brings great value to the company, as various teams are aware of the latest design and progress of the project, and consequently teams are on the same page when having discussions about a particular car model.

Elaborating on concepts underlying this centre, as well as other related principles, the centre's architect Gunter Henn co-authored the book "The Organization and Architecture of Innovation: Managing the Flow of Technology".  Gunter's co-author is MIT professor Thomas Allen, an expert in organization communications.  The result is a book that brings an interesting intersection between communication and physical spaces.

How Physical Models relate to Enterprise Architecture

The "A-Ha" moment for me was when I realized that there is a linkage between this topic of physical spaces design and enterprise architecture.  Often the enterprise architect is trying to do the same thing as what Gunter did in designing BMW's centre--provide a common view of the current situation so that all the stakeholders can be on the same page and have meaningful discussions.  Enterprise Architects create "views" that highlight the most relevant pieces, and represent them in a way that make sense to stakeholders.  For example, a service catalogue shows key services provided by an organization.  In BMW's case, the "view" is embodied in physical objects, and it carries key information like project progress, aesthetic design, choice of materials, colors, etc.

What does this mean for EA?

How then can Enterprise Architecture leverage on principles behind BMW's innovation centre's design?  I don't have a definite answer, but here are some thoughts:
Core values of a company framed on the wall.
photo credit: videography
  1. People are already doing it!  When I thought about examples of physical EA models, I thought of views like an enterprise's core values and strategic objectives.  I then recall seeing various organizations putting these information on banners and big billboards, and display them at prominent places like the lobby.
  2. Help departments communicate their value, by helping them build physical models of their key views so that they can better communicate what they do.  If the organization has regular knowledge sharing sessions, teams can use these physical models as show-and-tell tools.  At other times, display these models at prominent places near to the team's workspace.  Possible views to use are a department's key processes, how they inter-relate and how they support the organization's objectives.
  3. Help projects communicate progress.  Develop physical models for major projects, like in BMW's case, as visual cues of project progress, current design, etc.  Again, here is an opportunity for EA to validate data in the EA repository, and also provide values to project teams.  The challenge though is how can the physical model be regularly updated to reflect project progress?  Some thinking will be needed to work this out.
  4. New way for EA to provide value and to engage.  Provide tools and the needed information (from the EA repository!) to generate the physical models.  This is a good opportunity for the Enterprise Architecture team to engage the rest of the enterprise in validating data in the enterprise architecture repository.  The most straightforward physical models are simply poster print-outs of key views.  The periodic table of visualization methods provides a good list of visualization ideas.  Or how about using cardboard boxes and styrofoam to showcase views like key business processes and technologies?  Another idea is to experiment with 3D printers since they are becoming widely available for under USD2000! 
I will be keen to hear your thoughts, and more so if you have experience with physical EA models.

Monday, May 14, 2012

EA Heuristic #4: Collect and analyze data with reusability in mind


Metal Bottle Cap Flowers (credit: urban woods walker)
(this article is part of the series "12 Heuristics for Enterprise Architecting")

EA exercises involve collecting a lot of data and distilling insights from them.  It seems wasteful if the fruits of these efforts are used just once and then thrown away.  Instead, when collecting data and doing analysis on them, it is useful to think about how the data and analysis can be re-used.

Specifically, as discussed in Heuristics #2: Guess, Validate, Iterate: Time-bound architectural efforts, the insights are likely to contain some inaccuracies, so expect gradual refinement of the data and analysis.  To do that, how the analysis is derived from the data should be clear.  In addition, involve as much as possible the people who are going to update it in the future.  The more familiar they are with the collected data and analysis, the more likely they will reuse it in the future.

During our EA exercise, we created a chart showing the key products offered by the organization, along with each product’s importance and satisfaction level.  We created a first draft of the chart, then we explained to the organization how we did it, and then they refined it.  We hope that they will reuse this chart, and we are more confident of it since they have already updated it once.  In addition, when we created the summary of our key findings, we tried as much as we can to resist the temptation of listing down gut feels and focus on findings that are backed up by data.

Friday, May 11, 2012

IT mega-trends for Enterprise and Consumers

A baby playing with a laptop.  Definitely one mega-trend is people are starting to use computers at much earlier age!  A more correct photo would be the baby playing with a phone or a tablet.
photo credit: rAmmoRRison
Saw a presentation by NTT CTO Imran Sayeed on IT mega-trends today that I found interesting.  The list was not surprising, but it is more of thinking about what should be and should not be on the list.  In addition, it was interesting that the presenter divided the trends into enterprise trends and consumer trends as one could think about why a trend is in one list but not the other and if or when it would crossover.

For some of the mega-trends, I have also added my commentaries.

Enterprise mega-trends

  • Cloud - especially around strategy to migrating in-house enterprise applications to the cloud
  • Mobility
  • Big data - maybe I should try this in my personal life!  Start by collecting data like weight, sleep quality with gadgets like wireless weighting scale and FitBit
  • Enterprise 2.0 - especially on the use of social media
  • Others (though not as much traction): Digital video, crowd sourcing, gamification

Consumer mega-trends

  • Mobility
  • Social Network
  • P2P: ways for consumers to sell services to each other, e.g. getaround, airbnb, prosper
When I saw the list, I wondered why Enterprise Architecture (EA) was not on the list.  Subsequent discussion with the presenter confirmed my suspicion: practices like enterprise architecture and IT governance are needed to make new technologies work, but they are not as sexy as the mega-trend technologies, so they definitely don't get talked about as much.  

Is there then an underinvestment in enterprise architecture?  Will there be a time in the future when venture capitalists will be funding EA startups?  Or should we think of EA in similar ways as project management, that it is crucial but seldom the news maker?

Wednesday, May 9, 2012

EA Heuristic #3: Talk to more blind men to know the elephant


(this article is part of the series "12 Heuristics for Enterprise Architecting")

Picture of an elephant in a gentleman outfit.  Enterprises are like elephants, much bigger than this one, thus a lot harder for any person to get a correct whole picture of.
photo credit: Murilo Morais 
Enterprises are like often like elephants and the enterprises’ employees and stakeholders are like blind men in the classic story; they are each touching a different part of the enterprise and they will each describe the enterprise differently, sometimes in significantly different ways.  As such, though it might seem obvious, it is important to talk to multiple people, and if possible representatives of various stakeholder groups.  Moreover, what EA often reveals is the breakdown in information flow across the enterprise.

In our EA exercise, we got employees of the organization to suggest ideas.  In order to encourage more ideas to be contributed, we make it safe for idea contributors by not tagging names to ideas.  Later, when we evaluated the ideas, we observed that some ideas suggested by one employee was labeled as “we are already doing this” by another employee.  Clearly the initiative in question was seen as an area of improvement in the eyes of the first employee, but seen as completed in the eyes of the second.  This was a good example of different perspectives on the state of the enterprise.

Sunday, May 6, 2012

EA Heuristic #2: Guess, Validate, Iterate: Time-bound architectural efforts


The spiral.  Architectural efforts should use this shape as the guide, doing quick iterations that each bring the effort closer to the end goal, but never getting held back from progress by attempts for perfection.
photo credit: the pale side of insomnia

(this article is part of the series "12 Heuristics for Enterprise Architecting")

It is very difficult to document various aspects of an organization to the lowest level of detail or even to document the high level views correctly. To begin with, people have different views of the organization so the one correct viewpoint might not exist. As such, it is important to recognize that EA artifacts are living documents and they will never be 100% accurate. 

Consequently, time-bound architectural efforts to ensure consistent progress. Guess and validate later when there is missing information. Allow for iterations to gradually refine EA artifacts.

In our EA exercise, we planned a survey early in the exercise to solicit information on stakeholder importance. The organization rejected the survey, so we created the stakeholder importance chart based on our assessment. During subsequent presentations, the organization’s executives provided inputs that helped us refine the chart. Reflecting on the incident, it would have caused us unnecessary time and grief if we did not move on but instead wait on getting that chart right first.