我们培训网,培训,培训课程,企业培训,内训,制度表格案例方案等资料下载 网站首页 | 培训产品 | 企业内训 | 注册/登录 | 下载帮助 | 热门培训
管理资料 管理文章 管理培训 企业内训 培训讲师 会员专区

点击您要搜索的类别:
搜索培训 搜索文章 搜索资料 搜索机构 培训产品  
搜索关键字: 地点在     如何搜索?
热门搜索关键字: 行政统筹 Excel 劳动法 KPI 精益生产 3E 纳税筹划 采购 设备 生产计划 TPM 中层管理 跟单员   
EXCEL与PPT在管理中的高级运用 PMC生产计划与物料控制 KPI+BSC实战训练营 应收帐款控制与催收及信用管理 卓越销售技能提升的8个步骤
您当前所在位置:我们培训网文章资讯项目管理
软件开发的项目管理
日期:2006年5月22日 作者:*** 人气:738 查看:[大字体 中字体 小字体]
一. 软件开发的种类

     1.软件产品 (software products)

    1.1 大多为横向型市场 (horizontal market)而开发。使用者多为个人, 且数目任意,能力不齐
    1.2 提供的功能(features and functionalities)大多为解决某个具体应用问题或需要
    1.3 功能需求 (requirement)来自开发商的市场开发和销售队伍(marketing & sales), 或使用者对 前一代产品的回馈
    1.4 例子: 办公用软件、单功能应用软件、游戏、等等

    2. 软件系统 (software systems)
    2.1 大多为纵向型市场 (vertical market)而开发: 使用者为专门的客户的内部员工及部门团队, 数目有限, 事先可知, 且能力可专门培训
    2.2 提供的功能大多为解决客户一连串具体的商业业务或运作问题或满足客户对外服务需要
    2.3 功能需求来自客户提出的具体要求和客户业务的运作特性: 它已有的系统, 流程的局限性
    2.4 例子: 商业业务软件系统, 自动控制系统, 等

    二. 编写程序之前必须进行的工作

    了解和确证客户的使用方案(User Scenario)
    总结详细的功能需求并与用户审核确证
    功能设计通过完整的设计规范书(Design Specification)来表达
    以设计规范书为基础制定构架设计(Architecture)、开发方案(Implementation Plan)
     事先制定测试计划和软件合格的检验准则 (Exit Criteria)

    三. 开发项目的计划和管理采取来自开发团队的、从下而上的时间表的估算,避免人为的不合理猜测

     开发时间表的制定以具体的功能开发任务,并且以几天为衡量单位
     整个开发过程以间断性的里程碑来追踪
     进行周期性的进度审核,作必要的调整
     对 “功能蔓延” (Feature Creep)严格控制和管理

    四 . 开发管理

    4.1写任何程序前一定要先有设计构划书

    4.2任何复杂的系统程序要先有构架设计书
    4.2.1 对系统组件有明确的功能定义.
    4.2.2 对组件的接口的设计事先有完整的纪录.
    4.2.3 构架设计书由构架设计师或开发工程师的领导人员来撰写.
    4.2.4 构架设计书要通过项目经理和测试人员在内的审核及通过, 才能开始编写程序.

    4.3 建立程序原代码的提交库,并建立完整的原代码的提交的流程管理制度
    4.3.1原代码只允许一人改动. 改动前先要从提交库申请出原代码. 改动后再送进提交库.
    4.3.2改动完先要在开发工程师的机器上编译, 与其它组件一起运行过, 确证没有致命的缺陷后,才能送进原代码的提交库.
    4.3.4在产品发行前, 整个提交库都被锁上, 只有被批准的缺陷修补的原代码才能提交进库.

    4.4 建立原代码互审的管理制度
    每个软件开发工程师遍写的原代码都有致少一个以上的同事对程序进行审查.

    4.5 建立原代码编写的规范
    每个软件开发工程师都应按照规范进行程序设计, 包括编写的风格, 格式, 组件接口的规范, 解说词的撰写, 等等.

    五 测试管理根据设计构划书撰写测试计划

    5.1.1 测试计划要请项目经理和开发工程师一起进行审查.
    5.1.2 测试计划用列表式将所有的测试方案写下.
    5.1.3 每个具体地的测试方案都有专人执行,并记录每个测试方案的结果. 任何缺陷都记录下来.

    5.2测试与开发同步进行
    在部分组件编写完后就进行开发测试工具.

    5.3 测试计划执行中的注意事项
    5.3.1 由测试员发现的缺陷分给开发工程师修改纠错.
    5.3.2 修改完毕由测试员先进行初步质量验证 (Smoke Test), 通过后才能由开发工程师送进原代码的提交库.
    5.3.4 每次任何影响到其它组件的程序纠错改动, 不仅是经过改动的程序要重新测试, 任何可能受到影响的其它组件或程序也必须重测 (Regression Test).
    5.3.5发行前要进行全程测试 (Full Test Pass).

    5.4 测试的内容:1.确定测试的优先级别 2。函数模块 3。功能模块

    5.5 测试的结果:1.bug的数量(平均每50行就有一个)2.代码的覆盖率(代码的执行路径)

    5.6 测试不到的地方未知错误要进行出错处理

    六 实施关键

    设计在先,编码在后
    没有设计规范书就不写一行编程码
    所有的编码要有员工之间的互相审核
    所有的编码在加入整体汇编前必须在开发工程师的机器上先汇编
    “吃你自己的狗食”: 产品发行前全体团队成员要自己使用尚未完善的产品,并报告缺陷.
    专门的汇编团队负责整个产品的建造并每天进行汇编。任何造成汇编失败的编程必须写此程序的工程师立即修改纠错 (Fix Bug).
    整个公司所有团队使用统一的缺陷报告数据库工具. 但每个团队掌握控制自己的数据库. 任何问题都通过缺陷数据库来跟踪.
    被修改后已解决的缺陷 (Fixed Bug)必须由找到缺陷的人 (通常是测试人员) 验证.被修改后已解决的缺陷还必须通过再测试,验证修改的编码没有造成新的害虫.
    所有的害虫被分类成三种严重性的级别及三种修改的优先权的级别. 所有团队员工被要求必须先除级别高的害虫.
    有的团队执行 “害虫监狱” (Bug Jail)制度: 害虫数字超过 5 个以上的开发工程师在除完害虫前不准编新的功能的编码.
    所有关键性的害虫在产品发行前都要由“三国会议” (Triage Meeting – PM, Dev, QA) 讨论决定是否要除, 才能改动。
    产品发行前团队召开定时的“战前会议” (War Meeting), 由团队各领导成员审核所有的害虫.
    每次一项功能编程完成后, 团队全体成员进行 “抓虫大扫除” (Bug Bash):每人在规定的时间内使用新的功能,将找到的害虫及时报告. 大扫除结束后抓虫的统计向全队报告.

 



本站出于交流目的由本站网友提交此文章,该文并不代表本站观点,如果您是作者或者该文侵犯了您的权利,请立即与我们 联系,我们将立即处理。谢谢!
我要通过发布管理文章兑换培训币


用户评论: 目前没有用户参与评论

暂无相关评论

 
用 户:
Email:
分 值: 100分 85分 70分 55分
40分 25分 10分 0分
说 明:
(注:“”为必填内容。)
 本期推荐培训
Google
·年终绩效考核暨KPI+BSC实战训练营 (深圳 2008-12-5)

·薪酬体系设计与薪酬管理技巧(3E薪资设计)培训 (深圳 2008-12-5)

·新产品研发流程优化与研发项目管理 (上海 2008-12-5)

·高效仓储管理与库存控制高级研修班 (深圳 2008-12-6)

·Excel、Access、Powerpoint、Word在企业管理中的高级应用 (深圳 2008-12-12)

·EXCEL与PPT在管理中的高级运用 (上海 2008-12-12)

·产品研发及技术人员核心管理技能训练 (深圳 2008-12-12)

·全面生产维护(TPM)研修班 (北京 2008-12-18)

·行政工作统筹管理高级研修班 (上海 2008-12-18)

·《企业职工带薪年休假实施办法》解读及企业应对策略 (杭州 2008-12-19)



我们培训网 版权所有 2004-2005 | 关于我们 | 服务条款 | 广告合作 | 咨询反馈 | 联系我们