欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    软件开发项目规范doc.docx

    • 资源ID:12707709       资源大小:89.70KB        全文页数:61页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件开发项目规范doc.docx

    1、软件开发项目规范doc软件项目开发和管理规范本文阐述软件项目开发和管理的流程规范,作为软件项目开发的高级指引,本规范定义了软件开发的各个阶段以及每个阶段的工作活动和工件, 但不对活动和工件的细节作过多规定。 在项目开发过程中,每个项目根据自身的需要确定这些活动和工件的细节。项目阶段图 2-1 项目开发的五个阶段启动阶段这个阶段的工作目的是决定一个项目是否需要启动。为了达到这个目的,首先要明确项目的总体战略目标, 对项目的需要建立认同。 即确定到底需要做什么、 开发什么产品或提供什么服务,以及需要解决什么样的问题和需要满足客户或市场的什么要求等, 同时还要总结项目工作的范围、所需资源、大约开支、

    2、各种风险,以及该项目不执行的其他替代选择等。这些代表了对整个项目目标从战略角度和宏观层次所进行的分析, 通过项目的意向书总结出来, 由此确证客户或项目发起人和赞助者的要求与期望, 并帮助他们判定项目是否上马。 项目意向总结书的通过及项目被批准上马形成了这个项目的起始点。计划阶段这个阶段的工作是为整个项目做计划。项目开始后,首先要确定项目的具体范围,明确定出项目到底要做什么,总结、归纳并定出产品的功能。 然后进一步制定项目的计划,列出每项具体工作, 并建立所有工作任务的重要性及顺序; 确定每项工作的执行人和所需资源; 根据人员的配置和能力设定各项工作和整个项目的完成时间表。执行阶段这个阶段的工作

    3、是通过执行项目的计划来完成项目的任务。 它包括落实一切所需资源, 如:人员、设备、费用、技术、信息,由管理者领导全体项目参与者开展各项工作。同时跟踪各项具体工作和整个项目的进度,定期向全体项目人员及项目的发起人报告项目状态。控制阶段这个阶段的工作是确证项目工作的结果符合项目的计划。 它通过对项目结果的衡量和审核,与项目计划所期望的结果进行比较, 找出实际结果与计划的差别, 并制定处理措施。 这个阶段的工作还包括对项目进程中出现的任何更改要求进行审核和批准。 同时调解项目进程中出现的各种问题,如:对缺乏的资源的补偿调节;对项目的进度表及各项具体工作的优先级或顺序的修订。结束阶段这个阶段的工作是确

    4、保项目的最终结果或提交物达到计划的要求,并对完成的结果作可接受的确认。还包括在项目完成之后的收尾工作,对整个项目的经历进行总结,户培训等。修订项目文档, 用阶段完成标志在项目开发过程中,当一个阶段完成后才会开展下一个阶段的工作;另外,“某个阶段完成”通常被定义为项目的一个里程碑, 里程碑标识了项目的进度, 它是项目开发和控制的重要参考,对整个项目有重要的意义。因此,“确证某个阶段是否已经完成”的工作非常有重要。每一个阶段的结束以它特定任务的完成为象征只有当某个阶段中被规定的所有工作任务都完成了,这个阶段才算真正结束,整个项目才可以进入到下一个阶段中去。反过来说,要是阶段中某个任务没有全部完成,

    5、按照项目的定义,整个阶段就不能算是完成,因此项目就不能进入到下一个阶段去。衡量阶段结束的工作结果必须是实在的交付品阶段中的任务是否完成是透过任务活动中产生的交付品来体现的, 交付品必须是可交付的、非抽象的、 实质的并且可以通过用衡量的方法来判断是否真正地完成了的具体事物。 如:某一阶段的完成是以建造一个样品或完成某分文件作为象征。 任何项目阶段的结束, 都应该有这样的实质性东西的完成作为象征。跨阶段的进程以阶段结尾的合格验证和审核来决定当一个阶段结束时,在进入到下一个阶段之前所需要做的工作应包括对交付品进行合格验证,并检查这一阶段的工作质量和效率, 由此判断是否可以进入到下一个阶段。一个阶段的

    6、结尾终点,表示项目的进程离开了上一个阶段而进入了下一个阶段。这些检验象征了启动阶段图 3-1 启动阶段的任务和工件产品领域研究研究产品所在领域的状况,为项目论证提供依据。研究内容包括:?o产品领域的现状和前景o产品领域的商业模式和业务流程o产品的价值和盈利空间o产品的特性和复杂度技术可行性研究研究产品的实现技术,总结技术可行性。研究内容包括:oo类似产品的当前实现技术和技术趋势o实现技术的候选方案o各个方案的优点、成本和风险o开发团队与实现技术的匹配情况项目论证基于商业和技术等方面对项目的可行性进行论证,确定项目是否开展。如果开展项目,则进一步论证项目的总体方案。论证的内容包括:o商业可行性o

    7、技术可行性o当前产品与类似产品的比较o项目收益和前景o项目的成本和风险o项目的总体方案确定项目目标和范围项目开始时,所有相关人员必须对项目的目标和范围达成共识,形成共同的项目愿景。并把愿景叙述为项目开发大纲向相关人员传达。项目开发大纲的内容包括:能的功能求险报用三到五张图表来描述产品目标、功能、平台、客户、进度表和开发职责用一个段落来综述产品,再用一个段落来描述每个重要的功能用一个段落来描述每个对产品有用的但本项目不实现的功能用一个段落来明确每个重要的涉众群体和他们的风险股本用一个段落来讲述每个重要的项目需求按风险暴露量对每个重要的项目风险都用一个段落来讨论用一个段落综述产品的回报,其后再对每

    8、个重要的项目回报都用一个段落来讨用一到三个段落将上述所有部分联系起来,明确项目的需求和风险,再用论点和论结 论据来总结为什么这个项目会成功表 3-1 项目开发大纲计划阶段图 4-1 计划阶段的任务和工件规模、工作量评估围绕各项计划的制定工作对项目的规模、工作量等进行评估,评估的内容包括:oo模块数量与复杂度o输入、输出和对外接口等数量与复杂度oSLOC和功能点o非生产性的支持工作量o开发工作量(人月)o进度与里程碑o进度风险定制项目开发计划项目开发计划体现了项目组对整个开发周期的预期,指定了项目开发的总体方针。与其他计划一样, 项目开发计划不是固定不变的, 在执行过程中要对计划进行监控, 可能

    9、会根据实际情况修改计划并重新发布。项目开发计划的内容包括:用三到五张图表来描述产品目标、功能、平台、客户、进度表和开发职责。(项目开发计划的概述部分应该是项目开发大纲 中概述部分的拷贝。当项目时,修订项目开发计划的概述部分而不是修订项目开发大纲。这样,以后在进行价时,通过比较 项目开发大纲 和项目开发计划的概述,就能看出项目是如何改变的能用一到五页的篇幅来概述产品的功能,其中,要包括这些功能的附加信息(者需要这样的信息来了解实现需求)。员确定软件工程职能角色,以及分配到这些角色的人员数量。程概述这个项目中所应用的软件过程。(具体内容可在 质量保证计划 中定义)概述这个项目中所应用的软件工程方法

    10、和技术。软件工程方法(具体内容可在 质量保证计划 中定义)这一部分要表达出整个项目进度和工作量的估计。其中要包括:对固定不变的里程碑和同步点的解释进度和工作量 在评估中的设想情况、评估中的不准确性的可能来源随着项目的进展如何更新评估(具体进度表内容可在 开发进度表 中定义)概述这个项目中风险管理计划。风险管理计划(具体内容可在 风险管理计划 中定义)测 量 概述这个项目中要收集的测量。软件工具 列出要使用的每一项软件工具,以及该工具所支持的任务。硬件支持 明确所需的硬件,包括那些需要移动、获取或升级的硬件。项目支持 软件支持 明确所需的软件,包括需要获取、安装或升级的软件件。人力支持 由哪个人

    11、、部门或团队为开发组的哪项任务提供支持。表 4-1 项目开发计划定制风险管理计划风险管理任务包括:风险识别、风险分析、确定风险优先级、定制风险化解方案、风险化解和风险监控【如:图4-2 】。图 4-2 风险管理任务风险管理计划定义这些任务的执行流程和人员分配。风险管理计划的内容包括:用文字和图表概述风险管理任务的总体执行流程。别 详细说明“风险识别”任务的实施细节和各项工作的负责人。析 详细说明“风险分析”任务的实施细节和各项工作的负责人。险优先级 详细说明“确定风险优先级”任务的实施细节和各项工作的负责人。险化解方案 详细说明“定制风险处理方案”任务的实施细节和各项工作的负责人。解 当风险发

    12、生时, 需要采取相应的措施化解风险。 这部分的内容是描述风险作的操作规范和流程。风险监控 详细说明风险监控任务的实施细节和各项工作的负责人。表 4-2 风险管理计划风险管理中通常会用到 Top N 风险列表,风险列表按照风险暴露量排序列出当前项目中主要的 N 个风险, Top N 风险列表的内容包括:名 本周的排名(如果本周已被完全化解用“ - ”表示)名 上周排名(如果是新识别的风险用“ - ”表示)数 该风险已上表的周数风险的名称或简述风险类型(只针对进度相关的风险):ooooooooo计划编制组织和管理设计和实现客户和需求承包商产品人员过程技术o 外部环境o 开发环境率 风险发生的百分比

    13、概率度 风险发生时损失的进度(工作日或工作周)发生概率 X 损失程度风险的当前状态:未发生、已发生、已化解案 简述风险的化解方案,如果有具体的化解方案文档则链接到相应文档度 对已发生的风险,简述化解进度(未发生的风险用“ - ”表示)表 4-3 风险列表定制质量保证计划保证工作质量的一个重要步骤是制定一套合理的质量保证计划并贯彻执行。质量保证计划的内容包括:概 述 说明编写的目的、适用范围以及对相关人员的要求等软件过程 详细说明这个项目中所应用的软件过程。软件工程方法 详细说明这个项目中所应用的软件工程方法和技术。对工程方法中的各种工作任务进行规范, 明确执行的时机、 流程和准则等。 这些工作

    14、任务包括:工作规范常规开发活动 (需求分析、架构设计、详细设计、编码和测试、发布和实施等)会议 (工作例会、进度会议、审查会议等)评审 (方案评审、技术评审、质量评审等)测量 (产品规模测量、进度测量、缺陷率测量、测试覆盖率测量等)其他活动 (技能培训、资料收集、内部流、客户沟通等)表 4-4 工作规范定制开发进度计划基于当前对项目的规模和工作量评估,定制初步的开发进度表,作为项目开发计划的组成部分。开发进度表的内容包括:oo项目的开始和结束时间o项目各个阶段的开始和结束时间o每个阶段的工作任务及其开始和结束时间o每个工作任务的子任务的及其开始和结束时间o里程碑和同步点o角色的定义和任务分配作

    15、为跟踪项目进度的重要依据,进度表在项目推进过程中需要不断细化。另外,当实际进度与计划进度出现偏差时,需要修改进度表并重新发布。执行阶段图 5-1 执行阶段的任务和工件需求分析分析产品的关键需求、对架构设计有影响的需求和风险较高的需求,直到分析的程度能开展足界面原型设计和架构设计工作。需求规格说明书的内容包括:从商业或业务角度宏观上对产品或系统的要求。它主要在宏观的层面归纳总结足客户提出的要求或赢得市场竞争所必须实现的功能、性能、质量等要求。业务需做什么1.2.做的范围3.对结果的要求需求求求求求求局限从客户对软件产品或系统使用方案的角度出发,描述和总结使用者利用该软件或系统能够做的事或能够完成

    16、的任务。根据上述 使用者需求 列出的使用方案,列出开发者必须为软件产品或系统实现能。1.运行速度、容量、并发性能2.对资源的利用率3.对外界输入的反馈速度和准确性4.对差错的负荷能力o 必须适应的运行环境的要求 (包括运行平台、网络及其他硬件要求)o 与其他系统兼容的要求 (包括与操作系统、数据库、浏览器及其他应的兼容要求)o与外部其他系统和组件的接口要求o 对用户重要的质量标志 (可靠性、效率性、灵活性、安全性、互操作定性、健全性、可用性)o对开发者重要的质量标志 (可维护性、多用转换性、重复使用性、 可测不属于上述需求范围的,但受到其他环境和商业合同影响的要求。1.国家或地区的任何特别的标

    17、准2.软件使用界面的特别要求3.与知识产权有关的要求4.软件所面对的市场和行业的规范5.客户的特别要求对开发的成功与否起很大影响的因素,是开发能力的局限:1.人员的局限2.技术的制约和局限3.客户的特别要求表 5-1 需求分析告需求分析报告的编制方式可以是多样的,例如把所有“非功能性需求”组织成“外部接口需求”、“质量属性需求”和“需求约束”。【如:图5-2 】图 5-2 需求规格说明书界面原型设计明确了系统的关键需求后,就可以进行界面原型设计工作,获取用户的反馈,尽快确定产品的界面基调。同时要编写一份界面设计概要文档,作为后续的界面设计工作的指导。界面设计概要的内容包括:o设计的理念o理念的

    18、来源或参考o设计的要点o与类似产品界面的对比架构设计架构设计从关键需求开始,建立概念性的架构,并逐步细化和验证。最终生成架构设计说明书和架构基线代码。架构设计的方法:可以从几个不同的视角进行架构设计,然后汇总综合得出完整的设计。(架构设计的五个视图【如:图5-3 】)图 5-3 架构设计的五视图架构设计说明书的内容包括:说明编写的目的、适用范围以及设计原则等。关注功能。其设计着重考虑功能需求。构 1. 细化功能单元2.发现通用机制3.细化领域模型4.确定子系统接口和交互机制关注程序包。其设计着重考虑开发期质量属性,如可扩展性、可重用性、可移植性、易理解性和易测试性等。开发架构确定要开发或直接利

    19、用的程序包之间的依赖关系1.2.确定采用的技术、框架等关注持久化数据的存储方案。其设计着重考虑“数据需求”。数据架构 1. 持久化数据存储方案2.数据传递、数据复制、数据同步等策略关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。其设计着重考虑运行期质量属性,例如性能、可伸缩性、持续可用性和安全性等。1.确定引入哪些进程与线程运行架构确定主动对象、被动对象,以及控制关系2.3.处理进程线程的创建、销毁、通信机制、资源争用等4.协议设计关注软件系统最终如何安装或部署到物理机器。 其设计着重考虑“安装和部署需求”。物理架构 1. 确定物理配置方案2.确定如何将目标程序映射到物理节

    20、点总 结基于上述的设计进行总结,并描述架构基线。表 5-2 架构设计说明书架构设计的另一个重要任务是编写架构基线代码,基线代码表述和验证架构,同时也是指导后续开发的基础代码。架构基线代码的内容包括:o所有工程项目o工程目录结构o软件包结构o导入所有依赖包o基础公共代码o架构框架代码o架构框架示例代码和测试代码o数据库框架图 5-4 和图 5-5 展示了软件架构师的工作和成功的软件架构设计包含的内容:图 5-4 软件架构师的工作图 5-5 成功的软件架构设计1软件构建软件可以分阶段进行构建, 每个阶段可以使用增量的方式开发, 用通过若干个 Build 构建,最后发布阶段性产品成果。(注意:在这里

    21、 ,名词“阶段”的含义和本文其他地方的含义不一样)阶段计划构建阶段计划的内容包括:o确定本阶段要实现的功能o列出阶段任务o计划 Build 构建数量o细化开发进度表中本阶段的工作内容Build 构建详见:下一节阶段产品发布构建阶段完成后发布阶段产品成果,向用户展示并接受用户反馈,同时做好阶段总结。发布清单的内容包括:o产品版本号和日期o改正的 Bugo修改的功能o实现的新功能o其他说明阶段总结报告的内容包括:o阶段任务的完成情况o进度计划的执行情况o用户的反馈情况o本阶段碰到的主要问题o下一阶段的改进建议2 Build 构建Build 构建以增量的方式执行阶段的开发任务, 每个 Build 构

    22、建的周期一般不超过两星期,每一次 Build 构建都会发布为一个内部版本,并提交测试。测试发现的问题留待以后的 Build构建解决。Build 计划 Build 计划的内容包括:o本次 Build 的版本号o本次 Build 的历时o本次 Build 的工作任务要解决的遗留 Bug本应由以前的 Build 实现的,但推迟到本次 Build 实现的功能要实现的新功能其他工作任务o工作任务分配需求细化根据 Build 计划,细化本次 Build 要实现的需求,细化到能进行详细设计为止。有了细化的需求后就编写本次 Build 的测试计划。测试计划的内容包括:o功能测试要测试的功能测试时间测试方式验收

    23、标准o其他测试(性能测试、边界测试、使用界面测试、可用性测试、安全性测试等)要测试的内容测试时间测试方式验收标准o。界面设计根据细化的需求设计用户界面,当界面确定后即可编写测试用例。测试用例的内容包括:o测试用例对应的功能模块o测试用例的性质(功能测试用例、性能测试用例、。)o输入(或操作步骤)o期望输出o实际输出(执行测试后再填写)o是否通过(执行测试后再填写)详细设计详细实际每项需求的实现方法,对于重要的设计决策、算法、公共模块和外部接口等必须以模块设计文档的形式进行记录。模块设计文档的内容包括:o模块名称o设计思想o设计图表(类图、流程图等)o要点描述(包、接口、类、方法、算法、设计模式

    24、)o测试方式编码、单元测试编码和单元测试是开发人员的工作,对于重要的代码都必须进行单元测试,编写代码必须遵守下列准则:o遵守编码规范o编码前必须充分理解相关的需求o编码前先进行设计,把流程理顺o注意设计方法和设计模式的灵活运用o总体考虑问题,使代码遵从架构并容易测试o设计时要充分考虑异常情况和临界条件o严禁 Copy-Paste ,注意提取公共代码,在编码过程中实现重构o异常处理必须记录日志,严禁草率地直接打印异常信息o灵活运用 ASSERT() / VERIFY() 等断言来帮助调试程序o单元测试是程序员的工作,所以编码完成后必须对代码严格测试o 功能代码完成后必须先做以下 4 件事情:编译

    25、代码,保证编译通过(不运行程序)对代码进行全面检查用调试模式启动程序,一行一行单步执行代码,并注意调试输出改变条件,让代码尽可能走遍所有程序分支o Check In 代码前必须保证能编译通过创建 Build代码集成发布前需冻结代码,所有人把要提交的代码 Check In ,并保证编译后的程序能在测试服务器上正常启动,界面能正常打开。同时还要提交 Build 清单。 Build 清单的内容包括:oBuild 版本号和日期o改正的 Bugo修改的功能o实现的新功能o其他说明集成测试按照测试计划针对 Build 清单执行测试用例,测试完成后编写测试报告。测试报告的内容包括:o测试用例汇总(用例数量、

    26、通过的用例数量、未通过的用例数量等)oBug 汇总( Bug 总数、新增 Bug 数量、关闭 Bug数量、 Bug 趋势图表等)o测试计划执行情况o测试总结控制阶段图 6-1 控制阶段的任务和工件风险管理开发期间要对风险进行监控,定期检查、更新和发布风险列表。质量管理1) 评审评审是质量保证的重要环节,原则上每个重要的工作任务或阶段结束前都必须经过评审,如:方案评审、计划评审、需求评审、设计评审和代码评审等,工作是否被通过、是否需要修改或重做均由评审结果决定,评审结果以评审报告的形式发布。评审报告的内容包括:息 评审主题、时间、提交者、评审者等容 评审内容的列表和简述问答记录 评审过程中重要的

    27、问答记录整个评审的结果,如:1.完全通过,无需修改评审结论 2. 基本通过,需要作小量修改,但不必再评审3.大体通过,需要作一些修改,之后再评审4.不通过,需要作大幅修改,之后必须重新评审评审意见 针对评审结论提出的意见和建议表 7-1 评审报告2) 测试测试是对被构建产品最直接有效的质量保证措施,测试结束后需要提交测试报告。变更管理开发过程中经常会出现多种变更,如:需求变更、设计变更或人员变更等。这些变更通常会对开发进度造成影响,因此要对变更及其处理过程进行跟踪,最后报告变更的处理结果。变更处理报告的内容包括:息 变更主题、发生时间等息 变更的详细描述理 变更的处理方式和步骤果 变更的处理结果响 变更对项目造成的影响表 7-2 变更处理报告进度监控项目进度会议是了解项目实际进度的有效措施,在会议中评审工作报告,解决遇到的问题并计划下一步工作:工作报告的内容包括:1.1.基本信息: 报告者、汇报时间、工作时间段等2.工作情况: 已完成的工作、未完成的工作3.遇到的问题: 工作中碰到的阻碍4.工作计划: 下一步的工作计划项目进度会议的另一个重


    注意事项

    本文(软件开发项目规范doc.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开