Hi all -

One of the interesting tasks on my plate this year is to devise a document that 
reflects a strategy around "Buy, Borrow, or Build" as relates to technology 
approaches here at the University of Arizona Libraries. Below is the text of 
this "reference architecture", and I am particularly interested to hear 
comments from the community regarding this document. 

Some context: We are working hard here at the UA Libraries to concentrate our 
finite development resources are true gap areas - i.e. we want to not recreate 
the wheel, and due to the current budget environment, we truly need to be 
efficient in how we deploy our staff who perform development work. At the same 
time, we want to move forward in truly innovative areas. The approach in this 
document is to not get caught up on the terms "Buy", "Borrow", and "Build", but 
to understand the reasoning behind looking at these approaches and describing 
how the group in our library will think about technology decisions with the 3 
B's being an important consideration.


Here's the reference architecture:

=======================================

REFERENCE ARCHITECTURE DOCUMENT
Buy, Borrow, Build (B3)
Last Revision: 5/06/2010

Summary

This document describes the University of Arizona Libraries’ Technology 
Architecture Council’s approach when considering technology solutions that look 
to Buy, Borrow, or Build a technology solution.

Context

The UAL must heavily weigh cost and sustainability in regards to its overall 
technology strategy.  Resources devoted to technology and technology support 
are limited and must be allocated effectively and efficiently; the more 
resource we allocate to one activity directly impacts the resource we have 
available for other prioritized activities. It should also be noted that 
certain types of resources, such as staff resources, have certain limitations 
that also need be taken into account. The UAL’s Technology Architecture Council 
(TAC) must take into account all cost factors, regardless of type of cost (such 
as staff time or money) in order for TAC to devise a strategy that is pragmatic 
for the UAL to implement.

Reference Architecture - Buy, Borrow, or Build

There are three approaches generally considered with regard to technology 
solutions: Whether to Buy a solution, to take a current existing solution and 
enhance it with additional functions and features (this is called ‘Borrow’), or 
to Build a solution from scratch.

A Buy approach is when an organization purchases, licenses, or otherwise 
acquires a ready-made solution that requires no additional development of new 
features or functions in order for the solution to be deployed to meet the 
needs of the UAL. A Buy still may require configuration and integration with 
other systems (such as single sign-on). (It should be noted that Open Source 
solutions can be considered Buys in regards to approach, if they do not require 
any additional features or functions beyond what they provide out-of-the-box)

A Borrow approach is when an organization purchases, licenses, or otherwise 
acquires a ready-made solution, but that solution requires some amount of 
additional development to add features or functions that are essential to meet 
the needs of the service/product that the solution is intended to support. 

A Build approach is when an organization decides to create (often develop) the 
needed technology solution. 

Regardless of approach, the UAL needs to understand the Total Cost of Ownership 
(TCO) when considering technology solutions. For the approaches listed above, 
the following are major factors in examining the TCO:


Buy:

        • Initial purchase / license / set-up cost (including configuration and 
integration)
        • Ongoing support / licensing cost
        • Cost of regular upgrades
        • Cost of dedicated hardware (if appropriate)
        • Ongoing technical staff support costs (i.e. application or system 
administration)
        • Exit costs (i.e. estimate of time / cost to migrate from this 
solution when needed)

Borrow:

        • Initial purchase / license / set-up cost (including configuration and 
integration)
        • Initial development costs
        • Ongoing development costs
        • Ongoing support / licensing cost
        • Cost of regular upgrades, including cost to applying customizations 
to newer versions of software
        • Cost of dedicated hardware (if appropriate)
        • Ongoing technical staff support costs (i.e. application or system 
administration, bug-fixes for custom development, etc.)
        • Exit costs (i.e. estimate of time / cost to migrate from this 
solution when needed)

Build:

        • Cost of initial development activities (i.e. cost to develop to 1st 
release; includes time for related activities, such as documentation of code)
        • Cost of ongoing development activities (for new features or functions 
beyond 1st release)
        • Cost of dedicated hardware or hosted server infrastructure
        • Ongoing technical staff support costs (things like application or 
system administration, bug-fixes, application security patches, etc.)
        • Cost of developing user-support documentation
        • Exit costs (i.e. estimate of time / cost to migrate from this 
solution when needed)

In general, a Buy approach is easiest to determine TCO, while a Build approach 
is the most difficult. Generally, there are more unknowns with a Build than 
there are with a Buy. The more unknowns, the greater risk of inaccurate cost 
estimates.


When a proposal is reviewed by TAC, TAC will consider what solutions are 
available through each of the above approaches, and compare those options, 
along with their associated costs, in order to decide which approach and 
solution will best meet the needs of the UAL and the   service(s) requesting 
technology support. 

As part of this process, TAC will also review the service’s functional 
requirements, especially as relate to critical vs. desired elements; while 
ideally all requirements would be met by a particular technology solution, in 
practice functional requirements should reflect “must have” vs. “desired”, and 
the TAC may need to follow-up with stakeholders to better understand the 
impacts on a particular service if certain requirements are not able to be met 
through a particular approach or solution.

========================================


-- jaf

------------------------------------------------------------
Jeremy Frumkin
Assistant Dean / Chief Technology Strategist
University of Arizona Libraries

+1 520.626.7296
[email protected]
------------------------------------------------------------
"Not everything that can be counted counts, and not everything that counts can 
be counted."—Albert Einstein

Reply via email to