This chapter of the ITAM Handbook covers how enterprise software is bought: the terms that typically appear in software contracts, example agreements, maintenance and support costs, and procurement models.
Software Contracts
Software contracts can contain various terms and conditions, depending on the specific software and vendor involved. However, there are some common terms that are often included in these contracts. Here are a few examples:
Geographical limitations
Some software vendors may restrict the use of their products to certain regions or countries. This can be due to legal or regulatory reasons or simply because the vendor does not have a presence in certain areas. These limitations may be spelled out in the contract. They may require the customer to obtain additional permissions or licenses if they want to use the software outside of the allowed regions.
Exceptions
Some contracts may include exceptions or carve-outs for specific use cases or scenarios. For example, a contract might allow the customer to use the software for testing and development purposes but prohibit production use without an additional license. Or a contract might allow the customer to run the software on a limited number of virtual machines but require additional licenses for additional VMs.
Embedded systems
Many software vendors have specific terms and conditions for using their products in embedded systems. These systems are typically built into products like consumer electronics or industrial equipment. The vendor may require special licenses or fees for using their software in these systems and may have restrictions on how the software can be used or distributed.
Maintenance and support
Many software contracts include terms related to maintenance and support for the product. This can include the level of support the vendor will provide, the response times for support requests, and the availability of software updates and patches. Some contracts may also require the customer to pay additional maintenance and support services fees.
Termination and renewal
Contracts will typically include terms related to how the contract can be terminated or renewed. This can consist of the notice period required for termination or renewal, the conditions under which the agreement can be terminated or renewed, and any fees or penalties associated with termination or renewal.
Licensing terms
One of the most important aspects of a software contract is the licensing terms. This can include the number of licenses purchased, the license type (perpetual or subscription), the duration of the license (e.g., annual, multi-year), and any restrictions on how the software can be used or deployed.
Examples of specific vendor terms and conditions include Oracle’s support contracts, which can consist of terms related to the number of users, processors, and servers covered by the contract and restrictions on the use of the software in virtual environments. Microsoft’s Enterprise Agreements include terms related to the number of licenses purchased, the term of the agreement, and the availability of software updates and support. Other vendors may have specific terms and conditions related to licensing, support, and other software procurement and use aspects.
Examples of specific licensing terms
Some examples of specific software contracts and their particularities, as described in the handbook (some programs, such as Microsoft Open License, have since been retired or replaced):
| Agreement | Description |
|---|---|
| Microsoft Open License | This is a volume licensing agreement for small to mid-sized organisations that want to purchase licenses for five or more desktop PCs or servers. The Open License offers a range of software products at a discounted price, and customers can choose between two types of pricing models: company-wide or individual. |
| Oracle Perpetual Unlimited License Agreement (PULA) | This agreement allows customers to purchase unlimited licenses for a specific product or group of products without additional fees for additional users or usage. The PULA is often used by organisations that have a high number of users or are growing rapidly and want to avoid the cost of purchasing additional licenses over time. |
| Adobe Creative Cloud for Enterprise | This is a subscription-based software agreement for large organisations that need access to Adobe’s creative suite of products. The Creative Cloud for Enterprise provides access to all of Adobe’s creative applications, including Photoshop, InDesign, Illustrator, and more, as well as other features like cloud storage and collaboration tools. |
| IBM Passport Advantage | This is a flexible licensing program for large organisations that need access to IBM software products. Passport Advantage offers a range of licensing options, including perpetual, fixed-term, and subscription-based licenses, as well as discounts for volume purchases and multi-year agreements. |
| Red Hat Enterprise Agreement | This is a subscription-based agreement for organisations that want to use Red Hat’s enterprise software products, including Red Hat Enterprise Linux and Red Hat OpenShift. The Enterprise Agreement provides access to support and updates, as well as discounts for volume purchases and longer-term agreements. |
Contract analysis
One of the biggest challenges when analysing software contracts is keeping track of product migrations and changes in terms over time. This is especially important for organisations that renew their software contracts annually. As new software versions are released and new licensing terms are introduced, it can be difficult to track how these changes affect existing contracts.
To properly analyse software contracts, it is essential to have a solid understanding of the products being licensed, the licensing metrics used, and the specific terms and conditions outlined in each contract. This requires a deep dive into the details of each contract, including any addendums or amendments, and a comprehensive understanding of the software vendor’s product roadmap.
Maintenance and Support
Maintenance and support costs associated with enterprise products can be a significant portion of the total ownership cost over the software’s lifespan. These costs typically include access to technical support, software upgrades, and patches.
Examples
| Support Program | Description |
|---|---|
| Microsoft Software Assurance (SA) | SA provides access to new software versions and upgrades, online training, and support services. The cost of Software Assurance varies depending on the product and licensing agreement but can range from 15% to 29% of the cost of the software per year. |
| Oracle Premier Support | Premier Support plan provides 24/7 technical support, access to software updates and patches, and online resources. The cost of Oracle Premier Support varies depending on the product and licensing agreement but can range from 10% to 22% of the cost of the software per year. For example, the cost of Oracle Premier Support for their database software can be up to $47,500 per processor per year. |
| SAP Enterprise Support | SAP’s Enterprise Support plan provides access to technical support, software updates, and performance optimisation services. The cost of SAP Enterprise Support is 22% of the cost of the software license per year. For example, the cost of SAP Enterprise Support for their ERP software can be up to $557,500 per year. |
It’s essential for organisations to carefully consider the cost and benefits of maintenance and support contracts when selecting enterprise software products. While these contracts can provide valuable resources and support, they can also represent a significant ongoing expense.
Procurement Models
Procurement is the process of acquiring goods or services from an external source, often involving a formal tendering or bidding process. Large enterprises typically have two main procurement models: centralised and decentralised.
- Centralised procurement is when a single department or team is responsible for all procurement activities across the organization. This can help ensure consistency in purchasing decisions, achieve economies of scale, and allow for better negotiation with vendors.
- Decentralised procurement, on the other hand, involves multiple departments or teams making their own purchasing decisions. While this can offer greater flexibility and agility, it can also lead to inconsistent purchasing decisions, duplicative efforts, and missed opportunities for cost savings.
In the context of software procurement, centralised procurement is often recommended as it allows for better negotiation with vendors, greater control over licensing and maintenance costs, and more consistent purchasing decisions. Decentralised procurement, on the other hand, can lead to overspending on unnecessary licenses, a lack of visibility into software usage, and compliance risks.
Antipatterns
Common harmful patterns that occur in software procurement include:
| Antipattern | Description |
|---|---|
| Shadow IT | Occurs when departments or individuals bypass IT and procurement processes to purchase and use software without proper approval or oversight. This can result in security and compliance risks, as well as duplication of efforts and increased costs. |
| Over-provisioning | Occurs when more software licenses or resources are purchased than needed, leading to waste and unnecessary costs. |
| Vendor lock-in | Occurs when an organization becomes dependent on a single vendor or product, which can limit flexibility and increase costs in the long term. |
| Lack of standardisation | Occurs when each department or business unit uses different software products or versions, leading to complexity and increased costs for support and maintenance. |
Organisations should establish clear procurement policies and procedures to ensure adequate software procurement, which outlines roles and responsibilities, purchasing methods, and approval processes. They should also establish clear communication channels between procurement teams and other business units to ensure that software purchasing aligns with the organization’s needs as a whole.
Standardisation
Regarding ITAM and ITSM standards, ITIL v3 recommends adopting a centralised procurement model to ensure that software purchases align with overall business goals and IT strategy. The ITIL v3 framework also recommends establishing a Software Asset Management (SAM) program to ensure software assets are effectively managed throughout their lifecycle. This includes activities such as procurement, deployment, maintenance, and retirement.
SAM programs should be designed to ensure that software is licensed and used in compliance with vendor agreements, minimise software-related risks, and optimise software usage and costs. This includes establishing software procurement policies and procedures, implementing software asset inventory and discovery tools, and establishing regular software usage reporting and license reconciliation processes.