第1章_软件及软件工程.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计划解决方案 以前曾经见过类似问题吗? 在潜在的解决方案中,是否可以识别一些模式?是否已经存在有软件实现了所需要数据、功能、特征和行为? 类似问题是否解决过?如果是,解决方案所包含元素是否可以复用? 可以定义子问题吗?如果可以,子问题是否已有解决方案? 能用一种可以很快实现的方式来表述解决方案吗?能够建出设计模型吗? * 实施计划 解决方案和计划一致吗?源码是否可追溯到设计模型? 解决方案的每个组成部分是否可以证明正确?设计和代码是否经过评审?或者更好的算法是否经过正确性证明? * 检查结果 能否测试解决方案的每个部分?是否实现了合理的测试策略? 解决方案是否产生了与所要求的数据、功能、特征和行为一直的结果?是否按照项目共同利益者的需求进行了确认? * Hooker的一般原则 1: 存在价值 2: 保持简洁 3: 保持愿景 4:关注使用者 5: 面向未来 6: 计划复用 7: 认真思考 * 软件神话(myths) 就是关于软件及其开发过程被人们盲目相信的一些说法。 它实际上误导了管理者和从业人员对软件开发的态度。 被认为是可信的, 因为它们有时包含真实的部分。 建议在项目开始之前,尽可能努力了解工作内容。从实际出发解决问题 * 这一切如何开始? 每个软件项目都来自业务需求 对现有应用程序的纠错; 改变遗留系统以适应变化的业务环境; 扩展现有应用程序功能和特性; 开发一种新的产品、服务或系统。 * 以SafeHome项目为例: SafeHome住宅安全功能描述(p.69) 我们的研究表明,住宅管理系统市场以每年40%的速度增长。我们推向市场的首个SafeHome功能将是住宅安全功能,因为多数人都熟悉“报警系统”,所以这将更容易销售。 住宅功能应该为各种不希望出现的“情况”提供保护,如非法入侵、火灾、漏水、一氧化碳浓度超标等等。该功能将使用无线传感器监视各种情况的发生,户主可以编程控制,并且在发现情况时自动电话联系监控部门。 * * Chapter 1 Software Software Engineering * What is Software? Software is: (1) instructions (computer programs) that when executed provide desired features, function, and performance; (2) data structures that enable the programs to adequately manipulate information and (3) documentation that describes the operation and use of the programs. What is Software? Software is developed or engineered, it is not manufactured in the classical sense. Software doesnt wear out. Although the industry is moving toward component-based construction, most software continues to be custom-built. * * * Software Applications system software application software engineering/scientific software embedded software product-line software WebApps (Web applications) AI software * Software—New Categories Open world computing—pervasive, distributed computing Ubiquitous computing—wireless networks Netsourcing—the Web as a computing engine Open source—”free” source code open to the computing community (a blessing, but also a potential curse!) Also … (see Chapter 31) Data mining Grid computing Cognitive machines Software for nanotechnologies * Legacy Softwa

文档评论(0)

189****6140 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档