返 回

关于软件外包的几点感受

行业软件部 杨鹏

1、外包是一个产业不是项目

1)需要促成整个产业链的构建和形成tc "1)需要促成整个产业链的构建和形成"

我们作为外包的服务提供者,现阶段我们下游缺乏实用人才供给方,上游缺乏外包项目提供者。所以我们需要获得具备市场、语言、技术、管理等方面专项素质和综合素质的人才;需要向国际和国内市场进行宣传和推广,并获得IT服务外包订单。

2)需要人才培养

虽然现阶段我们在人力成本上具有一定的竞争力,但是在技术水平高、外语水平强、项目管理有经验的复合型人才较少,特别是实用型、标准化、工程化的软件外包人才比较缺乏,这些都会影响软件外包的进一步开展。

2、外包需要合格工程师

什么是工程师:遵守规范,协同工作,保证质量,关注目标,节约成本。任何一个工程师在同一个岗位生产出来的东西,应该是同样质量的同样性能的。

工程师应该具备的一些素质

1)团队精神和协作能力

积极主动的参与项目工作。比如:不仅关注个人的工作,还要关注项目进度,项目质量,关注项目团队存在的困难,积极参与各次关键性的评审会,并尽力提出自己的意见。工程师应该积极主动的共享自己的知识和能力,帮助项目组成员,达成项目目标。

2)文档习惯

外包这种模式可能使一个项目的工作地域扩大到全世界。而项目中大到每个阶段的工作的讨论和评估,小到一个问题的研究和讨论,最基础的沟通手段就是文档,有了文档才会有讨论的基础,有了文档才能保证项目状态是可知的可控的,项目中存在的问题才是可被追踪。这也就是CMM为什么要做那么一大堆文档的理由?工程师应该有习惯对工作、成果、会议、讨论进行详细的记录。

3)规范化,标准化的代码编写习惯

工程项目是团队合作的工作,要保证各个分工者的工作成果能够保持一致性,就必须要求每个参与者必须遵守一样的规范和标准。工程师应该是规范的最佳执行者。

4)专业精神

作为整个项目的参与者,明确自己的定位和目标,自己的角色和责任。并应该表现出本角色应有的专业的能力。比如如果作为设计者就需要有最好的需求理解能力和系统设计能力,需要花大量的时间和精力阅读需求文档,并和需求分析者进行足够的沟通,准确理解需求后,能够很好的进行需求的抽象和概括,来进行系统的模型设计。如果是开发者则需要有最好的实现能力,并可以最快最准确的理解设计者的意图将其实现。

5)敬业精神

注意自己的承诺,并为此承担责任。例如:一个软件的功能模块的提交,工程师应该明白提交的概念就是一种承诺,承诺本模块我是经过自己的测试的,我认为是没有错误的。当然真正要有这样的信心来承诺,的确是需要很细心的测试的。工程师应该保证他所生产的工作产品是尽其所能的最好的东西。

6)学习精神

学习精神是必不可少的,不仅仅是技术上的学习,还必须面临具体的业务知识的理解和学习,新的工作方式的学习和适应等等。