(软件需求分析重点2.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(软件需求分析重点2

什么是软件工程: 用来制造软件的工程 化的 方法 软件的特性: 软件是抽象的,而不是物理的—看不见摸不到 软件是极其复杂的 软件的手工开发方式、智力密集型 对计算机硬件依赖性 软件是被开发或设计的,而不是被制造的 软件不会磨损和老化,但维护困难 软件的高成本 软件危机的表现: ?对软件开发成本和进度的估算很不准确,甚至严重拖期和超出预算; ?无法满足用户需求,导致用户很不满意; ?质量很不可靠,经常失效; ?难以更改、调试和增强; ?没有适当的文档; ?软件成本比重上升; ?软件开发生产率跟不上计算机应用迅速深入的趋势。 什么是软件神话,它的危害: 软件神话(software myths):关于软件及其开发过程的一些说法被人盲目相信 ? 影响到几乎所有的角色:管理者、顾客、其他非技术性的角色、具体的技术人员; ? 看起来是事实的合理描述(有时的确包含真实的成分)、符合直觉,并经常被拿来做宣传; ? 实际上误导了管理者和技术人员对软件开发的态度,从而引发了严重的问题; 软件工程面临的挑战有哪些: ? 遗留系统(Legacy system) ? 多年以前开发出来的软件,在长期使用过程中不断的被人修改; ? 日益增加的维护成本和修改困难已经成为令人头疼的问题; ? 例如:Y2K问题; ? 高可信软件开发 ? 关注软件的正确性、可靠性、安全性、必威体育官网网址性; ? 以形式化方法为发展趋势,通过保证模型的可信度来保证系统的可信度; ? 异构系统的集成与互操作 ? 采用不同技术开发出来的系统,运行在不同的硬件平台和操作系统上,它们之间需要进行自动的数据交换; ? 更快的交付时间 ? 顾客要求快速响应需求,而软件开发的周期难以有效缩短; On demand (随需应变) ? 软件开发方式的变化 ? Web 2.0、open source ? 基于Internet的协同开发模式 软件工程的范围和目标: ? 范围: ? 软件开发过程(设计、开发、运行、维护) ? 软件开发中应遵循的原则和管理技术 ? 软件开发中所采用的技术和工具 ? 目标: ? 高质量 ? 按时交付 ? 控制成本 ? 满足用户需求 软件工程的四大组成部分: 工具、方法、过程、质量 第二章 核心概念与思想 功能性需求和非功能性需求及其特性: 功能性需求(Functional Requirements):系统能够完成所期望的工作的能力 ? 完备性:软件能够支持用户所需求的全部功能的能力; ? 正确性:软件按照需求正确执行任务的能力; ? 健壮性:在异常情况下,软件能够正常运行的能力 容错能力; 恢复能力; ——正确性描述软件在需求范围之内的行为,而 健壮性描述软件在需求范围之外的行为。 ? 可靠性:在一定的环境下,在给定的时间内,系统不发生故障的概率,或者是快速从错误状态恢复到正确状态的能力。 非功能性需求(Non-Functional Requirements):系统能够完成所期望的工作的性能与质量 ? 性能:软件的“时间-空间”效率; ? 易用性:用户使用软件的容易程度,用户容易使用和学习; ? 清晰性:易读、易理解,可以提高团队开发效率,降低维护代价; ? 安全性:在对合法用户提供服务的同时,阻止未授权用户的使用; ? 可扩展性:软件适应“变化”的能力,系统很容易被修改从而适应新的需求或采用新的算法、数据结构的能力; ? 兼容性:不同产品相互交换信息的能力; ? 移植性:是软件不经修改或稍加修改就可以运行于不同软硬件环境(CPU、OS和编译器)的能力; ? 经济性:开发成本、开发时间和对市场的适应能力。 ? 商业质量:上市时间、成本/受益、目标市场、与老系统的集成、生命周期长短等。 软件工程的7条原理: ? 用分阶段的生命周期计划严格管理 ? 坚持进行阶段评审 ? 实行严格的产品控制 ? 采用现代程序设计技术 ? 结果应能清楚地审查 ? 开发小组的人员应少而精 ? 承认不断改进软件工程实践的必要性 软件工程的几个核心思想: 复用(Reuse): ? 在一个新系统中,大部分的内容是成熟的,只有小部分内容是全新的。 ? 构造新的软件系统可以不必每次从零做起; ? 直接使用已有的软构件,即可组装成新的系统; ? 复用已有的功能模块,既可以提高开发效率,也可以改善新开发过程中带来的质量问题; 分而治之(Divide and Conquer): ? 将复杂问题分解为若干

文档评论(0)

lunwen1978 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档