软件项目管理第11章 软件项目合同管理_第1页
软件项目管理第11章 软件项目合同管理_第2页
软件项目管理第11章 软件项目合同管理_第3页
软件项目管理第11章 软件项目合同管理_第4页
软件项目管理第11章 软件项目合同管理_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第11章软件工程合同管理11.1工程采购11.2合同类型11.3合同管理11.4软件外包11.5小结

11.1项目采购

采购是指从组织外或工程系统外获取产品和效劳的完整的购置过程。软件工程采购是从软件工程外部购置工程所需产品和效劳的过程。采购过程涉及具有不同目标的双方或多方,各方在一定市场条件下相互影响和制约。通过流程化和标准化的采购管理和运作,可以到达降低本钱、增加利润的作用。

1.软件产品采购的种类

对软件产品,一般采购可以分为以下两大类。

第一类是对已经在市场流通的软件产品进行采购,这些是通用的软件产品。例如,某企业想做信息化建设工程,涉及数据库,就可以在目前市场上流行的几种厂家和种类的数据库中选择。例如,Oracle公司的Oracle数据库、Microsoft公司的SQLServer数据库和IBM公司的DB2数据库等。然后根据自己的需求,通过询价、签订合同和安装培训等过程来购置此类产品,这种采购过程根本已经形成几套通用的比较简单的解决方案,国内企业在处理这类产品的采购时大局部都处理得较好。但是个别的企业由于需求分析不清晰,培训工作不到位等原因,也会产生购置的产品不适用,或不会用的情况。另一类软件产品采购形式是外包采购。在市场上没有现成的产品或没有适合自己企业需求的产品的情况下,需要以定制的方式把工程(功能模块)承包给其他企业,就需要外包采购。例如,某企业需要实施企业资源方案(EnterpriseResourcePlanning,ERP)工程,虽然可以购置一些现成的商用软件,但是,基于本企业业务流程的管理软件必须定制必须自己开发或外包给别的公司。(4)提供经营的灵活性。企业工作顶峰时,通过采购可以获取外部人员为企业业务提供效劳。

(5)降低/转移风险。通过采购,把局部工程风险转嫁给别的单位或个人。

3.工程采购的过程

工程采购一般包括以下主要过程:采购方案编制、询价方案编制、询价、承包商选择、合同管理和合同收尾。

1)采购方案编制

采购方案编制是一个工程管理过程,确定工程的哪些需求可以通过采用组织外部的产品或效劳得到最好的满足,包括决定是否要采购、如何去采购、采购什么、采购多少、以及何时采购。对大多数工程来说,在编制采购方案过程中考虑周到并具有创造性是很重要的。采购工作通常由公司的采购部门而非信息管理部门主导,采购方案编制的输入输出如图11.1所示。 ·工作说明书(StatementOfWork,SOW)。SOW是对采购所要求完成工作的描述,是一种范围说明书,要能足够详细地说明采购工程,以方便潜在的卖方确定其是否提供该工程所需的产品和效劳,并确定一个适当的价格。工作说明书应尽可能地明确、完备和简练,应包括附属效劳的说明书,如所购产品对工程结束后的运作支持。在某些应用领域,对工作说明书有具体的内容、格式要求。2)询价方案编制

询价方案编制包括准备询价所需的文件并确定合同授予的评判标准。询价方案编制的依据是采购管理方案、工作说明书和其他方案编制的结果。其他方案应该作为采购方案编制的一个环节而再次被审查,需要特别注意的是询价方案的编制应该与工程进度方案保持高度一致,这是工程实现进度、本钱控制的根本保障。3)询价

询价就是从潜在的卖方获得建议书或标书,该过程的主要输出就是收到建议书或标书。

一旦买方收到建议书,就要选择一家供给商或取消采购,这是很费时的过程。供方选择包括评估投标者的建议书,选择一个最正确的投标者,进行合同谈判,签订合同。采购过程中,工程干系人应该参与工程最正确供给商的选择。买方通常制定一个简短的列表,只列出前3名到前5名的供给商,以减少选择过程的工作量。

询价过程通常包括采购文件的最后形成、广告、投标会的召开以及获得工作建议书或标书。但是,偶尔也有不采用正式的询价过程而进行的工程采购。6)合同收尾

合同收尾(即合同的完成和结算)是工程采购管理的最后一个过程。这个过程通常包括产品审核,正式验收和收尾,以及合同审计。

合同收尾的一个内容就是进行产品审核,以验证所有的工作是否被正确地、令人满意地完成。另一个内容是更新反映最终成果的记录和归档将来会用到的信息的管理活动。

合同收尾的输出包括合同文件、正式验收和收尾。

上述工程采购过程不仅彼此交互,而且还与其他知识领域的过程交互。根据工程需要,每个过程可能涉及一人或多人或集体所付出的努力。 11.2合同类型

合同类型是应当考虑的一件重要事项。软件工程采购根据采购类型不同,需要对应不同类型的合同,不同类型的合同将在不同情况下使用。合同分类也有很多种,可以按照承包的范围进行分类,也可以按照工作的内容进行分类,还可以按照本钱的支付方式进行分类。

BobHughes等人通过对供给商所得到的报酬的计算方法来区分不同的合同,包括固定价格合同、时间和材料合同和每单位固定价格合同。11.2.1固定价格合同

固定价格合同(FixedPriceContract)也称为总价合同(LumpSumContract),指详细定义产品或效劳的固定总价。在这种情况下,当合同签订时价格已经确定了。客户知道:如果合同的条款没有变化,这就是工程完成时应该支付的价格。为了让这种机制更加有效,在开始时必须让承包商知道客户的需求,而且这些需求不能改变。例如,一家公司需购置100台具有一定分辨率和一定打印速度的激光打印机,要求在2个月内交付到指定地点,该公司可以就此签订一份固定价格合同。在该例中明确定义了产品和交付日期。换一种说法就是,如果这个合同是为了构建一个软件系统,那么必须完成详细的需求分析。一旦开始开发,客户就不能在没有重新商定价格的情况下更改需求。

这种合同的优点在于:

·知道客户的花费。如果客户要对原先的需求进行更改,需要明确费用。

·供给商的动机。供给商有一种以合算的方式管理交付系统的动机。

其缺点在于:

·意外情况下的价格较高。供给商承受对产品规模原始估计的任何错误所带来的风险。为了减少这种风险的影响,供给商将在投标书中计算价格时留出足够的余地。·修改需求困难。在开发过程中有时需要修改需求的范围,这有可能造成供给商和客户之间的摩擦。

·增加修改本钱的压力。在和其他投标商竞争时,供给商不得不给出尽可能低的价格。一旦合同签订了,当给出进一步的需求时,供给商就会提出很高的修改价格。

·对系统质量的威胁。为了满足固定的价格,软件的质量可能得不到保证。

·固定价格合同也可以包括满足或超越既定工程目标的鼓励费。例如,该合同可能包括如果在1个月内交付激光打印机,那么提供鼓励费。固定价格合同对于买方而言承担的风险最小。11.2.2时间和材料合同

在时间和材料合同(TimeandMaterialContract)中客户必须为每个单位(例如每个员工工时)的工作量付出一定的报酬。供给商通常会就当前对客户需求的理解给出总体的本钱,但是这并不是最终报酬的根底。供给商通常会定期(例如每月)向客户列出已完成工作的清单。例如一位独立计算机参谋与一家公司签订的合同内可能规定按照效劳时间每小时收费80元,另外还包括为工程提供特定材料的固定价款1万元;材料费也可以依据批准的材料购货收据支付,并规定上限为1万元;参谋每周或每月向公司提交发票,列明本周或本月的材料费、工时和相关工作的描述。这种方法的优点如下:

·需求修改很容易处理。如果工程有一个研究方向,随着工程的深入,工程的研究方向会发生变化,那么这可能是恰当的计算报酬的方法。

·没有价格的压力。没有价格的压力能创造出更高质量的软件。

这种方法的缺点是:

·客户的义务。客户要承受与需求定义不妥和需求变更相关的所有风险。

·供给商缺乏动力。在以合算的方式工作或在控制交付系统的范围方面,供给商没有动力。因为供给商似乎得到的是一张空白支票,所以时间和材料合同并不受欢送。这种类型的合同通常用在工作无法明确定义,而且无法预测其总本钱的情况下。另外,为了防止本钱无限制增加,双方通常会协定最高限价和时间限制。

11.2.3固定单价合同

固定单价合同(FixedPriceUnitContract)是要求买方向卖方按效劳的预订单价支付价款的合同,合同总价是完成该项工作所需工作量的函数。假设IT部门有一份购置计算机硬件的单价合同,如果该公司购置1台,本钱可能为5000元;如果购置10台,本钱将为50000元;这种类型的合同经常含有数量折扣。举例而言,如果一个公司的购置量为10~50台,那么合同本钱可能是每台4000元;如果购置量超过50台单价将降至3000元。固定单价合同经常与计算功能点相关。在工程开始时已经计算或估计好要交付系统的规模。交付系统的规模可以通过代码行数来估计,但是,可以从需求文档中更容易、更可靠地获得功能点数(FunctionPoint,FP)。每个单位的价格都会清楚地注明,最终价格就是单位价格乘以单位数量得到的。表11-1是一个典型的价格表。表11-1每个功能点价格表在软件实际的开发过程中应用系统的范围可能会随着开发的进行而增长。所以要求软件供给商为开发工程所有的阶段给出单一价格可能不太现实。因为在需求还没有明确的情况下不能估算出所需的构造工作量。

为了解决上述问题,可以协商签订一系列的合同,每个合同覆盖系统开发的不同阶段。或者软件供给商可能首先进行软件设计,从这个设计中就能导出FP的数量。然后根据“每个功能点的功能设计本钱〞列的数据计算出设计工作所需要的费用。如果设计的系统有1000个功能点,那么费用就是1000×242=242 000美元。如果设计完成了,就构建并交付实际的软件,那么将再增加收取1000×725=725 000美元。如果用户有了新的需求,该系统的范围也要增长,那么新需求将根据设计和实现相结合的收费率来收费。例如,如果新的需求加起来有100个功能点,那么,多余工作的收费将是967×100=96 700美元。

这种方法的优点在于:

·客户的理解。客户可以清楚地知道价格是如何计算的,并知道修改需求之后价格如何变化。

·可比较性。不同的价格表可以进行比较。

·产生新功能。供给商不承担增加功能的风险。

·供给商的效率。与时间和材料合同不同的是供给商仍有以合算的方式交付所需要功能的动力。·生命周期的范围。需求不需要在开始时明确,因此开发合同既能覆盖工程的分析阶段,又能覆盖工程的设计阶段。

这种方法的缺点是:

·软件规模度量有困难。代码行数很容易由于采用较为冗长的编码风格而膨胀。对于功能点而言,可能在功能点的数量上产生分歧:在某些情况下,功能点的计算规那么可能对供给商或客户不公平。特别是用户几乎不熟悉功能点的概念,因而需要特殊的训练,解决方法就是使用独立的功能点计算器。

·修改需求。有一些修改可能会严重影响现有的事务处理,却不会对功能点的数量有什么影响,因而必须就如何处理这些修改做出决定。开发末期的修改几乎总要比开发前期的修改费力。为了减少后一个缺点,有的专家给出了依据修改出现的时间来确定收费的建议,如表11-2所示。表11-2变更功能点的额外费用举例除了以上三种付酬方式之外,还有一些其它的选择方案或经修改的选择方案。例如规格说明的实现可能采用固定价格,同时还附有进行添加或修改所需要收费的条款(按每个功能点FP进行收费)。还有一种情况是当承包商必须购置大量的设备时,价格也会波动,因为这种开销不是由于承包商的失误所造成的,在这种情况下就有可能达成一个谈判的合同:其中劳动按照固定价格计算,而所使用的某个特定组件那么按其实际本钱计算。当考虑到合同的义务和报酬时,再一次涉及软件的本质问题(即:相对不可见性和灵活性),这意味着很难确定系统的规模和随后的开发工作量。如果承包商确实规定了一个稳定的工作价格,那么必须对要执行的任务进行仔细的限制。例如,让承包商为每个工程的各个开发阶段都制定同个价格是不切实际的:当需求还没有确定时,怎么可能准确地估计构建软件的工作量呢?因此,有必要商定一系列的合同,每个合同对应系统开发生命周期的不同局部。

另一种合同分类方法是以欧盟的规定为根底的,根据选择承包商的方法来确定(至少是初步的区分方法),可分为公开的、受限制的和谈判的。11.2.4公开的投标过程

采用招投标方式来确定开发方或软件提供商是大型软件工程普遍采用的一种形式。工程招投标包括对应的两个方面:对于用户单位来说就是招标;对于开发单位来说,就是投标。具体来讲,软件工程招标是指招标人(用户单位)根据自己的需要,提出一定的标准或条件,向潜在投标商发出投标邀请的行为;而投标是指投标人(软件开发单位或软件提供商、代理商)应招标人的邀清,根据招标公告和其他相关文件的规定条件,在规定的时间内向招标人应标的行为。工程招投标的最终结果是双方签订开发合同。公开的投标过程是指投标人从公开的报刊、网络等媒体上看到感兴趣的招标公告,准备相关材料,向招标机构投出标书的过程,在这种情况下,任何供给商都可以进行投标来争取提供商品和效劳。而且所有和投标邀请中列出的原始条件相适应的投标都必须用同一种方法进行考虑和估计。如果一个工程有很多投标者,那么估计过程将是一项很耗时的工作,而且很昂贵。近几年出现了一个全球性的、消除不同国家之间相互提供商品和效劳的人为障碍的运动。例如WTO和欧盟等团体,对确保国家政府和公共团体在没有很好的理由的情况下,不限制与其他国家签订合同,在这个问题上起到了积极的推动作用。WTO监督的协议里面包括政府采购,其中的一个要素是制定执行投标过程的规那么。在某些情况下,要求采用公开的投标过程。11.2.5受限制的投标过程

这种情况,只有那些受客户投标邀请的供给商参加投标。与公开投标不一样,客户可以在任何时间减少所考虑的供给商,这经常是能采取的最好的方法。但是这并非没有风险:如果产生的合同规定了固定的价格,客户就承担了保证供给商所获得的需求的完整性和正确性的责任。当需求文档有缺陷时,有时会让获得合同的投标商在后续情况下要求更多的附加报酬。在这些情况下直接接受一个供给商的方法也许是对的。但是可以想象,直接接受一个供给商,客户就很难得到优惠的费用,所以只有在能够清楚判断的情况下才能这样做。 11.3合同管理

一个软件工程一般是以招投标的形式开始的,作为软件的客户(需求方)根据自己的需要提出软件的根本需求,并编写招标书,同时,将招标书以各种方式传递给竞标方,所有的竞标方都会认真地编写建议书以参加竞标。经过招投标程序,并确定了中标单位后,双方需要签订工程合同。

工程合同是指工程业主(需求方)或代理人与工程提供商(承接商)或供给商为完成某一确定的工程所指向的目标或规定的内容,明确相互的权利义务关系而达成的协议。合同是甲乙双方在合同执行过程中履行义务和享受权利的唯一依据,是具有严格的法律效力的文件。作为工程提供商与客户之间的协议,合同是客户与工程提供商(承接商)关于工程的根底,是工程成功的共识与期望。在合同中,提供商(承接商)同意提供工程成果或效劳,客户那么同意作为回报付给提供商(承接商)一定的酬金。合同必须清楚地表述期望提供商(承接商)提供的交付物。工程合同对工程开发的双方都会起到重要的保障作用,作为保证工程开发方、客户方既可享受合同所规定的权利,又必须全面履行合同所规定的义务的法律约束,对工程开发的成败至关重要。图11.2合同管理过程(围绕合同生存周期,甲、乙双方就合同管理过程中的问题,关键是就合同争议、合同变更等达成共识)一般来说,在合同管理过程中甲、乙双方各自确定一个合同管理者,负责合同管理的相关工作。本书主要针对软件开发企业的工程管理,所以主要讲解乙方的合同管理。

11.3.1合同准备

企业作为供方,其合同准备阶段包括3个过程:工程分析、工程竞标、合同文本准备。以下分别介绍这3个过程。

1.工程分析

工程分析是供方分析用户的工程需求,并据此开发出初步的工程方案,作为下一步能力评估和可行性分析之用。工程分析过程如图11.3所示。图11.3工程分析过程(供方根据工程需求,完成需求分析,进行工程规模估算,在此根底上产生初步的工程方案,为下一步能力评估和可行性分析打下根底)2.工程竞标

工程竞标过程是供方企业根据招标文件的要求进行评估,以便判断企业是否具有开发此工程的能力,并进行可行性分析。可行性分析是判断企业是否应该承接此软件工程、工程是否可行的依据。首先判断企业是否有能力完成此工程,另外,判断企业通过此工程是否可以获得一定的回报。如果工程可行,企业将组织人员编写工程建议书,参加竞标。竞标过程如图11.4所示。图11.4工程竞标过程(供方根据需求分析报告,判断企业能力,并进行可行性分析;如果工程可行,将组织人员编写工程建议书,参加竞标)

3.合同文本准备

在合同准备过程中,一般由甲方提供合同的框架结构,并起草主要内容,乙方提供意见;有时,乙方可能根据甲方的要求起草合同文本,甲方审核;当然有时双方可以同时准备合同文本。合同文本准备过程如图11.5所示。图11.5合同文本准备过程(一般由甲方提供合同的框架结构,并起草主要内容,乙方提供意见;有时,乙方可能根据甲方的要求起草合同文本,甲方审核;当然有时双方可以同时准备合同文本)11.3.2合同谈判

合同谈判是甲、乙双方之间关于合同细节的谈判,在双方都投入了一定的资源后才进入这个阶段,双方都想通过谈判取得对自己最有利的条件。在软件工程中,一边开始准备软件开发工作,一边进行合同细节谈判的情况并不罕见。当然,这并不是甲、乙双方希望看到的情况,双方还是应该在工程的所有工作开始之前先签署工程合同。最终双方要签署合同文件,所以,双方必须就合同中的条款和条件达成全面共识。1.谈判内容

合同谈判一般集中在以下几个方面:

·软件的种类。包括定制的软件、定制的商用软件和买来就用的商用软件。

·工程内容和范围确实认。内容和范围管理就是为成功实现工程目标而明确规定工程的范围,即确定工程的哪些方面是应该做的,哪些方面是不应该做的。软件工程的内容和范围很难界定,双方在理解上可能存在偏差,因此需要进一步谈判,在签订合同前,最好形成关于软件工程内容和范围的书面文件来进行详细的说明。·验收标准。由于软件工程经常出现完工后迟迟不验收的情况,甲、乙双方互相推脱责任,因此在合同签署前,要制订一个符合实际的验收标准。

·工期和维护期。由于软件开发的不确定性,工作量难以估算,工期很难确定,维护期多长时间为宜也很难确定,工期和维护期确实定要有一定的灵活性,所以甲、乙双方对此也应进行协商。

·软件质量控制。软件开发需要遵循一定的标准,双方在谈判时要确定这些标准。在讨论合同时,可以标识出一些关键点,在这些关键点上,需要客户批准,工程才能继续进行。例如,可以将要开发的一个大型系统分割成多个增量,每个增量可以是一个接口设计阶段,在增量构建之前需要客户来批准这个设计,在不同的增量之间都有一个决策点。

在每个决策点,需要对软件开发企业给出的可交付物、客户所做的决策以及决策点的输出进行定义。软件开发企业和客户对决策点都负有责任。11.3.3合同签署

合同签署过程就是正式签署合同,使之成为具有法律效力的文件。合同的签署标志着一个软件工程的有效开始,这个时候应该正式确定乙方的工程经理。具体活动描述如图11.6所示。

这里需要说明的是工程任务书,必须明确工程的目标和必要的约束,同时授权给工程经理。工程任务书是工程正式开始的标志,同时也是对工程经理有效授权的依据。工程经理需要对任务书进行确认。图11.6合同签署过程(合同的签署标志着一个软件工程的有效开始,这个时候应该正式确定乙方的工程经理。工程任务书是工程正式开始的标志,同时也是对工程经理有效授权的依据)11.3.4合同履行

合同一经依法成立,就具有相应的法律效力,当事人双方就应当按照约定全面履行自己的义务。

1.履行原那么

在合同履行时,一般要注意以下原那么:

(1)全面履行原那么。全面履行原那么要求按照合同约定的标的及其数量、质量,以及合同约定的履行期限、履行地点、履行方式等,全面、正确、适当地履行合同义务。全面履行原那么要求履行的主体正确、履行的标的正确、履行期限、地点、履行方式适当。企业处于供方的环境,合同管理包括对合同关系使用适当的工程管理程序并把这些过程的输出统一到整个工程的管理中。主要内容包括:合同跟踪管理过程、合同修改控制过程、违约事件处理过程、产品交付过程和产品维护过程。

(1)合同跟踪管理过程。合同跟踪管理过程是供方跟踪合同的执行过程。合同跟踪管理过程如图11.7所示。图11.7合同跟踪管理过程(通过合同跟踪管理,可以及时了解工程的相关情况,对一些突发状况也能很好地应对)(2)合同修改控制过程。在合同的执行过程中,可能发生合同的变更,合同修改控制就是管理合同变更的过程。合同修改控制过程如图11.8所示。图11.8合同修改控制过程(发生合同变更,应该严格执行变更处理过程,否那么,很容易产生问题)(3)违约事件处理过程。如果在合同的执行过程中,发生与合同要求不一致的问题而导致违约事件,需要执行违约事件处理过程。违约事件处理过程如图11.9所示。图11.9违约事件处理过程(发生与合同要求不一致的问题而导致违约事件,也需要及时处理)(4)产品交付过程。产品交付过程是供方向需方提交最终产品的过程。产品交付过程如图11.10所示。图11.10产品交付过程(供方向需方提交最终产品,应该进行严格的审核,并由双方签字认可)(5)产品维护过程。产品维护过程是供方对提交后的软件产品进行后期维护的工作过程。产品维护过程如图11.11所示。图11.11产品维护过程(产品维护应该按照维护类型进行处理,有的维护并不需要即时处理)3.合同执行过程的管理依据

合同执行过程的管理依据主要有以下几项:

(1)合同文本。

(2)工作结果。作为工程方案实施的一局部,收集整理供方的工作结果(完成的可交付成果、符合质量标准的程度、花费的本钱等)。

(3)变更请求。变更请求包括对合同条款的修订、对产品和劳务说明的修订。如果供方工作不令人满意,那么,终止合同的决定也作为变更请求处理。供方和工程管理小组不能就变更的补偿达成一致的变更是争议性变更,称为权力主张、争端或诉讼。(4)供方发票。供给方会不断地开出发票,要求清偿已做的工作。开具发票的要求,包括必要的文件资料附件,通常在合同中加以规定。

11.3.5合同变更和解除

1.合同变更

合同变更,是指合同成立以后、履行完毕之前,由双方当事人依法对原合同的内容进行的修改。?合同法?规定,“当事人协商一致,可以变更合同。法律、行政法规规定变更合同应当办理批准、登记等手续的,依照其规定〞。根据这一规定,合同的当事人在变更合同内容时应当注意以下几点。(1)合同内容变更与合同订立一样,需要有一个要约和承诺的过程。在双方当事人未达成新的协议以前,原合同有效。如果达不成协议,在签订新协议过程中一方有过错的应当承担缔约过失责任。

(2)当事人在变更合同内容时,应当就因此引起的损失承担达成协议,以防止不必要的纠纷。

(3)当事人对合同变更的内容约定不明确的,推定为未变更。

(4)如果法律、行政法规规定合同变更应当办理登记、批准等手续,应依其规定办理有关手续,否那么合同可能不发生法律效力。假设法律、行政法规规定在办理登记、批准手续后才生效的合同,未办理有关手续之前不发生法律效力。2.合同解除

合同解除,是指合同有效成立后,在没有履行或没有完全履行前,因当事人的约定或法律规定,使基于合同发生的权利义务关系终止的行为。

合同解除有两种形式,一是协议解除,二是法定解除。

(1)协议解除。协议解除是指当事人通过协商一致解除合同关系。协议解除是基于当事人的意思而解除合同的一种形式,是一种双方的法律行为,是合同自愿原那么在终止合同关系时的一种运用形式。协议解除有以下两种情况。·事后协商解除。指在合同履行前或履行过程中,经当事人协商一致即可解除合同。使用这种解除合同的形式,当事人在协商时,应当就解除合同后的责任与损失的分担等内容一并协商。

·约定解除。指在订立合同时当事人就可以约定解除合同的条件,一旦条件成立,有解除权一方的当事人就可以解除合同。使用这种形式解除合同的,在约定条件时,要注意与违约责任和补救措施联系在一起。(2)法定解除。法定解除是指合同成立后,在没有履行或者履行过程中,当事人一方行使法定解除权而终止。法定解除是一种单方的法律行为,即当事人一方在法律规定的解除条件出现时,即可以通过行使解除权而终止合同。法定解除是法律赋予当事人的一种选择权,即当守约一方当事人认为解除合同对他有利时,可以通过解除合同来保护自己的

利益。

法定解除与协议解除不同,主要在于法定解除是当事人一方行使法定解除权的结果,在法定解除条件出现时,有解除权的一方可以直接行使解除权,将合同解除,而不必经过对方同意。协议解除那么是双方的法律行为,并非一方行使解除权的结果。合同解除与合同变更有许多相似之处,例如,都改变了原合同关系、原合同关系都不需再履行、法律规定的条件和程序也雷同等。但是,合同的变更与合同的解除是两个完全不同的法律制度,不可将其混淆。

11.3.6合同争议

合同争议,指当事人之间对合同的履行情况和不履行后果产生的争议。对履行情况的争议,一般是对合同义务是否履行,或者是否已经按照合同约定的要求进行履行产生的分歧。对不履行后果的争议,一般是对没有履行合同义务或者没有完全履行合同义务的责任,由谁承担和承担的方式、数量等的争议。3.争议的解决方式

当出现合同争议时,有以下几种解决方式:

(1)和解。指合同当事人发生争议后,在没有第三方介入的情况下,在自愿互谅的根底上,就已经发生的争议进行谈判协商并达成协议。和解具有不伤和气、方便灵活和节省费用等优点,是当事人首选的解决争议方式。

(2)调解。指由当事人双方都信任的第三者充当调解人,通过第三者的沟通,遵循公平和老实信用的原那么,按照法律、行政法规的规定,对争议问题达成一致。调解根据第三者身份的不同,可以分为民间调解、行政调解、仲裁调解和司法调解。11.3.7合同终止

当供给商或软件提供商全部完成工程合同所规定的义务后,工程组织负责合同管理的个人或小组就应该向供给商或软件提供商提交工程合同已经完成的正式书面通知。

在合同终止过程中供方应该配合需方的工作,包括工程的验收、双方认可签字、总结工程的经验教训、获取合同的最后款项、开具相应的发票、获取需方的合同终止的通知和将合同相关文件归档等。

一般合同双方应该在工程采购或承接合同中对于正式接受和终止工程合同有相应的协定条款,工程合同终止活动必须按照这些协定条款规定的条件和过程开展。

需要说明的是,工程合同的解除也是工程合同终止的一种形式。

11.4软件外包

1.软件外包的定义

软件外包就是把软件开发承包给第三方厂商而不是在公司内部开发。承包方在特定的领域有较丰富的经验,能够在给定的时间内投入足够的开发人员,并且备用一个大的程序库可提供重用源码。

软件外包能够缩短开发周期。复杂的软件开发工作需要消耗大量人力和时间,如果所有开发环节都在同一家公司内部完成,有的甚至需要消耗几年时间。如果外包给软件承接商,既可以节约人力聘用本钱,还能减少耗时,缩短开发周期,从而有效防止软件开发成果滞后或竞争对手相似产品已占领市场的被动局面。2)对承接方的好处

承接软件外包可获得较高利润。软件外包的承接方一般是人力本钱相对偏低的国家和地区。例如,中国和印度软件开发与测试工程师的平均工资比欧美同等级别人员的工资低很多。相对于发包方所在国家或地区的收入水平,虽然发包方对工程外包支付的价格偏低,但是接包国家或地区公司的总体收益水平却远远高于当地。

例如,美国A软件企业将某软件测试工程外包给中国B软件外包公司。按每个测试工程师工资每小时15美元计算,每天8小时,B公司每人每天为公司获得的劳务收入为120美元;月工作时间按22天计算,那么每人每月能为公司创收120×22=2640美元;按US$1 = RMB¥6.4的汇价可折算为16896元人民币。目前中国软件效劳外包公司的工程师工资大约为4000~8000元人民币,剔除营运本钱和各种税费,B公司最终可获35%以上的纯利润。

这一利润水平对我国软件开发行业的诱惑力相当巨大。因为,我国目前由于软件行业竞争过于剧烈导致的竞相降价争夺“招标工程〞倾向和通用软件盗版的恶劣影响,造成中国软件开发行业整体利润已下滑至5%,远远低于企业正常开展净利润高于11%的平均水平。加强企业管理。外包企业参与国际分工协作,面临国际性的竞争,企业不仅仅要建立按照国际惯例标准的企业运行操作制度,更多企业争取到达国际认可的质量和管理标准来提高在国际市场的竞争力和信誉度,如ISO9000系列、CMMI(CapabilityMaturityModelIntegration,软件能力成熟度模型集成)等。

规模和产业化。软件外包促进企业自身的完善和开展,同时也促进软件产业的开展。软件产业成为了人力资源丰富国家的新型产业,不仅仅带来税收、创造就业、推动国内软件产业的需求和开展,还带动相关联的其他效劳行业的开展,例如,教育培训等。各个国家都相当重视,印度专门成立由前几任总理为领导的软件产业开展机构,中国那么可以看到遍布全国各大城市的软件产业园。3.软件外包管理过程

一般在立项阶段,工程经理应当与系统分析设计人员及其他相关人员对系统、资源、本钱等进行充分的讨论与分析,然后做出自主开发、外包或购置的决策,确定待开发软件系统的哪些局部应当“采购〞、“外包〞或“自主开发〞。如果需要外包开发,那么需要成立外包管理小组,确定外包合同经理。软件外包管理过程如图11.12所示。图11.12软件外包管理过程(软件外包可以有效转移工程风险,但又依赖于承包商的能力,因此,对承包商的选择和过程监控需要尤其关注)1)制订外包管理方案

外包管理小组负责整个外包的事宜,根据工程需求要定义外包需求、筹划外包承包商的选择、外包合同的拟定、推荐并管理各外包工程监理、执行外包合同、监控工程进展、积累外包获取的财富、量化评估外包承包商的业绩和维护外包承包商关系记录等。

2)选择承包商

选择承包商包括竞标邀请、评估候选承包商的综合能力和确定承包商三个阶段。3)签订外包合同

外包管理小组和承包商就?外包开发合同?的主要条款进行协商(谈判),达成共识,然后按照指定的模板共同起草?外包开发合同?。外包管理小组和承包商仔细审查?外包开发合同?中的每个条款,确保合同没有错误和隐患。合同双方的代表(具有法律效应的人)在?外包开发合同?上签字,此后合同生效。4)监控外包开发过程

双方签订合同后,外包管理小组不等于等着验收成果,而是应当主动监控外包开发过程,否那么风险太大。外包管理小组定期(例如每两周一次)检查承包商的开发进展情况,并记录到?外包开发过程监控报告?中。检查的重点是:·实际进度是否与方案相符?

·承包商的投入(人力、物力、财力)是否充分?

·工作成果的质量是否合格?

外包管理小组应当催促承包商纠正工作偏差。如果需要更改合同、产品需求或开发方案,那么按照变更控制规程处理。5)成果验收

外包合同的成果验收流程包括验收准备、成果审查、验收测、问题处理和成果交付。

·验收准备。承包商将待验收的工作成果准备好,并将必要的材料提前交给

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论