《软件开发工具-知识点整理.doc》由会员分享,可在线阅读,更多相关《软件开发工具-知识点整理.doc(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1、 软件开发工具:在高级程序设计语言(第三代语言)的基础上,为提高软件开发的质量和效率,从规划、分析、设计、测试、文档和管理等各方面,对软件开发都提供各种不同程序的帮助的一类新型的软件。2、 软件发展的几个主要阶段:(1)仅限于把用户已经明确表达出来的算法,用机器语言写成一系列机器指令,供硬件运行使用。(2)编程工作改为用汇编语言进行,编好的汇编指令由汇编程序转化为机器指令。(3)把汇编语言变成了高级程序设计语言(第三代语言)。高级程序设计语言不再是与机器指令一一对应,而是更加接近人类习惯的自然语言。3、 21世纪的软件开发工具与以往的有什么区别?(1)自动化程序的提高。(2)这一阶段的工作
2、明确地把需求分析和架构设计包括在软件工作的范围之内,从而使软件开发过程进一步向用户方面延伸,离用户更近了。(3)把软件开发工作延伸到项目及版本管理,从而超出了一次编程的局限,而扩展到了作为一个不断发展的客体生长守的全过程。(4)在这一阶段的研究中,吸收了许多管理可学的内容与方法。4、 软件开发工具的功能要求:(1)认识与描述客观系统。(2)存储及管理开发过程中的信息。(3)代码的编写或生成。(4)文档的编制或生成。(5)软件项目的管理。5、 软件开发工具的性能:(1)表达能力或描述能力。(2)保持信息一致性的能力。(3)使用的方面程度。(4)工具的可靠程序。(5)对硬件和软件环境的要求。6、
3、软件开发工具按工作阶段划分为三类:计划工具、分析工具、设计工具。计划工具则从更宏观的角度去看待软件开发。它不仅从项目管理的角度,帮助人们组织与实施项目,并且把有关进度、资源、质量验收情况等信息有条不紊地管理起来,而且考虑到了项目的反复循环、版本更新,实现了“跨生命周期”的信息管理与共享,为信息以致软件的重用创造了条件。设计工具直接为软件开发过程中的编程、调试、文档编写工作提供帮助。多数的分析工具都是作为较大型计算机的专用系统出现的。7、 学习软件开发工具的目的在于,了解软件开发工具的概念、理论基础、基本功能、发展现状与前景,以便能够在实际工作中正确地选择与使用软件开发工具,在必要时能够参加或组
4、织软件开发工具的自行研制,从而达到提高软件工作水平与效率的目标。8、 软件开发的基本问题:(1)用户对软件功能的理解与程序员对软件功能的理解之间的转换。(2)人和机器之间的交流与协调问题。9、 大型软件开发中的困难:(1)一致性的保持成为十分困难的问题。(2)测试的困难大大地增加。(3)工作进度难以控制。(4)文档与代码的协调十分困难。(5)版本更新带来的困难。10、 结构化程序设计的基本思想:把程序的结构分成三种基本模块:处理单元、循环机制、二分决策机制。按照这种方法来构造程序,就可以把程序内容的各种相互影响有效地控制在模块内容,从而避免“水波效应”。11、 面向对象的程序设计的基本思想:(
5、1)客观世界的任事物都是对象,它们都有一些静态属性,也都有一些相关的操作。即所谓“封装性”。(2)对象之间有抽象与具体,群体与个体,整体与部分等几种关系。(3)抽象的、较大的对象所具有的性质,包括静态属性和动态操作,自然地成为它的子类的性质,不必加以说明或规定。即所谓的“遗传性”。(4)对象之间可以互通信息。12、 即插即用的程序设计的基本思想:一部分人专门生产软件组件,而另一部分人构造整个软件的结构,并把软件组件插入这个结构,以便迅速地完成大型软件的研制工作。13、 什么样的软件才能算得上是一个好软件?(1)正确地实现所要求的功能,准确地给出预定的输出结果。(2)用户界面友好,符合实际用户的
6、使用习惯与知识能力。(3)具有足够的速度(而不是越快越好),能在符合用户要求的时间限度内,给出所要求的处理结果。(4)具有足够的可靠性,能够在各种干扰下保持正常的工作。(5)程序易读,结构良好,文档齐全,而保证系统易于修改。14、 一个好的项目组应当具备哪些基本条件?(1)有严格的、成文的工作规范和文档标准,而且应当成为躯体成员所熟知,并且切实得到遵守。(2)人员之间有严格的分工,除了程序员之外,必须有专门的秘书,必须有专门的测试人员,特别是要有专职的,不限于集体编程的项目负责人。(3)每个项目都要事先制定详细的时间表,并且得到严格执行。15、 软件开发工具所涉及到的重要的理论和方法:(1)认
7、知科学中关于概念模式的概念与方法。(2)数据库技术的理论与方法。(3)编译技术的有关方法。(4)关于人机界面的理论与方法。(5)管理科学中关于项目管理与版本管理的理论与方法。(6)系统科学与系统工程中的有关理论与方法。16、 软件开发过程中需要哪些信息与信息处理方面的帮助与支持:(1)有关系统环境、现状及需求的信息。(2)有关软件的功能设计与物理设计的各种信息。(3)软件成果本身,包括程序与文档。(4)用户对系统的各种变更要求,以及系统的各种变更的记录。17、 什么叫做概念模式(包括作用和意义):它是指人们在认识带我过程中,对于某一带我或某一系统开成的、抽象的、一般化的框架。其作用和意义:概念
8、模式在认识中的作用十分重要,同时作为交流与表达工具也是十分重要的。人们在互相配合、互相协调、共同完成某项任务的时候,需要统一思想、统一认识、协同行动就必须用某种公认的方式来进行表述。18、 软件开发中常用到的几种概念模式:框图、结构图、数据流程图、实体关系图、数据字典、时序网络、数学与逻辑模型、计算机模拟模型。19、 信息库的概念(包括与数据库和数据仓库的区别):它是一个包罗万象的,随着开发项目进展而不断修改与补充的信息集合。数据库是在文件系统的基础上发展起来的一种管理技术,重点在于合理的组织数据,减少冗余。而数据仓库的基本思想是现实中的大量原始数据与实际的应用是有相当距离的,为了能够切实为企
9、业管理者提供对管理真正有用的信息,就要对信息或数据进行多次的加工或提炼,从而得出许多派生的或综合的数据。20、 为什么信息库的一致性十分重要:一是因为信息在传递过程中,误解和丢失现象十分严重,二是软件的修改和版本更新时,大量的工作需要重复去做。21、 人机界面设计的基本原则及重要性是什么?输入尽量自然,输出必须准确;界面必须始终一致;界面必须使用户随时掌握任务的进展性。界面必须提供帮助;宁可让程序多做,不可让用户多干。其重要性:对于用户来说,界面就是系统本身。因为用户只关心怎样能有效地使用软件来解决问题,用户对软件功能的理解都在界面上表现出来,用户的输入是否自然、简便,是否有充分的提示和帮助,
10、对用户的错误是否有友好的措施,输出的形式是否易于理解,结果是否正确,都是用户关心的问题,也是界面的特点,界面不够友好的软件就不是成功的软件。22、 人机界面的常用技术手段有哪些:键盘操作、屏幕滚动、菜单选择、帮助系统、鼠标操作、色彩应用、数据录入、信息显示。23、 什么叫项目管理?其特点和任务是什么?指与固定的生产线上的日常生产管理不同的,具有更大的变动性、时间性的另一类管理任务。特点:子任务多,关系复杂;任务不可重复,形势不断变更;协调组织的任务十分突出;信息处理工作的作用与意义更为突出。任务:有效地控制质量;保证进度;有效利用资源;控制降低成本。24、 项目管理的基本目标:(1)使产品(或
11、工程)的质量得到有效的控制。(2)保证整个系统按预定的进度完成。(3)有效地利用各种资源,尽可能使资源的闲置与浪费减少。(4)控制与降低成本。25、 什么叫版本管理?其任务是什么?版本管理是对软件更新引起的问题进行管理,关键在于保持两个一致性:从时间上关系系统的逐步完善,每一步都是与以前的工作一致,而不是破坏或降低系统的功能。从系统各部分关系上来说,要保持局部与整体一致。具体方法包括规定长远的版本更新计划。26、 软件开发过程中的信息管理工作包括哪几个方面:长期保存信息,不断修改,及时检查和维护,反复调用和查询;数据的转换和加工;各种人员之间的交流。27、 举出三种常用的概念模式,说明它们的作
12、用与使用方法?框图:把程序基本步骤分为处理、判断、输入输出、起始或终止等几个功能,并能不同的记号加以表示,用箭头表示控制或执行的顺序。结构图:它的基本图例为模块,以模块的调用着么为线索,用连线表示调用关系,并注明传递参数。基本调用方式有:顺序调用、选择调用、循环调用。数据流程图(DFD):面对的是系统的信息流程,把信息流看作一个组织或系统运作的线索,简明扼要地勾画出全局,基本元素是外部实体,以箭头表示信息在它们之间的流动状况。实体关系图:用于描述静态数据结构的概念模式,以实体、关系、属性三个基本概念概括数据的基本属性及相互关系。时序网络:描述系统状态及转换方式,常用于实时控制方面的软件。数学与
13、逻辑模型:描述客观世界的状态与规律,包括常用的决策树与决策表。描述客观世界的状态与规律,包括常用的决策树与决策表。计算机模拟模型:利用计算机大量、高速处理信息的能力,在计算机内设置一定的环境,以程序来实现客观系统中某些规律或规则,在二者的基础上计算机调整运行,以便观察系统的运行。28、 论述软件开发过程中保持信息一致性的重要性?作为统一的软件,各部分之间不事避免地要有各种信息的交流与共享;程序和文档是密切相关的;由于版本更新,对信息库中的各种信息还有历史的、逻辑的联系。29、 软件开发工具的基本功能:(1)提供描述软件状况及其开发过程的概念模式,以协助软件开发人员认识软件工作的环境与要求,合理
14、地组织与管理软件开发的工作工程。(2)提供存储和管理有关信息的机制。(3)帮助使用者编制、生成及修改各种文档。(4)帮助使用者编写程序代码,即代码生成。(5)对于历史信息进行跨生命周期的管理,把项目进度与版本更新的有关信息科学地管理起来。30、 软件开发工具的一般结构:(1)总控和人机界面。(2)信息库及其管理。(3)代码生成和文档生成。31、 怎样考虑购置软件开发工具以及自行研制工具的权衡?哪些因素是必须认真考虑的?在项目比较大的时间持续比较长的情况下,使用工具可以使工作的组织管理比较规范,信息管理与检索方便,部分做到信息与知识的重用与共享。但软件开发工具比较昂贵,而且一体化的开发工具还不多
15、,作用与可靠程序不如人意。自己开发的软件开发工具目标明确,符合需要,而且可进一步升级。从长远看,软件开发工具越来越多得到应用,自行开发的工具会减少。考虑因素:所开发软件的性质与要求;开发人员对支持工作与支持程度的实际需要;工作环境;人员的因素。32、 购买软件开发工具时的市场调查应当包括哪些内容?开发工具的功能;这些工具的性能;这些工具所使用或依据的开发方法或开发理论是什么,与自己的方法理论是否一致;这些工具运行环境是什么?这些工具的文档资料是否齐全?使用时的学习、掌握是否简单易行?这些工具的服务、培训条件如何?价格。33、 购置软件开发工具的步骤应当如何安排?明确购买软件开发工具的目的与要求;明确购买软件工具的环境条件与制约条件;市场调查;对于可供选择的各种工具进行综合比较;进行测试和检验;正式签约购置;安装与试用。34、 引入软件开发工具之后 ,应当怎样进行管理?制定严格的使用制度;记录使用的详细过程;培训使用人员;经常进行审讯与评价工作。35、 对软件开发工具的使用情况进行审讯时,需要考虑哪些问题?购买时希望利用它的功能是否发挥了功效:效率、响应速度、输出方式等性能是否满足需要;多少人使用了本工具?工作方式与工作效率是否有了提高;经济效益;有无因硬软限制南昌影响效果;使用频繁程度;管理信息范围;人机界面项目管理故障及处理情况;项目组成员的印象;开发软件情况。36、
限制150内