SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an...

24
SAM SUMMIT Techniques for Future Proofing Your Software Contracts Richard Kemp 16 May 2018

Transcript of SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an...

Page 1: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

SAM SUMMITTechniques for Future Proofing

Your Software ContractsRichard Kemp 16 May 2018

Page 2: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Intro & context• Customer-side software over-deployment – a growing risk to the business relationship

• SAP v Diageo (UK High Court, 16.02.17) – the UK’s first software over deployment case• Case• Key takeaways – audits and licence scope• SAP’s April 2018 new pricing model

• New software deployment techniques and managing the over deployment risk• New pieces in the puzzle: AI/cognitive computing, Xaas, RPA, APIs, SOA and OSS• Solving the puzzle - clear drafting of licence scope is key

• Q&A

Agenda

Page 3: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• The good old days - when licence scope clauses & restrictions generally well understood - are changing Commercially: software vendors are becoming increasingly assertive on over-deployment Legally: software vendors are starting to have some success in enforcing licence scope clauses Technically: new software deployment techniques means software is interacting much more widely

• Risks for licences in flight• software over-deployment risks disputes, extra fees, contracting delays and inefficiencies• need for clear, concise, future-proofed licence scope clauses

Customers: • Align use case to licence scope terms through contract lifecycle• structured software asset management

Introduction and context

Page 4: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

How over-deployment happens• change of use

• acquisition/divestment• tech refresh• cloud deployment

• click wrap override• more restrictive licences• change of use

How over-deployment comes to light• support request• pro-active audit

• new product launch• product catalogue• whistleblowing

Commercially: software vendors are becoming more assertive

Page 5: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

Facts

• May 2004:

• Diageo licensed various SAP products, including mySAP ERP ("SAP ERP") and SAP Process Integration ("SAP PI").

• SAP ERP license fee calculated by reference to different categories of Named Users.

• SAP PI license fees calculated on the basis of the monthly volume of messages processed.

Legally: SAP v Diageo (Feb 2017)the UK’s first software over-deployment case

Page 6: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

SAP v Diageo [2017] EWHC 189 (TCC)

• Connect

• Salesforce.com system enabled customers to manage their Diageo accounts and to place and review orders directly, rather than through call centres.

• Interacted with SAP ERP via SAP PI.

• Gen2

• Salesforce.com app managed Diageo sales & service reps, enabling them to manage and record their customer visits and calls.

• Interacted with SAP ERP via SAP PI.

2011/2012, Diageo developed 2 new systems:

Page 7: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

SAP v Diageo [2017] EWHC 189 (TCC)

• SAP claimed that the Gen2 and Connect systems used and/or accessed the SAP ERP ‘directly or indirectly’

• claimed additional licence & maintenance fees of £54,503,578 under Agreement or asdamages:

Page 8: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Ruling:

• only ‘Named Users’ were authorised to access and use SAP ERP

• the extent of their permitted access and use was dependent on their user category set out in a schedule to the Agreement.

• "the plain and obvious meaning of "use" in the context of the Agreement is application or manipulation of the mySAP ERP software.

• the plain and obvious meaning of "access" in the context of the Agreement is acquiring visibility of, or connection to, the mySAP ERP software.“

• usage was subject to Named User Pricing.

SAP v Diageo [2017] EWHC 189 (TCC)

Page 9: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Audit Rights

• "Once in any 12 month period, unless otherwise requested by SAP and in any event no more than three times in any 24 month period, the Customer shall, using the tools provided by SAP, generate from each instance of the Software and deliver to SAP the information necessary to check that usage of the Software corresponds with the Exhibit.

• If Customer fails to do so then the Customer shall permit SAP reasonable direct and/or remote access to the Software and the equipment on which it is installed to verify usage. In so doing, SAP shall comply with the Customer's reasonable security requirements.

• If usage is discovered which does not correspond to the Exhibit, additional licence and maintenance fees will become payable as referred to in clause 6.2. For the avoidance of doubt each party shall bear its own costs incurred in the performance of its obligations of this clause." (Clause 3.19)

• Diageo had not hidden the integration between the SAP ERP and the Salesforce.com systems from SAP. It had also provided SAP with the reports required by clause 3.19.

SAP v Diageo [2017] EWHC 189 (TCC)

Page 10: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Audits – points to consider

SAP v Diageo [2017] EWHC 189 (TCC)

Why?Purpose and scope

What? Details of Named Users? Use of s/w & Materials?

When?Notice

FrequencySub-contractor flow-down?

How?Auditor (un)accompanied?

On-site? Documents?

Who? Supplier?

Third Party (NDA, etc)?

Where?

On premise or remotely using software tools?

Who pays?

Dispute Resolution

Page 11: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

SAP’s new April 2018 pricing model

• ‘Digital Core’ – SAP ERP, SAP S/4HANA• ‘direct access’ – human logs on through interface

• Named user licence required• ‘indirect access’ – any human, device or system

indirectly uses ERP via non-SAP intermediary s/w• Gen2, Connect• Pricing based on document types • ‘system generated records of commonly

valued business outcomes from the Digital Core’

• Customers can:• Do nothing• Exchange named user for document licenses• Convert old licenses to new S/4HANA solution

& contract

Page 12: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Contract is King: terms addressing the following issues must be express, precise and clear:

• types of user• nature and type of access• scope of license• interaction with third party systems and apps• improvement/scope change• charging mechanism, plus methodology for calculating changes in use type, access, etc.• audit rights• termination rights

SAP v Diageo - key points

Page 13: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

cloud/XaaS, AI, RPA, APIs, SOA and OSS –a puzzle until you realise what they do, then they’re just software!

New software deployment techniques impact licensing

Page 14: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

XaaS

cloud/XaaS, AI, RPA, APIs, SOA & OSS - a puzzle until you realise what they do, then they’re just software!

New software deployment techniques impact licensing

Page 15: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

Cloud/XaaS (anything as a service)

key licensing/ contracting issues:• All: data format,

ownership, return, termination

• SaaS: restrictions on use of s/w with other systems?

• PaaS: restrictions on using runtime/ middleware/OS with other systems?

XaaS

Page 16: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

AI

machine learning

machine perception

machine control

Artificial Intelligence (AI)

key licensing/contracting issues:• writing up the project (SoW)• ownership, etc treatment of

data inputs• ownership, etc treatment of

outputs (reports)• derived work (improvements

through cognition, etc)• regulatory - outsourcing

Page 17: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

RPA

people

process

tools/tech

governance

Robotic Process Automation (RPA)RPA is basically software … … that replaces people processes with software processesIt includes the following elements:1. phase of consultancy/prof services to

migrate/translate the processes from people to software

2. scope, map, timetable, project plan etc3. s/w tools licensed to execute processes

key licensing/contracting issues:• interaction of the s/w processes

with other s/w systems at several removes

• licensing and fees/payment treatment

Page 18: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

API

server

Web services

manager

data feed

Application Programming Interface (API)• API is an interface by which an application

accesses other software (operating system)• It sets out the rules the application must

comply with to ‘call’ the other s/w (e.g. get the OS to print)

• compliance ensures one application can run on different OS’ (portability) or work with s/w in another language (compatibility)

• APIs can be documents (specs) or s/w tools and routines, or a combination

key licensing/contracting issues:• Do you need an API licence?• Are there any knock-on effects

on what it interfaces to/with?• Ongoing standards compliance

obligations?

Page 19: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

SOA

orchestration software

ESB middleware

application software

Software Oriented Architecture (SOA)SOA is built (architected) on associating (orienting) customer’s required business processes (services) with the supplier’s software. Key elements:• orchestration: menu of applications to be

selected and sequenced for customer• ESB: middleware connects orchestration

and application software.• applications: s/w selected through

orchestration & integrated through ESB to perform customer functions.

Key licensing/contracting issues:• Does SOA agreement/licence

permit interaction with other s/w outside the SOA?

• Change/development inflight?

Page 20: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

OSS

free redistribution

with source code

modification permitted

Open Source Software (OSS)

OSS is software provided under licence that meets the 3 requirements of the Open Source Definition:

• redistributable without payment

• redistributable with the source code or well publicised access to it; and

• OSS modification & distribution of derived works is permitted

Key licensing/contractual issues:• in OSS, the licence wrapper, not

the software, is different• key issue is around ‘copyleft’

(inheritance) requirement, esp in (L)GPL licences

Page 21: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

XaaS

cloud/XaaS, AI, RPA, APIs, SOA & OSS - a puzzle until you realise what they do, then they’re just software!

New software deployment techniques impact licensing

Page 22: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• Licence scope clauses will need more attention going forward Commercially: software vendors are

increasingly assertive on over-deployment Legally: software vendors are starting to

succeed in enforcing licence scope clauses Technically: new software deployment

techniques are interacting more widely • The move to the cloud, APIs & interoperable

systems makes clearly drafted licence scope terms critical• new software deployment techniques• systems can interact at several removes from

initial licence

… to licence scope terms ...

align use case …

… over contract lifecycle

Takeaways

Page 23: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

• greater risk for licences in flight• software licence non-compliance through over-

deployment is inefficient• risks extra charges (licence fees, legal,

management time) delay, audit, enforcement• needs clear, future-proofed licence scope terms• avoid unattractive choice between:

• unbudgeted expense• removing/working round offending software

• Customers: • s/w use cases become more interdependent• ensure deployment processes align use case to

licence scope terms through contract lifecycle• benefits of structured software asset management

processes

Takeaways

… to licence scope terms ...

align use case …

… over contract lifecycle

Page 24: SAM SUMMIT - Kemp IT La...Application Programming Interface (API) • API is an interfaceby which an application accesses other software (operating system) • It sets out the rules

Richard Kemp [email protected] 3011 1670

thank you