HTCondor SOFTWARE MAINTENANCE AGREEMENT

 

This Software Maintenance Agreement is entered into on _______________ (the “Maintenance Agreement”) between the Board of Regents of the University of Wisconsin System on behalf of the University of Wisconsin-Madison, a public educational institution of the State of Wisconsin, hereinafter referred to as "the PROVIDER," and _________________________________, a corporation existing under the laws of ___________, hereinafter referred to as "the RECIPIENT."  The term “SOFTWARE” shall mean the work of authorship called HTCondor, whether in Source or Object form, made available under the License Agreement at URL http://htcondor.org/license.html, as indicated by a copyright notice that is included in or attached to the work.

 

WHEREAS, the PROVIDER, its faculty, staff and students, are developing the SOFTWARE and Support Materials identified in Supplement A; and

 

WHEREAS, the PROVIDER, its faculty, staff and students, are still developing the SOFTWARE and Support Materials and such SOFTWARE and Support Materials should not be considered to be at the same level as commercial software and support materials;

 

WHEREAS, the RECIPIENT has evaluated the SOFTWARE and has expressed interest in using this system; and

 

WHEREAS, the RECIPIENT wishes to engage the PROVIDER to perform various maintenance services in connection with the SOFTWARE and Support Materials and the PROVIDER desires to provide such maintenance services;

 

WHEREAS, the RECIPIENT has executed the License Agreement for the SOFTWARE; and

 

NOW THEREFORE, in consideration of the mutual promises and agreements set forth in this Maintenance Agreement, PROVIDER and RECIPIENT agree as follows:

 

1.      Maintenance Services

 

In accordance with the terms of this Maintenance Agreement, the PROVIDER will furnish the installation, support, or error-correction services identified on Supplement A (the “Services”) for the SOFTWARE.

 

2.  Maintenance Fee and Expenses

 

      RECIPIENT will pay the PROVIDER the fee(s) set forth on Supplement A to this Maintenance Agreement within forty-five (45) days of the Commencement Date identified in Supplement A. The PROVIDER shall have the right to change the fee once each year, effective with the next renewal date, provided that: (i) the PROVIDER gives RECIPIENT at least ninety (90) days prior written notice of any such change; and (ii) so long as the change is not an increase of more than ten percent (10%) of the then-current fee.  RECIPIENT shall pay the PROVIDER for services outside the scope of this Maintenance Agreement on a time and material basis at the PROVIDER’s then-prevailing rates, and only with RECIPIENT’s prior written approval. RECIPIENT is responsible for the payment of any taxes assessed in connection with payments due under this Maintenance Agreement except for any tax based solely on the PROVIDER’s net income.


Upon RECIPIENT’s prior written approval, RECIPIENT shall reimburse the PROVIDER for any and all reasonable travel and living expenses incurred by the PROVIDER in performing services under this Maintenance Agreement.  These expenses shall be billed to RECIPIENT, and RECIPIENT shall pay these billings within forty-five (45) days of the date such services were rendered.

Upon termination of this Maintenance Agreement, the PROVIDER will be reimbursed for all reasonable costs and non-cancelable commitments incurred in the performance of the scope of work and for which the RECIPIENT has not yet paid.

3.  Term and Termination

 

(a)  Term.  This Maintenance Agreement shall commence on the Commencement Date stated in Supplement A and continue for an initial period defined in Supplement A (“Initial Term”).  This Maintenance Agreement shall thereafter renew for successive periods defined in Supplement A (“Renewal Term”), of which PROVIDER will notify RECIPIENT in writing at least sixty (60) days prior to the expiration date, unless terminated by either party upon written notice to the other party pursuant to Section 3(b) below.  All terms and conditions of this Maintenance Agreement shall apply during the Renewal Term, except for the fees.  The fee for the Renewal Term shall be the PROVIDER’s rates then in effect, so long as such rate does not increase by more than ten percent (10%) annually.


(b)  Termination.  This Maintenance Agreement shall terminate (i) immediately upon termination or expiration of RECIPIENT’s right to use the SOFTWARE; (ii) upon expiration of the then-current term, provided that at least thirty (30) days advance written notice of termination is given to PROVIDER by the RECIPIENT; (iii) upon expiration of the then-current term, provided that at least  sixty (60) days advance written notice of termination is given to RECIPIENT by the PROVIDER; or (iv) upon thirty (30) days advance written notice if the other party has breached this Maintenance Agreement and has not cured such breach within such notice period.

4.  Warranty and Remedies

 

The PROVIDER warrants that it will use reasonable efforts to perform the services to conform to generally accepted industry standards, provided that: (a) the SOFTWARE has not been modified, changed, or altered by anyone other than the PROVIDER; (b) the operating environment, including both hardware and systems software, meets the PROVIDER’s recommended specifications; (c) the computer hardware is in good operational order and is installed in a suitable operating environment; (d) RECIPIENT promptly notifies the PROVIDER of its need for service; (e) RECIPIENT provides adequate troubleshooting information and access so that the PROVIDER can identify and address problems; and (f) all fees due to the PROVIDER have been paid.  THERE ARE NO OTHER WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS MAINTENANCE AGREEMENT, AND THE SERVICES TO BE PROVIDED BY THE PROVIDER UNDER IT INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  RECIPIENT’s sole and exclusive remedy and the PROVIDER’s only obligation under this warranty is to redo the Services until the SOFTWARE conforms to the most recent specifications stated in the documents listed in Supplement A.  In the event that these services cannot be provided within a reasonable time after notification, RECIPIENT’s sole and exclusive remedy is to terminate this Maintenance Agreement upon written notice to the PROVIDER and to receive a refund of any fees paid for the period beginning on the date the problem requiring correction was reported to the PROVIDER.  RECIPIENT ACKNOWLEDGES AND AGREES THAT UNDER NO CIRCUMSTANCES SHALL THE UNIVERSITY, ITS FACULTY, STAFF, STUDENTS, OR REGENTS BE LIABLE FOR ANY LOSS, COST, EXPENSE, OR DAMAGE TO RECIPIENT IN AN AMOUNT THAT COLLECTIVELY EXCEEDS THE ANNUAL MAINTENANCE FEE. END USER ACKNOWLEDGES AND AGREES THAT THE PROVIDER, ITS FACULTY, STAFF, STUDENTS, OR REGENTS SHALL NOT BE LIABLE TO END USER FOR ANY INDIRECT, INCIDENTAL, PUNITIVE, EXEMPLARY, SPECIAL, CONSEQUENTIAL DAMAGES OR SIMILAR DAMAGES, INCLUDING ANY LOST PROFITS OR LOST DATA ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE EVEN IF THE UNIVERSITY, ITS FACULTY, STAFF, STUDENTS, OR REGENTS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

 

RECIPIENT WILL INDEMNIFY, DEFEND, AND HOLD HARMLESS PROVIDER, ITS FACULTY, STAFF, STUDENTS, OR REGENTS AGAINST ANY LOSS, DAMAGE, EXPENSE, OR COST, INCLUDING REASONABLE ATTORNEYS’ FEES, ARISING OUT OF ANY CLAIM, DEMAND, PROCEEDING OR LAWSUIT RELATED TO RECIPIENT’s UNAUTHORIZED USE OR MISUSE OF THE SOFTWARE.

 

The PROVIDER agrees to hold harmless the RECIPIENT, its officers, agents, and employees from any and all liability, including claims, demands, losses, costs, damages, and expenses of every kind and description (including death), or damages to persons or property arising out of or in connection with or occurring during the course of this Maintenance Agreement where such liability is founded upon or grows out of the acts or omissions of the officers, employees, or agents of the PROVIDER of Wisconsin System while acting within the scope of their employment where protection is afforded by ss. 893.92 and ss. 895.46(1) Wisconsin Statutes.

 

5.  Recipient Support

 

The level of support that the PROVIDER can provided is dependent upon the cooperation of RECIPIENT and the quantity of information that RECIPIENT can provide. 

 

If the PROVIDER cannot reproduce a problem or if the RECIPIENT cannot successfully gather adequate troubleshooting information, the PROVIDER may need temporary login access on the RECIPIENT’s system to identify and address the problem.

 

6.  Recipient Responsibility


The RECIPIENT shall not distribute the SOFTWARE to any third party.  The RECIPIENT shall not make any modifications to the SOFTWARE, unless otherwise allowed under the License Agreement.  If RECIPIENT is allowed to make modifications under such License Agreement, the PROVIDER shall not be responsible for maintaining RECIPIENT modified portions of the SOFTWARE or for maintaining portions of the SOFTWARE affected by RECIPIENT modified portions of the SOFTWARE.  Upon RECIPIENT’s prior written approval, corrections for difficulties or defects traceable to the RECIPIENT’s errors or systems changes shall be billed at the PROVIDER’s standard time and material charges.

 

7.   Right to Work Product

All error corrections, enhancements, new releases, and any other work product created by the PROVIDER creator(s) in connection with the support services provided under this Maintenance Agreement (“Work Product”) are and shall remain the exclusive property of the PROVIDER or the PROVIDER creator(s), regardless of whether the RECIPIENT, its employees, or agents may have contributed to the conception, joined in its development, or paid the PROVIDER for the development or use of the Work Product.  Such Work Product shall be considered SOFTWARE, and subject to the terms and conditions contained herein and in the License Agreement.

 

8.  General

 

(a)               Each party acknowledges that this Maintenance Agreement is the complete and exclusive statement of the agreement between the parties, which supersedes and merges all prior proposals, understandings and all other agreement, oral and written, between the parties relating to this Maintenance Agreement.  This Maintenance Agreement may not be modified or altered except by a written instrument duly executed by both parties.

(b)               This Maintenance Agreement and performance hereunder shall be governed by and construed in accordance with the laws of the State of Wisconsin without regard to its conflict of laws rules.

(c)               If any provision of this Maintenance Agreement shall be held to be invalid, illegal or unenforceable, the validity, legality and enforceability of the remaining provisions shall in no way be affected or impaired thereby.

(d)               The RECIPIENT may not subcontract, assign, or transfer its rights, duties or obligations under this Maintenance Agreement to any person or entity, in whole or in part, without the prior written consent of the PROVIDER.

(e)               The waiver or failure of either party to exercise in any respect any right provided for herein shall not be deemed a waiver of any further right hereunder.

 

RECIPIENT ACKNOWLEDGES THAT END USER HAS READ THIS MAINTENANCE AGREEMENT, UNDERSTANDS IT, AND AGREES TO BE LEGALLY BOUND BY IT.

 

            WHEREFORE, the parties have caused this Maintenance Agreement to be executed by their duly authorized representatives.

 

_______________________________          THE BOARD OF REGENTS OF

THE UNIVERSITY OF WISCONSIN SYSTEM

 

By:                                                                  By:

 

Title:                                                                Title:

 

Date:                                                               Date:

 

Supplement A

 

 

Coverage of Maintenance Agreement

 

The SOFTWARE covered by this Maintenance Agreement is as follows:

·         HTCondor versions available at URL http://htcondor.org/ downloads/ and any future versions offered by PROVIDER under the open source License Agreement at URL http://htcondor.org/license.html.  HTCondor is a distributed high throughput computing environment.

 

The manuals, handbooks, and other written materials furnished by the PROVIDER for use with the SOFTWARE (the “Documentation”) are:

·         HTCondor Manual

·         HTCondor Command Reference (Manual Pages)

 

Support Policy Descriptions

 

In accordance with the terms of this Maintenance Agreement, the PROVIDER will furnish one or more of the following support services (the “Services”) for the SOFTWARE.  Installation and Basic Operation support is required.  The remaining available support services can optionally be added for supplementary coverage.

 

Support Policy #1: Installation and Basic Operation (Required)

Support for the proper installation of the current release of the SOFTWARE, and any subsequent patches or updates to the version, on a pool of up to 25 heterogeneous servers.  At this support level, the PROVIDER will ensure that the RECIPIENT’s HTCondor installation passes the HTCondor Test Suite.  Furthermore, at this basic support level, the PROVIDER will only support the default policy configuration (i.e. the default condor_config files as initially supplied by the PROVIDER).  Another option  purchases 2 instances of Policy #1 to allow up to 75 heterogeneous servers.

 

Support Policy #2: Flock-wide Management and Policy Customization (Optional)

Support for proper general management and HTCondor policy customization at RECIPIENT’s site(s) consisting of up to three pools per site containing a grand total of up to 500 heterogeneous servers.  The PROVIDER will ensure that the RECIPIENT’s HTCondor installation passes the HTCondor Test Suite.  Furthermore, the PROVIDER will provide support for RECIPIENT’s site(s) that wish to customize HTCondor’s configuration by editing the condor_config files in order to have HTCondor enforce local policy decisions.  For example, perhaps a site wants some machines in the pool to prioritize certain users or applications, other machines to only execute HTCondor jobs during certain times, and only specific long-running applications to checkpoint every 60 minutes.  HTCondor is flexible and customizable; over 500 options can be customized in the HTCondor configuration files in order to adapt to almost any policy decision. 

 

Support Policy #3: Application Development Support (Optional)

Support Policy #1 and #2 are aimed at assisting system administrators responsible for the proper installation, management, and customization of HTCondor.  This support policy is aimed at the developer responsible for ensuring the RECIPIENT’s applications work correctly when run in the HTCondor environment.  In addition to testing for proper operation with the HTCondor Test Suite of applications, this optional policy provides support if a Customer’s specific application encounters difficulty running inside of the HTCondor execution environment.  Troubleshooting assistance and log file examination are included.  In the event a Customer’s application uncovers a previously undocumented limitation or bug in HTCondor, the PROVIDER will provide a suitable work-around or patch to allow the application to run with HTCondor.  Consultation about designing a program to run in an opportunistic environment is also provided.  However, the PROVIDER is under no obligation to re-write or otherwise edit portions of the Customer’s code.  Up to five (5) Customer applications will be supported.

 

Customized Project (Optional)

At RECIPIENT’s request, the PROVIDER will consider developing modifications or additions that materially change the utility, efficiency, functional capability, or application of the SOFTWARE (“Enhancements’) at such charge and on such schedule as the parties may mutually agree in writing.  One example would be to customize HTCondor in order to transform it into a turn-key opportunistic high throughput environment for a specific application.

 

Training (Optional)

 

The PROVIDER will provide ____ (____) standard training sessions in the use of the SOFTWARE per Term or Renewal Term for up to  __________ (_____) of RECIPIENT’s personnel at such time and location as the parties may mutually agree.

 

“Hotline” Support for contacting the PROVIDER

 

The PROVIDER will provide the following communication mechanisms for the RECIPIENT to use when asking for support:

 

(a)        Telephone Support.  PROVIDER shall maintain an HTCondor telephone hotline during regular business hours (8:30 a.m. to 4:30 p.m. Monday-Friday CST) to assist RECIPIENT in reporting errors and in providing first-line support in the use and operation of the SOFTWARE. 

(b)       Internet Email.  PROVIDER shall maintain an email address for the express purpose of providing contracted HTCondor support.  This special email address shall be managed by “trouble ticket” software which tracks problem progress on an incident by incident basis in order to ensure a timely turn-around for the RECIPIENT.

 

Limitations on Hot-line support

 

RECIPIENT agrees that its point of contact for maintenance and support of the SOFTWARE will be limited to two (2) designated employees of RECIPIENT at any one time, who will act as the support liaison between the PROVIDER and RECIPIENT, and that hotline support services for the SOFTWARE subject to this Maintenance Agreement will be available to RECIPIENT through electronic mail communication or by telephone.  However, specifically for Support Policy #3: Application Development Support, up to eight (8) designated RECIPIENT developers who are sufficiently familiar with the application being supported may use hotline support services.

 

Timeliness of Incident Resolution

 

PROVIDER shall use reasonable effort to provide modifications or additions to correct errors in the SOFTWARE reported by RECIPIENT under the conditions described in Section 5, “RECIPIENT Support.” Upon receipt of notice of an error, PROVIDER will assign a priority level as determined by the RECIPIENT to the error according to the following criteria:

 

Priority A – An error that results in the SOFTWARE being substantially or completely nonfunctional or inoperative.

 

Priority B – An error that results in the SOFTWARE operating or performing other than as represented in the Documentation, but which does not have a material adverse impact on the performance of the SOFTWARE.

 

PROVIDER will make reasonable efforts to correct the error or provide a work-around solution for each priority level and, if a work-around is the immediate solution, will make reasonable efforts to provide a final resolution of the error.  Reasonable effort will be made to respond to the incident within the following time frames after receiving notice and sufficient information and support from the RECIPIENT:

 

Priority Level            Work-Around            If Work-Around, Final Resolution

A                                 2 business days           15 business days

B                                 7 business days           30 business days

 

New Releases

 

The PROVIDER shall be responsible for providing technical support and correcting errors for the most recent release of the SOFTWARE provided to RECIPIENT; additionally,  the PROVIDER shall continue to support the two (2) immediately prior releases for a reasonable period, not to exceed eighteen 18  months.

 

Fee Assessment

 

 

Annual Cost

Cost Per Month

Minimum Length

of Agreement

Support Policy #1: Installation and Basic Operation (Required)

$2,950.00

 

 

$245.84

 

 

12 months

Support Policy #2: Flock-wide Management and Policy Customization (Optional)

$14,790.00

$1,232.50

6 months

Support Policy #3: Application Development Support (Optional)

$11,620.00

$968.34

6 months

Customized Project or Training Sessions (Optional)

Negotiable

Negotiable

Negotiable

 

Policy or Policies Selected: ________________

 

Total Annual Maintenance Fee for the Initial Term of this Maintenance Agreement:

 

__________________

 

Commencement Date:  The date on which services under this Maintenance Agreement shall begin is _____________.

 

The Initial Term and Renewal Term of this Maintenance Agreement shall be:

Initial Term: ____________________________.

Renewal Term: __________________________.

 

[For Policy 1, the Term and Renewal Term will be one (1) year.  For Policy 2 and 3, the Term and Renewal Term will be at least six (6) months.  ]