软件工程、需求分析,白话给你讲透:选择题白话串讲(7)

公共基础

二级Office必考的考点

专业性很强

如果没有好的复习资料

是相当枯燥、晦涩、难懂的

你还为公共基础难懂

苦大愁深吗?

你还为不知如何拿下选择题

焦头烂额吗?

今天开始,小编带着大家

远离枯燥、远离专业术语

白话学懂公共基础!

程林高手武功秘籍--公共基础知识

3. 不懂门道看热闹,看完咱也吊一吊——软件工程基础

计算机的软件开发过程总不如想象的那么顺利,开发效率跟不上要求,开发成本却是越来越贵,开发周期也大大超过预定,而且常会出现中途夭折、项目失败的情况。软件即使被开发出来,质量往往也没有可靠保证,常令人不满意。这些在我们日常使用计算机的过程中也能感受到。很多软件使用起来并不十分得心应手,某些软件有时还会出错甚至导致死机。这些在软件开发和维护过程中遇到的一系列严重问题统称为软件危机。为了应对软件危机,人们认真研究解决各种软件开发问题的方法来规范软件开发的过程、保证软件的质量,从而形成了一门学科--软件工程

3.1 软件工程的基本概念

3.1.1 何谓软件

计算机软件是包括程序、数据及相关文档的完整集合。计算机软件所具有的特点是:

(1)软件是一种逻辑实体,具有抽象性(人们只能看到软件的存储介质,无法看到它本身的形态。只有运用逻辑思维才能把握软件的功能和特性);

(2)软件的生产与硬件不同,它没有明显的制作过程(软件一旦研制成功,就可以大量地、成本极低地、并且完整地拷贝);

(3)软件在运行、使用期间不存在磨损、老化问题;

(4)软件的开发、运行对计算机系统硬件和环境具有依赖性,受计算机系统的限制,这给软件移植会带来很多问题;

(5)软件复杂性高,成本昂贵,现在软件成本已大大超过了硬件成本;

(6)软件开发涉及诸多的社会因素。

【随讲随练16-39】构成计算机软件的是( )。

A.源代码

B.程序和数据

C.程序和文档

D.程序、数据及相关文档

【答案】D

【随讲随练16-40】下面描述不属于软件特点的是( )。

A.软件是一种逻辑实体,具有抽象性

B.软件在使用中不存在磨损、老化问题

C.软件复杂性高

D.软件使用不涉及知识产权

【答案】D

3.1.2 软件的分类

软件按功能可分为三大类:系统软件、应用软件、支撑软件(或工具软件)。

(1)系统软件

属于系统软件的软件很少,主要仅包括以下四种:操作系统(OS)、数据库管理系统(DBMS)、编译程序、汇编程序。如Windows XP、Windows 7、Windows 8就是系统软件,因为它们都属于操作系统;操作系统除Windows系列外,还有Unix、Linux、Macintosh、安卓等,这些都属系统软件。数据库管理系统是实现、操纵和维护数据库的软件,将在下一节讨论。

(2)应用软件

我们日常使用电脑的绝大多数软件,都属应用软件,如Word、QQ、Photoshop、网页浏览器、暴风影音、迅雷、杀毒软件、学生管理系统、人事管理系统等等。

(3)支撑软件(工具软件)

支撑软件(工具软件)介于系统软件和应用软件之间,是协助开发人员开发软件的软件,也就是软件开发环境。如辅助软件设计、编码、测试的软件,以及管理开发进程的软件等。

【随讲随练16-41】软件按功能可分为:应用软件、系统软件和支撑软件。下面属于应用软件的是( )。

A.编译软件

B.操作系统

C.教务管理系统

D.汇编程序

【答案】C

【随讲随练16-42】下面属于系统软件的是( )。

A.财务管理系统

B.数据库管理系统

C.编辑软件Word

D.杀毒软件

【答案】B

3.1.3 软件危机与软件工程

计算机的软件开发过程总不像想象的那么顺利,开发效率跟不上要求,开发成本却是越来越贵,开发周期也大大超过预定,而且常会出现中途夭折、项目失败的情况。软件即使被开发出来,质量往往也没有可靠保证,常并不令人十分满意。这些在软件开发和维护过程中遇到的一系列严重问题统称为软件危机。软件危机主要表现在软件的成本、质量、生产率等问题上。为了应对软件危机,人们认真研究解决各种软件开发问题的方法,来规范软件开发的过程、保证软件的质量,从而形成了一门学科--软件工程。

说得更直白一些,软件工程可以看做是对软件开发人员制订的"行为规范",希望软件开发人员在开发软件的过程中遵照执行,以保证软件开发过程的顺利进行、保证软件质量可靠、尽量减少或避免出现软件危机中的各种问题。

3.1.4 软件生命周期

要做好一件事,必须在事前做好详细的准备工作,软件开发也不例外。软件工程所倡导的重要思想之一就是万不可将软件开发粗暴地等同于编程、在软件开发过程中只重视编程。在编程之前,要做好详尽的准备和制定周密的计划,这部分工作要占到很大的比重。软件工程提出:软件开发应遵循一个软件的生命周期(Software Life Cycle),一个完整的软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的全过程,而其中"编程"部分实际只占到很小的份额。一个完整的软件生命周期可分为三个大的阶段:软件定义阶段、软件开发阶段、运行维护阶段。其中每个大阶段又再包含若干个小阶段,如下所示:

【随讲随练16-43】软件生命周期中的活动不包括( )。

A.软件维护

B.市场调研

C.软件测试

D.需求分析

【答案】B

【随讲随练16-44】软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是( )。

A.测试

B.设计

C.可行性研究

D.实现

【答案】C

3.2 需求分析及其方法

在软件开发之前,必须要做的准备工作之一就是需求分析,需求就是用户对软件的期望。软件开发者要把用户的需求做到心中有数,才能有的放矢。需求分析是确定目标软件系统"做什么",目标是创建所需的数据模型、功能模型和控制模型。需求分析阶段的工作主要有4个方面:(1)需求获取;(2)需求分析;(3)编写需求规格说明书;(4)需求评审。

【随讲随练16-45】下面不属于需求分析阶段任务的是( )。

A.确定软件系统的功能需求

B.确定软件系统的性能需求

C.需求规格说明书评审

D.制定软件集成测试计划

【答案】D

【随讲随练16-46】下面不属于软件需求分析阶段工作的是( )。

A.需求获取

B.需求计划

C.需求分析

D.需求评审

【答案】B

在软件开发的方法中,结构化方法是应用较广泛的一种方法。需求分析的结构化分析方法中的常用工具是数据流图(DFD图,Data Flow Diagram)。数据流图表达数据在软件中的流动和处理,反映软件的功能。图16-20就是一个数据流图的例子。

在数据流图中使用以下符号。

① 箭头:表示数据流,沿箭头方向传递数据;

② 圆或椭圆:表示数据处理,又称加工(转换);

③ 双杠:表示数据存储,又称文件;

④ 方框:表示源、池(潭),即数据起源的地方和数据最终的目的地。

数据流图上的每个元素都必须命名。

除数据流图外,需求分析的常用工具还有:数据字典;判定树;判定表等。数据字典(DD,Data Dictionary)是对DFD中所有图形元素的精确、严格的定义和解释,是一个有组织的列表,使得用户和系统分析员对于相关概念能有共同的理解。数据流图和数据字典共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。

【随讲随练16-47】数据流图中带有箭头的线段表示的是( )。

A.控制流 B.事件驱动 C.模块调用 D.数据流

【答案】D

【随讲随练16-48】数据字典(DD)所定义的对象都包含于( )。

A.数据流图(DFD图) B.程序流程图 C.软件结构图 D.方框图

【答案】A

做实验要写实验报告,做调查要写调查报告,做需求分析也不例外。软件需求规格说明书(SRS,SoftwareRequirementSpecification)是需求分析之后要写出的最主要的文档,该文档应用自然语言书写而不是用C语言或其他程序设计语言书写。因为现在是准备工作,还没有进入到编程那一步。对软件需求规格说明书要求:(1)正确性;(2)无岐义性;(3)完整性;(4)可验证性;(5)一致性;(6)可理解性;(7)可修改性;(8)可追踪性。其中最重要的是正确性。

整个需求分析阶段的工作概括起来应包括4个方面:(1)需求获取;(2)需求分析;(3)编写需求规格说明书;(4)需求评审。

——以上内容选自《玩转Office轻松过二级》(第2版),部分内容取自《C语言其实很简单》(第11-12章)

想不怎么费力就学懂公共基础的童靴,推荐赶快去看一看这2本书吧,这目前应是唯一白话串讲公共基础的二级教材,也真的是最好的教材哦。

要看一本浅显易懂、适合快速学习的书。同意吗?

注意注意注意

千万不要用那种只有文字、没有图的复习材料或速背手册之类复习哦(除非你早有基础),那是很不负责的材料。公共基础必须要有图讲解,考试的考题里也有图。用只有文字的材料复习,考试必傻眼,别害了自己!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180228B1G91J00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券