步骤1

衡量外包对你的公司是否有意义。在分析是否需要将你的工作进行外包的阶段,对本公司现有的业务做好基准调查以判定它们在多大程度上符合行业标准。或许,自行开展离岸业务——在其他地区建立离岸IT资源更合算。

步骤2

确认合作伙伴。当你开始将你的运营或特定项目的一部分外包时,一定要与你的团队坦诚相见并开展讨论。你还应考虑引入一位第三方外包专家助你做好选择并开展谈判。

步骤3

进行合同谈判。牢记合同谈判的三个关键要素:一开始就为合同终止做好计划;外包合作方也必须赢利;谈判时基于成本,最终决定时则着眼于质量和人。毋庸赘言,这一阶段也是起草各方都能信守的、牢不可破的服务协议的时候。

步骤4

保持合作关系稳健。要让每位参与者都对外包项目或服务愉快接受并坦诚相待,考虑引入一家独立公司开展质量评估。还有,别忘了就算你把项目外包了,你仍是它的主人。作为CIO,你必须始终为进程监管、项目顺序安排及总体方向负起全责。

流程

一个完整的软件外包项目流程包括:需求分析、总体设计、详细设计、开发编程、测试分析、系统整合及现场支持。

1.需求分析:建立合作意向后,我们首先会对客户要求有详尽的了解,准确知道客户需求、客户的商业模式和业务流程 ,并结合自身的经验,为客户提出改进建议。

2.总体设计:在需求确定并获得客户认可后,由系统设计师进行系统架构设计,并与客户一起制定项目实施计划。

3.详细设计:由程序设计人员根据系统架构,真对不同模块的功能和规格进行详细设计。

4.开发编程:由程序员根据详细设计及计划,进行软件程序代码的编写。

5.测试分析与系统整合:不同模块的编程工作完成后,经过测试,并进行系统的整合。

6.现场支持:软件系统开发最终完成后,到客户现场进行安装、调试、培训。

7.系统运行支持:在系统投入运行后,我们可以为客户进行长期系统的维护,除了保证系统的正常运行外,还要根据客 户的业务变化以及使用过程中发现的问题,对系统进行修改。由于软件的开发存在着风险。通过制定完整的项目控制方案,回避风险,提高工作效率,增加软件项目研发的成功率。 软件项目控制根据软件工程的基本原理,从需求、设计到编码、测试及实施维护,采用瀑布模型对软件研发整个过程进行控制。

IT外包一定要按着程序流程做的更多相关文章

  1. Linux服务器模型及其对应的程序流程

    一.TCP循环服务器 TCP循环服务器一次只能处理一个客户端的请求,处理完成后,才能接受下一个客户端的请求,程序流程如下: socket(......);//创建套接字 bind(......);// ...

  2. [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套

    一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...

  3. Java变量&&简单程序流程&&循环

    变量:强类型局部变量: 1.先赋值,后使用 2.作用范围:从定义开始,到所在代码块结束 3.重合范围内不允许重复命名 数据类型(8中基本类型) byte 1B -128~127 short 2B -3 ...

  4. Java 基础 程序流程控制 (下)

    Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...

  5. Java 基础 程序流程控制 (上)

    Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...

  6. Java基础之程序流程控制

    Java中的程序流程控制 Java中的程序流程分为三种结构:①顺序结构:②分支结构:③循环结构 一.顺序结构 Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量. ...

  7. 4. Scala程序流程控制

    4.1 程序流程控制说明 在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句,顺序控制,粉质控制,循环控制 温馨提示:Scala语言中控制结构和Java语言中的 ...

  8. 通过官方API结合源码,如何分析程序流程

    通过官方API结合源码,如何分析程序流程通过官方API找到我们关注的API的某个方法,然后把整个流程执行起来,然后在idea中,把我们关注的方法打上断点,然后通过Step Out,从内向外一层一层分析 ...

  9. Python Select模型(程序流程)(转)

    缘由 之前写socket的CS模型代码,都是利用最原始的多线程方式.服务端是主线程,接到客户端的连接请求就从线程池中获取一个线程去处理整个socket连接的所有操作,虽然在连接数较短的情况下没有什么影 ...

随机推荐

  1. CSS3之Border-radius

    1.属性介绍 border-radius:none|12.3px,取值不可为负数,表示边框圆角 相关属性:border-top-right-radius , border-bottom-right-r ...

  2. Caused by:org.hibernate.DuplicateMappingException:Duplicate class/entity/ mapping

    1.错误描述 java.lang.ExceptionInInitializerError Caused by:org.hibernate.InvalidMappingException:Could n ...

  3. C# 对象数据转换Json帮助类 JsonHelp

    C# 对象数据转换Json帮助类 JsonHelp using System; using System.Data; using System.Configuration; using System. ...

  4. 芝麻HTTP:代理的基本原理

    我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么美好,然而一杯茶的功夫可能就会出现错误,比如403 Forbidden,这时候打开网页一看,可能会看到&qu ...

  5. Text Document Analysis CodeForces - 723B

    Modern text editors usually show some information regarding the document being edited. For example, ...

  6. AndroidStudio 集成litepal 报错

    E/AndroidRuntime(24972): org.litepal.c.b: can not find a class named org.litepal.model.Table_Schema ...

  7. 白话讲述Java中volatile关键字

    一.由一段代码引出的问题 首先我们先来看这样一段代码: public class VolatileThread implements Runnable{ private boolean flag = ...

  8. 【BZOJ4805】欧拉函数求和(杜教筛)

    [BZOJ4805]欧拉函数求和(杜教筛) 题面 BZOJ 题解 好久没写过了 正好看见了顺手切一下 令\[S(n)=\sum_{i=1}^n\varphi(i)\] 设存在的某个积性函数\(g(x) ...

  9. 【BZOJ2693】jzptab(莫比乌斯反演)

    [BZOJ2693]jzptab(莫比乌斯反演) 题面 讨厌权限题,只能跑到别的OJ上交 和这题是一样的 多组数据 求\[\sum_{i=1}^n\sum_{j=1}^mlcm(i,j)\] 题解 前 ...

  10. 【BZOJ3531】旅行(树链剖分,线段树)

    [BZOJ3531]旅行(树链剖分,线段树) 题面 Description S国有N个城市,编号从1到N.城市间用N-1条双向道路连接,满足 从一个城市出发可以到达其它所有城市.每个城市信仰不同的宗教 ...