《软件开发工具》串讲讲义.docx

上传人:暗伤 文档编号:51087392 上传时间:2022-10-17 格式:DOCX 页数:36 大小:106.51KB
返回 下载 相关 举报
《软件开发工具》串讲讲义.docx_第1页
第1页 / 共36页
《软件开发工具》串讲讲义.docx_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《《软件开发工具》串讲讲义.docx》由会员分享,可在线阅读,更多相关《《软件开发工具》串讲讲义.docx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件开发工具串讲课程介绍一、课程的设置、性质及特点软件开发工具是全国高等教育自学考试“计算机信息管理”专业的一门专业基础课。本课程的目的是使学生在学习了程序设计的基本知识后,进一步了解和掌握软件开发的各类工具,从而提高软件开发的能力与水平,以适应未来工作的需要。本课程既有一定的理论基础,又有实际上机操作为背景。学员应该结合自己的实践经验,从实践提高到理论, 不仅站在一般学员角度,更要从软件开发管理者高度,建立全面的软件工程与软件开发工具的思想方法。二、教材的选用本课程所选用教材是全国高等教育自学考试指定教材,由陈禹、方美琪主编,机械工业出版社出版(2011 版)。三、章节体系第一部分 理论部分

2、(第 1 章第 6 章) 第 1 章 绪论第 2 章 软件开发过程及其组织第 3 章 软件开发工具的理论基础第 4 章 软件开发的技术要素第 5 章 软件开发工具的使用与开发第 6 章 软件开发工具的现状与发展第二部分 实践部分(第 7 章第 14 章) 第 7 章Eclipse 入门第 8 章Eclipse 工作台第 9 章 使用 Eclipse 进行 C/C+开发第 10 章 调试程序第 11 章Eclipse CDT 开发常用功能第 12 章CVS 的安装及使用第 13 章Eclipse 插件的使用与开发第 14 章 常用建模工具考情分析一、历年真题的分布情况软件开发工具历年考题的分值分

3、布情况如下:1章节2006 年2007.1 年2008 年2009 年2010 年总计年平均分第一章18162018168817.6第二章14251817108416.8第三章12162119168416.8第四章28871776713.4第五章57453244.8第六章41526183.6(一)知识点分布从知识点分布来看,本课程试题覆盖了教材各章节的内容。重点考核章节是理论部分,即第 1 章 第 6 章, 占总分值的 70%,在这 6 章内,还以 14 章内容为主,知识点分布较均匀。实践部分的考核占总分值的 30%。(二)试题难度从试题难度来看,可以分为易、教易、较难、难四个层次,比例一般为

4、 2:3:3:2。对于重点知识每年都会重复出现,只是以不同的形式,或者考查不同的内容。这一点大家要特别注意,不要以为以前考过的知识点就不会再考。虽然每年均有偏题出现,一般是属于课程涉及的较细的内容,但所占比例较低,属于正常情况。总体而言,试题难易适中。二、历年真题结构分析及答题技巧一、单项选择题(本大题共10小题,每小题1分,共10分) 例:属于软件开发工具的是()A.4GLB.DBMSC.编译系统D.操作系统单选题的解题技巧:单项选择题一般难度较小,掌握书中的基本概念和老师提醒的易考点是解决此部分考题的关键。二、多项选择题(本大题共10小题,每小题2分,共20分)例:软件开发工具概念的要点是

5、()A.它是在第三代语言之后,软件技术进一步发展的产物B.它的目的是在软件开发过程中给予人们支持与帮助 C.它的基本思想是致力于软件开发的高效优质D. 它支持软件开发的全过程E. 它仅支持编码或其它特定的工作阶段多选题的解题技巧:多项选择题有一定的难度,不能多选、少选或漏选,而且往往容易和简答题相互转变,除了掌握教材中的基本概念以外,还要注重一些细节的知识,结合真题和老师提醒的易考点是解决此部分考题的关键。三、填空题(本大题共12小题,每空1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。例:按工作阶段划分,软件开发工具可粗略地分为设计工具、 工具和 工具。2填空题的解题技巧:

6、填空题考查学员对课程基本内容和基本概念的掌握程度。熟悉教材是解决这部分题的关键。四、名词解释(本大题共5小题,每小题3分,共15分)例:计算机模拟模型名词解释的解题技巧:掌握教材基本知识点,参考真题,结合教师提示的易考点是解决这部分题的关键。五、简答题(本大题共2小题,每小题5分,共10分)例:简述软件开发工具的功能。简答题的解题技巧:简答题考察学员对课程中关键问题的掌握程度,主要以可以明确的分条回答的问题为主。参考真题,结合教师提示的易考点是解决这部分题的关键。六、论述题(本大题共1小题,10分)例:试述结构化程序设计的基本思想。论述题的解题技巧:论述题考察学员对课程中关键问题的掌握,并且能

7、够就解决问题的方法展开论述,与简答题相比,要求学员具备进一步分析问题的能力。论述题按关键知识点给分。注意参考真题。七、应用题(本大题共 1 小题,15 分)例:在你了解的软件开发工具中,哪一个比较接近集成工具?以地铁售票信息系统开发为例,说明这个工具在软件开发的各个阶段如何支持软件开发工作的。应用题的解题技巧:今年的应用题会与往年有较大的变化,改版后实践部分主要以 Eclipse 为主,考试题型没有往届试题作为参考,对学员来说将是一个重大挑战。主要从工具的功能、特点、依据的概念模式、信息库、文档与代码生成及项目管理等几个方面进行考查,要求学员能以具体软件为例,使用软件开发工具进行软件的开发与组

8、织,达到综合应用的水平。三、学习方法(一)本课程的学习方法1. 必须保证已经全部学习完教材内容。考生要以考试大纲和教材作为学习的依据,掌握教材的知识点,从历年命题特点看,抓住教材是根本。2. 考生手中至少有一本与教材相配套的辅导练习,每学完一章内容后,做辅导书的本章的练习题;学完全部内容后再做模拟题和真题。3. 将做错的试题重点划出来,认真查找错误原因所在。4. 认真钻研解题技巧,要认真领会,揣摩并加以熟练掌握。(二)总复习技巧学完本课程后,进入复习阶段,一般说来至少要留出一个月的总复习时间。在总复习期间,考生应注意: 1.制定详细的复习计划,掌握知识脉络,提高复习效率。在复习时应注意经常翻阅

9、和回忆教材内容,强化记忆;分析整理知识点、做考试真题,熟悉考点以及出题思路, 把握教材中的要点。2.注意概括总结,浓缩所学知识。在复习阶段,要善于概括总结,提炼要点,以便记忆。7(三)考试过程中的注意事项1. 排除一切思想杂念,一心一意答题。2. 拿到试卷后,迅速浏览试卷。同时要快速浏览考题和相应的分值,按难易程度确定做题的顺序,首先做最熟悉的题目和内容;主观题中如有得心应手题,应先做,然后再按顺序答题,遇到一时难答的题果断跳过,答后面的题,以防在某道题上耽搁时间,影响后面的答题。3. 答完卷后别忘记重新考虑最初没确定答案的那些题,另外要至少全部检查一遍看有没有因疏忽而出错的地方。4. 不要盲

10、目提前交卷,在确保没有漏题的情况下经过两遍检查方可交卷。内容串讲理论部分(ch1ch6)一、常见考点1、关于软件开发工具的概念、分类及其功能与性能要求2、软件开发的步骤、各阶段产生的文档及各个角色承担的任务3、大型软件开发中的困难及困难产生的原因4、常见的软件开发方法及其基本思想5、常见的概念模式及其作用6、软件开发工具的一般结构及各部分的作用7、人机界面8、信息库技术9、项目管理及版本管理10、软件开发工具的使用与开发11、软件开发工具的现状与发展二、重难点串讲第 1 章绪论一、软件开发工具的概念1、概念:在高级程序设计语言(第三代语言)的基础上,为提高软件开发的质量和效率,从规划、分析、设

11、计、测试、成文和管理各阶段,对软件开发者提供各种不同程度帮助(支持)的一类广泛的软件。2、要点:(1)它是在第三代程序设计语言基础的上,软件技术进一步发展的产物;(2) 它的目的是在软件开发的全过程中给予人们各种不同方面、不同程度的支持或帮助;(3) 它支持软件开发的全过程,而不是仅限于编码或其它特定的阶段。历年试题 1(2009.1 多选题)为提高软件开发的质量和效率,软件开发工具可从如下哪几个方面为软件开发者提供帮助()A规划方面B分析方面C设计方面DCPU 时间的分配方面E成文和管理方面【答案】ABCE【解析】本题考查软件开发工具的概念,软件开发工具对软件开发的各个阶段提供支持和帮助,不

12、包含对 CPU时间的分配。二、软件开发工具的产生与演变1、软件开发工具的产生与演变从无到有,从分散到集中1) 通用软件作辅助工具阶段没有专用的软件开发工具阶段2) 专用的软件开发工具阶段3) 集成的软件开发工具阶段4) 面向网络和开源软件的开发工具阶段新阶段专用的软件软件开发工具各种代码生成程序;综合性的第四代语言;专用于某种文档的编写工具;数据字典管理系统(CDD、Dictionary/3000);专用于画数非软件开发工具通用软件字处理软件(wordstar)计算机硬件;开发工具据流程图(FLOW)、ER 图或程序框图的绘图软件集成的软件IBM 的 AD/Cycle 理论框架;Rationa

13、l 公司开发工具的 Objectory、Rose面向网络和开源HTML,XML,SOAP,UDDL软件的开发工具2、使用通用软件辅助软件开发的优缺点操作系统、汇编程序、编译系统;磁盘处理程序、病毒防治程序、系统备份;pctools;第三代高级程序设计语(C,COBOL,FORTRAN)优点:与手工方式相比更方便、效果好、便于存储和修改,减少了许多工作量缺点:(1)许多工作通用软件无法完成(2) 通用软件完成某些工作,只能表现其表面形式,而不能反映其逻辑内涵(3) 常遇到难于保持一致性的困难三、软件开发工具的“继承性”和“创新性” 1、继承性(1) 对软件实质的再认识l 软、硬件之间的关系 硬件

14、是躯体,软件是灵魂;用户与硬件间的桥梁l 软件是人类知识与经验的结晶l 软件是人类文明得以延续的新载体(2) 软件工作的发展变化l 最初阶段-机器语言l 第二阶段-汇编语言l 第三阶段-高级程序设计语言(过程化语言)l 第四阶段-应用软件开发工具l 新阶段-面向网络、开源软件、软件构架设计等(3) 软件和软件开发过程的实质从软件开发的发展变化可看出,软件一头面向计算机,提供可执行的机器指令;一头面向应用领域,接收用户所要求的信息处理业务。这种知识的提炼、表述、固化的作用,正是软件和软件开发过程的实质所在。历年试题 2(2008.1 多选题)软件和软件开发过程的实质是知识的( )A.表述作用B.

15、提炼作用C.传播作用D.固化作用E.决策作用【答案】ABD【解析】本题考查软件和软件开发工具的实质,也常作为填空题出现。参见教材 P28。2、创新性(1) 自动化程度的提高。(2) 明确地把需求分析和构架设计纳入到软件工作的范围,从而使软件开发过程进一步向用户方面延伸。(3) 把软件开发工作延伸到了项目及版本管理,从而超出了一次编程的局限,而扩展到了一个不断发展的客体生长完善的全过程。(4) 吸收了许多管理科学的内容与方法,如程序员的组织,质量的控制等。四、与软件开发工具有关的概念、术语1、第四代语言(4GL)2、CASE 工具 3、可视化程序设计4、即插即用程序设计 5、组件程序设计 6、最

16、终用户计算历年试题 3(2007.1 多选题)与软件开发工具类似的概念、术语很多,如()A计算机辅助软件工程C可视化程序设计B第三代语言D最终用户计算E组件程序设计【答案】ACDE【解析】本题考查与软件开发工具与相关的概念,也常作为名词解释题出现。五、软件开发的过程评价与提出改进要求编写文档完成提出初始要求形成功能说明形成总体设计联调通过应用见效编写程序完成模块测试完成需求分析总体设计文档编制代码生成模块测试总体测试应用图 1-1 软件开发的过程历年试题 4(2006.1 填空题)软件开发工作的第三阶段是 ,第四阶段是 。【答案】实现阶段,测试阶段【解析】本题考查软件开发的过程。软件开发的过程

17、分为需求分析,总体设计,实现和测试四个阶段。开发阶段主要任务从用户初始要求出发,经过大量的调查研究,抽象出应用领域中实际的信息需求,设计出在计算机系统内外的、合理的信息流程,并规定软件的功能与性能要求,最后形成严格的、明确的、可供实际开发使用的“软件功能说明书”。根据软件功能说明书的要求,完成软件的总体设计(包括成果需求分析软件功能说明书系统的总体设计文件(结构图、模总体设计整个软件的结构设计、公用数据库文件或数据库的设计、 块清单、公用数据结构)和各个模各部分的连接方式及信息交换的标准等)块的设计任务书实现阶段程序的编写与文档的编写代码和文档测试阶段完成模块的调试与整个软件的联调初步的软件产

18、品六、软件开发工具的功能和性能要求功能:软件能做什么事。性能:事情能做到什么程度。1、功能要求:(1) 认识与描述客观系统(2) 存储与管理开发过程中的信息(3) 代码的编写与生成(4) 文档的编制或生成7(5) 软件项目的管理2、性能指标:(1) 表达能力或描述能力(首先考虑)(2) 保持信息一致性的能力(3) 使用的方便程度(4) 工具的可靠程度(5) 对软、硬件环境的要求历年试题 5(2008.10 单选题)软件开发工具最重要的性能是()A.存储各种信息的能力B.工具的可靠程度C.版本管理的能力D. 帮助人们编写文档【答案】B按集成度与软硬件关系【解析】本题考查软件开发工具的功能和性能指

19、标的区别。选项中只有 B 是工具的性能,其它都是功能。七、软件开发工具的类别分类用途举例比较按工设计工具用于实现阶段代码生成器、4GL、测试工具出现最早,数量最多,适用于个人开发作数据字典管理系统、绘图出现较晚,数量少些,适阶分析工具支持需求分析工具用于规模较大的软件开段发保存整个项目的宏观信出现最晚,数量最少,项计划工具息,为项目主管人员服务目达到一定规模时才需要专用工具面对某一工作阶段或某一工作任务集成工具依赖软硬件面对软件开发全过程如:设计工具独立软硬件如:分析工具、计划工具八、软件开发工具的研究与应用1、对软件开发工具的研究来源三个方面(1) 软件开发工具的使用者 (2)一些厂家和研究

20、单位 (3)软件技术和系统工程专家2、作为一般的使用者,学习软件开发工具的目的了解软件开发工具的概念、理论基础、基本功能、发展现状与前景,以便在实际工作中正确地选择与使用软件开发工具,在必要时能参加或组织软件开发工具的自行研制,从而达到提高软件工作水平与效率的目标。第 2 章软件开发过程及其组织一、软件开发中的困难251、软件开发的基本问题对单个程序员来说,做好软件的关键是做好两个转换。第一个转换:从用户对软件功能的理解到程序员对软件功能的理解之间的转换。采取的手段:利用尽可能标准化的方法编写程序设计任务书,用明确的语言或图形、表格,把程序要处理的信息的内容、格式、来源、去向、存储、处理清楚地

21、表达出来,作为双方共同理解。第二个转换:从程序员的理解到程序的实现。采取的手段:提高程序员的知识水平和实际经验。历年试题 6(2007.10 单选题)单个程序员做好软件工作的关键是()A.正确理解用户的信息需求和信息流程B.将程序员的理解转换为程序的实现C.理解用户要求,并用程序实现D.熟悉编程语言【答案】C【解析】单个程序员做好软件工作的关键是做好两个转换,只有选项 C 包含了这两个转换。2、大型软件开发中的困难(1) 一致性的保持成为十分困难的问题(2) 测试的困难大大增加(3) 工作进度难以控制(4) 文档与代码的协调十分困难(5) 版本更新带来的困难3、困难产生的原因(1) 大系统的复

22、杂性;(2) 个人之间的组织与协调;(3) 各应用领域间的差别;(4) 时间、变化的因素。角 色用户 程序员项目负责人硬件主要任务提出需求、验收软件、使用软件、提出修改要求编程、写文档、调试自己的程序、向项目负责人提交工作成果分析用户需求形成设计方案、向程序员分配任务、验收程序员的工作成果、对整个软件联调、向用户交付使用、接收与分析用户的修改要求、向程序员分配修改任务、验收修改成果、向用户提交新的版本或修改的结果运行、试运行二、大型软件开发过程中的各种角色及其承担的主要任务历年试题 7(2007.1 单选题)负责修改已投入运行程序的人是()A用户B项目负责人C程序员D操作员【答案】C【解析】编

23、程,写文档(包括修改程序和文档)是程序员的主要任务。三、软件开发方法的发展1、结构化程序设计基本思想:把程序的结构分解成三种基本模块:处理单元、循环机制、二分决策机制,并保证模块的划分符合“结构良好”的要求:(1) 模块的功能在逻辑上尽可能的单一化、明确(2) 模块间的联系及相互影响尽可能的少(3) 模块的规模应当足够小,以便其易于调试模块划分的方法: 自顶向下逐步分解,直到最底层的模块达到要求为止。实施的原则:(1) 限制甚至不用 GOTO 语句,绝对禁止超越模块边界的 GOTO 语句。(2) 子程序尽可能做到只有一个入口、一个出口;(3) 程序风格应尽量明确、清晰,包括适当增加注释,书写格

24、式体现层次结构,变量名称的选用尽量具有逻辑意义等;(4) 在程序编写的同时完成有关的文档编撰,不要拖延时间。适用范围:主要是为程序员服务的缺点:增大了程序的工作量,增加了编程中的麻烦与琐碎的工作,降低了程序的运行效率。优点:保证软件的可靠性、准确性、易于修改。历年试题 8(2008.10 单选题)在论述程序结构时,E.Yourdon 把程序的结构分解成三个基本模块,即()A.处理单元、循环机制、二分决策机制B.处理单元、循环机制、控制转移机制C.循环机制、二分决策机制、控制转移机制D.处理单元、二分决策机制、控制转移机制【答案】A【解析】本题考查结构化程序设计的基本思想,把程序的结构分解成三个

25、基本模块:.处理单元、循环机制、二分决策机制。2 、软件工程的方法基本思想:借鉴传统工程的思想,从软件开发的经验中归纳出相应的工作步骤和交流标准,大家都来遵守和执行,从而保证软件开发的进度与质量。实施方法:首先,对软件开发的工作过程进行规范。如 IBM 的 AD/Cycle 把软件开发过程划分成五个阶段: 第一阶段,需求分析。 第二阶段,分析与设计。 第三阶段,编程阶段。 第四阶段,测试阶段。 第五阶段,使用及维护。在标准化方面:1) 表达方式的标准化,如统一规格的数据流程图、数据字典、模块结构图等。2) 对工作的质量及检查制定标准,在一定的时候作一定的检查。如著名的 ISO9001 标准。适

26、用范围:主要集中于加强项目管理者的工作历年试题 9(2009.1 单选题)软件工程的思想和方法主要面向()A用户B项目负责人C程序员D操作员【答案】B【解析】软件工程的思想和方法主要集中于加强项目管理者的工作。3、面向对象的程序设计方法基本思想:(1) 客观世界的任何事物都是对象,它们都有一些静态属性(相应于数据结构)和相关的操作(相应于程序模块)。作为一个整体,这些对象不必对外公开这些属性与操作。这就是“封装性”。(2) 对象之间有抽象与具体、群体与个体、整体与部分等几种关系。这些关系构成对象概念之间的网络结构。(3) 抽象的、较大的对象所具有的性质,包括静态属性和动态操作,自然地成为它的子

27、类的性质,不必加以重复说明或规定。这就是“遗传性”。(4) 对象之间可以互送消息,这一消息可以是传送一个参数,也可以是使这个对象开始某个操作面向对象程序设计产生巨大影响的根本原因在于它提供的“认识框架”,摒弃了持续许久的“自顶向下”和“自底向上”的争论,把对于复杂系统的认识归结为对一批对象及其关系的认识,通过合理地选择认识的层次,使系统的复杂性保持在可控制的范围内。历年试题 10(2008.1 单选题)面向对象的程序设计( )A.强调“自顶向下”B.强调“自底向上”C.摒弃了“自顶向下”和“自底向上”的争论D.自顶向下设计,自底向上实施【答案】C【解析】面向对象程序设计摒弃了持续许久的“自顶向

28、下”和“自底向上”的争论,通过合理地选择认识的层次, 使系统的复杂性保持在可控制的范围内。4、即插即用的程序设计方法基本思想:用制造硬件的思路来生产软件。一部分人专门生产软件组件,一部分人设计整个软件结构,并且把软件组件插入这个结构,以便迅速完成大型软件的研制工作。存在的困难:(1)标准化的问题(2)软件部件的提供方式5、面向开源软件的程序设计基本思想:利用开源软件进行程序设计。注意问题:(1)对应用领域充分了解判断能否用开源软件的主要依据;(2)开源软件的质量,包括文档和代码的规范程度。四、软件开发过程的管理1、什么样的软件才是好的(1) 正确地实现所要求的功能,准确地给出预定的输出结果;(

29、2) 用户界面友好,符合实际用户的使用习惯和知识水平;(3) 具有足够的速度(不是越快越好),能在符合用户要求的时间限度内,给出所要求的结果;(4) 具有足够的可靠性,能够在各种干扰下保持正常工作;(5) 程序易读,结构良好,文档齐全,从而保证系统易于修改。2、好程序员与好项目组由好的程序员组成的项目组,并不会自然成为好项目组。成为一个好程序员与成为一个项目组的好成员并不是完全相同的。(1) 就单个程序员来说,主要的指标有:1) 具有程序设计所需要的基本知识与技能,如关于数理逻辑的知识与训练,关于各类数据结构的概念及处理方法等;2) 对本项目所在的那个领域有较深入的了解,从而能够准确的理解用户

30、的信息需求,正确地把握有关的信息流程与信息处理原则;3) 对于软件开发的技术环境比较熟悉,包括硬件设备、软件环境和网络环境,特别是对于所用的语言,应当有足够的、实际运用的经验。(2) 作为项目组的一员以下几点必须严格遵守:1) 保证严格在本模块内操作,绝不要使用可能干扰其它模块的命令或函数。2) 严格按总体设计的要求和理解去传递参数值,绝不要随意修改其内容或含义。3) 在对公用的文件或数据库进行存取时,必须完全地、准确地按统一规定的格式去操作, 绝不能擅自改变。4) 在使用标识符时,应按照统一的原则尽量使用易于看出逻辑含义的名称。特别是涉及公用数据及参数的时候。5) 严格按照统一的要求编写文档

31、,在内容、格式、表达方式、符号使用上遵循项目组的统一规定。6) 尽量保持程序风格的一致。如注释行的安排,行首空格的使用等。(3) 一个好的项目组至少应当具备以下几个条件:1) 有严格的、成文的工作规范和文档标准,而且应当为全体成员所熟知,并切实得到遵守。2) 人员之间有严格的分工,除了程序员之外,必须有专门的秘书(负责文档的收集、审核及保管),必须有专门的测试人员(负责测试和验收有关的部分),特别是要有专职的、不陷入具体编程的项目负责人。3) 每个项目都要事先制定详细的时间表,并且得到严格执行,每一项目完成之后都有完整的资料,并得到妥善保存,一但需要修改或更新版本时可以立即使用。历年试题 10

32、(2010.1 填空题)CMM 模型要求一个好的项目组必须有专门的 ,负责文档的收集等。【答案】秘书【解析】本题考查一个好的项目组应具备的条件。项目组的人员包括程序员,秘书,测试员和项目负责人,秘书负责文档的收集、审核及保管等。第 3 章软件开发工具的理论基础一、软件开发过程的信息需求1、软件开发过程的信息流通情况(1) 信息流通模型描述了软件开发过程中,各种信息在各种人员(用户、分析人员、程序员、维护人员)与计算机之间的流通状况。(2) 信息流通模型中涉及四类信息: 第一类,有关环境、现状及需求的信息。 第二类,有关软件的功能设计与物理设计的各种信息。 第三类,软件成果本身,包括程序和文档。

33、 第四类,用户对系统的各种变更要求,以及系统的各种变更记录(是跨越开发周期的信息)。历年试题 11(2009.10 单选题)软件开发过程中,有关环境、现状及需求信息的提供者和采集者分别是()A.分析人员用户B.用户分析人员C.分析人员设计人员D.设计人员分析人员【答案】B【解析】软件开发过程中,有关环境、现状及需求信息是由用户提出,由分析人员采集的,经过他的理解,成为需求分析及设计的依据。2、软件开发过程中涉及的信息管理工作(1) 信息的存储(2) 数据的转换与加工: 手工形式和计算机形式之间的相互转换; 计算机内部不同形式数据的转换。(3) 人与人之间的信息交流:分析人员、程序员、用户和维护

34、人员软件开发工具正是为前面提到的四类信息的合理存储、正确转化和顺畅流通提供帮助。3、软件开发工具用到的理论和方法第一,认知科学中关于概念模式的概念与方法。第二,数据库技术的理论与方法。第三,编译技术的有关方法。第四,关于人机界面的理论与方法。第五,管理科学中关于项目管理与版本管理的理论与方法。第六,系统科学与系统工程中的有关理论与方法。二、概念模式1、概念模式指人们在认识事物过程中,对某一事物或某一系统形成的抽象的、一般化的概念框架。2、概念模式的意义既反映了客观现实,同时又具有主观性3、概念模式的作用(1) 概念模式是人们认识客观世界的一种方法和工具。 概念模式是人们在长期实践活动中逐渐形成

35、的。人们认识事物的过程就是概念模式不断修正、不断完善的过程。 概念模式总是在一定的理论、思想指导下形成的,同时不断的根据实际情况得到修正。(2) 概念模式是人们进行交流与表达的重要工具。人们在互相配合、互相协调、共同完成某项任务的时候,需要统一认识、协同行动,就必须用某种公用的方式进行表述,概念模式正起到了这种作用。概念模式作用框图描述程序执行的逻辑过程结构图基本图例特点处理、输入/输出、判断、起始/终止、控制转向适用于软件规模不太大的情况表示大型软件的层次结构,即模块模块;顺序调用、循环调的结构。它以模块调用关系为线用、选择调用;参数传递索,从宏观描述软件的全貌。数据流程描述某一业务领域处理

36、系统的信图(DFD) 息来源、存储、去向的全面情况。外部实体,信息处理,信息存储,信息流动情况实体关系图(ER) 数据字典(DD)时序网络用于描述静态数据结构,广泛应用于数据库的设计中。实体、关系、属性描述数据内容的概念模式二维表用于描述系统状态及其转换方式状态、转换数学与逻辑模型描述客观世界的状态与规律。决策表,决策树体现层次观点,由粗到细、自顶向下描述程序,体现结构化程序设计思想。把信息流看作一个组织或系统运作的线索,力图简明扼要地勾画出全局。以实体、关系、属性三个基本概念概括数据的基本结构。 用表格的形式列出数据的基本属性以及相互关系。用于一些实时控制方面的软件功能的描述严格、准确、可计

37、算;限制多, 适于描述单纯、基础的功能。计算机模利用计算机大量、高速处理信息的能力,在计算机内设置一定的环境,以程序来表现客观系统拟模型中的某种规律与规则,计算机可以在设定好的环境、按定好的规则高速运行,以便人们观察与预测客观系统的状况。4、软件开发中常用的概念模式历年试题 12(2010.10 填空题)时序网络主要描述的是系统 及其 方式。【答案】状态,转换【解析】本题考查时序网络的主要作用。是描述系统状态及其转换方式的概念模式。历年试题13(2010.10 多选题)数据流程图的基本组成部分是()A.外部实体B.实体属性C.数据存储D.条件判断E.数据处理【答案】ACE【解析】本题考查数据流

38、程图的基本图例,包括:外部实体,信息处理,信息存储,信息流动情况等。三、信息库及其一致性1、信息库的概念n 信息库(Repository)又译为:中心库、总库、主库,原意就是数据库,但不同于 Database 或 Data Warehousen 是针对软件开发或信息系统开发中的大量信息管理工作提出来的。是软件开发全过程的信息管理总枢纽。它的特点是数据结构相当复杂,而且会不断变化,保持一致性的任务十分艰巨。2、对信息库的研究主要集中与三个方面:1) 信息库的内容(1) 软件的工作环境、功能需求、性能要求,有关的各种信息来源的状况、用户状况、硬件环境以及在该领域中的作用等外部信息。(2) 需求分析

39、阶段中收集的有关用户的各种信息。(3) 逻辑设计阶段的各种调查材料和由此生成的各种文档调查记录、原始数据、报表及单证的样本、绘制的各种图、系统说明书。(4) 设计阶段的各种资料数据库与数据文件格式、数据字典、程序模块的要求、总体结构、各种接口及参数的传递方式、设计方案。(5) 编程阶段的所有成果程序代码、框图、变量说明、测试情况、验收报告、使用说明。(6) 运行及使用情况的详细记录。(7) 维护及修改的情况。(8) 项目管理的有关信息,版本信息。历年试题14(2010.10 多选题)在信息库中,设计阶段的有关信息包括() A.总体结构B.数据字典C.程序代码D.测试情况E.程序模块的要求【答案

40、】ABE【解析】本题考查软件开发各阶段存入信息库的资料,其中 CD 两项是编程阶段的成果。2) 信息库应当具备的管理功能一般数据库的基本功能:增、删、改操作特殊功能:(1) 把计算机内外的信息存储统一起来管理规定复杂的内部结构以存放信息。(2) 面对分析人员、程序员和维护人员等不同的对象,他们有各自的权限和使用目标需要认真设计有关的界面以便使用。3) 信息库如何保持一致性(1) 信息库中的内容一般不删除,老信息加上时间标志移入历史信息中,并与新信息保持着历史的、逻辑的联系,在需要时可以随时调出来。(2) 由多个程序模块组成的大型软件系统中,如何保证某个模块更新后与其它模块一起构成一个新的版本。

41、(3) 保证程序和使用手册之间的一致性。(4) 对国际性的大软件公司来说,各种语言的资料之间的一致性同样需要认真地、细致的组织与安排。四、人机界面及其管理1、人机界面设计的基本原则(1) 用户界面的主要功能是通信。(2) 界面必须始终一致。(3) 界面必须使用户随时掌握任务的进展情况。(4) 界面必须能提供帮助。(5) 宁可让程序多干,不可让用户多干。历年试题 15(2006.1 填空题)在关于界面的基本原则中,用户界面的主要功能是 ,界面必须 。【答案】通信,始终一致【解析】本题考查人机界面设计的基本原则。此处也经常作为简答题考查。2、AD/Cycle 应用系统框架 SAA 中,人机交互的手

42、段键盘操作、屏幕滚动、菜单选择、帮助系统、鼠标操作、色彩应用、数据录入、信息显示五、项目管理与版本管理1、项目管理1) 概念:指与固定的生产线上的日常生产活动不同的、具有更大变动性、时间性的一类管理任务。2) 一般项目管理的特点(1) 子任务多,关系复杂。(2) 任务不可重复,形势不断变更。(3) 组织协调的任务十分突出,资源浪费闲置的风险与合理地优化组合、提高效益的机会并存。(4) 信息处理工作的作用与意义更为突出。3) 项目管理的基本目标(1) 使产品(或工程)的质量得到有效的控制。(2) 保证整个系统按预定的进度完成。(3) 有效的利用各种资源,尽可能使资源的闲置与浪费减少。(4) 控制

43、与降低成本。4) 方法:工程计划网络方法(计划评审技术),棒状图、检查点方法、排队论,水利工程的 P32、版本管理1) 版本管理的核心保持两个一致性n 从时间上说,要保证系统的逐步完善,以前达到的结果不丢失,需要时可以回溯,必要时可以重用;每一步新的进步都要切实与以前的工作一致,是改进而不是破坏或者降低系统的已有功能。n 从系统各部分之间的关系上说,要求局部与整体保持一致,合理地判断每一次修改的必要性及影响范围, 合理地组成每一个新版本,并通过命名、编号等方法,使新的版本成为系统进步的漫长过程中的一个台阶, 一个有目的、有方向的稳定的进步。2) 版本管理的具体方法n 规定长远的版本更新计划n

44、制定版本有关的信息范围及收集、管理方法n 在项目组内明确分工n 在编程、测试、文档编写等工作中贯穿项目管理的思想及要求。第 4 章软件开发工具的技术要素一、 基本功能与一般结构1、软件开发工具的基本功能(1) 提供描述软件状况及其开发过程的概念模式,协助软件开发人员认识软件工作的环境与要求、合理地组织与管理软件开发的过程。(2) 提供存储和管理有关信息的机制与手段。(3) 帮助使用者编制、生成及修改各种文档。(4) 帮助使用者编写程序代码,即代码生成。(5) 对于历史信息进行跨生命周期的管理,把项目运行与版本更新的有关信息科学地管理起来。2、软件开发工具的一般结构(1) 总控和人机界面中心位置,使用者和工具间的桥梁,工具实用性和灵活性的保证。(2) 信息库和信息库管理模块工具功能与作用的最基本依据。(3) 文档生成和代码生成两个重要输出(4) 项目管理和版本管理跨周期信息共享、知识重用、软件重用的关键问题。历年试题16(2010.10 单选题)软件开发工具的基础是() A.信息库B.人机界面C.总控部分D.代码生成【答案】A【解析】本题考查软件开发工具一般结构中各部分的作用,信息库和信息库管理模块是工具功能与作用的最基本依据。二、 总控部分及人机界面1、 总

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

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁