- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2讲_软件过程
螺旋模型 基本思想 螺旋模型是瀑布模型、原型模型的有机结合,同时增加了风险分析 螺旋模型 优点 有助于获取用户需求,加强对需求的理解 尽早发现软件中的错误 支持需求的动态变化 支持风险分析,可降低或者消除软件开发风险 适合于需求动态变化,事先难以确定并且开发风险较大的系统 基于组件的开发模型 支持软件复用(reuse) 利用预先包装好的软件构件(包括组织内部开发的构件和现存商品化构件COTS)来构造应用系统 基于组件的开发模型 根据ATT、Ericsson、HP公司的经验,有的软件复用率高达90%以上,产品上市时间可缩短2-5倍,错误率减少5-10倍,开发成本减少15%-75%。仅管这些结论出自一些较好使用基于构件开发的实例,但毫无疑问,基于构件的开发模型对提高软件生产率、提高软件质量、降低成本、提早上市时间起到很大的作用。 形式方法模型 形式化方法(formal methods)是建立在严格数学基础上的一种软件开发方法。软件开发的全过程中,从需求分析、规约、设计、编程、系统集成、测试、文档生成、直至维护各个阶段,凡是采用严格的数学语言,具有精确的数学语义的方法,都称为形式化方法。 形式化方法用严格的数学语言和语义描述功能规约和设计规约,通过数学的分析和推导,易于发现需求的岐义性、不完整性和不一致性,易于对分析模型、设计模型和程序进行验证。通过数学的演算,使得从形式化功能规约到形式化设计规约,以及从形式化设计规约到程序代码的转换成为可能。 本讲内容 软件过程的概念 软件过程模型 案例分析 案例:微软公司的软件开发过程 微软公司的开发管理原则 以目标驱动的开发过程 具有外部可见的里程碑 基于多版本的产品发布 并行协作的小型化团队 经常性的同步和稳定 案例:微软公司的软件开发过程 案例:微软公司的软件开发过程 规划阶段 开展市场调查研究,结合公司战略形成产品的远景目标。 设计阶段 根据产品的远景目标,完成软件的功能规格说明和总体设计,并确定产品开发的主要进度。 开发阶段 整个开发任务划分成若干个递进的阶段,并设置成M1、M2、……、Mn等内部里程碑,在每个里程碑都提交阶段性的工作成果 稳定阶段 实行全面的内部和外部测试,最终形成可发布的RTM版本。 发布阶段 在确认产品质量符合发布标准之后,发布产品及其相关的消息 Q A Practice, Practice, and Practice * * * * * * * * * * * * * * * * * * * * 软件工程 第2讲 软件过程 潘俊 panjun@wzu.edu.cn Phone: QQ:办公室:北7-1202-C 本讲内容 软件过程的概念 软件过程模型 案例分析 软件过程的概念 建造一个房屋的过程 任务思维模式 问题 假设:软件需求可以在开发初期完全确定下来 与用户的交互只是发生在确定需求之时和发布产品之后 现实情况很少符合上述假设 过程思维模式 好处 通过提高可见性来降低开发风险 允许在项目进展过程中基于用户的反馈进行项目变更 软件过程的概念 软件过程是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动。 软件过程应该明确定义 团队人员的工作和职责 所执行的活动及其顺序关系 活动的内容和步骤 软件过程的目标 标准化、预见性、生产率、高质量、计划进度和预算的能力 软件过程的运行机制 软件过程的基本活动 软件过程的四个基本活动 规格说明(Specification) 定义软件功能以及对其使用的限制 软件开发(Development) 设计和实现满足规格说明的软件 软件确认(Validation) 验证软件以保证能够满足客户的要求 软件演化(Evolution) 改进软件以适应不断变化的需求 不同的组织或软件类型拥有不同的软件开发活动 软件规格说明 软件规格说明是确定系统需要的服务以及运行与开发中所受约束的过程,也称为需求工程。 需求工程的过程 软件设计与实现 软件设计是根据需求规格说明,确定软件体系结构,进一步设计每个系统部件的实现算法、数据结构及其接口等。软件实现是将软件设计转换成程序代码。 软件设计的过程 软件确认 验证和确认(VV)需要指出软件是否符合规格说明以及是否满足客户的需求。 验证和确认包括检查和评审过程以及系统测试 系统测试是使用由规格说明产生的测试用例执行软件的过程 软件测试过程 软件演化 软件的内在本质是灵活的和可变的 随着业务需求的变化,软件必须进化和变更 尽管在开发过程和演化(维护)过程之间存在划分,但是现实中全新的系统越来越少 认识软件
您可能关注的文档
最近下载
- 体例格式8:工学一体化课程《windows服务器基础配置与局域网组建》任务3学习任务考核方案.docx VIP
- 2025高中信息通用技术学业水平考试上机试题真题(含答案解析4).docx VIP
- 招标代理机构廉洁承诺书范文(9篇).pdf VIP
- 体例格式8:工学一体化课程《windows服务器基础配置与局域网组建》任务5学习任务考核方案.docx VIP
- 降水沉井及顶管专项施工方案.docx
- 体例格式8:工学一体化课程《windows服务器基础配置与局域网组建》任务6学习任务考核方案.docx VIP
- 城市雕塑创作设计收费标准.pdf VIP
- 【碳足迹报告】昌江华盛天涯水泥有限公司产品碳足迹报告(2023年度).docx
- SICK西克picoScan150 2D LiDAR激光扫描仪操作手册.pdf
- 2025高中学业水平考试信息通用技术上机试题真题(含答案解析6).pdf VIP
文档评论(0)