软件开发工具-知识点整理
软考初级程序员知识点汇总

软考初级程序员知识点汇总作为一名初级程序员,掌握一定的专业知识是非常重要的。
以下是一些软考初级程序员常见的知识点汇总,希望对广大初级程序员有所帮助。
一、编程语言基础1.了解常见的编程语言,如C、Java、Python等,掌握其基本语法和特性。
2.理解变量、常量、数据类型等基本概念。
3.掌握条件语句、循环语句和函数的使用方法。
二、面向对象程序设计1.了解面向对象的基本概念,如类、对象、继承、封装、多态等。
2.掌握面向对象的编程思想和方法,能够使用面向对象的方式解决问题。
三、数据结构与算法1.了解常见的数据结构,如数组、链表、栈、队列、树、图等。
2.掌握常见的算法,如排序、查找、递归等。
3.能够根据实际问题选择合适的数据结构和算法,并进行优化。
四、数据库基础1.了解关系型数据库和非关系型数据库的基本概念和特点。
2.掌握SQL语言的基本语法,能够进行数据库的增删改查操作。
3.了解数据库的设计原则和范式。
五、网络基础1.了解计算机网络的基本概念,如TCP/IP协议、HTTP协议等。
2.掌握网络编程的基本方法,能够使用Socket进行网络通信。
3.了解常见的网络安全问题和防护措施。
六、操作系统基础1.了解操作系统的基本概念,如进程、线程、内存管理、文件系统等。
2.了解常见的操作系统,如Windows、Linux等。
3.掌握操作系统的基本操作和管理方法。
七、软件工程基础1.了解软件开发的基本流程和模型,如瀑布模型、敏捷开发等。
2.了解软件测试的基本方法和工具,如单元测试、集成测试、性能测试等。
3.了解软件质量管理和配置管理的基本方法。
八、前端开发基础1.了解HTML、CSS和JavaScript等前端技术的基本概念和用法。
2.掌握常见的前端框架和工具,如Bootstrap、Vue.js等。
3.能够进行简单的前端页面设计和开发。
九、软件开发工具1.掌握常见的集成开发环境(IDE),如Eclipse、Visual Studio等。
软件技术基础知识点

软件技术基础知识点在当今数字化的时代,软件技术已经成为推动社会发展和创新的关键力量。
无论是我们日常使用的手机应用,还是企业运行的复杂系统,都离不开软件技术的支持。
接下来,让我们一起探索软件技术的一些基础知识点。
一、数据结构数据结构是软件技术中非常重要的概念。
它是指相互之间存在一种或多种特定关系的数据元素的集合。
常见的数据结构包括数组、链表、栈、队列、树和图等。
数组是一种最简单的数据结构,它是一组相同类型的元素按顺序存储在连续的内存空间中。
数组的优点是访问元素的速度快,但插入和删除元素的效率较低。
链表则是通过指针将各个元素链接在一起,不需要连续的内存空间。
链表在插入和删除元素时较为方便,但访问元素的速度相对较慢。
栈是一种特殊的线性表,遵循“后进先出”的原则。
就像往一个桶里放东西,最后放进去的会最先被取出。
队列则遵循“先进先出”的原则,类似于排队买票,先到的先买。
树是一种分层的数据结构,常见的有二叉树、二叉搜索树等。
二叉搜索树可以快速地进行查找、插入和删除操作。
图则用于表示多对多的关系,在网络路由、社交网络分析等领域有广泛的应用。
二、算法算法是解决特定问题的一系列明确步骤。
好的算法应该具有正确性、可读性、健壮性、高效性和低存储量需求等特点。
常见的算法有排序算法,如冒泡排序、插入排序、选择排序、快速排序等。
冒泡排序通过不断比较相邻的元素并交换位置,将最大的元素逐步“浮”到数组的末尾。
快速排序则通过选择一个基准元素,将数组分为小于和大于基准元素的两部分,然后对这两部分分别进行排序。
搜索算法也是重要的算法之一,包括顺序搜索和二分搜索。
顺序搜索逐个检查元素,直到找到目标元素或遍历完整个数组。
二分搜索则是在有序数组中,通过不断将数组对半分割来查找目标元素,效率较高。
还有动态规划算法,用于解决具有重叠子问题和最优子结构性质的问题,如背包问题、最长公共子序列问题等。
三、编程语言编程语言是软件开发者与计算机进行交流的工具。
软件开发工具知识点

第一章绪论1、软件开发工具的定义:在高级程序设计语言(第三代语言)的基础之上,为了提高软件开发的质量和效率,从规划、分析、设计、测试、成文和管理各方面,对软件开发者提供各种不同程度的帮助的一类广泛的软件。
2、软件是广大使用者与计算机之间的桥梁,软件是人类在各个领域中基类的只是的结晶,软件是人类文明与只是得以延续的新的载体,软件是人类记你一不成为一个整体,得以进一步相互联系的纽带。
3、用通用软件帮助软件开发有三个主要的弱点:第一个弱点是,有许多工作是通用软件所无法完成的;第二个弱点是,通用软件完成某些工作,只能表现其表面的形式,而不能反映其逻辑内涵;第三个弱点是,用通用软件来帮助人们完成软件开发工作时,常常遇到难于保持一致性的困难。
4、IBM在1989年宣布了一个名为AD/Cycle的巨大的理论框架,可以被看做死后进入集成的软件开发环境阶段的标志。
5、软件开发工具概念的要点:它是在高级程序设计语言(第三代语言)之后,软件技术进一步发展的产物;它的目的是在人们开发软件过程中给予人们各种不同方面、不同程度的支持或帮助;它支持软件开发的全过程,而不是仅限于编码或其它特定的工作阶段。
6、第四代语言(4GL):它的原义是非过程化的程序设计语言。
针对以处理过程为中心的第三代语言,它希望通过某些标准处理过程的自动生成,使用户可以只说明要求做什么,而把具体的执行步骤的安排交由软件自动处理。
7、软件开发的过程:第一阶段是初始要求的提出;第二阶段是总体设计;第三阶段是程序的编写与文档的编写;第四阶段是测试或调试阶段。
8、软件开发工具应提供的支持工作有:第一,认识与描述客观系统;第二,存储及管理开发过程中的信息;第三,代码的编写或生成;第四,文档的编制或生成;第五,软件项目管理。
9、软件开发工具的性能:第一,表达能力或描述能力;第二,保持信息一致的能力;第三,使用的方便程度;第四,工具的可靠程度;第五,对硬件和软件环境的要求。
知识点总结最全的软件

知识点总结最全的软件第一部分:软件基础知识1. 软件概念和分类软件是计算机系统中的非物质部分,其包括计算机程序、数据和文档。
根据功能和用途,软件可分为系统软件、应用软件和工程/嵌入式软件。
系统软件是管理和控制计算机硬件资源的程序,包括操作系统和中间件。
应用软件是为特定任务而开发的程序,包括办公软件、设计软件和游戏软件。
工程/嵌入式软件是用于嵌入式系统或特定设备的特定软件,并与硬件交互。
2. 软件开发生命周期软件开发生命周期是软件从概念到退役的全过程。
它包括需求分析、设计、编码、测试、部署和维护等阶段。
常见的软件开发模型有瀑布模型、敏捷开发、迭代开发和原型模型等。
3. 软件版本管理软件版本管理是对程序开发过程中的版本进行控制和管理。
常用的版本管理工具包括Git和SVN等。
第二部分:软件开发与编程语言1. 编程语言编程语言是用于编写程序的形式化语言。
常用的编程语言包括C、C++、Java、Python、JavaScript和Ruby等。
它们具有不同的特点和适用场景,如C语言适合系统编程,Java适合企业级应用,Python适合数据分析和机器学习等。
2. 软件开发工具软件开发工具包括集成开发环境(IDE)、文本编辑器和调试器等。
常用的IDE包括Visual Studio、Eclipse和IntelliJ IDEA等。
此外,文本编辑器如Sublime Text和Atom等也十分常见,它们多用于轻量级开发。
3. 软件测试与调试软件测试是确保程序质量的过程,包括单元测试、集成测试和验收测试等。
调试是识别和修复程序错误的过程,常用的调试工具包括GDB和Visual Studio Debugger等。
第三部分:软件工程1. 软件需求工程软件需求工程是明确软件功能和实现方式的过程,其要求对用户需求进行收集、分析和规范化。
需求规格说明书是描述软件需求的主要文档。
2. 软件架构与设计软件架构是软件的整体结构和组成部分,包括模块、组件和接口等。
软件设计师中的软件开发过程与方法知识要点

软件设计师中的软件开发过程与方法知识要点软件设计师在软件开发过程中起着至关重要的作用。
他们不仅需要具备扎实的编程技术,还需要了解和掌握软件开发过程和各种开发方法。
本文将介绍软件设计师中的软件开发过程与方法的要点,包括需求分析、软件设计、编码实现、测试与调试以及软件维护。
1. 需求分析需求分析是软件开发的起点,也是最重要的环节之一。
在需求分析阶段,软件设计师需要与客户充分沟通,了解客户需求,并将其转化为明确的软件需求规格说明。
需求分析阶段主要包括以下几个要点:- 确定需求的范围和边界,明确需求的优先级。
- 定义需求的功能性和非功能性要求。
- 对需求进行评估和可行性分析,确定项目可行性。
- 制定需求规格说明文档,与客户确认并建立需求变更管理机制。
2. 软件设计软件设计是在需求分析阶段的基础上,对软件系统进行结构和框架的设计。
软件设计环节需要软件设计师考虑软件的可维护性、可扩展性和可重用性等方面。
软件设计的要点如下:- 以模块化的方式划分软件系统,明确模块之间的关系和接口。
- 设计软件的数据结构和算法,确保软件的高效性和可靠性。
- 确定软件的架构和技术选型,选择合适的开发平台和工具。
- 生成详细的软件设计文档,确保开发人员能够按照设计要求进行编码实现。
3. 编码实现编码实现是软件设计师将软件设计转化为可执行代码的过程。
编码实现要点如下:- 遵循编码规范,确保代码的可读性和可维护性。
- 使用合适的编程语言和开发工具,提高开发效率。
- 采用模块化的方式进行编码,保证模块之间的独立性和可重用性。
- 注重代码的注释和文档编写,方便他人理解和维护代码。
4. 测试与调试测试与调试是保证软件质量的重要环节。
软件设计师需要进行充分的测试和调试,确保软件达到预期的功能和质量要求。
测试与调试的要点如下:- 进行单元测试,测试每个模块的功能是否正常。
- 进行集成测试,测试模块之间的接口和交互是否正确。
- 进行系统测试,测试整个软件系统的功能和性能是否满足需求。
软件开发知识点

软件开发知识点在现代社会中,软件开发已经成为一项重要的技能和行业。
无论是开发网站、手机应用,还是编写程序,软件开发知识都是必不可少的。
本文将介绍一些软件开发的基本知识点,帮助初学者快速入门。
一、编程语言编程语言是软件开发的基础,它是开发者与计算机之间进行交流的桥梁。
常见的编程语言包括Java、Python、C++、JavaScript等。
不同的编程语言适用于不同的应用场景,初学者可以根据自己的兴趣和需求选择合适的语言进行学习。
二、算法与数据结构算法与数据结构是软件开发中非常重要的知识点,它们是解决问题的核心。
算法是一系列解决问题的步骤,而数据结构是组织和存储数据的方式。
掌握好算法与数据结构可以帮助开发者提高编程能力,写出更高效、优雅的代码。
三、版本控制版本控制是软件开发中必不可少的工具,它可以帮助开发团队管理和跟踪代码的变化。
常用的版本控制工具包括Git、SVN等。
通过版本控制,开发者可以轻松地协作、回滚代码,提高开发效率。
四、测试与调试软件开发过程中需要对代码进行测试与调试,以确保程序的正确性和稳定性。
测试是检验代码是否符合预期的过程,而调试是查找并修复代码中的错误。
掌握好测试与调试技巧可以帮助开发者快速定位并解决问题。
五、框架与库框架与库是软件开发中常用的工具,它们可以帮助开发者快速搭建项目和实现功能。
常见的框架包括Spring、Django等,常用的库有NumPy、Pandas等。
熟练掌握框架与库可以提高开发效率,让开发者更专注于业务逻辑的实现。
总结以上是软件开发的一些基本知识点,希望能够帮助初学者快速入门并掌握软件开发的技能。
软件开发是一个广阔而充满挑战的领域,不断学习和提升才能成为优秀的软件开发者。
希望本文对您有所帮助,谢谢阅读!。
软件开发的基本知识点总结

软件开发的基本知识点总结软件开发是指开发者使用各种编程语言和开发工具,按照一定的流程和规范设计、编写、测试、部署和维护软件的过程。
软件开发是一个复杂的过程,需要开发者具备很多基本知识和技能。
下面将对软件开发的基本知识点进行总结。
1. 编程语言编程语言是软件开发的基础。
常见的编程语言包括C、C++、Java、Python、Ruby、JavaScript等。
不同的编程语言具有不同的特点和适用场景,开发者需要根据实际需求选择合适的编程语言。
2. 数据结构与算法数据结构与算法是软件开发中最基础的知识点之一。
数据结构指的是数据的存储方式和组织方式,常见的数据结构包括数组、链表、栈、队列、树、图等。
算法指的是解决问题的方法和步骤,常见的算法包括排序算法、查找算法、动态规划算法等。
3. 操作系统操作系统是软件开发的基础设施,开发者需要了解操作系统的原理和机制,包括进程管理、文件系统、内存管理、设备驱动程序等。
常见的操作系统包括Windows、Linux、Mac OS 等。
4. 数据库数据库是软件开发中用来存储和管理数据的软件,常见的数据库包括关系型数据库(如MySQL、Oracle、SQL Server)和非关系型数据库(如MongoDB、Redis)。
开发者需要了解数据库的设计原理、SQL语言和数据库管理等知识。
5. 网络编程网络编程是指开发者使用编程语言和网络协议进行通信,包括TCP/IP协议、HTTP协议、Socket编程等。
开发者需要了解网络编程的原理和技术,以便开发基于网络的应用程序。
6. Web开发Web开发是指开发基于Web技术的应用程序,包括前端开发和后端开发。
前端开发主要涉及HTML、CSS、JavaScript等技术,后端开发主要涉及服务器端编程语言(如Java、Python、PHP)、数据库和Web框架。
7. 软件工程软件工程是软件开发的一门学科,主要包括软件需求分析、系统设计、编码、测试、部署和维护等内容。
软件开发工程师知识点

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