Industrialize IT to save costs, increase speed-to-market and improve quality
Implementing and maintaining IT solutions is expensive - mainly due to the cost
of scarce, highly skilled IT specialists. While developments in the global economy
increase the need for cost reduction, actual costs are increasing due to the tremendous
growth in depth and breadth of the technology foundation that underpins modern IT
solutions. Competent IT specialists, who can effectively leverage the power offered
by Microsoft server products, are becoming an ever more scarce and expensive resource.
This not only drives up the costs of IT solutions, but also becomes a bottleneck
that limits the speed-to-market of new IT solutions.
Looking more closely at how IT specialists actually build and maintain solutions,
it quickly becomes apparent that today an essentially pre-industrial approach is
commonplace in the IT industry. Even though IT solutions are based on ever more
powerful standard server products - such as the .NET framework, SQL Server, BizTalk
and SharePoint - configuring, integrating and customizing those server products
into complete IT solutions is still mostly done in a one-off, manual approach. Quality
also suffers because many of these manual tasks are error-prone and tedious.
Like industry thought leaders such as Jack Greenfield, we believe that it is necessary
to industrialize IT in order to overcome the fundamental limitations inherent to
the ‘craftsmanship’ approach to IT. We are convinced that this is the future of
the IT industry, and that it will bring many good things to both customers and IT
professionals. As a Systems Integrator specialized in the latest Microsoft technologies,
we are transforming ourselves from craftsmanship to industrialized specialist.
Standardize and automate application lifecycle management
So what does industrializing ALM mean in the real world? First and foremost,
two things must be realized: standardization and automation. Microsoft provides
powerful tools for ALM, such as Visual Studio Team System. However, by definition
these tools are general purpose. But where Microsoft has to stop, we start off.
By applying a standardized implementation structure for all types of IT solutions
(MAST - Microsoft .NET Architecture Style), we achieve better maintainability of
IT solutions and better flexibility of developer resource management. In addition
to that, by applying the principle of convention over configuration, the MAST standard
greatly increases the attainable level of automation in the Factory. This avoids
much (arbitrary) configuration work for users and a lot of complexity in the Factory
Using this approach, we provide comprehensive automation for common time-consuming
and error-prone tasks in application lifecycle management, such as installing development
machines and deploying solutions across multiple machines in DTAP environments.
This results in a significant increase in productivity and quality in the ALM process.
Benefits when outsourcing or co-sourcing
For local development and maintenance the cost reduction achieved by standardization
combined with automation is most apparent, due to the high cost of local labor.
When outsourcing or co-sourcing (part of) these activities to locations with less
expensive labor this still saves money (but less). However, when outsourcing or
co-sourcing these activities another benefit becomes more prominent: grip. The standard
structure for design and implementation allows for a precise specification with
little effort, efficient communication, and a result that is predictable and consistent
with other Factory built IT solutions.
In addition to that, the community driven guidance in context provided by integrating
the Factory Wiki with the Factory Guide in Visual Studio allows for effective knowledge
sharing within virtual teams – even ad-hoc or on demand. This is complemented very
effectively with a Microsoft-based communication infrastructure to support the new
world of work.
Build any type of solution
We observed a large overlap across different solution types with respect to what
Microsoft server products are used and what best practices are applied. In addition
to that, different solution types often coexist on a single shared infrastructure.
So instead of building a separate factory for each type of IT solution, we decided
to define a single Factory that can build:
"Solutions composed from a combination of custom .NET code and zero
or more Microsoft server products".
The phrase "zero or more" indicates that we target solutions ranging from the
'traditional' fully custom solutions to solutions based on standard server products.
The latter type of solutions has become predominant for Macaw’s clients; as much
as possible of the functionality is bought with standard server products. The remaining
functionality is then realized by customizing and extending the standard products:
Ensuring sustained, increasing value
From the outset durability was a design goal for our entire factory approach.
The people and processes to continually improve the Factory are in-place. We are
integrating the latest Microsoft technologies as they are applied and we capture
best practices as we learn them, across all solution centers.
The Factory relieves IT specialists from the same tedious, error-prone, repetitive
tasks that they encounter on many projects. Instead, they are able to focus on what
is specific and innovative for the current project and customer, while the Factory
provides them with up-to-date, combined knowledge and experience of their best colleagues
at their fingertips.
The value of the Factory is the value of Macaw’s best innovators, who are leaders
in their respective fields, realizing Tomorrow’s IT, Today. This approach
brings every team closer to the level of the company’s very best combined; a dream
Customers who hire Macaw employees benefit from consistent high levels of productivity
and expertise that - across the board - are simply unattainable for traditional
systems integrators who still use a manual, one-off development approach. Customers
who license the Factory for use by non-Macaw employees boost their developers with
Macaw’s packaged expertise.
Recent developments in Microsoft IT have inspired us to further expand our vision.
Specifically Microsoft Azure with it's new ALM features such as publishing from
GIT or TFS source control, Team Foundation Service, and Azure Virtual Machines, as well
as the advent of the NuGet ecosystem and the integration of the NuGet Package Manager
in Visual Studio, offer great potential for future Factory versions.
We see many opportunities to raise the abstraction level at which IT specialists can
work, to target cloud solutions and offer factories in the cloud, and to target more
team roles and application lifecycle management (ALM) aspects.