2019年上半年软件水平考试(高级)系统分析师下午(论文)真题试卷
选答题1
1.论系统需求分析方法
系统需求分析是开发人员经过调研和分析,准确理解用户和项目的功能、性能、可靠性等要求,将用户非形式的诉求表述转化为完整的需求定义,从而确定系统必须做什么的过程。系统需求分析具体可分为功能性需求、非功能性需求与设计约束等三个方面。
请围绕“系统需求分析方法”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述系统需求分析的主要方法。
3.结合你具体参与管理和开发的实际软件项目,说明是如何使用系统需求分析方法进行系统需求分析的,说明具体实施过程以及应用效果。
一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、从系统分析出发,可将需求分析方法大致分为功能分解方法、结构化分析方法、信息建模方法和面向对象的分析方法。
(1)功能分解方法。
将新系统作为多功能模块的组合。各功能模块可分解为若干子功能及接口,子功能再继续分解。便可得到系统的雏形,即功能分解:功能、子功能和功能接口。
(2)结构化分析方法。
结构化分析方法是一种从问题空间到某种表示的映射方法,是结构化方法中重要且被普遍接受的表示系统,由数据流图和数据词典构成并表示。此分析法又称为数据流法。其基本策略是跟踪数据流,即研究问题域中数据流动方式及在各个环节上所进行的处理,从而发现数据流和加工。结构化分析可定义为数据流、数据处理或加工、数据存储、端点、处理说明和数据字典。
(3)信息建模方法。
它从数据角度对现实世界建立模型。大型软件较复杂。很难直接对其分析和设计,常借助模型。模型是开发中常用工具,系统包括数据处理、事务管理和决策支持。实质上,也可看成由一系列有序模型构成,其有序模型通常为功能模型、信息模型、数据模型、控制模型和决策模型。有序是指这些模型是分别在系统的不同开发阶段及开发层次一同建立的。建立系统常用的基本工具是E-R图。经过改进后称为信息建模法,后来又发展为语义数据建模方法,并引入了许多面向对象的特点。
信息建模可定义为实体或对象、属性、关系、父类型/子类型和关联对象。此方法的核心概念是实体和关系,基本工具是E-R图,其基本要素由实体、属性和联系构成。该方法的基本策略是从现实中找出实体,然后再用属性进行描述。
(4)面向对象的分析方法。
面向对象的分析方法的关键是识别问题域内的对象,分析它们之间的关系,并建立三类模型,即对象模型、动态模型和功能模型。面向对象主要考虑类或对象、结构与连接、继承和封装、消息通信。这些只表示面向对象分析中几项最重要特征。类的对象是对问题域中事物的完整映射,包括事物的数据特征(即属性)和行为特征(即服务)。
三、需结合自身参与项目的实际状况,指出其参与管理和开发的项目中如何应用系统需求分析方法进行系统需求分析的,说明具体实施过程、使用的方法,并对实际应用效果进行分析。
解析:
选答题2
2.论系统自动化测试及其应用
软件系统测试是在将软件交付给客户之前所必须完成的重要步骤之一,目前,软件测试仍是发现软件缺陷的主要手段。软件系统测试的对象是完整的、集成的计算机系统,系统测试的目的是验证完整的软件配置项能否和系统正确连接,并满足系统设计文档和软件开发合同规定的要求。系统测试工作任务难度高,工作量大,存在大量的重复性工作,因此自动化测试日益成为当前软件系统测试的主要手段。
请围绕“系统自动化测试及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述系统自动化测试的主要工作内容及优缺点。
3.结合你具体参与管理和开发的实际项目,说明是如何进行系统自动化测试的,说明具体实施过程以及应用效果。
一、简要叙述所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器,存储测试用例和测试结果的数据库服务器,执行测试的运行环境,控制服务器,web服务器和客户端程序。自动化测试工具应该包含对测试执行的支撑功能,具体应包括:具备相应的容错处理系统,能够自动处理测试中的异常情况;提供测试的集成环境,支持对脚本的执行、跟踪、检查、错误定位,以及故障重演等能力,并提供对外部自动化测试工具的集成扩展能力;提供对脚本代码的控制与管理等。
自动化测试的优点:
1.提高测试执行的速度;
2.提高工作效率;
3.保证测试结果的准确性;
4.连续运行测试脚本:
5.模拟现实环境下受约束的情况。
自动化测试存在受约束的情况。例如:自动化测试不能取代手工测试,能够发现的缺陷不如手工测试;自动化测试对所测产品质量的依赖性大;测试工具本身不具备智能与想象力,依然需要人工介入。
三、需结合自身参与项目的实际情况,指出其在参与管理和开发的项目中所进行的系统测试活动,说明该活动的具体实施过程、使用方法和自动化测试工具,并对实际应用效果进行分析。
解析:
选答题3
3.论处理流程设计方法及应用
处理流程设计(Process Flow Design,PFD)是软件系统设计的重要组成部分,它的主要目的是设计出软件系统所有模块以及它们之间的相互关系,并具体设计出每个模块内部的功能和处理过程,包括局部数据组织和控制流,以及每个具体加工过程和实施细节,为实现人员提供详细的技术资料。每个软件系统都包含了一系列核心处理流程,对这些处理流程的理解和设计将直接影响软件系统的功能和性能。因此,设计人员需要认真掌握处理流程的设计方法。
请围绕“处理流程设计方法及应用”论题,依次从以下三个方面进行论述。
1.简要叙述你参与的软件开发项目以及你所承担的主要工作。
2.详细说明目前主要有哪几类处理流程设计工具,每个类别至少详细说明一种流程设计工具。
3.根据你所参与的项目,说明是具体采用哪些流程设计工具进行流程设计的,实施效果如何。
一、简要描述所参与的软件系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、详细说明目前主要有哪几类处理流程设计工具,每个类别至少详细说明一种流程设计工具。
1.图形工具(程序流程图、IPO图、N-S图、问题分析图)
(1)程序流程图。
程序流程图(Program Flow Diagram,PFD)用一些图框表示各种操作,它独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。为更好地使用流程图描述结构化程序,必须对流程图进行限制,流程图中只能包括5种基本控制结构,任何复杂的程序流程图都应由这5种基本控制结构组合或嵌套而成。
(2)IPO图。
IPO图是由IBM公司发起并逐步完善的一种流程描述工具。系统分析阶段产生的数据流图经转换和优化后形成的系统模块结构图的过程中将产生大量的模块,分析与设计人员应为每个模块写一份说明,即可用IPO图来对每个模块进行表述,IPO图用来描述每个模块的输入、输出和数据加工。
(3)N-S图。
N-s图中也包括5种控制结构,分别是顺序型、选择型、WHILE循环型(当型循环)、UNTIL循环型(直到型循环)和多分支选择型,任何一个N-S图都是这
本文档预览:3600字符,共5778字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载