软件开发项目计划编制过程
软件开发建设方案

软件开发建设方案1. 引言软件开发是指通过系统化的方法,使用计算机编程语言和工具,将需求转化为具有一定规模和复杂程度的软件产品或系统的过程。
为了确保软件开发项目的高效、高质量完成,需要制定一个完整的软件开发建设方案。
本文将介绍一个通用的软件开发建设方案,以帮助项目团队规划、管理和实施软件开发工作。
2. 项目背景在确定软件开发建设方案之前,对项目背景进行充分了解是至关重要的。
了解项目的目标、需求、范围、时间和资源等因素对于制定合适的开发方案至关重要。
3. 开发流程软件开发建设方案中的一个重要部分是确定开发流程。
下面是一个常用的软件开发流程:3.1 需求分析在需求分析阶段,项目团队与客户合作,收集和分析需求,制定准确的需求规格说明书。
3.2 设计在设计阶段,根据需求规格说明书编制详细的软件设计文档。
该文档包括软件架构、模块设计、功能设计等。
3.3 编码根据设计文档进行编码工作。
开发团队需要遵循良好的编码规范,使用合适的开发工具和技术来实现功能。
3.4 测试在测试阶段,对开发完成的软件进行全面的测试,确保软件的质量和稳定性。
测试包括单元测试、集成测试、系统测试等。
3.5 部署和维护在软件开发完成后,进行部署和维护工作。
部署是将软件安装在相应的环境中,维护是对软件进行修复和改进,以满足用户的需求。
4. 项目管理良好的项目管理是软件开发成功的关键。
下面是一些常用的项目管理方法和工具:4.1 敏捷开发敏捷开发是一种以迭代和增量的方式进行开发的方法。
通过分解项目为多个短期工作周期,每个周期完成一部分功能,迅速响应用户需求和变化。
4.2 项目管理工具使用项目管理工具可以有效地组织和跟踪项目进展。
常用的项目管理工具包括JIRA、Trello、Microsoft Project等。
4.3 团队协作良好的团队协作是软件开发成功的重要因素。
团队成员之间应进行清晰的沟通和合作,确保项目进展顺利。
5. 质量保证质量保证是软件开发中的重要环节。
软件开发流程的具体内容

软件开发流程的具体内容软件开发是一个复杂而又精细的过程,需要经历多个阶段和环节。
下面将介绍软件开发的具体流程,以便更好地了解软件开发的全貌。
1. 需求分析阶段。
软件开发的第一步是需求分析阶段。
在这个阶段,开发团队与客户进行沟通,了解客户的需求和期望。
通过讨论和调研,确定软件的功能和特性,明确软件的用户群体和使用场景,为后续的开发工作奠定基础。
2. 设计阶段。
在需求分析的基础上,开发团队进行软件的设计工作。
包括系统架构设计、数据库设计、界面设计等。
设计阶段的目标是确定软件的整体结构和各个模块的功能,为后续的编码工作提供指导。
3. 编码阶段。
编码阶段是软件开发的核心阶段,开发团队根据需求和设计文档,进行具体的编码工作。
根据需求文档和设计文档,开发团队使用相应的编程语言和开发工具,编写软件的源代码。
4. 测试阶段。
编码完成后,软件需要进行测试。
测试阶段包括单元测试、集成测试、系统测试等多个环节。
测试人员根据测试计划和测试用例,对软件进行全面的测试,确保软件的质量和稳定性。
5. 部署和维护阶段。
软件通过测试后,进入部署和维护阶段。
开发团队将软件部署到目标环境中,并进行相关的配置和优化。
同时,开发团队需要对软件进行维护和更新,确保软件的稳定性和安全性。
总结。
软件开发流程包括需求分析、设计、编码、测试、部署和维护等多个阶段。
每个阶段都有其独特的任务和目标,需要开发团队的密切合作和高效协调。
只有经过严格的流程管理和质量控制,才能保证软件开发的顺利进行和最终的成功交付。
软件开发流程规范

软件开发流程规范第1章项目立项与规划 (5)1.1 项目背景分析 (5)1.1.1 行业背景 (5)1.1.2 市场需求 (5)1.1.3 技术发展趋势 (5)1.2 项目目标与需求 (5)1.2.1 项目目标 (5)1.2.2 项目需求 (5)1.3 项目资源与风险评估 (5)1.3.1 项目资源 (5)1.3.2 风险评估 (5)1.4 项目立项与规划 (5)1.4.1 项目范围规划 (6)1.4.2 项目时间规划 (6)1.4.3 项目成本规划 (6)1.4.4 项目组织结构 (6)第2章需求分析 (6)2.1 用户需求调研 (6)2.1.1 调研目标 (6)2.1.2 调研方法 (6)2.1.3 调研对象 (6)2.1.4 调研内容 (6)2.2 确定系统功能 (6)2.2.1 功能需求分析 (6)2.2.2 功能模块划分 (7)2.2.3 功能需求验证 (7)2.3 编制需求规格说明书 (7)2.3.1 编制目的 (7)2.3.2 内容结构 (7)2.3.3 编制要求 (7)2.4 需求确认与评审 (7)2.4.1 需求确认 (7)2.4.2 需求评审 (7)2.4.3 评审结果处理 (7)第3章系统设计 (8)3.1 架构设计 (8)3.1.1 系统架构概述 (8)3.1.2 架构模式选择 (8)3.1.3 技术选型 (8)3.1.4 系统部署 (8)3.2 模块划分与接口设计 (8)3.2.2 接口设计 (8)3.2.3 接口规范 (8)3.3 数据库设计 (8)3.3.1 数据库选型 (8)3.3.2 数据库模型设计 (9)3.3.3 数据库功能优化 (9)3.4 系统安全与功能设计 (9)3.4.1 系统安全设计 (9)3.4.2 认证与授权 (9)3.4.3 系统功能设计 (9)3.4.4 监控与预警 (9)第4章系统开发 (9)4.1 编码规范与约定 (9)4.1.1 通用编码规范 (9)4.1.2 编程语言特定规范 (9)4.2 开发环境搭建 (10)4.2.1 硬件环境 (10)4.2.2 软件环境 (10)4.3 代码编写与审查 (10)4.3.1 代码编写 (10)4.3.2 代码审查 (10)4.4 系统集成与调试 (10)4.4.1 系统集成 (10)4.4.2 系统调试 (11)第5章系统测试 (11)5.1 测试策略与计划 (11)5.1.1 目标与原则 (11)5.1.2 测试范围 (11)5.1.3 测试方法 (11)5.1.4 测试环境与工具 (11)5.1.5 测试计划 (12)5.2 单元测试 (12)5.2.1 目标与原则 (12)5.2.2 测试方法 (12)5.2.3 测试环境与工具 (12)5.3 集成测试 (12)5.3.1 目标与原则 (12)5.3.2 测试方法 (12)5.3.3 测试环境与工具 (12)5.4 系统测试与验收 (12)5.4.1 系统测试 (12)5.4.2 验收测试 (13)5.4.3 测试方法 (13)第6章系统部署与维护 (13)6.1 部署策略与方案 (13)6.1.1 部署目标 (13)6.1.2 部署策略 (13)6.1.3 部署方案 (13)6.2 系统上线与培训 (13)6.2.1 上线准备 (13)6.2.2 系统上线 (13)6.2.3 用户培训 (14)6.3 系统维护与优化 (14)6.3.1 系统维护 (14)6.3.2 系统优化 (14)6.4 用户反馈与持续改进 (14)6.4.1 用户反馈 (14)6.4.2 持续改进 (14)第7章软件质量保证 (14)7.1 质量管理体系 (14)7.1.1 概述 (14)7.1.2 质量管理体系构建 (15)7.1.3 质量管理体系的实施与运行 (15)7.2 质量控制与检查 (15)7.2.1 质量控制 (15)7.2.2 质量检查 (15)7.3 质量评估与改进 (15)7.3.1 质量评估 (15)7.3.2 质量改进 (15)7.4 风险管理 (15)7.4.1 风险识别 (15)7.4.2 风险评估 (15)7.4.3 风险应对 (15)7.4.4 风险监控 (16)第8章项目管理 (16)8.1 项目进度管理 (16)8.1.1 进度计划编制 (16)8.1.2 进度监控与控制 (16)8.1.3 进度更新与报告 (16)8.2 项目成本管理 (16)8.2.1 成本估算 (16)8.2.2 成本预算 (16)8.2.3 成本控制 (16)8.3 项目风险管理 (16)8.3.1 风险识别 (16)8.3.2 风险评估与量化 (17)8.3.4 风险监控 (17)8.4 项目沟通与协作 (17)8.4.1 沟通计划 (17)8.4.2 信息共享 (17)8.4.3 协作机制 (17)8.4.4 变更管理 (17)第9章团队建设与培训 (17)9.1 团队组织结构 (17)9.1.1 团队层级划分 (17)9.1.2 职能分组 (17)9.1.3 交叉培训 (18)9.2 团队成员职责与技能 (18)9.2.1 项目经理 (18)9.2.2 技术经理 (18)9.2.3 开发人员 (18)9.2.4 测试人员 (18)9.3 培训与提升 (18)9.3.1 培训计划 (18)9.3.2 内部培训 (18)9.3.3 外部培训 (18)9.3.4 激励机制 (18)9.4 团队绩效评估与激励 (19)9.4.1 绩效考核指标 (19)9.4.2 绩效评估方法 (19)9.4.3 激励措施 (19)9.4.4 反馈与改进 (19)第10章项目收尾与总结 (19)10.1 项目验收与交付 (19)10.1.1 验收流程 (19)10.1.2 验收标准 (19)10.1.3 交付物 (20)10.2 项目总结与评价 (20)10.2.1 项目总结 (20)10.2.2 项目评价 (20)10.3 知识库与经验分享 (20)10.3.1 知识库建设 (20)10.3.2 经验分享 (21)10.4 后续项目规划与展望 (21)10.4.1 后续项目规划 (21)10.4.2 项目展望 (21)第1章项目立项与规划1.1 项目背景分析项目背景分析是对项目产生的内外部环境的全面梳理。
软件项目开发团队编制方案

软件项目开发团队编制方案1. 引言本文档旨在提供一个软件项目开发团队的编制方案,以确保团队成员的分工合理、工作效率高,从而有效地完成项目开发任务。
2. 团队架构2.1 团队成员* 项目经理:负责项目的整体规划、协调和管理。
* 需求分析师:负责收集、分析和整理客户需求,并转化为项目功能要求。
* 软件架构师:负责制定软件的整体架构设计,包括技术选型和系统分析。
* 程序员:负责根据需求分析师提供的需求文档进行编码和测试。
* UI/UX设计师:负责软件的用户界面和用户体验设计。
* 测试工程师:负责软件的功能和性能测试。
* 运维工程师:负责软件的部署和维护。
2.2 团队协作方式团队成员将采用敏捷开发方法进行协作,每个迭代周期大约为2周。
团队将使用项目管理工具来跟踪任务、进度和问题,例如JIRA或Trello。
3. 分工和职责* 项目经理:负责项目管理、资源协调和进度把控,与团队成员、客户和上级沟通协调。
* 需求分析师:负责与客户进行需求沟通,编写需求文档,并与团队成员协商确认需求。
* 软件架构师:负责制定软件的整体架构设计,包括技术选型和系统分析。
* 程序员:根据需求分析师提供的需求文档进行编码,编写单元测试用例,并进行代码评审。
* UI/UX设计师:根据需求分析师提供的需求文档,设计软件的用户界面和用户体验。
* 测试工程师:编写测试用例,进行软件的功能和性能测试,并报告缺陷。
* 运维工程师:负责软件的部署和维护工作,包括环境搭建、发布和监控。
4. 协作流程1. 项目经理与客户沟通,收集需求。
2. 需求分析师编写需求文档,并与团队成员协商确认需求。
3. 软件架构师制定软件的整体架构设计,并与程序员和UI/UX 设计师进行讨论和确认。
4. 程序员根据需求文档进行编码,编写单元测试用例,并进行代码评审。
5. UI/UX设计师根据需求文档设计用户界面和用户体验。
6. 测试工程师根据需求文档编写测试用例,进行功能和性能测试,并报告缺陷。
软件项目开发计划书三篇

软件项目开发计划书三篇篇一:软件项目开发计划书模板项目名称:********评审日期:1引言1.1编写目的说明编写这份项目开发计划的目的,并指出预期的读者。
1.2背景说明:a.待开发的软件系统的名称;b.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;c.该软件系统同其他系统或其他机构的基本的相互来往关系。
1.3定义列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
1.4参考资料列出用得着的参考资料,如:a.本项目的经核准的计划任务书或合同、上级机关的批文;b.属于本项目的其他已发表的文件;c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。
列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。
2项目概述2.1工作内容简要地说明在本项目的开发中须进行的各项主要工作。
2.2主要参加人员扼要说明参加本项目开发工作的主要人员的情况,包括他们的技术水平。
2.3产品2.3.1程序列出需移交给用户的程序的名称、所用的编程语言及存储程序的媒体形式,并通过引用有关文件,逐项说明其功能和能力。
2.3.2文件列出需移交给用户的每种文件的名称及内容要点。
2.3.3服务列出需向用户提供的各项服务,如培训安装、维护和运行支持等,应逐项规定开始日期、所提供支持的级别和服务的期限。
2.3.4非移交的产品说明开发集体应向本单位交出但不必向用户移交的产品(文件甚至某些程序)。
2.4验收标准对于上述这些应交出的产品和服务,逐项说明或引用资料说明验收标准。
2.5完成项目的最迟期限2.6本计划的批准者和批准日期3实施计划3.1工作任务的分解与人员分工对于项目开发中需完成的各项工作,从需求分析、设计、实现、测试直到维护,包括文件的编制、审批、打印、分发工作,用户培训工作,软件安装工作等,按层次进行分解,指明每项任务的负责人和参加人员。
3.2接口人员说明负责接口工作的人员及他们的职责,包括:a.负责本项目同用户的接口人员;b.负责本项目同本单位各管理机构,如合同计划管理部门、财务部门、质量管理部门等的接口人员;c.负责本项目同各分合同负责单位的接口人员等。
软件项目开发计划书

软件项目开发计划书软件开发计划书项目名称:乐吧乐游戏平台参与人员:目录1引言----------------------------------------------------------------------------------------------21.1编写目的---------------------------------------------------------------------------------21.2背景---------------------------------------------------------------------------------------21.3定义---------------------------------------------------------------------------------------31.4参考资料---------------------------------------------------------------------------------31.5系统动机--------------------------------------------------------------------------------31.6标准、条件和约定---------------------------------------------------------------------31.7编写文档的WBS-----------------------------------------------------------------------42项目概述----------------------------------------------------------------------------------------52.1事情内容---------------------------------------------------------------------------------52.2主要参加人员---------------------------------------------------------------------------52.3产物及成果------------------------------------------------------------------------------7---------------------------------------------------------------------错误!未定义书签。
软件项目进度计划

软件项目进度计划一、引言软件项目进度计划是软件开发项目的重要组成部分,它可以帮助团队更有效地实现项目目标。
软件项目进度计划的编制需要着重考虑项目的特殊性、可行性和可控性,充分考虑开发项目的规模、进度、成本、人员、质量和风险等因素,帮助项目组织实现项目目标。
二、软件项目进度计划的编制1、确定软件项目的目标:在编制软件项目进度计划之前,首先要确定项目的目标,包括软件的功能、性能、成本、质量等,以及客户的期望和需求,其中需要参考相关的标准和文件,以便编制合理的软件项目进度计划。
2、确定软件开发的过程:软件项目进度计划需要按照软件开发的过程来编制,通常包括软件需求分析、软件设计、软件开发、软件测试、软件安装、软件维护等步骤。
3、编制软件项目进度计划:编制软件项目进度计划是根据软件开发的过程,结合项目的特殊性、可行性和可控性,分解项目的规模、进度、成本、人员、质量和风险等因素,编制出每一步的时间要求以及下一步的活动,实现项目的目标。
4、审核软件项目进度计划:审核软件项目进度计划旨在确保计划是可行的、可控的,以确保项目按计划进行,并降低项目进度的不确定性,防止出现风险。
三、软件项目进度计划的实施1、按照软件项目进度计划,分配任务和资源:根据软件项目进度计划,分配任务和资源,组织人员进行软件开发,以实现项目的目标。
2、定期检查项目进度,确保项目按计划进行:定期检查项目进度,确保项目按计划进行,防止出现延误或风险,如发现问题,及时调整计划,以保证项目顺利完成。
3、及时调整计划:由于软件项目的进度计划是根据软件开发项目的特殊性、可行性和可控性来编制的,因此,随着项目的进行,可能需要及时调整计划,以确保项目按计划进行。
四、结论软件项目进度计划是软件开发项目的重要组成部分,它可以帮助团队更有效地实现项目目标。
软件项目进度计划的编制需要着重考虑项目的特殊性、可行性和可控性,充分考虑开发项目的规模、进度、成本、人员、质量和风险等因素,帮助项目组织实现项目目标。
软件研发项目流程八个阶段

软件研发项目流程八个阶段下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 需求分析与客户沟通,了解业务需求和目标。
进行市场调研,分析竞争对手的产品。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件开发项目计划编制过程2006-06-13本文简要说明了软件开发项目的计划的要素、计划编制过程、以及项目计划内容确定的一般过程。
一、项目计划的要素根据PMBOK2000,项目计划可以包含如下要素:1、项目范围说明项目范围说明阐述进行这个项目的原因或意义,形成项目的基本框架,使项目所有者或项目管理者能够系统地、逻辑地分析项目关键问题及项目形成中的相互作用要素,使项目干系人在项目开始实施前或项目相关文档编写以前,能够就项目的基本内容和结构达成一致;项目范围说明应当形成项目成果核对清单,作为项目评估的依据,在项目终止以后或项目最终报告完成以前进行评估,以此作为评价项目成败的依据;范围说明还可以作为项目整个生命周期监控和考核项目实施情况的基础,和项目其他相关计划的基础。
2、项目进度计划进度计划是说明项目中各项工作的开展顺序、开始时间、完成时间及相互依赖衔接关系的计划。
通过进度计划的编制,使项目实施形成一个有机的整体。
进度计划是进度控制和管理的依据,可以分为项目进度控制计划和项目状态报告计划。
在进度控制计划中,要确定应该监督哪些工作、何时进行监督、监督负责人是谁,用什么样的方法收集和处理项目进度信息,怎样按时检查工作进展和采取什么调整措施,并把这些控制工作所需的时间和人员、技术、物资资源等列入项目总计划中。
3、项目质量计划质量计划针对具体待定的项目,安排质量监控人员及相关资源、规定使用那些制度、规范、程序、标准。
项目质量计划应当包括与保证与控制项目质量有关的所有活动。
质量计划的目的是确保项目的质量目标都能达到。
根据ISO9001要求和PMBOK2000,为实现质量目标,组织应遵循以顾客为中心、领导作用、全员参与、过程方法、管理的系统方法、持续改进、基于事实的决策方法、互利的供方关系等8项质量管理原则。
4、项目资源计划有了项目范围计划和进度计划后,资源计划就是决定在项目中的每一项工作中用什么样的资源(人、材料、设备、信息、资金等等),在各个阶段使用多少资源。
项目费用计划包括资源计划、费用估算、费用预算。
5、项目沟通计划沟通计划就是制定项目过程中项目干系人之间信息交流的内容、人员范围、沟通方式、沟通时间或频率等沟通要求的约定。
6、风险对策计划风险对策计划是为了降低项目风险的损害而分析风险、制定风险应对策略方案的过程,包括识别风险、量化风险、编制风险应对策略方案等过程。
7、项目采购计划项目采购计划过程就是识别哪些项目需求可应通过从本企业外部采购产品或设备来得到满足。
如果是软件开发工作的采购,也就是外包,应当同时制定对外包的进度监控和质量控制的计划。
8、变更控制、配置管理计划由于项目计划无法保证一开始就预测得非常准确,在项目进行过程中也不能保证准确有力的控制,导致项目计划与项目实际情况不符的情况经常发生,所以必须有效处理项目的变更。
变更控制计划主要是规定变更的步骤、程序,配置管理计划就是确定项目的配置项和基线,控制配置项的变更,维护基线的完整性,向项目干系人提供配置项的准确状态和当前配置数据。
二、项目计划编制过程由于软件开发的手工性、个体性特征,软件开发项目计划不可能是一个静态的计划,一次在项目启动时,可以先制定一个颗粒度相对比较粗的项目计划,先确定项目高层活动和预期里程碑。
粗颗粒度的项目计划需要不断地更新迭代,根据项目的大小和性质以及项目的进展情况进行迭代和调整。
迭代和调整的周期也是根据项目的情况进行制订的,一般短到一周,长到2个月左右。
经过不断的计划制订、调整、修订等工作,项目计划从最初的粗粒度,变得非常详细。
这样的计划将一直延续到项目结束,延续到项目的成果出现。
制定计划的过程就是一个对项目逐渐了解掌握的过程,通过认真地制定计划,项目经理可以知道哪些要素是明确的,哪些要素是要逐渐明确的,通过渐近明细不断完善项目计划。
阶段计划中包含的工作汇报和下一阶段工作安排是掌握项目进度的依据,从阶段计划对照总体计划,才能一目了然地看出工作的进展情况。
制定计划的过程,也是在进度、资源、范围之间寻求一种平衡的过程。
制定计划的精髓不在于写出一份好看的文档,而在于运用您的智慧去应对各种问题和面临风险并尽可能做出前瞻性的思考。
一旦计划被负责任地完成,他就可以给自己一个和管理层或客户交流与协商的基础,帮助你在项目过程中防范各种问题的出现,帮助你保证项目按时完成。
企业确定要开始某个项目时一般会下达一个立项的文件,暂且叫“项目立项文件”,主要内容是遵照的合同或相关协议,项目的大致范围、项目结束的截止时间和一些关键时间,指定项目经理和部分项目成员等等。
接下来的项目计划编写一般要按照以下过程:1成立项目团队:相关部门收到经过审批后的“项目立项文件”和相关资料,则正式在“项目立项文件”中指定的项目经理组织项目团队,成员可以随着项目的进展可以在不同时间加入项目团队,也可以随着分配的工作完成而退出项目团队。
但最好都能在项目启动时参加项目启动会议,了解总体目标、计划,特别是自己的目标职责,加入时间等等。
2项目开发准备:项目经理组织前期加入的项目团队成员准备项目工作所需要的规范、工具、环境。
如开发工具、源代码管理工具、配置环境、数据库环境等。
前期加入的项目团队成员主要由计划经理,系统分析员等组成,但快要制定好的项目计划一定要尽可能经过在所有项目团队成员和项目干系人中间的充分沟通。
如果项目中存在一些关键的(指将影响项目成败)技术风险,则在这一阶段项目经理应组织人员进行预研。
预研的结果应留下下书面结论以备评审。
说明:项目计划书必须在相应阶段对项目目标、阶段目标和各项任务进行精确的定义,就是要在相应阶段进一步进行项目目标的细化工作;特别是在概要设计完成,详细设计或编码实现开始之前应该对下一阶段的目标任务进行细化。
应当充分调查并掌握影响项目计划的一切内部和外部影响因素;应当尽可能充分地分析项目工作分解结构,通过分析项目工作分解结构不仅获得项目的静态结构,而且通过逻辑分析,获得项目各工作任务之间动态的工作流程;应当将项目目标、任务进行分解,制定详细的实施方案。
3项目信息收集:项目经理组织项目团队成员通过分析接收的项目相关文档、进一步与用户沟通等途径,在规定的时间内尽可能全面收集项目信息。
项目信息收集要讲究充分的、有效率的沟通,并要达成共识。
有些成员认为,电子邮件发来的文档(计划、需求、周计划等)是在沟通不够充分的情况下完成的,成员看过后有不了解或与自己的能力或意愿不符的情况,但通过电子邮件等方式沟通的效率不高,这也许是个习惯的问题,也许和某个具体问题本身是否容易通过电子邮件沟通清楚有关。
因此重要的内容需要开会进行Q&A讨论,确保所有重要问题都得到理解,最终达成共识。
讨论会上达成共识的应当记录成文字落实在具体的文档中。
4 编写《软件项目计划书》项目经理负责组织编写《软件项目计划书》。
《软件项目计划书》是项目策划活动核心输出文档,它包括计划书主体和以附件形式存在的其他相关计划,如配置管理计划等。
《软件项目计划书》的编制参考《GB8567-88计算机软件产品开发文件编制指南》中项目开发计划的要求。
各企业在建立ISO9001质量管理体系或CMM过程中也会建立相应的《软件开发项目计划书规范》。
编制项目计划的过程应当分为以下几个步骤:a、确定项目的应交付成果。
这里的项目的应交付成果不仅是指项目的最终产品,也包括项目的中间产品。
例如通常情况下软件开发项目的项目产品可以是:需求规格说明书、概要设计说明书、详细设计说明书、数据库设计说明书、项目阶段计划、项目阶段报告、程序维护说明书、测试计划、测试报告、程序代码与程序文件、程序安装文件、用户手册、验收报告、项目总结报告等等;b、任务分解:从项目目标开始,从上到下,层层分解,确定实现项目目标必须要做的各项工作,并画出完整的工作分解结构图。
软件开发项目刚开始可能只能从阶段的角度划分,如需求分析工作、架构设计工作、编码工作、测试工作等等,当然规模较大时也可把需求、设计拆分成不同的任务。
不过特别是在概要设计完成时可以对下一阶段的目标任务进行横向的细化。
c、在资源独立的假设前提下确定各个任务之间的相互依赖关系,以确定各个任务开始和结束时间的先后顺序;获得项目各工作任务之间动态的工作流程。
d、确定每个任务所需的时间,即根据经验或应用相关方法给任务需要耗费的时间;确定每个任务所需的人力资源要求,如需要什么技术、技能、知识、经验、熟练程度等等。
e、确定项目团队成员可以支配的时间,即每个项目成员具体花在项目中的确切时间;确定每个项目团队成员的角色构成、职责、相互关系、沟通方式。
f、确定管理工作,管理工作是贯穿项目生命周期的,如项目管理、项目会议等、编写阶段报告。
项目团队成员之间的沟通时间、项目团队成员和其他项目干系人之间的沟通时间也比较容易被忽视,而沟通时间也是比较不容易固定地量化和日程化。
但这些工作在计划中都应当充分地被考虑进去,再回师项目计划更加合理,更有效地减少因为计划的不合理而导致的项目进度延期。
g、根据以上结果编制项目总体进度计划,总体进度计划应当体现任务名称、责任人、开始时间、结束时间、应提交的可检查的工作成果。
h、考虑项目的费用预算、可能的风险分析及其对策、需要公司内部或客户或其他方面协调或支持的事宜。
5 软件项目计划书评审、批准项目计划书评审、批准是为了使相关人员达成共识、减少不必要的错误,使项目计划更合理更有效。
项目经理完成《软件项目计划书》后,首先组织项目团队内部的项目团队负责人、测试负责人、系统分析负责人、设计负责人、质量监督员等对项目计划书进行评审,评审可采取电子或会议方式,并进行阶段成果项目团队内评阅记录。
应当要求所有相关人员在收到软件项目计划书后的一个约定时间内反馈对计划书的意见。
项目经理确保与所有人员就项目计划书中所列内容达成一致。
这种一致性是要求所有项目团队成员对项目计划的内容进行承诺,无法承诺或者说是无法达成一致的,要么修改项目计划去适应某些项目团队成员,要么是由某些项目团队成员采取妥协措施,去适应项目计划的要求。
项目经理将已经达成一致的软件项目计划书提交项目高层分管领导或其授权人员进行审批,审批完成时间不能超过预先约定的时间。
对于意义重大的项目,由过程控制部门如质量管理部和项目分管领导同时对《软件项目计划书》进行审批。
批准后的软件项目计划书作为项目活动开展的依据和本企业进行项目控制和检查的依据,并在必要时根据项目进展情况实施计划变更。
项目质量监督员根据《软件项目计划书》和《软件开发项目质量计划书规范》编制软件开发项目质量计划。
大型的项目应当编制单独的《软件开发项目质量计划书》;规模较小的可以在《软件项目计划书》的某个章节说明“软件开发项目质量计划”,也可单独编制类似“软件开发项目质量控制表”的文档。