Wednesday, September 30, 2015

Changing Things Up…

So I have decided to take my writing more seriously, including being more diligent about my blogging, as well as possibly developing some ideas I have had about drafting a book related to my profession. My father - who was an academic all his life - once told me “You’re not really a professional at ANYTHING until you have been published !”

The POWER Method

In a previous blog entry, I discussed the POWER methodology for writing:
* Plan
* Outline
* Write
* Edit
* Release
This is a powerful (see what I did there ?) method that I like a lot. But I needed to create a workflow that matched this methodology. And frankly, editing my blog entries in BLOGSY (an iPad application) is cumbersome. Worse, the native WYSIWYG editor Blogger publishes online is fraught with various peril. For whatever reason, I cannot make the final copy look like the editor copy, which is VERY frustrating !

A New Tool

I have coughed up $24 USD & purchased a copy of Scrivener 2. It is the “Writers Choice” according to many of the online reviews. Some of the features I really like are:
1. A binder/page concept similar to Microsoft OneNote
2. The cork board allows me to write synopses of the sections or pages of write
ng, allowing me to write the ideas down & play with the organization later
3. The ability to publish HTML Markup - to post directly into Blogger
4. The ability to publish in ePub format for the next Great Canadian Novel (no, not really)
5. The ability to publish in Kindle format - why limit my market ?

Please bear with me as I learn the nuances of this tool and the power it gives me to just write.

Tuesday, September 22, 2015

Framework Flexibility - From CLAP to CLIP



As many readers may have noticed, there are some fairly significant gaps in the CLAP Framework. In the perfect world, it is really intended as a guide for how to execute Business Goals into practical IT Projects. But there  may be some flexibility in the simplicity of that framework.

A colleague pointed out that maybe the missing component wasn't necessarily the Application, as those needs are covered off in the Functional Requirements. He suggested that instead the framework should consider the Information Architecture itself.

For the purposes of this framework, lets consider that data is the raw input of a process, and information is the output. Information needs to have a defined structure and each element has a distinct meaning. Consider the difference between distance an speed. Distance is a unit of measure, denoting how far something is. Speed is the distance divided by the time taken to travel the distance. Speed is the result of a process. applied to the data.

In the CLIP Framework, the notion of Information Architecture is added. It describes the processed data, its flow from system to system, and its attributes. For example, is information synchronous (live from a source) or asynchronous (delivered by a different process). Further, we see where the Requirements and Standards get applied, and how Security Requirements need to be considered through every step of the process.

Finally, we see the Validation step happens just before the solution is transitioned to Operations. It asks the question "Did the final physical solution deliver what was designed ?". Arguably, there is another validation step, which asks the question "Does the Solution Architecture satisfy all of the requirements ?".

The validation is key, as this largely waterfall process needs to map the entire solution all the way back to the original Business Activities, described in the functional & non-functional requirements. As you can see, the framework is flexible enough to be applied to many IT Goals, and not so rigid as to be unmanageable.

Friday, September 18, 2015

Failure Mode and Effects Analysis

It is said that a chain is only as strong as its weakest link. In IT terms, we refer to a Single Point of Failure (SPOF) as being one of a systems weaknesses. Technology Architects spend a significant amount of time attempting to identify and mitigate these SPOFs. But what if there is a large number of points of failure ? How does an Enterprise IT organization prioritize which SPOFs to mitigate first ?

Enter Failure Mode and Effects Analysis. The idea is to first identify the Points of Failure, then identify:
  • Severity of the Failure - How would the failure effect the business of the Enterprise ?
    • a higher number here reflects greater risk should a failure occur
  • Occurrence of the Failure - how often could the failure happen ?
    • a high number here represents greater likelihood of the failure occuring 
  • Detection of the Failure - how would we know if the failure occurred ?
    • a high number here represents a less-detectable failure, and therefor a greater risk
These three items are evaluated on a scale of one to ten, with ten being the highest. When multiplied together, these three factors comprise a Risk Priority Number (RPN). If effect, the higher the RPN, higher the risk of Failure. From there, we can create a prioritized list of tasks which will mitigate the known risks of a system.

Illustration of an FMEA Example
Generally speaking, as the IT organizations works through the top few items on the list (from higher priority to lower), the overall risk to the system decreases dramatically, along the lines of the 80/20 rule. FMEA is normally applied to manufacturing or development processes, but can easily be adapted to suit IT systems as well.

Monday, September 14, 2015

RASCI for Project Decisions

When Enterprises embark on large projects, they build out a Project Team. This team consists of Stakeholders, Project Manager(s), EA, TA, SA, Implementation resources and Operations. The challenge happens when Project Decisions need to be made - who makes the call ?

Enter the RASCI. It is a matrix of the key roles, and who should be:
  • Responsible
  • Accountable
  • Supportive
  • Consulted
  • Informed
Assuming we use the RASCI members as defined in the PMLC, we would end up with a table like this:


Stakeholders
Project Manager
Business Analyst
Enterprise Architect
Solutions Architect
Technical Architect
CoE
Operations
Budget 
R
A
S
C
I



Timeline
R
A
S
S
S
I


RACI
I
R
I
I
I
I
I

Project Charter
A
R
S
S
C
I
I
I
Project Plan
A
R
S
S
S
S
C
I
Functional Requirements
I
I
R
A
A
A
C
I
Non-Fuctional Requirements
I
I
R
A
A
A
C
I
Conceptual Acrhitecture

I
S
R
A
A
C
I
Logical Architecture


I
S
R
A
C
I
Physical Architecture



I
S
R
A
I
Detailed Build Plans




I
S
R
A
Runbooks & SOP





I
A
R
Now that the "theory" is out of the way, let's take a look at a practical example:

The project is building out network infrastructure to support a new group being added to the Enterprise. So possible questions which might arise are:
  1. A Stakeholder doesn't want to change the Firewall Rules. Who is authoritative ?
    • The Technical Architect "owns" the Physical Architecture, including decisions about their use & configuration
  2. Who should be informed of a change in Project Scope ?
    • Since the Scope is part of the Project Charter, the Project Manager is responsible to inform every role on the RASCI with a corresponding letter in the matrix. So everybody.
  3. What is the role of the BA in the Detailed Build Plans ?
    • None - there is no corresponding letter in the matrix
As you can see, the roles & responsibilities are clearly defined, so that everybody on the project can determine who "owns" the decision. That's not to say that the project Stakeholders won't over-rule some decisions, but in general they don't.

Sunday, September 13, 2015

Pulling It All Together - CLAP + PMLC

In a series of previous posts, we took a look at various frameworks for bringing valuable IT Services to an Enterprise. Starting with the CLAP Framework, we saw took a look at a basic way of starting with Business Activities and building the necessary Conceptual, Logical & Physical Infrastructures to deliver valuable IT Services.

Next, we saw how to use a tool like the ERRC Canvas to achieve the Enterprise Strategy, by mapping the strategy to goals & objectives. The key function of the canvas is to separate the objectives into four areas: Eliminate, Reduce, Raise & Create. 

Once divided, metric for success are applied, and plans can be created. These plans can be prioritized and dependencies mapped. Getting from Business Strategy to IT Execution is no easy feat - so this post describes a method of execution.

Of course, understanding goals as they relate to Strategy is also very important. We took a look at how to create SMART Goals.
Illustration: CLAP and PMLC Together on One Page

We are now in a position to pull all of those concepts into one diagram, shown above. I have attempted to layer the various concepts together, and embellished them with some extra information, such as when a project can expect to need to engage various roles within the RACI.

Finally, we see three vertical lines which describe a form of IT Governance. In a future post, I will describe the make-up of the ARB/TRB and explain the importance of the Architectural Validation Plan.

Saturday, September 12, 2015

Business Service Model for IT


IT exists for one purpose: to provide the tools necessary to enable Business Activities. Like we saw in the CLAP Framework, Business Capabilities are made up of a number of discrete Business Activities. But it is in the delivery of the Business Capabilties as a Service that IT provides value to the Enterprise.

The model for a Business Service is clearly defined by the ITIL framework. In short, it is composed of People, Process and Technology. Certainly, the framework also describes the meta-data, which includes the Service Owner, the Service Consumer and the Service Provider.

Once the functional and non-functional requirements of the Business Capabilities are mapped out, the application and its underlying infrastructure become straightforward to build out. As I have posted about previously, the Project Management Life Cycle can be easily applied to deliver these capabilities to the Enterprise. Of course, more than one capability can be provided by a single service. Often many services get grouped together to form a broader service.

There is also another relationship hidden in a simple model like this one. The degree to which a process is repeatable (and can therefore be automated) has implications to the People part of the equation. The more highly repeatable and automated a process is, the lower the required skill-set for the labour, which should in turn lower the cost of the Service to the Enterprise.


Mapping Projects Back to Strategies

In order to be successful, IT needs to closely align its services to the Business's Strategy. This requires that the Enterprise Architecture group have a clear idea what the business strategies are! While I am actively studying the TOGAF architectural framework, I recognize that many Enterprise customers are unwilling to completely "buy in" to a specific framework. So this series of BLOG entries look to fill the void.
Illustration: Mind Map of Strategy to Goals to Projects
In a previous post, we described how the ERRC Canvas can help support the Strategy, by helping achieve the Goals. As we move from left to right through the above illustration, multiple Goals might be required to realize a Strategy. The ERRC canvas is a great tool for identifying activities, which broadly fall into the categories of Eliminate, Reduce, Raise and Create.

Building on that theme, and assuming we want SMART Goals (Specific, Measurable, Attainable, Relevant, and Time-based), we can identify the Metrics, which are the measurements of success. Assuming we can cleanly map between the ERRC Canvas (representing the Goals) and the SMART Metrics for those avtivities, we can derive a Plan or Project to implement those Goals.

On the far right, we see the conventional wisdom that Project Plans contain elements of Budget, Timeline & Resources. The Project Plan is a culmination of the Strategy (Why), the Goals (What), the Metrics (How Much) and the Plan (Who). The Project Charter can define the When, as well as any required sequencing.

If you're curious about how projects evolve from a Project Charter through to successful delivery of the objectives & goals, take a look at my previous entry, entitled Project Management Life Cycle. I cannot stress enough the importance of proper planning ! When in doubt, think of the axiom "measure twice, cut once".


Friday, September 11, 2015

Project Management Life Cycle

Illustration: Project Management Life Cycle
We all know that IT projects don't just happen. They usually start with an idea that gets socialized internally, until somebody decides it is interesting enough to write a business case, justifying why the idea might be good for the Enterprise. The Project Management Life Cycle (PMLC) walks the reader, from left to right, through all the components of a project. It assumes the project has been instantiated and has executive sponsorship. Other activities prior to the project itself include the Opportunity Assessment, a Cost/Benefit Analysis, and likely ROI and TCO studies.

The PMLC illustration above is designed to show three things at each stage: the roles that contribute to the project, their responsibility and their deliverable. Starting on the left, the Stakeholders typically sit on a Steering committee, and provide budgetary approvals for the project.

The project is run by the Project Manager, who is responsible for budget, timeline & resources. They usually draft the Project Charter, which defines the objectives and scope of the project. They are responsible for reporting back to, and taking direction from the steering committee. It is their responsibility to deliver the project to successful completion.

The Business Analyst does a lot of leg-work, dealing with the stakeholders to understand requirements, both functional and non-functional. They will take raw data they have collected, and produce information which is valuable to the project, and consumable by all members of the project team.

Now that you have a general idea of the flow, you can interpret the rest of the illustration for yourself. Other information that will later become key is called the RACI. It is an artifact that names all of the roles (as seen in the illustration), and determines who is Responsible, who is Accountable, who is Consulted and who is Informed when a project decision has to be made.

This is a general look at how IT projects move through their life cycle. In a future post, I'll overlay the CLAP Framework, to pull together all of the concepts into a single view.


Thursday, September 10, 2015

From Business Strategy to IT Execution

Illustration - Strategy to Execution


As we have seen in my previous posts, I am always keen to tie IT Activities to Business Strategy. Whether it is in utilizing the CLAP Framework to map Business Activities to physical IT infrastructure, or in achieving your goals using the ERRC Canvas, the end-goal is always to drive Business Value.

In this basic diagram, the basic questions of Who, What, Why and How are directly addressed, leaving the When up to the Executive sponsors to decide in the Project Charter. The centrepiece is the ERRC Canvas, which helps define the Objectives (the What) & IT Activities that would meet the Goal. As with all SMART Goals, the element of Metrics help define the How.

Finally, the Plan is actually the domain of the Project Management Office. It would include the Project Charter and supporting artifacts, including dependency maps and budget estimates. Conventional Wisdom is that the Project Manager is responsible for Time, Resources and Budget.

Wednesday, September 9, 2015

SMART Goals


When setting Goals, there is a great model to follow that will help in achieving them !

 

 

S - needs to have enough detail.

M - needs to have actual metrics by which to measure success

A - needs to be something that is possible to achieve

R - if the goal doesn't have any purpose, what's the point ?

T - needs to have a due-date to work towards

 

 

A good example of a SMART Goal would be: "I am 240 lbs today. I want to get my weight under 200 lbs by Christmas."

 

 

How to Achieve Your Goals - the ERRC Canvas

Illustration - the ERRC Canvas

 

As you might already know, I love canvases. They provide a simple means of communicating ideas. The image at left describes a very basic canvas to convey a very powerful idea: What do I have to do to achieve a Goal ?

In another BLOG entry, I will discuss Goals - specifically what makes good goals vs what makes difficult goals. If you want to do some homework, in a future BLOG I will discuss SMART Goals and why they are effective.

In general, and especially true in Business and IT, Goals can be achieved by placing tasks into one of four broad categories - Eliminate, Reduce, Raise, Create. Let's take a closer look at these simple yet powerful concepts. But remember, Goals are only important as a means of realizing a Strategy. Often, strategies are realized through the successful completion of a number of goals. Equally, there may be more than one Strategy being realized !

Eliminate - this is a pretty straightforward concept. Ask yourself the question "What do I need to remove from the environment to achieve the Goal ?". It could be simple, like lets eliminate duplicate services. If two systems can service the same Business Activity, then one of them is redundant. Ergo, one of them could be eliminated & help achieve the Goal.

Reduce - this is also a simple concept. If the Goal is to "decrease server sprawl", then the use of a consolidation solution (think of server virtualization) would reduce the number of physical compute hosts required to service the the Business Activities. Implementing server virtualization reduces the number of server's required to host the workloads, realizing the Goal.

Raise - this often goes hand-in-hand with Reduce in that often reducing one element will raise another. In the above example, we looked at implementing server-virtualization as a means of reducing server sprawl. It also has the opposite effect of raising the rate of physical server utilization !

Create - This is the tricky one. What do I have to ADD to the environment to achieve the goal ? Fortunately, the context of these canvases is around achieving IT Goals, in alignment with Business Strategy. So you might create a new process for deploying the virtualized servers into the compute environment, perhaps to enable a new Business Activity.

Now, each one of these sections of the canvas can contribute to the overall goal, meaning you might have many entries in each quadrant, all in alignment to the goal. This helps develop a list of activities which might need prioritization & dependency-mapping in order to complete. But at least now you have a defined method of achieving the established goal !

 

Tuesday, September 8, 2015

CLAP Framework for IT

Many Enterprises struggle with IT frameworks. These frameworks are meant to help turn Business strategy into executable plans. Some frameworks, such as TOGAF or Zachmann will help an Enterprise IT group understand WHAT it needs to do to achieve its goals. Other frameworks, like COBIT or ITIL will further explain HOW to achieve those goals. When an Enterprise does not follow any of the established frameworks, they will often try to devise their own. The diagram above illustrates one such framework - the "CLP" framework (the "A" was added later, after missing information was identified).



Conceptual - this stage of the framework takes the Business Activities into account. Each discrete activity can be mapped out as a few elements in a process, describing a single activity. An example might be "calculate price".

Logical - this stage maps the discrete activities required. To calculate price, we need some information from a number of sources, such as the gross price, a taxation rate, a discount and a profit margin. Further, architectural governance (standards) are applied, such as use of a Linux operating system, or mandating a particular security framework. Finally, Non-Functional Requirements (NFRs) are described, such as how quickly a system must respond or how many transactions per minute the system must satisfy.

Application - this stage is where we begin to apply some business logic about what to do with the information. It maps out what the information should be expected to look like, such as expressing numbers in Currency notation, with two decimal points of precision. It will also describe any user interfaces and other means of accessing information. It specifically maps business activities to Functional Requirements.

Physical - this final stage helps identify all of systems that are required. Items such as CPU utilization and storage requirements are calculated to determine how best to implement the system into a computing environment. It describes systems interactions in terms of protocols and transports.

This is not an exhaustive look at frameworks, and many Enterprise Architects will keenly assess missing elements from this simplistic framework. But, executed properly, a framework such as this one could be sufficient for an Enterprise to begin taking advantage of IT to realize their business strategy.