软件外包项目管理5 - 项目实施

Posted Rolei_zl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件外包项目管理5 - 项目实施相关的知识,希望对你有一定的参考价值。

项目准备(筹备)- 项目启动 - 项目计划,万事俱备,开干。

实施,按项目需求进行需求、设计、编码、测试、交付,标准的流程和过程。

从项目角度看,软件外包项目与一般性的项目在实施阶段并没有实质区别,每个项目的关注重点有所侧重。
为什么要进行软件外包?专业的人做专业的事,以高效、高质、低成本的完成项具,因此软件外包项目的实施更侧重于成本控制和交付质量。

是传统的瀑布开发模式?还是敏捷开发模式? -- 以下图片来自网络

如论选择什么样的开发模式,采用什么样的管理方式,都是形式和工具。
    围绕需求、设计、开发、测试核心过程,项目实施:
    目    标:交付
    关注点:高质、高效交付

瀑布开发是大包杆式的交付方式,只有一次输入和一次输出,成则皆大欢喜,败则重新来过。
敏捷开发是小步快跑的交付方式,多次输入和多次输出,每次交付完成特定的任务,积少成多。

如果把瀑布开发的项目分成多期、多阶段完成呢?与敏捷开发有什么区别?
比如中国的航天事业,如果最初的目标是空间站建设;在实现的过程中又分为了升空、载人、出舱等不同的阶段,因此有了我们看到了神1、神2。。。。。

  • 瀑布开发方式 -- 瀑布模型、V模型、W模型、X模型、螺旋模型、H模型

 ​​​​​​  

  

  • 敏捷开发模式
  • 区别
     
  1. 需求 -- 明确方向,知道真正要做什么
    理解需求是第一步。需求方 与 开发方的第一次协作和较量。
    首先,搞清楚客户提到了什么,要说明了什么,然后真正的理解客户要做什么:显示需求 + 隐式需求
    其次,明确项目要做什么、怎么做,用什么技术实现,用什么方式实现
    最后,将客户需求用开发者(实现者)的语言进行说明:功能性需求 + 非功能性需求 + 验证标准
    * 需求阶段的难点在于需求分解:能否真正的理解真的客户需要、细化需求
    * 需求阶段最大的影响因素是人:终端用户、项目发启方/购买方、项目开发方
    * 多方沟通是需求阶段的重要活动,语言是困扰沟通的最大障碍:每一方都有自己的利益,每一方都有自己的行业语言和说话方式,每一方都在用自己喜欢的方式表达自己的意图
    * 该听谁的?谁说的是对的?怎么难证最终做的是对的?所有的一切都要尽可能的在需求阶段澄清:
       如果需求方清楚的知道自己要什么,并且能清楚、明确的描述,这是项目的极大幸运,照做就好;                                     
       如果需求方知道但不能清晰的描述,或是根本就不知道自己要什么,这个时候只能寄希望于开发方的有足够的行业经验引导客户,有足够的能力挖掘客户真正的需求。
    需求要谁参与:需求提出方(终端用户+项目用户) + 开发方/服务提供方(需求+设计+开发+测试+运维),我们希望是所有的利益相关方都能加入进来
  2. 设计 -- 确认方式,知道如何实现、用什么实现
    * 架构设计:特理结构、系统构成、技术和实现框架、功能性和非功能性划分
    * 概要设计:模块划分、数据结构
    * 详细设计:功能细节、输入、输出、数据组成
  3. 编码
    * 业务实现:基于需求 -> 需求分解(功能 + 非功能)-> 设计,使用确认的技术实现既定的业务 
    * 代码规范
    * 代码检查
    * 阶段展示和沟通
  4. 测试
    * 单元测试:功能单元
    * 集成测试:接口
    * 系统测试:数据和业务流
    * 非功能性测试:可用性测试、易用性测试、性能测试、安全测试、容错和灾备
  5. 交付
    * 交付物检查
    * 客户验收
    * 正式交付

以上是关于软件外包项目管理5 - 项目实施的主要内容,如果未能解决你的问题,请参考以下文章

在ERP软件行业项目应该怎么做?

工业项目实施-URS(用户需求说明)

我眼中的软件项目实施

一个实施 + 一个软件负责人 = 项目经理?

一个实施 + 一个软件负责人 = 项目经理?

我眼中的软件项目实施