- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件期末复习范围【整理】
复习要点:
软件、软件危机、软件工程、软件工程过程、软件工程化和标准化、软件工具和CASE的概念、7条基本原理、三要素与质量的关系。
★软件:软件是由计算机程序、数据及文档组成的。
★软件危机:在软件开发过程中出现的了许多问题。
★软件工程:(1)Feitz Bauter 在NATO上给出软件工程的定义:软件工程是为了经济地获得可靠的和能在实际机器上高效运行的软件而确立和使用的健全的工程原理;(2)IEEE给出的定义:软件工程是开发、运行、维护和修复软件的系统方法;(3)《计算机科学技术百科全书》给出的定义:软件工程是应用计算机科学、数学及其管理科学等原理开发软件的工程。
★软件工程过程:软件过程是把输入转化为输出的一组彼此相关的资源和活动。
★软件工程化和标准化:软件工程化就是把软件工程理论应用到软件开发组织中,以改进软件产品开发的时间(T)、质量(Q)、成本(C)、服务(S)。通过在整个软件开发组织中建立有序的、有限步骤的、符合规则的过程,达到提高软件开发质量,缩短软件开发周期等目的;一个软件项目开发需要多层次、不同分工的人员互相配合,开发项目的各个阶段和各个部分之间也有许多联系和衔接问题,如何把这些错综复杂的关系协调好,需要一系列的统一的约束和规定,也就是说需要软件工程标准化。
★软件工具:软件工具是用来辅助软件开发、运行、维护、管理和支持等过程中活动的软件。
★CASE(计算机辅助软件工程):将各种软件工具、开发机器和一个存放开发过程信息的工程数据组合起来而形成的一个软件工程环境。
★软件工程7条基本原理:(1)按软件生存期分阶段制定计划并认真实施;(2)坚持进行阶段评审;(3)坚持严格的产品控制(4)使用现代程序设计技术(5)明确责任,使得工作结果能够得到清楚的审查(6)人员应少而精(7)不断进行开发过程。
★软件工程三要素:方法、工具、过程。
★三要素与质量的关系:软件工程的三要素与软件质量构成一种层次化技术,关注质量是根本出发点;软件过程是整个体系的基础,是各种方法和工具的粘合剂;方法包括管理方法和技术方法,提供如何完成活动的指南和准则;工具使得过程利于方法自动化或半自动化,从而提高效率。
软件生存期的概念、三个时期、六个阶段以及各时期和阶段的任务。
★软件生存期:软件生存期是软件产品或软件系统从设计、投入使用到被淘汰的全过程。
★三个时期:定义、开发、维护。
各个时期的任务:
定义时期:包括问题定义,可行性研究和需求分析;
开发时期:包括设计,编码和测试;
维护时期:包括维护阶段。
★六个阶段:①可行性研究与计划②需求分析③软件设计
④编码⑤测试⑥维护
各个阶段的任务:
可行性研究与计划:确定待开发软件的总体要求和范围,以及该软件与其他计算机系统元素之间的关系,进行成本估算,做出进度安排,并从经济、技术、法律和使用等方面分析带开发软件是否有可行的解决方案,在若干个可行的解决方案中推荐最佳方案。
需求分析:确定软件功能、性能、数据、界面等方面的要求,编写软件需求规格说明书,主要解决带开发软件要“做什么”的问题。
软件设计:通常分为总体设计和详细设计。总体设计的任务:设计软件系统的体系结构,包括软件系统的组成结构、各组成成分的功能和接口、组成成分间的连接和通信;详细设计的任务:设计各个组成成分的实现细节,包括局部的数据结构和算法等,主要解决待开发软件“怎么做”的问题。
编码:用某种程序设计语言,将设计的结果转换为可执行的程序代码。
测试:发现并改正软件中的错误或缺陷。
维护:在使用运行期间,当发现软件中隐藏的错误,或者需要增加功能或为适应外部运行环境的变化而需要修改软件。
方法学的概念及三种常用方法的特点。
★方法学:软件生存周期中使用的一套技术方法的集合。
★三种常用的方法:(1)生命周期法(又称传统方法或结构化方法)(2)面向对象方法(3)原型法
特点:(1)结构化方法:结构化分析方法最初只是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据词典为主要工具,建立系统的逻辑模型。是面向过程的方法。扩充后,将建模技术扩展到功能建模(数据流图)、数据建模(以实体-关系图)、行为(动态)建模(控制流图、状态-迁移图)以数据词典为核心,从不同视点建立系统的分析模型。
(2)面向对象方法:面向对象方法是一种运用对象、类、继承、封装、聚合、消息传递、多态性等概念来构造系统的软件开发方法。
面向对象=对象 + 类 + 继承 + 消息通信
面向对象的主要特征:封闭性、继承性、多态性。
(3)原型法:一种分析员和用户密切合作的迭代开发过程。
一种开发部分的强调功能系统版本的工程方法。可以进化为最终的系统,一种把需求快速转化为可运行系统版本的方法。把需求快速转化为可运行系统版本,可使得用户或管理者试用
原创力文档


文档评论(0)