1.软件外包
软件外包是一种针对软件的需求活动,是一个公司把自己的部分或者全部的软件项目交给外包公司完成,达到降低成本的目的。当前,软件外包有狭义与广义之分,狭义的软件外包是指与软件开发、测试直接相关的外包服务,广义的软件外包是在狭义的软件外包概念的基础上,又添加了与IT间接相关的业务。
我国工业和信息化部也对软件外包进行了定义,指软件外包是一种依托于信息技术的服务模式,是企业将原先由企业内部承担的信息技术相关的活动交由外部专业服务商的知识劳动力完成,从而可以使企业将有限资源投入到核心竞争力建设,实现降低成本、提高效率、增强企业应变能力等目标。
![软件外包 软件外包](//ziboxinyan.com/FileUpload/ueditor_s/upload/2022-8/4/63795204865675.jpg)
2.软件外包分类
根据业务性质,目前软件外包可以分为信息技术外包(ITO)、业务流程外包(BPO)和知识流程外包(KPO)三类:
(1)信息技术外包(ITO)
企业将部分或全部信息技术类服务外包给信息技术服务商。
业务内容:软件研发、测试服务、集成电路设计、电子商务平台、信息系统运营维护等
(2)业务流程外包(BPO)
企业将基于信息技术的业务流程的设计、管理、运营、维护等外包给外部专业化服务提供商。
业务内容:企业业务流程设计、内部管理数据库服务、供应链管理数据库服务等
(3)知识流程外包(KPO)
企业将业务中的知识创新和研发等高技术含量的环节外包给外部专业公司。
业务内容:知识产权研究、医药和生物技术研发及测试、产品技术研发等
3.软件外包过程
从过程方面来看,软件外包主要分为7个步骤:
①识别决策。项目中需要外包的软件服务内容,应在主项目投标前开始决策和部署,通过分析、评估、论证、收益计算等方式,从必要性、可行性、经济性确定是否外包。
②需求确认。在项目实施初期,应尽早明确需求,明确最终用户对目标软件系统在功能、性能、设计约束等方面的期望,形成《需求规格书》,分包部分软件系统较复杂的,应与外包商共同对接需求。
③概要设计。将用户需求变换成用于构造软件的整体视图,从功能实现的角度,对体系结构、命名规则、功能模块、数据库和接口等进行概要设计,形成《概要设计文档》,总包商应参与《概要设计文档》评审,必要时邀请最终用户共同参与。
④详细设计。将概要设计的结果进一步细化为面向编码实现的目标的精准描述,提供编码实现,必要时总包商应参与《详细设计文档》评审。
⑤软件开发计划。对软件开发的日程安排、资源需求、风险控制、项目管理等各方面组织部署安排,并形成《软件开发计划》,开发计划应得到总包商认可,并满足总包合同的计划节点。
⑥编码及测试。由承包商进行软件编码和软件测试,编写《软件源程序文档》和《软件测试报告》,必要时总包商应参与测试。
⑦外包验收与交付。由总包商或承包方组织,必要时邀请最终用户,根据外包合同、《需求规格书》、《测试计划》、《验收方案》等进行测试验收,并出具《软件验收报告》。
以上梳理了软件外包的定义、分类及过程,希望对你有所帮助,如果你想了解更多相关内容,敬请关注三个皮匠报告的行业知识栏目。
推荐阅读:
中国有哪些软件公司?2022中国十大软件公司排名一览
什么是软件外包?好处有哪些?类型介绍
2021年来软件行业最新政策一览