3173软件开发工具复习资料

上传人:第*** 文档编号:33378738 上传时间:2018-02-15 格式:DOCX 页数:10 大小:31.33KB
返回 下载 相关 举报
3173软件开发工具复习资料_第1页
第1页 / 共10页
3173软件开发工具复习资料_第2页
第2页 / 共10页
3173软件开发工具复习资料_第3页
第3页 / 共10页
3173软件开发工具复习资料_第4页
第4页 / 共10页
3173软件开发工具复习资料_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《3173软件开发工具复习资料》由会员分享,可在线阅读,更多相关《3173软件开发工具复习资料(10页珍藏版)》请在金锄头文库上搜索。

1、第一章 绪论1、软件开发工具概念(范围):在高级程序设计语言的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、成文和管理各方面,对软件开发者提供各种不同的帮助的一类广泛的软件。2、软件开发工具的概念的三要点:1 它是在高级程序设计语言之后 ,软件技术进一步发展的产物;2 它的目的是在人们开发软件过程中给予人们各种不同方面、不同程度的支持或帮助 3 它支持软件开发的全过程,而不是仅限于编码或其它特定的工作阶段。3、软件开发工具的地位:软件开发工具的提出与使用,是软件技术发展的一个新阶段,它是软件发展的必然趋势,是软件技术发展到一定阶段的必然产物。软件开发工具的作用:软件开发工具可以

2、提高软件开发的效率,保证软件开发的质量,加快软件开发的周期,同时使得系统更加规范,而且节省人力、财力。4、软件开发工具的产生与演变 1 第一代语言机器语言 2 第二代语言汇编语言 3 第三代语言高级程序设计语言 4 第四代语言非过程化语言5、第三代语言与第二代语言的区别 第三代语言突破了与机器指令一一对应的限制,尽可能接近自然语言的表达方式描述人们设想的处理过程,把这种表达方式向机器指令的转化工作交给编译系统去完成。一个重要的变化是高级设计语言实现了对机器的独立性,即不依赖特定的硬件系统,抽象地逻辑地描述处理和算法,而把硬件系统之间的区别交给不同的编译系统去处理,从而大大提高了程序的可移植性。

3、6、第四代语言非过程化语言思想给机器下达需要做什么的命令,由机器自己去安排执行的顺序。7、软件危机:在认识到软件工作重要性的同时,也认识到软件工作的困难性。8、软件工作的重要性 (1 软件是计算机的灵魂 1 软件是广大使用者与计算机之间的桥梁 2)软件是人类的各个领域中积累的知识的结晶 3 软件是人类文明与知识得以延续的新的载体 4 软件是人类进一步成为一个整体,得以进一步相互联系的纽带。9、软件工作的困难性 1 人类社会和客观世界的复杂性,决定了软件本身的复杂性 2 人类知识和丰富多彩,决定了软件的极大多样性 3 客观世界的动态性,决定了软件对可维护性、可靠性越来越高的要求。10、用通用软件

4、帮助软件开发有三个主要弱点:1 许多工作是通用软件无法完成的 2 只能表现其表面的形式,不能反映其内涵 3 常常遇到难于保持一致性的困难。11、专用的软件开发工具主要分为以下几类 1 面向特定功能模块的各种代码生成程序 2 综合性的第四代语言一般是立足于某种数据库管理系统或某种第三代语言之上的 3 专用于某种文档的编写工具 4 数据字典管理系统 5 专用于画数据流程图、ER 图 等。12、软件开发的过程:第一阶段:初始要求的提出。成果:软件功能说明第二阶段 :总体设计 。任务是根据软件功能说明书的要求,完成软件的总体设计,(成果:系统的总体设计文件及各个模块的设计任务书)第三个阶段:程序的编写

5、和文档的编写,统称为实现阶段。第四个阶段:测试或调试阶段。包括两部分:模块的高度、整个软件的联调。13、软件开发工具的功能要求:1 认识与描述客观系统。用在软件开发工作的需求分析阶段 2 存储及管理开发过程中的信息 3 代码的编写或生成 4 文档的编制或生成 5 软件项目的管理。这一功能是为项目管理人员提供支持(包括:进度管理、资源与费用管理、质量管理三个基本要求) 。14、软件开发工具的五项重要性能:1、表达能力或描述能力 2、保持信息一致性的能力 3、使用的方便程度 4、工具的可靠程度 5、对硬件和软件的要求。15、学习软件开发工具的目的是什么?了解软件开发工具的概念、理论基础、基本功能、

6、发展现状与前景,以便能够在实际工作中正确地选择与使用软件开发工具,在必要时能够参加或组织软件开发工具的自行研制,从而达到提高软件工作水平与效率之目标。16、软件开发工具的发展(新阶段的特点)1 自动化程度的提高 2 明确地把需求分析和架构设计包括进了软件工作的范围之内 3 把软件开发工作延伸到项目及版本管理,从而超出了一次编程的局限 4 在这一阶段的研究中,吸收了许多管理科学的内容与方法,如程序员的组织、质量的控制等。 17 论述工具产生之前,第一代到第四代程序设计语言的主要特征 1 第一代机器语言阶段:使用“0”和“1”代码进行编程,难于阅读,难于维护,且程序高度依赖于计算机硬件,难于移植

7、2 第二代汇编语言:使用助记符来编写程序,由汇编系统将汇编指令转化为机器指令,编程工作量大大降低,但依然依赖于计算机硬件 3 第三代高级程序设计语言,高级语言突破了与机器指令一一对应的限制,实现了对机器的独立性,从而大大提高了程序的可移植性。程序员需要逐行编写语句来实现算法的过程,因此它属于过程化的语言 4 第四代语言(4GL)是非过程化的程序设计语言,用户只说明要求做什么,而把具体的执行步骤交由软件自动执行。第二章 软件开发过程及其组织1、两个转换的基本情况:第一个转换是用户对软件功能的理解和程序员对软件功能的理解之间的转换。保证这一转换顺利完成的手段就是利用尽可能标准化的方法编写程序设计任

8、务书,第二个转换所要解决的是人和机器之间交流与协调问题:做好第二个转换的关键在于程序员的知识水平与实际经验。2、大型软件开发中的困难 1 一致性的保持成为十分困难的问题 2 测试的困难大大增加 3 工作进度难以控制 4 文档与代码协调十分困难 5 版本更新带来的困难。3、大型软件开发困难产生的原因:原因是复杂的、多方面的,不能特意地归结为程序员或软件工作者的弱点:1 这些困难来自大系统的复杂性 2 个人之间的组织与协调本身也会带来大量的困难。3 各个应用领域之间的差别也导致这些困难的加重。4 时间的因素、变化的因素也给软件开发工作带来许多困难。4、软件开发的方法:结构化程序设计、软件工程方法、

9、面向对象的方法、即插即用的程序设计方法、可视化设计编程5、软件开发工作中涉及到的人员及承担的工作 1 用户:提出要求、验收、使用、要求修改 2 项目负责人:分析需求、向程序员分配任务、验收程序员的工作成果代码与文档、对软件进行联调,向用户交付使用,接收与分析用户的修改要求,向程序员布置修改任务、验收修改成果并向用户提交新的版本或修改的结果等。3 程序员:编写程序、编写文档、调试编码的程序、向项目负责人提交工作成6、 程序结构与设计的技术一书中关于好的程序结构的各种看法; 1 它能够保证程序正常地,按照功能说明书运行 2 它具有灵活性,没有错误,即使有了错误也能够很快地改正 3 它的文档齐全,一

10、旦需要变更,很容易找到应当改动的地方 4 它运行速度快 5 它在经济上能够保证投资很快地得到回报。7、模块的划分应当符合以下三条基本的要求:1 模块的功能在逻辑上尽可能地单一化、明确化,最好做到模块与任务的一一对应, (凝聚性强)2 模块之间的联系及互相影响尽可能地少,对于必需的联系都应当加以明确的说明 3 模块的规模应当足够小,以便使它本身的调试易于进行。8、结构化程序设计的原则:1 限制甚至不用 GOTO 语句,绝对禁止超越模块边界的 GOTO 语句 2 子程序尽可能做到只有一个入口、一个出口 3 程序风格应尽量明确、清晰,变量名称尽量具有逻辑意义等 4 在程序编写的同时,完成有关的文档编

11、撰,不要拖延时间。9、结构化程序设计方法的缺点:增大了程序工作量,增加了编辑中的麻烦与琐碎的工作,降低了程序的运行效率。但这种是为保证软件的可靠、准确度与易于修改付出的代价。10、软件开发工作中需要加强的两个方面 1 对工作的步骤做出了严格的规定。每一个阶段有明确的任务、明确的起点、明确的终点,特别是要有确切的、可以检查的成果。2 在质量、表达方式等方面要有统一的、为人们共同遵守的标准。11、对软件开发工作过程进行规范化:1 需求分析。了解企业的结构与功能,掌握组织及管理者的信息需求,弄清信息流通的实际情况 2 分析与设计阶段,进行功能分解及数据分析,完成处理过程及数据库的逻辑设计 3 编程阶

12、段,完成具体的程序编写工作 4 测试阶段,对已有的代码进行认真的检测与试用 5 作用及维护阶段,组织使用者有效地作用,并及时检查与修正发现的错误。12、标准化方面主要从两个方面去探索: 1 是表达方式的标准化 2 是对工作的质量及检查制订标准。13、面向对象的程序设计的基本思想:1 客观世界的任何事物都是对象,它们都有一些静态属性,也都有一些有关的操作。 (封装性 2 对象之间有抽象与具体、群体与个体、整体与部分等几种关系 3 抽象的、较大的对象所具有的性质包括静态属性和动态操作,自然地成为它的子类的性质。 (遗传性)4 对象之间可以互送消息,这一消息可以是传送一个参数,也可以是使这个对象开始

13、某个操作。14、即插即用的程序设计基本思想:一些人生产软件组件,另一些人则设计软件的结构,并把软件组件插入这个结构,以便迅速地完成大型软件的研制工作。15、即插即用的程序设计的实现的困难 1 标准化的问题困难 2 软件部件的提供方式也是问题。16、运用可视元素时所用的技术手段:1 指点与卡嗒 2 删剪与粘贴 3 拖拉与扔下17、什么样的软件才是好的(好软件的评价标准 1 正确地实现所要求的功能,准确地给出预定的输出结果 2 用户界面友好,符合实际用户的使用习惯与知识水平 3 具有足够的速度,能在符合用户要求的时间限度内,给出所要求的处理结果;4 具有足够的可靠性,能够在各种干扰下保持正常的工作

14、 5 程序易读,结构良好,文档齐全,从而保证系统易于修改。18、单个程序员的主要的指标 1 具有程序设计所需要的基本知识与技能 2 对本项目所在的领域有较深入的了解,从而能够准确地理解用户的信息需求,正确地把握有关的信息流程与信息处理原则 3 对于软件开发的技术环境比较熟悉,特别是对所用的语言,应当有足够的、实际运用的经验。以上三个条件基本上能保证程序员单独地承担软件开发任务。19、项目组的一员必须严格遵循(项目组对程序员的约束有哪些):1 保证严格地在本模块范围内操作,决不要使用可能干扰其它模块的命令或函数 2 严格按总体设计的要求和理解去传递参数值,决不要随意修改其内容或含义 3 在对公用

15、的文件或数据库进行存取时,必须完全地、准确地按统一规定的格式去操作,决不能擅自改变 4 在使用标识符时,应按照统一的原则,尽量使用易于看出逻辑含义的名称 5 严格按照统一的要求编写文档,在内容、格式、表达方式、符号使用上遵循项目组的统一规定 6 尽量保持程序风格的一致 7 总之,项目组的成员,必须接受项目组的限制和约束,服从项目组的管理。必须具有高度的组织和团队精神。20、怎样建立一个好的项目组 一个好的项目组应当具备以下几个条件 1 有严格的、成文 工作规范和文档标准,且应当为全体成员所熟知,并且切实得到遵守。2 人员之间必须有严格的分工,除程序员之外,必须有专门的秘书,必须有专门的测试人员

16、,特别是要有项目负责人 3 每个项目都要事先制定详细的时间表,并且得到严格招待。21、结构化程序设计的基本思想:把程序的结构分解成三种基本模块:处理单元、循环机制、二分决策机制,并保证模块的划分符合结构良好的要求:1 模块的功能在逻辑上最好做到一一对应;2 尽可能地减少模块之间的联系及相互影响,对必需的联系都应当加以明确的说明。应尽量避免逻辑耦合,而仅限于数据耦合;3 模块的规模应当足够小,以便使它本身的调试易于进行。第三章 软件开发工具的理论基础1、软件开发过程中信息流通的主要内容:1 有关系统环境、现状及需求的信息2 有关软件的功能设计与物理设计的各种信息。3 软件成果本身,包括程序与文档。4 用户对系统和各种变更要求,以及系统的各种变更记录。2、软件开发工具的理论及技术基础:1 认知科学中关于概念模式的概念与方法2 数据库技术的理论和方法 3 编译技术的有关方法 4 关于人机界面的理论与方法 5 管理科学中关于项目管理与版本管理的理论与方法 6 系统科学与系统工程中的有关理论与方法。3、概念模式的意义:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号