结构化分析(传统建模方法)方法 分析模型:数据流图(
- 格式:ppt
- 大小:204.00 KB
- 文档页数:45
结构化分析(SA)方法结构化开发方法(Structured Developing Method)是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速、自然和方便。
结构化开发方法由结构化分析方法(SA法)、结构化设计方法(SD 法)及结构化程序设计方法(SP 法)构成的。
结构化分析(Structured Analysis,简称SA 法)方法是面向数据流的需求分析方法,是70 年代末由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
它适合于分析大型的数据处理系统,特别是企事业管理系统。
SA 法也是一种建模的活动,主要是根据软件内部的数据传递、变换关系,自顶向下逐层分解,描绘出满足功能要求的软件模型。
1 SA 法概述1.SA 法的基本思想结构化分析(Structured Analysis,简称SA 法)是面向数据流的需求分析方法,是70年代由Yourdon,Constaintine 及DeMarco 等人提出和发展,并得到广泛的应用。
结构化分析方法的基本思想是“分解”和“抽象”。
分解:是指对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决。
图4 是自顶向下逐层分解的示意图。
顶层抽象地描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐层过渡。
抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个自系统的方法就是“抽象”。
2.SA 法的步骤⑴建立当前系统的“具体模型”;系统的“具体模型”就是现实环境的忠实写照,即将当前系统用DFD 图描述出来。
这样的表达与当前系统完全对应,因此用户容易理解。
⑵抽象出当前系统的逻辑模型;分析系统的“具体模型”,抽象出其本质的因素,排除次要因素,获得用DFD 图描述的当前系统的“逻辑模型”。
单项选择题(每小题1分,共10分)1、在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( A )(A)需求分析阶段(B)详细设计阶段(C)概要设计阶段(D)可行性2、研究阶段软件工程方法中普遍定义的方法之一是结构化生命周期方法(SLC方法),下述哪一个论述不具有SLC方法的主要特征( C )A 严格定义需求B 划分开发阶段C 规范文档格式D 分析控制流程3、软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( D )(A)公共耦合(B)控制耦合(C)标记耦合(D)数据耦合4、软件维护的四类维护活动是( A )(A)改正性维护,适应性维护,完善性维护和预防性维护。
(B)适应性维护,完善性维护,抢救性维护和辅助性维护。
(C)改正性维护,适应性维护,完善性维护和辅助性维护。
(D)适应性维护,完善性维护,抢救性维护和预防性维护。
5、主要从( A )几个方面进行系统可行性研究。
(A)技术可行性,经济可行性,操作可行性。
(B)技术可行性,经济可行性,系统可行性。
(C)经济可行性,系统可行性,操作可行性。
(D)经济可行性,系统可行性,时间可行性。
6、进行需求分析可使用多种工具,但( C )是不适用的。
(A)数据流图(B)判定表(C)PAD图(D)数据字典7、软件需求分析阶段的工作,可以分为四个方面:对问题的识别、分析与综合、编写需求分析文档以及( B )(A)软件的总结(B)需求分析评审(C)阶段性报告(D)以上答案都不对8、OMT(Object Modelling Technique)方法的第一步是从问题的陈述入手,构造系统模型。
系统模型由对象模型、( C )组成。
A静态模型和功能模型 B动态模型和过程模型C动态模型和功能模型 D静态模型和操作模型9、为了表示项目管理功能工作中各项任务之间的进度衔接关系,常用的计划管理工具是( D )(A)程序结构图(B)数据流图(C) E-R图(D)甘特(Gantt)图①软件生命周期中所花费用最多的阶段是(D)A.详细设计B.软件编码C.软件测试D.软件维护②可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。
结构化⽅法与⾯向对象⽅法的介绍与对⽐结构化⽅法与⾯向对象⽅法的介绍与对⽐结构化和⾯向对象,这两个概念在计算机领域的中应⽤⼗分⼴泛。
在软件⼯程中,结构化和⾯向对象的思想也占有重要地位,产⽣了结构化⽅法和⾯向对象⽅法,⽤来指导软件⽣产。
⼀、结构化⽅法结构是指系统内各个组成要素之间的相互联系、相互作⽤的框架。
结构化⽅法强调开发⽅法的结构合理性以及所开发软件的结构合理性。
针对软件⽣存周期各个不同阶段,可以分为结构化分析(SA)、结构化设计(SD)、结构化程序设计(SP)等⽅法。
1.1结构化分析⽅法结构化分析⽅法是⾯向数据流的分析⽅法,是70年代由Yourdon、Constaintine及DeMarco 等⼈提出和发展,并得到⼴泛的应⽤,其基本思想为分解和抽象。
结构化分析⽅法的设计原则有:(1)使每个模块尽量只执⾏⼀个功能(坚持功能性内聚);(2)每个模块⽤过程语句(或函数⽅式等)调⽤其他模块;(3)模块间传送的参数作数据⽤;(4)模块间共⽤的信息(如参数等)尽量少。
在结构化分析⽅法中,常⽤的⼯具有:数据流图数据流图(Data Flow Diagram,简称DFD)是描述系统中数据流程的图形⼯具,它标识了⼀个系统的逻辑输⼊和逻辑输出,以及把逻辑输⼊转换逻辑输出所需的加⼯处理。
通常,⼀个系统的DFD图会进⾏分层设计,使数据处理过程更加有层次,逻辑更加清晰。
DFD图的设计原则为:数据守恒与数据封闭原则、加⼯分解的原则、⼦图与⽗图的平衡、合理使⽤⽂件。
数据字典分层数据流图只是表达了系统的“分解”,为了完整地描述这个系统,还需借助“数据词典”(data dictionary)对图中的每个数据和加⼯给出解释。
对数据流图中包含的所有元素的定义的集合构成了数据词典。
它有四类条⽬:数据流、数据项、⽂件及基本加⼯。
在定义数据流或⽂件时,使⽤下表给出的符号,将这些条⽬按照⼀定的规则组织起来,构成数据词典。
在以上⼯具的辅助下,我们可以进⾏完整的结构化分析,⼀个典型的结构化分析过程为:①分析当前的情况,做出反映当前物理模型的DFD;②推导出等价的逻辑模型的DFD;③设计新的逻辑系统,⽣成数据字典和基元描述;④建⽴⼈机接⼝,提出可供选择的⽬标系统物理模型的DFD;⑤确定各种⽅案的成本和风险等级,据此对各种⽅案进⾏分析;⑥选择⼀种⽅案;⑦建⽴完整的需求规约。
一、判断题1. 白盒法是一种静态测试方法,主要用于模块测试。
(× )2. 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。
(× )3. 整体测试又称为逻辑覆盖测试,需要对系统模块的内部结构进行测试。
(×)4. 集成测试主要由用户来完成。
(×)5. 确认测试计划应该在可行性研究阶段制定(×)6. 软件工程过程应该以软件设计为中心,关键是编写程序。
(× )7. 软件概要设计包括软件系统结构设计以及数据结构和数据库设计。
( √)8. 瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。
(×)9. 结构化方法的工作模型是使用螺旋模型进行开发。
( Ⅹ)10. 螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。
( √)11. 信息隐蔽原则有利于提高模块的内聚性。
(√)12. 面向对象开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计。
( √)13. 过程描述语言可以用于描述软件的系统结构。
( Ⅹ)14. SA法是面向数据流,建立在数据封闭原则上的需求分析方法。
( √)15. HIPO法既是需求分析方法,又是软件设计方法。
( √)16. 判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。
( Ⅹ)17. 需求分析的主要方法有SD法、OOA法及HIPO法等。
(Ⅹ)18. 用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。
(√)19. 分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。
( Ⅹ)20. 信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R 图。
( √)21. 划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。
( Ⅹ)22. 如果通过软件测试没有发现错误,则说明软件是正确的。
(Ⅹ)23. JACKSON方法是以数据流、数据封闭性准则逐层分解的。
结构化分析方法结构化分析方法一、需求分析与需求分析方法需求阶段是软件开发的关键阶段。
需求分析的任务:准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么;用《需求规格说明书》规范的形式准确地表达用户的需求。
需求分析阶段的工作(四方面):◆需求获取:确定系统各方面需求;全面地提炼出系统的功能性与非功能性需求。
◆需求分析:对获取的需求分析和综合,给出系统解决方案和逻辑模型。
◆编写需求规格说明书:为用户、设计人员的交流提供方便,还可作为控制软件开发进程的依据。
◆需求审评:复审需求分析阶段的工作,验证需求文档的一致性、可行性等。
1、需求获取的目的清楚地理解所要解决的问题、完整地获取用户需求。
2、需求获取的内容用户需求分类:(1)功能性需求定义了系统做什么(描述系统必须支持的功能和过程)。
(2)非功能性需求(技术需求)定义了系统工作时的特性(描述操作环境和性能目标)。
3、需求分析的步骤4、需求分析过程示意(1)通过对现实环境的调查,获得当前系统的物理模型。
(2)去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型。
(3)分析当前系统与目标系统的差别,建立目标系统的逻辑模型。
5、需求分析的方法结构化分析(传统建模方法)、面向对象分析。
二、结构化分析方法1、结构化分析方法(Structure Analysis---SA)(1)定义是面向数据流进行需求分析的方法,采用自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。
(2)结构化分析的主要步骤通过对用户的调查,以软件的需求为线索,获取当前系统的具体模型;去掉具体模型中非本质因素,抽象出当前系统的逻辑模型;根据计算机的特点分析当前系统与目标系统的差别,建立目标系统的逻辑模型;完善目标系统并补充细节,写出目标系统的软件需求规格说明。
2、结构化分析方法使用的常用工具(1)数据流图(DFD—Data Flow Diagram )①作用从数据传递和加工的角度,在需求分析阶段以图形的方式描述数据流从输入到输出的移动变换过程,为系统建立逻辑模型。
淮海工学院计算机工程学院实验报告书课程名:《软件工程导论》题目:结构化分析实验学号: 511020825姓名:薛思雨一、实验目的与要求通过示例掌握结构化系统分析的方法综合运用DFD,DD,E-R图等工具建立系统的概念数据模型二、实验环境VISIO 2003其它相关软件及硬件、网络环境三、实验步骤与源程序1.餐饮服务管理系统1)总体说明餐饮服务管理系统是酒店管理系统的一个部分,主要完成中西餐、咖啡厅、酒吧等顾客消费的消费信息记录、资源分配以及员工的信息管理等工作。
2)系统相关角色系统管理员,员工,部门经理,采购员,顾客,供货商等等3)相关功能说明(1)餐饮收银管理登记管理:客人到来以后进行登记,可以修改或者删除登记信息,客人可以要求合台或者换台。
消费管理:能够录入、修改或者删除客人的消费信息。
订餐管理:订餐信息登记,包括订餐时间、就餐时间、订餐桌数、人数、订餐详情、取消订餐、订餐查询。
主窗体:显示当前桌台、包房的占用情况,显示客人消费状态。
结算管理:客人结账的时候可以分类打折或者全面打折,计算开发票金额,打印账单,结账方式也有多种方式,如现金付款、支票付款、信用卡付款、免费、挂帐等自动统计。
日统计管理:可以对今日收银进行概览,方式多样,如按类别统计、按菜品统计、按帐单统计、按包房统计等等,可显示日销售项目排行榜,可打印销售日报表。
二级库存管理(主要管理酒水饮料的日常库存):这里主要是指前台的酒水饮料管理,包括入库、入库查询、入库统计,退货、退货查询、退货统计,库存动态,销售查询、销售统计,库存盘点、盘点查询、盘点统计。
菜谱管理:对菜品进行管理,如菜品类别维护、特色菜维护、菜品明细维护、酒水饮料维护,价格维护、套餐维护、菜谱打印、商品单位维护。
各消费类别和消费项目可任意增加、修改与删除,按照自己业务情况任意设置。
(2)采购库存管理该库存管理系统是后勤部门对所有资源的管理。
仓库从供货商处对商品进货,也可以对商品退货,可以进行商品进货信息和商品退货信息的查询、统计等。
第一章1 企业商务活动的基本特征a)从事商品交换的活动b)涉及商品的交换、买卖和再分配,包含商品物理上的位移过程2.电子商务的基本目标:电子商务的基本目标是以企业的“商务整合”为目的,通过整合企业的业务流程和信息资源,将信息技术和企业商务策略整合,形成有助于提升企业竞争力的新的组织结构、商业模式和业务流程。
3 电子商务系统的概念及特点a)概念:从广义上讲是支持商务活动的电子技术的集合。
从狭义上看,则指:在Internet和其他网络的基础上,以实现企业电子商务活动为目标,满足企业生产、销售、服务等生产和管理的需要,支持企业的对外业务协作,从运作、管理和决策等层次全面提高企业信息化水平,为企业提供商业智能的信息系统。
特点:A支持企业以交易为核心的商务活动的技术平台B企业内部业务流程重构、价值链增值的技术平台C依托网络,提供基于Web的分布式服务D在系统、应用的安全性方面有较高的要求E服务对象不仅包括企业内部人员,还涵盖了企业外部的客户和合作伙伴4.信息系统要素:硬件、软件、人员及相应的处理功能软件包括:程序、数据、文档第二章1、软件生命周期瀑布模型中包括哪几个阶段?每个阶段的中心任务是什么?答:包括问题定义阶段、可行性研究阶段、需求分析阶段、系统设计阶段、编码与测试阶段和运行维护阶段。
问题定义阶段的中心任务是:明确将要建设的软件系统要解决什么问题。
可行性研究阶段的中心任务是:探讨欲解决的问题是否有可行的解决办法。
需求分析阶段的中心任务是:回答“目标系统必须做什么”这一问题。
系统设计阶段的中心任务是:回答:“如何构造目标系统”这一问题。
编码及测试阶段的中心任务是:编码与测试交替进行。
运行维护阶段的中心任务是:通过各种维护,不断完善系统,从而使系统持久地满足用户需求。
系统开发生命周期(SDLC):1)系统规划(明确目标勾画轮廓制定方案)2)系统分析(分析现状明确约束确定需求)3)系统设计(体系结构设计选择软硬件平台应用软件设计网站设计安全子系统设计支付子系统设计4系统实现(系统平台搭建应用软件开发系统集成运行准备系统评估优化)5)系统运行和支持(系统维护运行维护组织管理性能优化)SDLC-系统规划—问题定义,可行性研究系统分析---需求分析系统设计---总体设计,详细设计系统实现---编码与单元测试,综合测试系统运行和支持—运行维护2、JAD与RAD方法各自所蕴涵的主要思想是什么?答:JAD的主要思想:必须加强最终用户在系统开发建设过程中的作用,让他们积极参与到整个系统开发过程的每一个阶段中。
一、填空题()1.软件生存周期一般可以划分为。
2.基于软件的功能划分,软件可以划分成、支撑软件、三种。
3.可行性研究,应从技术可行性、、操作可行性、法律可行性和社会效益可行性等方面研究。
4.系统流程图是描绘的传统工具。
它的基本思想是用图形符号以描绘系统里面的每个部件5.数据流图的基本四种成分:数据输入的源点和数据输出终点、、和。
6.结构化分析方法是面向进行需求分析的方法。
结构化分析方法使用与来描述。
7.用户界面的是用户界面设计最重要的也是最基本的目标。
8.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的____________,以数据结构为基础构造模块的____________,____________。
9.__________和共同构成系统的逻辑模型。
10.软件测试的方法有__________和__________(即黑盒法)。
11.单元测试一般以________________测试为主,_________测试为辅。
12.软件危机是指在所遇到的一系列严重问题。
13.面向对象方法=对象+类+ + 。
14.传统的软件开发方法学也称为。
15.在需求分析阶段,描绘系统逻辑模型的方法主要是用和。
16.程序的三种基本控制结构是、、。
17.模块独立性可以由、两个定性标准度量。
18.阶段在软件生命周期中工作量最大。
19.用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是、、。
20.黑盒测试又称为,白盒测试也称。
21.目前使用最广泛的软件工程学方法分别是传统方法学和。
22.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:FORTRAN语言、、C语言和PL/1语言。
23.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提高维护的效率和质量的技术。
24.成本估计方法主要有、和三种类型。
25.机器语言、汇编语言:依赖于机器,面向。
《软件工程》练习题一、填空题1.软件主要包括程序、数据和文档三部分内容。
2.目前使用最广泛的软件工程方法学是传统(结构化方法)方法和面向对象方法。
3.软件可行性研究的任务是从技术、经济和社会可行性三个方面分析软件项目的可行性。
4.软件测试的目的是找出软件潜在的错误和缺陷;通常把软件测试方法分为黑盒测试(功能测试)和白盒测试(结构测试)两大类。
5.软件测试中,测试用例由输入数据和预期的输出结果两部分组成。
6.典型的软件生命周期模型(软件过程模型)包括瀑布模型、快速原型模型和增量模型、螺旋模型、喷泉模型等。
7.模块A调用模块B以查询学生成绩,模块A通过参数向模块B传送所查询学生的学号,模块B通过参数向模块A返回学生的考试成绩。
模块A和模块B之间的耦合类型属于数据耦合。
8.在类的继承结构中,不同层次的类共享同一个行为名称,但各个类可以按照自己的需要为同名行为设计不同的算法,此性质称为类的重写。
9.测试软件中的模块时,通常需要为被测模块设计辅助模块,辅助模块的名称分别是驱动模块和桩模块。
10.软件生存期中时间最长的是_软件维护阶段。
11.结构化分析方法中,功能模型用DFD 描述;数据模型用E-R 描述。
12.过程设计(详细设计)中,常用的描述工具有图形、表格和语言三类。
13.在模块结构图中,直接调用某一模块的其他模块数称为该模块的扇入数。
14.面向对象分析(OOA)方法中,必须定义对象间的通信机制,对象间通信是通过消息传递机制来实现的。
15.面向对象方法用对象分解取代了结构化方法的功能分解。
16.写出下列各对事物之间的关系(继承、聚集、一般关联):交通工具——汽车的关系是:继承;书——读者的关系是:一般关联;班级——学生的关系是:聚集;多边型——线段的关系是:聚集。
17.面向对象设计(OOD)阶段,可以将面向对象的设计内容划分为四部分,分别是:人机界面部分、问题域部分、任务管理部分和数据管理部分。
18.UML的中文含义是统一建模语言;CASE的中文含义是用例。
1.下列所述不是软件特点的是(A)A.软件是有形的B.软件不存在磨损和消耗问题C.软件开发成本高D.软件没有明显的制作过程2.软件工程的出现主要是由于(C)A.程序设计方法学的影响B.其他工程学科的影响C.软件危机的出现D.计算机的发展3.以下(C)不是软件危机的表现形式A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.软件工程的目的是(C)A.建造大型的软件系统B.开发的软件可维护性差C.软泥吉安质量的保证D.研究软件开发的远离5.下列所述不是软件组成的是(D)A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)A.是计算机系统的组成部分B.不能作为商品参加交易C.是在计算机硬件设备生产过程中生产出来的D.之存在语计算机系统工作时7.软件工程的方法的产生源于软件危机,下列(D)是产生软件危机的内在原因A.软件的复杂性B.软件维护困难C软件成本太高. D.软件质量难保证8.软件工程方法的提出源于软件危机,其目的应该是最终解决软件的(D)问题A.软件危机B.质量保证C.开发效率D.生产工程化9.软件工程学中除重视软件开发的研究外,另以重要组成内容是软件的(A)和过程改进A.项目管理B.成本核算C.人员培训D.工具开发10.软件工程设计软件开发技术和项目管理等方面内容,下述内容中(D)不属于开发技术的范畴A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济二、填空题1.软件工程的目的是成功的建造大型的软件系统,主要内容是开打软件开发技术、软件项目管理和软件质量管理。
2.螺旋式开发模型主要是针对风险比较大的项目而设计的3.由于软件产生的复杂性和高成本,使大型软件产生出了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。
4.增量模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。
2014年下半年软件设计师考试下午真题1 、阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】某大型披萨加工和销售商为了有效管理生产和销售情况,欲开发一披萨信息系统,其主要功能如下:(1)销售。
处理客户的订单信息,生成销售订单,并将其记录在销售订单表中。
销售订单记录了订购者、所订购的披萨、期望的交付日期等信息。
(2)生产控制。
根据销售订单以及库存的披萨数量,制定披萨生产计划(包括生产哪些披萨、生产顺序和生产量等),并将其保存在生产计划表中。
(3)生产。
根据生产计划和配方表中的披萨配方,向库存发出原材料申领单,将制作好的披萨的信息存入库存表中,以便及时进行交付。
(4)采购。
根据所需原材料及库存量,确定采购数量,向供应商发送采购订单,并将其记录在采购订单表中;得到供应商的供应量,将原材料数量记录在库存表中,在采购订单表中标记已完成采购的订单。
(5)运送。
根据销售订单将披萨交付给客户,并记录在交付记录表中。
(6)财务管理。
在披萨交付后,为客户开具费用清单,收款并出具收据;依据完成的采购订单给供应商支付原材料费用并出具支付细节;将收款和支付记录存入收支记录表中。
(7)存储。
检查库存的原材料、拔萨和未完成订单,确定所需原材料。
现采用结构化方法对披萨信息系统进行分析与设计,获得如图1-1所示的上下文数据流图和图1-2所示的0层数据流图。
图1-1 上下文数据流图图1-2 0层数数据流图【问题1】(4分)根据说明中的词语,给出图1-1中的实体E1~E2的名称。
【问题2】(5分)根据说明中的词语,给出图1-2中的数据存储D1~D5的名称。
【问题3】(6分)根据说明和图中词语,补充图1-2中缺失的数据流及其起点和终点。
根据需求分析阶段收集的信息,设计的实体联系图和关系模式(不完整)如下:图1-1 实体联系图 超市(超市名称,经理,地址,电话)【问题1】【问题2】(a)超市名称,部门名称主键:(超市名称,部门名称)外键:超市名称,部门经理现采用面向对象方法对该系统进行分析与设计,得到如图1-1所示的初始类图。
2022年职业考证-软考-系统分析师考试全真模拟全知识点汇编押题第五期(含答案)一.综合题(共15题)1.单选题数据的物理独立性和逻辑独立性分别是通过修改()来完成的。
问题1选项A.外模式与内模式之间的映像、模式与内模式之间的映像B.外模式与内模式之间的映像、外模式与模式之间的映像C.外模式与模式之间的映像、模式与内模式之间的映像D.模式与内模式之间的映像、外模式与模式之间的映像【答案】D【解析】本题考查的是数据库三级模式两层映像体系结构的相关概念。
数据库系统两级独立性是指物理独立性和逻辑独立性。
三个抽象级别之间通过两级映射(外模式/模式映射和模式/内模式映射)进行相互转换,使得数据库的三级模式形成一个统一的整体。
答案为D选项。
物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的,当数据的物理存储改变时,应用程序不需要改变。
物理独立性存在于概念模式和内模式之间的映射转换,说明物理组织发生变化时应用程序的独立程度。
逻辑独立性是指用户的应用程序与数据库中的逻辑结构是相互独立的,当数据的逻辑结构改变时,应用程序不需要改变。
逻辑独立性存在于外模式和概念模式之间的映射转换,说明概念模式发生变化时应用程序的独立程度。
相对来说,逻辑独立性比物理独立性更难实现。
2.单选题某文件管理系统在磁盘上建立了位示图(bitmap),记录磁盘的使用情况。
若磁盘上物理块的编号依次为:0、1、2、…;系统中的字长为64位,字的编号依次为:0、1、2、…,字中的一位对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用,如下图所示。
假设操作系统将256号物理块分配给某文件,那么该物理块的使用情况在位示图中编号为()的字中描述;系统应该将()。
问题1选项A.3B.4C.5D.6问题2选项A.该字的0号位置“1”B.该字的63号位置“1”C.该字的0号位置“0”D.该字的63号位置“0”【答案】第1题:B第2题:A【解析】(256+1)/64= 4.02,同时由于题目已明示“字号从0开始计算”,所以256号物理块应在4号字中描述。
2.2需求分析需求分析是通过开发人员的分析概括,抽象为完整的需求定义,再形成一系列文档的过程。
2.2.1需求分析的目的与意义需求分析是一个非常重要的过程,它完成的好坏直接影响后续软件开发的质量。
有效的需求分析通常都具有一定的难度。
需求分析不仅仅是属于软件开发生命周期早期的一项工作,而且还应该贯穿于整个生命周期中,它应该随着项目的深入而不断地变化。
此外,为了方便后续的评审和测试等工作,需求的描述应该尽量做到:具体、详细、可以测量和可以实现,并且基于时间。
2.2.2需求分析的步骤2-3所示。
图2-3需求分析的步骤需求涉及的方面:在功能方面,需求包括系统要做什么,相对于原系统目标系统需要进行哪些修改,目标用户有哪些,以及不同用户需要通过系统完成何种操作等。
在性能方面,需求包括用户对于系统执行速度、响应时间、吞吐量和并发度等指标的要求。
在运行环境方面,需求包括目标系统对于网络设置、硬件设备、温度和湿度等周围环境的要求,以及对操作系统、数据库和浏览器等软件配置的要求。
在界面方面,需求涉及数据的输入/输出格式的限制及方式、数据的存储介质和显示器的分辨率要求等问题。
1. 获取需求,识别问题开发人员从功能、性能、界面和运行环境等多个方面识别目标系统要解决哪些问题,要满足哪些限制条件,这个过程就是对需求的获取。
开发人员通过调查研究,要理解当前系统的工作模型和用户对新系统的设想与要求。
遗漏需求是最难修订的需求错误。
获取需求是需求分析的基础。
为了能有效地获取需求,开发人员应该采取科学的需求获取方法。
在实践中,获取需求的方法有很多种,比如,问卷调查、访谈、实地操作、建立原型和研究资料等。
问卷调查法是采用调查问卷的形式来进行需求分析的一种方法。
通过对用户填写的调查问卷进行汇总、统计和分析,开发人员便可以得到一些有用的信息。
采用这种方法时,调查问卷的设计很重要。
一般在设计调查问卷时,要合理地控制开放式问题和封闭式问题的比例。