步骤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. ARM-LINUX自动采集温湿度传感器数据

    开机root自动登录 如果想在超级终端输入回车,登录后执行,则可以在/etc/profile中加入命令: 如果实现开机自动登录,在/etc/inittab中修改,每个开发板修改的方式可能都不同. ht ...

  2. <CEPH中国-深圳站-技术交流会演讲PPT> YY云平台Ceph Block应用实践 & 我写的书 《CEPH实战》

    YY云平台Ceph Block应用实践 http://s3.yyclouds.com/public/YY%E4%BA%91%E5%B9%B3%E5%8F%B0Ceph%E5%AE%9E%E8%B7%B ...

  3. linux lnmp搭建及解释

    lnmp的搭建linux nginx mysql(mariaDB) php 安装mysql依赖:yum -y install cmake(cmake编译工具)yum -y install gcc gc ...

  4. VC6安装错误——Error Launching acmboot.exe

    因项目需要,我需要安装Microsoft Visual C++ Professional Version 6 SP5.但是在安装时运行安装目录下的setup.exe,出现Error Launching ...

  5. OkHttp拆解之调用流程图

  6. HI3531uboot开机画面

    startvo 0 36 13; startgx 0 0x88000000 1600 0 0 800 600; //startgx 0 0x88000000 2048 0 0 1024 768; se ...

  7. ip2long的用法

    ip2long:将IPv4的ip地址(以小数点分隔形式)转换为int Description int ip2long ( string ip_address ) 如果ip地址非法,返回FALSE(PH ...

  8. tcp为什么要三次握手,而不能二次握手?

    谢希仁版<计算机网络>中的例子是这样的,"已失效的连接请求报文段"的产生在这样一种情况下:client发出的第一个连接请求报文段并没有丢失,而是在某个网络结点长时间的滞 ...

  9. Canada Cup 2016 D. Contest Balloons

    最近好弱做什么题目都是做一晚上 这是合肥站炼铜后遗症? 这题就是贪心 我已开始还写了1小时---三分-----. #include<bits/stdc++.h> using namespa ...

  10. Mybatis if test 中int判断非空的坑

    Mybatis 中,alarmType 是int类型.如果alarmType 为0的话,条件判断返回结果为false,其它值的话,返回true. <if test="alarmType ...