Sunday, November 29, 2015

Profiling for IT Architects

IT Architecture is a very broad field which encompasses a wide range of skills, and no assignment is ever exactly the same. It is challenging to know exactly which type of IT Architecture skills are needed for any given assignment or role, and difficult to determine if an individual possesses the right mix of IT Architecture skills. This is an issue for organizations who employ their own architects or purchase architecture services. These organizations will want to be sure that the architects they select for their assignments are the best fit. and at the same time they need to be able to describe the skills a potential architect needs to successfully carry out the assignment.

From an individual IT Architect perspective it is also important to be able to describe experience and skills in order to ensure that the individual's capabilities meet the requirements of potential assignments. In this respect measuring skills is an important factor in career development so that the individual can understand which skills they need to strengthen in line with the type of architect they want to be.


Certification and Profiling

A popular method which is used in an attempt to solve this issue is to provide certification programs as a proof of knowledge and experience. There are many certification programs which are relevant to the field of IT Architecture and they cover a wide range of skills. Some certifications may be directed towards specific technologies, and some perhaps directed to towards softer skills such as leadership and management. Many certifications are heavily based on theoretical knowledge and can be gained after a short period of training. While theoretical knowledge based certification gives a certain level of assurance in skills, it perhaps lacks the assurance that comes from many years working with IT architecture assignments. There are certification programs which not only require the candidate to have the appropriate theoretical knowledge but also to have practical experience in the field. This gives a stronger assurance of skills but often requires a substantial amount of effort from the candidate and can take a substantial number of years to gain the experience required to even enter the certification program.

A complimentary method which can be used for assessment and assurance of skills is profiling. While certification poses the question ”Do you have the appropriate level of skills to gain certification?”, profiling asks ”What level of skills does the individual have?” or ”What kind of skills to we need for the assignment/role?”.  Certification is a more definitive method, the individual is either certified or not certified at the end of the process. Profiling is less definitive as it perhaps addresses a broader set of skills. An exact fit between the desired skill set (Target Profile) and available skill set (Candidate Profile) may be difficult to achieve. Rather than precise or definitive match, profiling looks for a "best fit".

Profiling for IT Architects (PIA)

The following is a early draft of PIA which can be used for profiling individuals, roles or assignments within IT Architecture. This should be regarded as a work in progress but PIA provides a way to easily visualize and compare profiles. The method uses the widely accepted IASA ITABok as a source for IT Architect skills descriptions. In the ITABok skills descriptions are formed into 5 Pillars under which there are a series of Architecture Capabilities. It is these Architecture Capabilities which form the foundation for the IT Architect's skill set. For more information on these skills and their descriptions please refer to the IASAITABok.

PIA uses a Skills Level Matrix which describes skill levels graded from 0-10. This is used to determine the appropriate skill level for each Architecture Capability. Each Architecture Capability is graded in terms of Theoretical Knowledge and Practical Experience. The Skills Level Matrix for both Theoretical Knowledge and Practical Experience is shown below.



To create a profile the PIA Skill Sheet is used. Each architecture capability is filled in with the appropriate skill level using the Skills Level Matrix as a guide. After filling in the PIA Skill Sheet a diagram is automatically generate which shows the profile of the individual according to the 5 IASA Pillars. This diagram can be used to visualize and compare profiles. An example diagram is shown below.


Applying PIA

We can consider two perspectives where the use of profiling can be advantageous, the Sponsor perspective and the Individual perspective. The Sponsor and the Individual have different interests in using profiling and want to achieve different aims.

The Sponsor

The Sponsor is primarily interested in either employing or allocating IT Architects to an assignment or role. Since IT Architecture is a broad field it can be difficult to know what architecture skills are needed for a particular assignment/role and to know if a given individual has an appropriate skill set. 



Creating a Target Profile for an assignment/role can help to communicate the required skill set. Having individuals create Candidate Profiles will allow the Sponsor to compare the Candidate Profiles with the Target Profile and find a ”best fit”. The following steps can be used as a Sponsor.


The Individual

An individual IT Architect needs to be aware of which skill sets need further development and which skills sets are strong. Being aware of this allows the individual to plan their career development as an IT Architect and focus effort on strengthening specific skills. 


Regular profiling can help with career development and even allow the individual to clearly communicate their skills to potential Sponsors for assignments. This can be an important factor where some certification programs require a specific level of practical experience as an entry requirement. It can sometimes take years to gain experience and during that time it can be difficult to express skill levels and gain assurance. Profiling can help the individual in knowing when they have the right level of skills to enter one of the more demanding certification programs. The following steps can be used as an Individual.



Summary

Using profiling to assess IT Architecture skills can be used in many ways. It helps provide assurance of an individual's skills and can be used to facilitate the career development of IT Architects. It can also be used to assess which IT Architecture Skills are required for an assignment or role. 
The PIA method provides an early draft of a profile method using IT Architecture skills definitions provided by IASA. This provides a practical method for profiling which can be used by individuals and organizations alike.


Monday, September 28, 2015

Looks like we need an IT Architect! Right?

Imagine a company has been contracted to build a house. The rough requirements of what kind of house is be built are layed out, 5 rooms on two floors with a kitchen and a bathroom. The contractors turn up at the building site and start building, they quickly have the first floor complete with all the walls in place and are soon starting on the second floor. 
The house is finished pretty quickly on time and even on budget and everyone is impressed. However on closer inspection it is noticed that the kitchen is upstairs which is impractical and there is no running water There are also no electrical sockets in any of the walls. Contractor is contacted and asked to make modifications, but the contractor explains that these modifications will cost a rather substantial amount of money as the house is difficult to modify. Since the cost is large another contractor is contacted to see if they can help. However when the other contractor inspects the building they don’t understand how the house has been built as it does not adhere to any known building standards. They make an estimation which is even more costly than the original contractor and even recommend demolishing the house and starting over.

This would clearly be an unacceptable situation when building houses but in terms of IT this scenario is not uncommon. IT systems and IT ecosystems are hugely complex and growing in complexity. By comparison our IT landscapes are more like cities than houses and therefore the importance of good design standards and architectures is higher than ever. 

Most businesses depend on IT as a critical part of thier business infrastructure and operational failure can result in a major loss of revenue. At the same time expectations which are placed on IT continue to grow putting more pressure on IT organizations to make sure that applications and systems don’t just work, but they work and are sustainable. Sustainability is a very important factor, it means that the business can gain the optimum value from investments over a long period of time. Alternatively, poor sustainability leads to perpetual workarounds, re-organizations, re-writes or re-designs which are costly and ultimately affect the competitiveness of the business.

While there is no perfect solution we can reduce business risk and increase sustainability by creating good architectures upon which we can build our strategies, business processes, applications and infrastructure. This is where we turn to the IT Architect for help.   

The IT Architect

The IT Architect is charged with a leading role in developing and maintaining an architecture with the aim of ensuring it is sustainable both in terms of business and technology. Aligning the business and technology aspects of an organisation is important as it will allow the organisation not only to operate effectively but also to quickly adapt to change. 

To address both business and technology IT Architects work in two domains which can be considered separate but at the same time have a strong relation, these domains are the Enterprise and the Solution.The Enterprise focuses on how the business works in terms of strategy, processes, people and applications at a abstract level. The Solution focuses on solving a specific concern within the business and providing technology implementations to address that concern. The IT Architect may work across both these domains or have a focus on one or the other, either way the IT Architect needs to be equipped with a broad range of skills in order to successfully create and maintain good architectures.    

Choosing the right IT Architect

IT Architecture is a broad field and each new initiative comes with its own unique challenges. Each initiative can have many variables, for example, internal and external requirements, business constraints, technical limitations, budget restrictions, deadlines and risks. This makes choosing the right architect difficult but there is some help. As a starting point there are a number of IT architect roles which are commonly use. The following roles which are defined by IASA are a good guideline and widely accepted. A short description of the roles are given below but the full description can be found in "A Study of Architect Roles by IASA Sweden":
  • Enterprise Architect - supports the business in strategy, planning and governing the IT landscape of the enterprise.   
  • Business Architect - designs and maintains the business processes and organization, defines many of the requirements for solutions
  • Solution Architect - designs IT solutions based on the specific requirements of a given business scenario
  • Software Architect - designs the structure and behavior of a software system

The IT Architect can fill a number of these roles and often to different degrees. For example, a good Solution Architect may also be a competent Software Architect.

However, while these roles give a good indicator for the type of IT Architect they perhaps do not give the adequate detail required for IT Architects to know what kind of skill sets to develop or even for a business to know what mix of IT Architecture skills they require within thier organisation.

The IT Architect Skill Set

Each IT Architecture  role requires different degrees of knowledge in a broad range of skills. In addition to this the IT Architecture itself is also likely to place importance on varying skills. This is where it would be very useful to have a comprehensive definition of the skills required by the IT Architect and fortunately IASA provide this in the form of the ITABok  which is used as a basis for the IASA IT Architect certification program. These definitions provide a solid base for IT Architect to evaluate and develop their skills as well as for businesses to understand what is required from an IT Architect. IASA define the skills in five pillars representing the core architecture skills.  These are described fully in the ITABok but a short description is given below:
  • Business Technology Strategy - skills for supporting the business strategy and management
  • IT Environment - skills for governing and maintaining the environment around solutions
  • Design Skills - skills for modeling and analyzing architectures
  • Human Dynamics - leading and managing people, communication skills
  • Quality Attributes -  skills in cross-cutting aspects of the architecture which are often non-functional, for example security or performance

Each of these pillars includes a sub-set of skills which are called capabilities. These capabilities define in further detail the skills an IT Architect should possess.

Summary

The world of IT is more widespread, more complex, and more critical to business than ever. The growth of IT continues to accelerate but at the same time sustainability is important. This is why the role of the IT Architect is a key factor in business success.

The IT Architect is a well known role description in the IT business but even although the role has been used for many years we still have difficult in defining what the IT Architect is in terms of responsibilities and skills.  With this in mind we need a clear definition of the IT Architect to help those who wish to become architects understand the skills that are required. At the same time we also need a definition for business so that the role of the IT Architect is understood and can be used effectively. The roles and skills defined by IASA give a good foundation for understanding the role of the IT Architect. This supports the development of skills needed to build good sustainable IT architectures.

The sustainability of IT is already a key factor for business success. The IT Architect has a key role in ensuring that success.