频道栏目
首页 > 资讯 > 信息管理 > 正文

计算机等级考试三级信息管理考点:软件工程

09-02-28        来源:[db:作者]  
收藏   我要投稿

2.1 软件工程的基本概念

考点(1)软件与软件危机

  软件是由计算机程序演变而形成的一种概念,它是程序及相关文档的集合,由可执行部分和与程序和过程有关的文档资料两部分组成。
  软件危机是计算机在软件的开发和维护过程中遇到的一系列问题,它是随着计算机硬件的迅速发展和规模的不断扩大,以及软件本身复杂性的增加而产生的。
  软件危机产生的根本原因有两个方面:一是软件生产本身存在着复杂性;二是与软件开发方法和技术有关。软件工程是为克服软件危机而提出的一种概念及相关的方法和技术。

考点(2)软件生命周期

  20世纪70年代提出的软件生命周期的瀑布模型,典型地刻画了软件生命周期的阶段划分,它把软件生命周期划分为8个阶段,分别是问题定义、可行性研究、需求分析、总体设计、详细设计、程序编制、测试和运行与维护。

考点(3)软件开发技术与软件工程管理

  软件开发技术包括软件开发方法学、工具和环境,其主体内容是软件开发方法学。软件开发工具和环境是保证软件工程方法学得以实施的必要条件;软件开发环境是方法与工具的结合,以及配套的软件的有机组合。
  软件工程管理包括软件管理学和软件工程经济学。
   软件工程管理是软件按工程化生产时的重要环节,它要求按照预先制定的计划、进度和预算执行,以实现预期的经济效益和社会效益。
  软件工程经济学是研究软件开发中对成本的估算、成本效益分析的方法和技术。它应于经济学的基本原理来研究软件工程开发中的经济效益问题。

考点(4)软件开发方法、工具和环境

  软件开发方法大致可归纳为3种类型:基于瀑布模型的结构化生命周期方法,基于动态定义需求的原型化方法和基于结构的面向对象的软件开发方法。
  软件开发工具是从单项工具的开发逐步向集成工具的开发发展的,它促进了软件开发的高速度和高质量,同时软件开发方法的有效应用,也必须得到相应工具的支持,而工具的完善和发展将促进软件开发方法的进步和完善。
  软件工程环境是全面支持软件开发工程的软件工具集合,按一定的模式组合起来,支持软件开发生命周期的各阶段和任务的完成。

[1] [2] [3] [4] [5] [6] 下一页

 

考点(6)软件需求分析

  1.需求分析的任务
  确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求分析的出发点是可行性分析阶段产生的文档和数据流图;需求分析的具体任务是确定对系统的综合要求,分析系统的数据要求,导出系统的逻辑模型,修正系统开发计划,开发原型系统。
  2.需求分析常用的工具
  (1)数据字典是定义一个应用程序中使用的所有数据元素和结构的含义、类型、数据大小、格式、度量单位、精度以及允许取值范围的共享仓库。
  (2)数据流图。是结构化系统分析的基本工具。一个数据流图确定了系统的转化过程、系统所操纵的数据或物质的收集(存储),还有过程、存储、外部世界之间的数据流或物质流。
  (3)状态转换图。实时系统和过程控制应用程序可以在任何给定的时间内以有限的状                                                                                           态存在。
  (4)对话图。对话图描绘了系统中的对话元素和它们之间的导航连接。
  (5)类图。类图是用图形方式叙述面向对象分析所确定的类及它们之间的关系。
  3.需求分析的方法和步骤
  需求分析的方法如下:
  (1)理解当前的现实环境。
  (2)将当前系统的具体模型抽象为当前的逻辑模型。
  (3)分析新系统与当前系统逻辑上的差别,建立新系统的逻辑模型。
  (4)确定新系统的人机界面和一些补充考虑的细节问题。
  需求分析的步骤如下:
  (1)沿数据流图回溯。
  (2)用户复查。
  (3)细化数据流图。
  (4)修正开发计划。
  (5)书写文档。
  (6)审查和复审。
  4.软件需求说明书
   软件需求说明书的内容包括概述、数据描述(包括数据流图、数据字典、系统接口说明和内部接口)、功能描述(包括功能、处理说明和设计的限制)、性能描述(包括性能参数、测二讼类、预期的软件响应和应考虑的特殊问题)、参考文献目录和附录等。

上一页  [1] [2] [3] [4] [5] [6] 下一页

 

考点(7)软件系统设计

  1.系统设计概述
  系统设计一般分为总体设计和详细设计两个阶段。
  2.总体设计
  总体设计的任务是确定软件的总体结构。
  总体设计的目标是用比较抽象概括的方式确定系统如何完成预定的任务,也就是说应该确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。总体设计可以分为系统设计和软件结构设计。
  总体设计的典型过程是设想供选择的方案,选取合理的方案,推荐最佳方案,功能分解,设计软件结构,数据库设计,制定测试计划,书写文档,审查和复查。
  3.软件的结构、过程和模块
  (1)软件结构。是软件模块间关系的表示。
  (2)软件结构的度量术语如下:
  深度:是表示软件结构中控制的层数。
  宽度:是软件结构内同一层次上的模块总和的最大值。
  扇出:是一个模块直接控制的模块数。
  扇入:是有多个上级模块直接调用一个模块。
  (3)软件过程。软件过程用于描述每个模块的操作细节,同时也包括一个模块对下一层模块控制的操作细节。
  (4)模块独立性。是设计的软件结构使得每个模块完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。模块独立性是用藕合与内聚来度量的。藕合:衡量不同模块彼此之间相互依赖的紧密程度;内聚:衡量一个模块内部各个元素彼此结合的紧密程度。
  4.面向数据流的设计方法
  面向数据流的设计方法是把信息映射成软件结构,信息流的类型决定映射的方法。
  (1)变换流是指信息沿输入通路进人系统,同时由外部形式变换成内部形式进人系统;信息通过变换中心,经加工处理后,经输出通路变换成外部形式输出。
  (2)事务流是指数据沿输入通路到达一个处理T,这个处理T根据输入数据的类型在若干个动作序列中选出一个来执行,这类数据流称为事务流。
  (3)面向数据流方法的设计过程是精化数据流图,区分是事务流还是变换流,根据设计准则精化软件结构,导出接口描述和全程数据结构,复查,进人详细设计。
  (4)变换分析指的是将变换流映射为变换结构。变换分析的目的是用一系列设计步骤,把具有变换流特点的数据流按预先确定的模式映射成软件结构。
  (5)事务分析。事务分析的设计步骤和变换分析设计步骤大致相似,差别仅在于从数据流图到软件结构的映射方法不同,它将事务中心映射成为软件结构中发送分支的调度模块,将接收通路映射成为软件结构的接收分支。
  (6)详细设计的任务是为软件结构图中的每一个模块确定所采用的算法和数据结构。

考点(8)程序设计

  1.程序设计阶段的任务
  编码阶段的任务是为每个模块编写程序,就是将详细设计的结果转换成某种程序语言的源程序,编译程序再将这些源程序转换成依赖于具体机器的目标代码。
  2.结构化设计的概述
  结构化设计的基本要求是在详细设计阶段,所有的模块都只使用顺序、选择和循环3种基本控制结构。结构化设计的缺点是目标程序所需要的存储容量和运行时间都有一些增加。
  3.程序设计语言的选择
  (l)程序设计语言。程序设计语言是编程者用于求解问题的工具。
  (2)程序高级语言通常分为基本语言、结构化程序语言和专用语言。
  (3)程序设计语言的选择。选择语言的方法是从所要解决的课题出发确定对语言的要求,并同时确定这些要求的相对重要性。
  4.程序设计的方法
  (1)模块化。是把一个较大的程序划分为若干个子程序,每一个子程序总是独立成为一个模块;每一个模块又可继续划分为更小的子模块。
  (2)自顶向下。是先设计第1层,即顶层,然后步步深入,逐层细分,逐步求精,直到整个问题可用程序设计语言明确地描述出来为止。
  (3)自底向上。是先设计底层,最后设计顶层。
  5.程序设计的步骤
  (1)分析问题。
  (2)建立数学模型。
  (3)选择算法。
  (4)编写程序。
  (5)调试运行
  (6)分析结果。
  

相关TAG标签
上一篇:=三级数据库:全面接触SQL语法(上)
下一篇:三级网络课堂:软交换机的概念、特征和作用
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站