软件项目开发过程221

上传人:无*** 文档编号:228358576 上传时间:2023-08-21 格式:PPT 页数:90 大小:2.13MB
收藏 版权申诉 举报 下载
软件项目开发过程221_第1页
第1页 / 共90页
软件项目开发过程221_第2页
第2页 / 共90页
软件项目开发过程221_第3页
第3页 / 共90页
资源描述:

《软件项目开发过程221》由会员分享,可在线阅读,更多相关《软件项目开发过程221(90页珍藏版)》请在装配图网上搜索。

1、软件项目开发过程(北京)联系电话:1软件项目什么是软件项目完成特定目的、符合用户特定需求的软件所需的组织结构和过程、规范的集合软件项目的实施需要周密的部署,合理的规章制度,符合项目的路线(软件过程),良好的项目管理和人员安排。2相关流程软件管理特点 软件生存期过程确定需求开发策划需求分析概要设计详细设计编码与调试测试软件集成、联调内部确认复制、交付、安装试运行、用户验收运行、维护退役软件管理配置与变更管理环境、工具和技术有关软件的法规和标准周密策划以保证 软件质量管理体系八项质量管理原则过程方法基于过程的质量管理体系模式实施质量管理体系的意义实施质量管理体系工作重点企业发展力量分析3软件管理特

2、点软件产品的特点软件产品的质量,完全取决于其设计和开发水平软件需求的模糊性、变化性使软件产品难以成熟任何一个软件产品,或多或少总会存在一些故障(BUG)软件人员广泛存在的不规范的开发习惯使开发过程难以管理软件质量指标难以量化软件测试理论和技术尚未解决软件产品正确性的验证问题软件产品质量特性:满足需求能力的一系列特性总和功能、可靠性、易用性、效率、维护性、可移植性软件管理必须在市场(用户)需求和软件成熟性之间进行权衡 4软件生存期过程确定需求开发策划需求分析概要设计详细设计编码与调试测试软件集成、联调内部确认复制、交付、安装试运行、用户验收运行、维护退役5确定需求确定外部用户需求上级下达的软件开

3、发课题本单位根据市场需要确定的开发课题用户合同要求的软件开发任务输出可行性分析报告技术、经济、社会可行性,风险对策合同及评审记录产品要求得到规定和满足单位有能力满足规定的要求 6开发策划确定开发目标确定项目开发的技术路线(开发的出发基线、对现有产品的复用、委托开发等)确定应遵循的标准、法律和法规选任开发项目经理划分开发阶段确定各阶段的输入和输出文件确定质量控制点(评审点、验证点和确认点)及其实施的责任人、实施方式等设计项目开发进度确定开发人员并分配职责提出开发所需资源(软件、硬件开发环境及工具软件、设备、资金等)要求并予以落实制定配置管理计划和质量保证计划7开发策划(续)输出策划报告开发项目实

4、施计划配置管理计划质量保证计划等8需求分析确保项目的开发符合用户的需求(可测试性)确定设计输入任务委托书/招标书前期对用户的需求调研资料可行性分析报告/投标书合同等 编制内部需求规格(说明)书需求变更控制9需求的层次-业务需求、用户需求和功能需求10需求的开发和管理11需求验证验证是为了确保需求说明准确、完整地表达必要的质量特点客户的参与在需求验证中占有重要的位置审查需求文档以需求为依据编写测试用例编写用户手册确定合格的标准12测试需求测试需求有很多分类方法,最普通的一种就是按照商业功能分类把需求分解成单元的好处:测试需求是测试用例的基础,分成单元可以更好地进行设计详细的测试需求是用来衡量测试

5、覆盖率的重要指标测试需求包括各种测试设计和开发以及所需资源 最好分解到功能点13概要设计确保产品的总体结构和模块间的关系与用户需求的一致性 内容总体方案设计逻辑框图接口及通讯协议选用现有产品软件的选用边界(约束)条件的设计运行环境设计等输出概要设计说明书14详细设计详细设计说明书与概要设计说明书是否相一致 内容算法设计数据格式设计实现流程设计人机界面设计测试用例设计操作设计等输出详细设计说明书软件组装计划测试计划及测试用例安装手册(初稿)使用说明书(初稿)产品标准(初稿)15编码与调试内容编写程序代码:源代码目标代码可执行代码此阶段还包括部分软件模块的局部测试、集成与联调根据待开发软件的规模、

6、控制点及人员安排,可细分为多个小阶段输出软件(源代码、目标代码、可执行代码及相关数据文件)文档(帮助文件等)保证编码风格的一致性,易读性;增强软件源码的可维护性16测试按测试发生的顺序划分模块测试:是对单个软件模块的测试单元测试:是对各个软件功能单元的测试组装测试:是对各软件单元之间的互联测试集成测试:是对硬件装置、设备和软件的加入性测试系统测试:项目组所在部门组织的对完成集成的系统的测试(是否满足产品规格要)确认测试:单位质量控制部门进行的测试(是否满足产品规格要求)验收测试:在现场安装、调试结束并经试运行后,与顾客一起,就满足合同情况进行的测试(是否满足合同要求)17测试(续)与顺序无关的

7、测试联合测试:当软、硬件分头开发完成时,对其组合体进行的测试回归测试:对因排除不符合项而采取的措施是否产生了其他副作用而进行的确认性测试专项测试:针对某些具体测试项进行的确认性测试。例如:边界条件测试等。应根据开发规模,尽可能进行独立测试。为了保证测试的可信性,被测试的软件应以源代码的形式提交,同时说明生成可执行代码的环境和方法。由测试人员生成可执行代码,进行测试。18软件开发的V字模型不可能在需求开发阶段真正进行任何测试,因为还没有可执行的软件可以在开发组编写代码之前,以需求为基础建立概念性测试用例,并使用它们发现软件需求规格说明中的错误、二义性和遗漏,还可以进行模型分析19对V模型的质疑在

8、部分阶段延迟进行单元测试和集成测试在不同阶段上提前进行测试设计20X模型适应现实单元测试、集成测试不断迭代强调探索性测试21统计数字每千行源代码所包含的bug数,cmm1级为11.95个,cmm2为5.52个,cmm3为2.39个,cmm4为0.92个,而cmm5则只有0.32个22软件集成、联调应按计划对所开发的软件模块进行组装并与硬件一起联调根据需要,规定应填写的调试记录23内部确认在模拟环境下运行,并监视、记录运行情况根据任务书或合同的要求进行比照,检查其是否满足使用要求对运行情况、测试结果及文档的齐套性、正确性和一致性进行评审,达到确认24复制、交付、安装软盘复制、光盘刻录交付时的版本

9、标识和登记安装(派技术人员安装或由用户自行安装)记录软件安装实施计划软件安装环境最低需求软件安装记录25试运行、用户验收以用户验收的方式进行最终确认结论软件设计与需求的一致性程序编码与软件设计的一致性文件描述与程序的一致性文件的成套性、完整性、准确性和标准化程度是否通过验收26运行、维护收集使用中发现的问题和顾客意见针对运行中出现的问题,按设计更改程序进行控制记录用户服务记录表27退役编写软件退役报告,并进行评审28配置与变更管理控制对构成软件产品的各配置项的标识、管理、更改活动,保证软件配置项的完全性和正确性,防止非预期的使用软件配置项的范围合同、技术文档、质量记录等基线的确立配置项的存取配

10、置管理实施配置项的标识配置项的变更控制配置项的状态记录配置项的检查和评审29媒体控制对软件存放介质(媒体)的要求和规定软件的复制(软件的生产过程)媒体的标识:规则、执行者媒体的贮存(防潮、防火、防磁、防静电、防病毒)媒体的包装、运输30文档资料控制各开发阶段应形成的文档,对其拟、审、批的规定编制文档资料所依据的标准和规范开发过程中应形成的质量记录文档与软件之间的一致性检查文档资料的归档与发放31版本管理分类开发过程中的版本交付软件产品的版本管理对象软件文档为该产品开发的工具软件操作配置管理人员,配备一台计算机(或服务器)开设开发库、受控库和产品库访问权限对入库和出库软件的控制32版本管理(续)

11、开发库存放正在开发(编写)或调试(修改)、自测的软件和文档受控库存放开发各阶段测试通过的软件、文档和工具软件的版本并给以标识。转入下一阶段时,从此处发放用作下一阶段开始工作的初始版本产品库存放可交付及已交付软件、文档及支持文件的版本各库内所存放的软件和文档,应定期备份,以防止开发成果的意外丢失(文件重写、介质损坏、意外事故、非法访问病毒,黑客,故意破坏等)并保证可追溯性33环境、工具和技术开发所需的硬件环境测试所需的硬件环境(包括模拟用户环境所必要的输入、输出设备)开发平台软件(操作系统、编程语言、编译环境、调试工具等)管理软件诊断软件测试软件辅助性软件(防病毒软件等)34有关软件的法规和标准

12、软件产品管理办法计算机信息系统集成资质管理办法(试行)计算机软件保护条例ISOIEC 122071995信息技术软件生存周期过程ISOIECTR 15504软件过程评估GBT1900032001质量管理和质量保证标准第3部分:GB信息技术软件生存周期过程GBT190011994在软件开发,供应、安装和维护中的使用指南GBT1250490计算机软件质量保证计划规范GBT1250590计算机软件配置管理计划规范等35周密策划以保证 开发人员应具备一定的资格或能力开发环境(软件和硬件平台)是适用的编制足够的控制程序和工作规范(例如开发过程控制程序、变量命名规则、代码书写规范、注释规范等)编制测试用例

13、并在使用前对用例本身进行验证编制各阶段测试计划,明确规定测试方法以及测试结果的记录要求、评价方式和接收准则实施配置管理,控制软件产品(代码和文档)版本和更改过程36软件质量管理体系质量体系文件质量手册 文件控制 记录控制 管理职责 质量方针、质量目标 职责、权限与沟通 管理评审 资源管理 人力资源 基础设施和工作环境 产品实现 产品实现的策划 与顾客有关的过程 设计和开发 采购 开发和服务提供 监视和测量装置的控制 测量、分析和改进 监视和测量 不合格品控制 数据分析 改进 37八项质量管理原则以顾客为关注焦点领导作用全员参与过程方法管理的系统方法持续改进基于事实的决策方法与供方互利的关系38

14、过程方法39基于过程的质量管理体系模式40实施质量管理体系的意义管理法治化职责更分明接口更明确监督机制加强焦点得到控制竞争能力增强41实施质量管理体系工作重点规范管理制度增进内部沟通提高服务质量增强社会信心42小结小结43软件开发中的困境如何指定符合项目的计划项目应该如何去完成如何按期提交项目如何降低项目的风险项目中的人员流动很频繁怎么办如何合理的安排已有人员项目不断变大,文档和程序不断的增多用户的需求在不断的变化项目中的人员在增加,如何管理好项目的质量如何控制44软件开发过程的模型简单式(构建维护)瀑布式敏捷开发统一软件开发过程45简单式修改直到用户满意修改直到用户满意系统使用系统使用消亡消

15、亡思路或者客户需求思路或者客户需求构建第一个版本构建第一个版本46简单式过程开发特征系统在没有任何规范和规则的情况下就开发没有明确的设计,设计思路都在开发者的头脑中这种开发方法对于使用周期很短的小项目可用随着时间的推移,系统的维护越来越困难系统在交付使用时,有可能会出现一系列的错误,前期和后期维护成本都很高在大型项目和商用项目中极少使用47瀑布式设计阶段设计阶段实现阶段实现阶段集成阶段集成阶段需求阶段需求阶段细化阶段细化阶段使用阶段使用阶段消亡消亡每个阶段做完时进行每个阶段做完时进行验证验证48瀑布式开发70年代流行的开发方法自上而下的开发方法每个阶段都有软件质量管理组核实后再进行下一阶段的开

16、发每一阶段都有测试每个阶段都形成了明确的文档文档并不总能和系统相符合细化的文档使得系统的用户和开发人员难于理解和分辨系统的关系阶段之间的对应和检查变得困难、维护代价高变更应对能力差49敏捷开发快速适应系统需求的变化提高软件生产率突出企业自身特点,体现企业核心能力支持动态联盟和虚拟组织面向业务目标持续改进和重组50敏捷开发的特征轻量级的开发过程基于时间Just Enough并行基于组件的软件工程51敏捷开发过程软件的需求是难以预期的,开发方法必需适应变化的需求,在快速的迭代中不断改进小组成员并不完全按照完整的方法进行开发,而根据具体问题和情况,灵活地去除非增值活动仅仅执行一些必须的活动,使用必须

17、的规则,编写必须的文档人的因素被放在第一适合互联网时代的开发要求52主要敏捷开发方法eXtreme Programming(XP)SCRUMDSDMAdaptive Software Development(ASD)Feature Driven Development(FDD)Crystal FamilyRational RUP&UML53统一软件开发过程用例驱动用例:能向用户提供有价值的系统的某种功能以架构为中心软件架构:系统的最重要的静态和动态特征迭代和增量式迭代:工作流程的重复、每次的活动都以上次的活动为基础54用例驱动用户所希望和需要的是什么系统能为每个用户提供什么功能用例所描述和代表

18、的是用户与系统交互的一个过程,而这个过程满足了用户的某些需求所强调的是系统的功能55以架构为中心刻画了系统的整体设计,忽略了细节设计,刻画最重要的部分。什么是最重要的呢?依赖于判断。判断的依据是经验。构架的设计价值取决于执行该任务的人的素质受用户需求(用户可能会增加那方面的需求)、软件应用平台(计算机硬件、操作系统、数据库、网络等)、实施问题、遗留系统集成等的影响56用例和架构用例是系统的功能和外衣架构是系统的内在形式两方面必须并行进化架构只考虑核心功能(5-10%)架构设计原则:先考虑与用例无关的不会变动的方面考虑考虑最重要的功能需求子集57迭代和增量式控制迭代过程,划分每次迭代的目标迭代原

19、则:架构上先实现最粗略的部分功能上先实现最重要的每次迭代尽可能的划分的细,迭代数量不能太少每次迭代要有规范的检查机制增量式每次迭代增加一部分设计和实现58统一软件过程的生命周期在软件过程中,不断的向用户提供新的版本每次形成的版本构成了一个循环59每个版本形成的过程每次循环由四个阶段构成初始想法-产品系统向用户提供的功能是什么系统的架构是什么样子的开发计划、开支如何、人员安排细化详细说明产品的功能设计系统的架构构造构造能运行的产品移交产品手册、测试手册、用户培训、技术支持60产品版本形成的迭代过程61核心工作流程和四个阶段62产品版本的相关模型用例模型:系统的功能和用户的关系分析模型:提炼用例,

20、将用例的实现分配给一组对象设计模型:静态结构和动态结构子系统、类、接口实现模型:类、接口到组件的映射实施模型:组件到部署物理节点的映射测试模型:测试用例和用例的映射63产品版本的相关模型64模型间的依赖关系迭代的过程使得每次迭代过程中依赖关系的复杂程度降低65软件过程具体化没有通用的软件过程组织因素:组织结构、文化、管理、能力、经验等领域因素:应用领域的熟悉、竞争对手的提供产品的影响生命周期因素:时间、专业技能技术因素:程序设计语言、开发工具、数据库系统、框架等66Capability Maturity Model软件能力成熟度模型迄今为止学术界和工业界公认的有关软件工程和管理实践的最好的评价

21、模型。为评估软件组织的生产能力提供了标准。为提高软件组织的生产过程指明了方向。67CMM概述一个成熟软件组织具有在全组织范围内管理软件、开发过程和维护过程的能力规定的软件过程被正确无误地通知到所有员工工作活动均按照已规划的过程进行,并通过可控的先导性试验和费效分析使这些过程得到改进对已定义过程中的所有岗位及其职责都有清楚的描述通过文档与培训使全组织有关人员对已定义的软件过程都有很好的理解,从而使其软件过程所导致的生产率和质量能随时间的推移得到改进。68CMM基本概念软件件过程程:人们用于开发和维护软件及其相关过程的一系列活动,包括软件工程活动和软件管理活动。软件件过程能力程能力:描述(开发组织

22、或项目组)遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件项目而言。软件件过程性能程性能:表示(开发组织或项目组)遵循其软件过程所得到的实际结果,软件过程性能描述的是已得到的实际结果,而软件过程能力则描述的是最可能的预期结果,它既可对整个软件开发组织而言,也可对一个特定项目而言。软件件过程成熟程成熟:一个特定软件过程被明确和有效地定义,管理测量和控制的程度。69CMM基本概念软件能力成熟度等件能力成熟度等级:软件开发组织在走向成熟的途中几个具有明确定义的表示软件过程能力成熟度的平台。关关键过程域程域:每个软件能力成熟度等级包含若干个对该成熟度等级至关重要的过程

23、域,它们的实施对达到该成熟度等级的目标起到保证作用。这些过程域就称为该成熟度等级的关键过程域,反之有非关键过程域是指对达到相应软件成熟度等级的目标不起关键作用。归纳为:互相关联的若干软件实践活动和有关基础设施的一个集合。70CMM基本概念关关键实践践:对关键过程域的实践起关键作用的方针、规程、措施、活动以及相关基础设施的建立。关键实践一般只描述“做什么”而不强制规定“如何做”。整个软件过程的改进是基于许多小的、渐进的步骤,而不是通过一次革命性的创新来实现的,这些小的渐进步骤就是通过一些关键实践来实现。软件能力成熟度模型件能力成熟度模型:随着软件组织定义、实施、测量、控制和改进其软件过程,软件组

24、织的能力也伴随着这些阶段逐步前进,完成对软件组织进化阶段的描述模型。71CMM1第一级:初始级在初始级,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。72CMM2第二级:可重复级在这一级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。基于过往的项目的经验来计划与管理新的项目。73CMM3第三级:定义级在这一级,有关软件工程与管理工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制订出来。同时,这些过程是集成到一个协调的整体。这就称为企业的标准软件过程。74CMM4第四级:定量管理级在这一级,企业对产品与过程建立起定

25、量的质量目标,同时在过程中加入规定得很清楚的连续的度量。作为企业的度量方案,要对所有项目的重要的过程活动进行生产率和质量的度量。软件产品因此具有可预期的高质量。75CMM5第五级:(不断)优化级在这个等级,整个企业将会把重点放在对过程进行不断的优化。企业会采取,以达到预防缺陷的目标。同时,分析主动去找出过程的弱点与长处有关过程的有效性的资料,作出对新技术的成本与收益的分析,以及提出对过程进行修改的建议。76CMM五级77项目自动取款机系统构建需求储蓄用户使用三种功能78系统关键用例关键功能点的关注取款79分析用例80系统分析模型静态建模81系统分析模型动态建模82系统设计模型83三种模型的关系84设计模型类设计(静态)85设计模型动态建模86设计模型子系统分组87实现模型88测试模型89北京圣道互联北京思摩信息技术有限公司京华纵横信息技术服务(北京)有限公司联系电话:90

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!