林锐的软件工程IDP读书心得

来源:互联网 发布:股票网络销售好做吗 编辑:程序博客网 时间:2024/05/17 01:27
林锐的软件工程书还是不错的,最近读完了他的IDP软件工程一书,IDP其实是他提出的一套基于CMM等理论剪裁的
集成软件开发过程,有不少模版.下面笔记重点的过程,并加以改进之.

分四个阶段

1 营销过程
   这个过程主要是产品的立项,创意,与客户订合同,投票,宣传等.
  1.1   产品构思和调研
           产品经理负责产品构思,首先要想清楚“产品有什么功能”、“目标客户是谁”、“最终用户是谁”、“如何盈利”等宏观问题,然后撰写更加详细的《产品需求说明书》。
              产品调研

产品经理负责产品调研,调研的目的是为产品构思和立项管理提供充分的、有价值的信息。如果不做调研的话,那么产品构思和立项管理都建立在空想之上,主观臆断的成分就很多。调研的主要内容有:

²        市场调查;

²        政策调查;

²        同类产品调查;

²        竞争对手调查;

²        客户(和最终用户)调查
 调查研究后,产生《产品调研报告》
1.2  产品体验和宣传销售
    

在产品开发过程中,产品经理要经常和开发人员交流,及时了解产品开发进度和工作成果。如果产品经理发现开发工作偏离了产品需求,应当及时和开发人员沟通,纠正偏差。

 

当产品开发测试完成,产品经理负责宣传事务:

Ø         撰写产品介绍文件(一般为ppt文件)。

Ø         在本公司网站制作本产品的宣传网页,设法在更多的网站发布产品信息。

Ø         可能需要设计和制作宣传页(印刷品)。

产品经理对本公司的销售人员进行产品培训,使销售人员充分了解本产品的特性,然后销售人员向潜在客户推销本产品。
1.3  合同项目销售
    

关键活动

主要工作成果

主要责任人

接触客户

客户和合同项目的情报

销售人员

售前可行性分析

《售前可行性分析报告》

销售人员和机构领导

投标答辩

《投标书》

销售人员和技术支持人员

签订合同

《合同》
《合同项目需求说明书》

销售人员


1.4 客户沟通和项目验收
   

销售人员和客户签订合同之后,并非万事大吉、等着项目完成后收钱。由于合同项目开发过程中存在各种各样的风险,需要项目经理(和销售人员)及时介入。

“客户沟通和合同验收”过程域的主要活动是“消除摩擦增进关系”、“评审成果控制变更”、“项目验收”和“发掘商机”

2 项目管理过程
  2.1   立项管理
     

关键活动

主要工作成果

主要责任人

自主产品立项申请

立项申请书,
产品需求说明书,产品调研报告

产品经理

合同项目立项申请

立项申请书,
项目需求说明书,相关合同文本

合同项目的销售专员

立项评审

立项评审报告

立项评审委员会

项目筹备

项目总体计划

机构领导,项目经理


2.2 结项管理
   包括结项申请,结项平谷,关闭项目
2.3 项目规划与监控
    

项目规划(Project Planning)是指对本项目的人力资源、任务进度、费用、设备资源等做出合适的安排,制定出一些计划(包括宏观的和细节的),使大家按照计划行事,最终顺利地达到预定的目标。

项目监控的目的是将项目实际进展情况与项目计划进行对比,如果发现某些因素(如人力资源、任务进度、费用、设备等)的偏差比较大,那么及时分析原因,给出纠正措施。

项目监控至少有两个好处:(1)避免原本合理的计划在实施过程时落空;(2)避免“执迷不悟”地按照原本不合理的计划行事。

    该阶段包括:制定项目计划,人员管理,任务进度管理,项目成本管理,设备管理.
2.4 风险跟踪和变更控制
    风险跟踪的关键活动是“识别风险”、“处理风险”、“关闭风险”。
   变更控制的关键:“变更申请”、“变更审批”、“执行变更”。

3 项目开发过程
   3.1     需求开发与管理
    

关键活动

主要工作成果

主要责任人

需求调研
需求分析
需求定义

《需求调研记录》
《产品需求说明书》或
《合同项目需求说明书》

需求分析员

需求评审确认

需求评审报告,签字确认

开发方和客户方的责任人

需求细化跟踪

需求跟踪表

需求分析员

需求变更控制

需求变更控制报告

开发方和客户方的责任人


3.2 软件系统与设计
  软件系统设计的主要内容有体系结构设计、用户界面设计、数据库设计和模块设计.出来的成品有<系统设计说明书><模块设计说明书>
3.3 模块开发与集成
   

增量模式的模块开发和集成流程如图5-4所示,主要内容有:“模块需求细化”、“模块设计”和“模块实现和集成”。此阶段出来的
产品有<模块需求说明书><设计说明书>软件的代码

3.4 测试与改错
   

测试与改错的目的是在给定的项目条件下(人员、时间、工具等限制)尽可能地找出软件中的缺陷,并及时消除这些缺陷。

  关键活动是“准备测试”、“执行测试”和“消除缺陷”。
   产品有<测试用例><测试报告>
3.5 软硬件系统集成
   

软硬件系统集成既可能是客户的需求(合同项目),也可能是本公司的应用需求。软硬件系统集成的一般流程如图5-6所示,关键活动是“系统集成方案设计”、“选择设备供应商”、“设备采购和验收”和“设备安装调试”
3.6 部署试用
   部署试用过程域的关键活动是“撰写文档”、“软件部署”、“客户培训”和“客户试用”,
  出来的产品有<部署说明书><安装和使用手册>
3.7 软件维护
   

软件维护可以划分为两大类:

Ø         纠错性维护。由于前期的测试不可能揭露软件系统中所有潜伏的Bug,用户在使用软件时仍将会遇到Bug,诊断和改正这些Bug的过程称为纠错性维护。

Ø         完善性维护。在软件的正常使用过程中,用户还会不断提出新的需求。为了满足用户新的需求而增加软件功能的活动称为完善性维护。如果需求变更很大,那么完善性维护将转变为软件新版本的开发(即新的项目)。

软件维护的一般流程见图5-8,主要活动有“接受维护请求”、“分析维护请求”和“执行软件维护”

4 支持过程
   4.1 软件配置管理和文档管理
        这里最好用CVS,SVN或者文档库(OA等)
   4.2 软件质量管理
            主要活动是“技术评审”、“测试管理”、“发布管理”、“质量保证”和“缺陷(问题)跟踪”。
主要产品有技术评审报告,发布记录,质量检查表,缺陷报告
    4.3 客户服务管理
      包括:客户信息管理,客户问题受理,产品有客户信息库,客户问题记录
    4.4 统计分析
        包括各类统计分析报告