软件服务外包协作平台的设计与实现

时间:2022-09-16 09:10:59

软件服务外包协作平台的设计与实现

引言:近年来全球软件服务外包市场快速发展,但国内的软件服务外包产业在发展上仍然存在很多制约,软件园规模偏小,产能不足,管理水平不到位,在软件协作方面,只在局部小范围内开展,数据没有统一,无法实现在线编码,因此,开发出一个具有现代化管理水平的软件服务外包协作平台,加强软件开发流程化和协作化,实现软件项目自动化,就变得非常紧迫,本文对软件服务外包协作平台的设计与实现进行了探讨。

软件服务外包(Software Outsourcing)指的是发包方(即服务外包提供商)以合同的形式,通过提供信息技术外包(UNO)和业务流程外包(CTO)将软件开发业务委托给专业化的软件公司(既服务外包接包商)去完成,以获得高质量、低成本的软件产品的一种业务管理模式[1]。

近年来全球软件服务外包市场每年以29%的速度增长,2008年的规模是700亿美元,2009年增长到900亿美元[2]。全球软件服务外包市场的快速发展,为我国软件产业和软件服务外包产业的发展提供了空前的历史发展机遇,成为了我国软件产业向产业链高端提升的重要途径。北京、上海、南京等多个城市陆续建成“中国服务外包合同中心”和国家级软件园区,重点发展国际离岸软件服务外包业务。2009年我国软件外包市场达到46亿美元,软件服务外包成为我国信息产业新的增长点[3]。由于这一产业具有智力人才密集、技术承载高、附加值大、资源消耗低、环境污染小、国际化水平高等特点,所以它已成为了当前新一轮产业转移的重要推动因素,对我国企业蕴藏了巨大的发展机遇。

软件服务外包行业属于技术密集型兼劳动力密集型行业,对提高我国信息技术发展水平,改善就业又具有特别重要的意义。但在发展上仍然存在许多制约:软件外包产业在中国发展时间短,中高端开发项目经验积累较其他软件外包大国仍显不足;软件园规模偏小,产能不足,技术研发与项目管理都受到相当的限制,对发包单位的吸引力不大,可信度不高;产业链不完善,国内大多外包公司都是以类似作坊的形式,扮演着软件开发定制一条龙服务的角色,产业内尚未出现精细分工的企业[4]。软件服务外包协作管理水平也跟不上,尽管软件园区或多或少的使用一些办公软件或协作软件,在基本上是以办公软件为主,在软件协作方面,只在局部小范围内开展,数据没有统一,开法实现在线编码。

在软件产业全球化的今天,必须实现软件外包服务的软件开发流程化和协作化,加强软件企业的分工合作,降低成本,提高软件园区内企业的核心竞争力和软件园的整体竞争力,增强国际认可度。为达到到这一目的,开发出一个具有现代化管理水平的软件服务外包协作平台,加强软件开发流程化和协作化,实现软件项目自动化,非常有必要,通过系统平台支持用户在任何时间任何地点在线进行项目合作开发,多企业进行对同一个项目开发过程中方便地交流与协作,真正实现软件项目协作无缝开发。

1.系统求分析

建立软件服务外包协作平台是为软件园区内的外包服务企业提供了一个将整个开发环节的工作流程化、标准化的类似工业制造流水线的软件交互平台,覆盖整个软件生命周期,为园区企业开展软件开发和评测业务提供有效支撑,至少应该能达到下列要求:

(1)能够进一步降低园区外包企业外包管理成本,增强竞争力。

(2)为项目组成员及管理人员提供快捷的项目管理服务。

(3)用户可以在服务器上保存相关文档,并与项目组成员进行协作开发和在线交流。

(4)项目组成员能即时查看项目所处阶段以及完成情况。

(5)能帮助管理员对项目组成员进行工作分配。

(6)可在园区网上及Internet网上运行。

(7)统一的数据标准,较少的数据冗余和可靠的数据完整性。

(8)具有较强的功能扩充性。

另外,平台力求建立起一个以交付界面为核心,集协作开发、项目管理和项目组成员分配功能于一体,同时满足在线编码,支持多种格式文档上传下载浏览并支持项目组成员直接交流的多用户在线协作交流等要求。

2.系统设计

企业在接到一个项目后,将项目进行模块划分,根据任务的不同分配给不同的企业,多个单位多个任务并发进行将大大减少开发时间,节约开发成本提高经济效益,在开发项目的同时及时对项目进行跟踪,检测以提高软件质量满足客户要求。各个企业的分工并发合作所产生的只是订单的部分功能,提供一个平台衔接成品的各个功能,使其成为一个完整的项目。技术的交流在软件开发中显得至关重要,因此交流协作功能的实现能及时处理软件存在的问题,缩减开发周期。开发环境的搭建是软件开发的基础,软件园内各个企业相互交流共享软硬件资源,不但能节约开发成本,对软件园团结合作的整体形象有很大的促进作用。

基于上面考虑,参照工业生产流水线方式,该系统平台的用户分别为发单企业、接单企业、园区企业等对应的相关负责人和开发人员,相应的权限由管理员设定。对每一个项目进行按开发阶段进行工作分配,这样能够将一个项目分配给多个企业(成员)进行开发,每个项目组成员只需负责完成自己分配到的工作即可,当所有参与此项目的工作均完成后,则项目进入下一个开发阶段。根椐实际软件公司的协作关系,可以把系统划分为项目管理平台模块、企业管理平台模块、在线交流平台模块、环境协作平台模块,具体如下:

项目管理平台:各个公司的项目经理通过其管理员身份将项目接下之后,在各公司内部进行开发工作,并且将每天的开发进程做成工作日志(日志包括项目进度,所遇到的问题,解决方案,是否解决,问题提出人等)由项目经理上传至平台服务器,发包团队可在平台下载各个公司每天的工作日志进行核查,并将总得项目进度发于接单中心的交流平台,客户通过登入后便可查询自己项目的进展状态,当所有项目都完工时,各公司项目经理将各项目上传至服务器,发包团队项目经理登录后将所有项目原码下载进行整合及测试,错误部分则及时反馈给承接公司进行修改,测试合格后将软件项目发给发包方。

企业管理平台:各个公司在对各自的项目进行研发时,假如在人才经验,设备技术方面发生欠缺,其公司的项目经理可在企业管理平台需求信息,对技术人才和设备进行短期的租赁。

交流平台:园区内部工程师技术与问题的交流的论坛区,各公司的工程师只要在协作平台进行注册之后均可在该趋于发表问题和对相关技术进行讨论。

环境协作平台:每个项目都需要特定的环境平台,接包团队在对项目进行深入了解后将所需的软件和硬件环境公布于环境协作平台。在软件协作方面不仅能协作开发,同时应该满足在线编码。系统的功能如图1所示:

3.实现方案

本网站平台采用MVC设计模式,通过模型(model)-视图(view)-控制器(controller),支持网站三层架构中的数据罢、表现层、业务逻辑层。网站使用spring+Struct+Hibernate,实现了表现层和业务逻辑层,spring充当了管理容器的角色,Struct框架能很好得分离了显示层和业务逻辑层,降低耦合性, Hibernate则很好得完成对数据层的数据持久化处理的重任。在业务逻辑层中对数据库的访问,由Hibernate对JDBC进行了非常轻量级的对象封装来完成,达到了对象与数据库直接的映射,使得对数据库的持久化操作更加方便、安全,在数据层使用sqlserver2008作为数据层的支持。网页中内嵌用java开发的application,在Java Applet中,可以实现图形绘制,字体和颜色控制,动画和声音的插入,人机交互及网络交流等功能,实现了人性化的协作平台上的项目管理控制服务。

参考文献

[1] 黄慧.中国服务外包产业的发展及策略分析[D].北京:对外经济贸易大学.

[2] 刘财辉,刘福来. 基于“服务外包”的高师院校计算机专业人才培养模式的思考[J] .计算机教育,2010(10).

[3] 刘辉,石程.我国服务外包产业经济效应分析―以软件外包行业实证分析为例[J].南华大学学报(社会科学版),2013,11(2).

[4] 苏昭,吴金舟.软件服务外包研究综述[J],科技广场,2013(6).

作者简介

欧阳(1993-),女,汉族,浙江温州人,温州大学数学与信息科学学院,本科在读,从事信息管理研究。

何明昌(1964-),男,汉族,广西贺州人,硕士,温州大学数学与信息科学学院副教授,从事数据库研究,指导教师及通讯作者。

基金项目

国家级大学生创新创业训练计划项目(项目编号:201210351014),温州大学创业教育教改项目(项目编号:2013JG01),温州大学系列教项目(项目编号:12jg10A),浙江省大学生新苗计划项目(2013R424013)。

(作者单位:温州大学数学与信息科学学院)

上一篇:整合蒙、汉、英“三语”教学,提升民族学校办学... 下一篇:小鸭子学本领