从数据流程图导出初始结构图方法模板
- 格式:doc
- 大小:35.50 KB
- 文档页数:7
实验04Visio 绘制工程图形1. 阅读:《未来之路》与《数字化生存》1996年,微软公司的缔造者比尔·盖茨 (Bill Gates ,图4.11)曾撰写过一本在当时轰动一时的书——《未来之路》,他在书中预测了微软乃至整个科技产业未来的走势。
盖茨在书中写道:“尽管现在看来这些预测不太可能实现,甚至有些荒谬,但是我保证这是本严肃的书,而决不是戏言。
十年后我的观点将会得到证实。
”十年后,回望盖茨的《未来之路》,部分预测已经成为现实。
1996年,一本充满洞见的《数字化生存》风靡中国,它的翻译出版曾经引发中国人对未来信息世界的狂热激情与无尽梦想,这几乎被视为中国因特网启蒙运动的开始。
而此书的作者尼古拉斯•尼葛洛庞帝 (Nicholas Negroponte ,图4-12) 也由此被称Visio 绘制工程图形 图4.11 比尔 盖茨之中国因特网的启蒙者。
尼葛洛庞帝是美国麻省理工学院教授及媒体实验室的创办人,同时也是《连线》杂志的专栏作家。
他被西方媒体推崇为“电脑与传播科技领域最具影响力的大师之一”,一直倡导利用数字化技术来促进社会生活转型。
回顾10多年来,尼葛洛庞帝的数字化生存理论已经被一一验证。
一场轰轰烈烈的数字图4.12 尼葛洛庞帝革命使中国人的生活方式、生存方式乃至思维方式发生了深刻的变革。
结合本课程的学习,建议你找出时间来阅读一下盖茨的《未来之路》与尼葛洛庞帝的《数字化生存》,尝试从广泛阅读中体会学习的乐趣与汲取丰富的知识。
阅读后,建议你找个机会和老师、同学们来分享你所获得的体会与认识。
2. 习题与思考4.1 当你要“写”一个程序时,你是在设计软件吗?什么原因使得软件设计不一致于编写程序?答:_________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ 4.2 模块独立性与信息隐蔽(反映模块化有效程度的属性) 有何关系?答:_________________________________________________________________ _________________________________________________________________________ _________________________________________________________________________ 4.3 模块的内聚性程度与该模块在分层结构中的位置有关系吗?说明你的论据。
2022年太原理工大学软件工程期末考试一、单选题1、软件开发的结构化设计(SD)方法,全面指导模块划分的最重要原则应该是( c )A模块高内聚B模块低耦合C模块独立性D程序模块化2、软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的什么问题?( D )A产生危机B质量保证C开发效率D生产工程化3、软件工程开发的可行性研究是决定软件项目是否继续开发的关键,而可行性研究的结论主要相关于( A)A软件系统目标B软件的性能C软件的功能D软件的质量4、软件需求分析一般应确定的是用户对软件的( D)A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求5、软件测试是满足软件的功能和性能要求,保证软件正确性的措施,一般软件测试计划的制订应始于软件开发的哪个阶段? ( D)A.需求分析B.软件设计C.程序编码D.软件计划6、软件工程方法是在实践中不断发展的方法,而早期的软件工程方法主要是指( B )A.原型化方法B.结构化方法C.面向对象方法.D.功能分解法7、数据流图描述数据在软件中流动和被处理变换的过程,它是以图示的方法来表示,即( A )A.软件模型B.软件功能C.软件结构D.软件加工8、软件工程学涉及软件开发技术和工程管理两方面的内容,下述内容中哪一个不属于开发技术的范畴?(D)A.软件开发方法B.软件开发工具C.软件工程环境D.软件工程经济9、软件文档是软件工程实施中的重要成分,它不仅是软件开发的各阶段的重要依托据,而且也影响软件的()A.可理解性B.可维护性C.可扩展性D.可靠性10、从()语言开始,软件摆脱了对硬件的依赖。
A.第一代B.第二代C.第三代D.第四代11、在下面列出的基本成分中,哪个不是实体关系图的基本成分? ( )A.实体B.数据存储C.关系D属性12、结构化程序设计主要强调程序的(C)A.效率B.速度C.可读性D.大小13、在软件工程中根据程序的功能说明,而不关心程序内部逻辑的测试方法为( A)A.黑盒法B.白盒法C.灰盒法D.综合法14、软件开发的结构化分析方法,常用的描述软件功能需求的工具有( C)A业务流程图,数据字典B.软件流程图,模块说明C.数据流图,数据字典D.系统流程图,程序编码15、结构化程序设计思想的核心是要求程序只由顺序、循环和( A)三种结构组成。
数据流程图和系统结构图_详细版本数据流程图1.该图由业务流程图转换而来。
用以描述数据在系统中的流动情况。
2.目的有二。
1,看是否因为我们工作的失误,漏掉了某些数据。
2,如果某些数据,从来没有哪个数据处理用到,而且确实没有失误,说明该数据的产生没有意义。
3.组成:数据处理:名字必须是动词+名词。
动词是对数据的操作,名词是被操作的数据,如填写密码。
有一个唯一的编码。
数据流:Array数据存储:数据流的集合,将来很有可能变成数据库。
外部实体:系统之外,又与本系统发生联系的事物。
往往是数据的来源或者去向。
4.如何绘制数据流程图:(1)根据给出的题意,找出每句的动词+名词,分析该名词是不是数据处理。
动词+名词不一定是数据处理,但数据处理一定是动词+名词。
分析每个句子中,有几个数据处理,哪些可以省略不写,哪些级别太低,在现在正在画的层次上,不需要些。
例如第6句,动词+名词有信息汇总排序、确定信息等级、形成初始表和上报初始表这4个,但我们上报初始表,可以通过一个数据流的来表示,数据流的名字叫做初始表,数据流的方向代表了上报的方向;而信息汇总排序、确定信息等级我们认为他们是形成初始表的具体过程,故此,这句话,我们整理的数据处理只有一个,那就是形成初始表。
并不是说每句话只能有一个数据处理。
有一句话有两个甚至以上的数据处理。
例如第7句,这里面有两个数据处理,因为是不同对象操作的不同的业务,因此两个都留着。
(2)第2步是找出所有的外部实体,外部实体一般数据的来源或者去向。
在画外部实体的时候,注意别忘了一些容易忽视的,例如第5句中的文件。
(3)第3步是找出主要的数据存储。
其实,基本上每一个数据处理,都可能产生一个数据存储,例如提供考试成绩这个数据处理,产生一个考试成绩的数据存储。
但一个是为了阅读的清晰,另外数据存储将来可能转换为未来系统的数据库。
因此,一般只画主要的。
因为这个是奖学金评定的流程,因此,将奖学金的初始表、总名单作为了数据存储,包括档案,在这里,档案其实也可以画成外部实体。
从数据流程图导出结构图数据流程图有两种典型的结构:变换型结构和事务型结构。
对这两种结构,可以分别通过变换分析和事务分析方法导出标准形式的结构图。
采用这些方法时,都是先设计结构图的顶端主模块,然后自顶向下逐步细化,最后得到满足数据流程图要求的系统结构。
一、变换分析变换结构是一种线性结构。
它可以明显地分成逻辑输入、主加工和逻辑输出。
变换分析过程可以分为三步:找出逻辑输入、主加工和逻辑输出,设计顶层模块和第一层模块,设计中、下层模块。
下面分别讨论。
1、找出系统的逻辑输入、主加工和逻辑输出如果设计人员经验丰富,又熟悉系统说明书,则容易确定系统的主加工。
例如,几股数据流的汇合处往往就是系统的主加工。
若一时不能确定哪是主加工,可以用下面的方法先确定哪些数据流是逻辑输入,哪些数据流是逻辑输出。
从物理输入端开始,一步步向系统的中间移动,直至这样一个数据流:它已不能再被看作系统的输入,则它的前一个数据流就是系统的逻辑输入。
同理,从物理输出端开始,逆数据流方向向中间移动,可以确定系统的逻辑输出。
介于逻辑输入和逻辑输出之间的加工就是主加工。
当然,实际的数据流程图往往比这个例子复杂,输入、输出数据流都可能有多个。
这时,需要对每个输人、输出数据流进行分析,确定相应的逻辑输入、逻辑输出。
处于这些逻辑输入、逻辑输出之间的处理框就是主加工。
主加工可能包括数据流程图中的多个处理框。
从上面的分析过程可以看出,逻辑输入、逻辑输出的划分涉及对数据流的理解。
各人的理解不同,结果就有差异,但一般出入不会太大。
2、设计顶层模块和第一层模块找到主加工之后,遵照"自顶向下,逐步加细"的原则,设计各层的模块。
每创建一个模块,必须确定该模块的外部特征:模块的功能、与其他模块的界面(调用时传送的信息)。
为每个模块起一个名字,这个名字应当恰如其分地反映出这个模块的功能。
系统的主加工就是系统的顶层模块,其功能就是整个系统的功能。
第一层模块按输入、变换、输出等分支来处理:为每一个逻辑输入设计一个输人模块,其功能是为顶层模块提供相应的数据;为每一个逻辑输出设计一个输出模块,它的功能即是输出顶层模块的输出信息;为主加工设计一个变换模块,它的功能就是将逻辑输入变换成逻辑输出。
软件工程中的结构化设计方法张耀民【摘要】针对大型项目开发,为了保证软件产品质量,提高软件开发效率,在进行详细设计、程序设计之前,必须先确定软件总体结构,而结构化设计方法是进行软件总体结构的主要方法.该方法以需求分析阶段获得的数据流图为基础,通过一系列映射,把数据流图变换为软件结构图.在此主要分析了不同类型数据流图如何“映射”成软件总体结构,并给出了优化软件结构的规则,及不同类型数据流图“映射”成软件总体结构图时顶层、第1层及其下层的转换方法,其可操作性强.%For large-scale project development, the general software structure must be confirmed to guarantee the quality of the software product and improve the software development efficiency before a detailed design and program design. The structured design method is a main method to design the general structure of software, The method takes the data flow diagram obtained in the requirement analysis stage as a foundation to convert the data flow graphs to the software structure diagrams through a series of maps. This paper analyzes how different types of data flow diagrams map into the software general structure and gives the rules of optimizing software structure. The innovation is a conversion method of top layer, first layer and bottom layer when a different type of data stream graph is converted into a general software structure diagram. The method has a strong operability.【期刊名称】《现代电子技术》【年(卷),期】2012(035)016【总页数】4页(P39-42)【关键词】软件工程;结构化设计;软件结构优化;映射【作者】张耀民【作者单位】陕西工商职业学院,陕西西安 710119【正文语种】中文【中图分类】TN919-34软件工程的基本思想是面对复杂的问题,让软件的开发按照工程的概念、原理、技术和方法模式来实施,有计划地按照要求分阶段实现。
10。
在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:Course)和方法remove(c: Course),则类CourseSchedule和类Course之间的关系是:( )A。
泛化(generalization)关系 B.组合(composition)关系C.依赖(dependency)关系 D。
包含(include)关系13. 进行企业系统规划,哪种规划方法使目标识别比较全面A、企业系统规划法B、关键成功因素法C、战略目标集转化法D、成本效益分析法14. 系统开发的生命周期中不包括下列哪个阶段()A。
系统规划 B.系统分析 C.系统设计 D。
系统实施19.面向对象程序设计将描述事物的数据与 ( )封装在一起,作为一个相互依存、不可分割的整体来处理。
A。
信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象22。
属于系统设计阶段的工具是():A.数据流程图B. 处理流程图C.系统流程图D. HIPO图23.进行企业系统规划,哪种规划方法可以形成一套完整的信息系统结构方案( )A。
企业系统规划法 B。
关键成功因素法C。
战略目标集转化法 D。
成本效益分析法30. 导出模块结构图的基础是()A。
业务流程图 B.数据流程图 C.处理流程图 D。
层次结构图32。
( )是从用户使用系统的角度描述系统功能的图形表达方法。
A。
类图 B. 对象图 C. 序列图 D. 用例图35. UML中,对象行为是通过交互来实现的,是对象间为完成某一目的而进行的一系列消息交换。
消息序列可用两种图来表示,分别是( D )A.状态图和顺序图B.活动图和协作图C.状态图和活动图 D。
顺序图和协作图36. 用例(Use-case)用来描述系统在事件做出响应时所采取的行动。
用例之间是具有相关性的.在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。
管理信息系统习题及答案⼀、单项选择题1.关于信息的定义,“信息是⽤以消除不确定性的东西”的说法出⾃( )A.西蒙B.⾹农C.《国家经济信息系统设计与应⽤标准规范》D.Gordon2.战略信息主要⽤于确⽴企业_______的⽬标。
( )A.战术B.利润C.组织D.财务3.战略计划⼦系统是供_______使⽤的系统。
( )A.计算机操作⼈员B.信息处理⼈员C.⾼层决策者D.中层管理者4.管理层次中,主要职能是根据组织内外的全⾯情况,分析和制定该组织长远⽬标及政策的是( )A.⾼层管理B.中层管理C.基层管理D.职能层管理5.BPR的特点有( )A.根本性的B.彻底的C.巨⼤的D.以上均对6.⼤规模集成电路的出现是在计算机硬件发展的( )A.第⼆代B.第三代C.第四代D.第五代7.⽹络互联设备中,具有流量控制功能的是( )A.⽹桥8.关于DB、DBS和DBMS的关系说法正确的是( )A.DB包括DBMS、DBSB.DBS包括DB、DBMSC.DBMS包括DBS、DBD.三者平⾏9.Access中,共享数据功能不包括( )A.数据的导⼈B.导出C.分析D.链接10. Access中,选择了“实施参照完整性”复选框,同时⼜选择了“级联删除相关记录”,则在删除主表中的记录时,相关表中的相关信息( )A.⾃动删除B.条件删除C.没有变化D.完全更新⼀、1. B 2.C 3.C 4.A 5.D 6.C 7.B 8.B 9.C 10.A16.下列不属于物理配置⽅案设计的依据的是( )A.系统吞吐量B.系统响应时间C.系统处理⽅式D.系统的输出⽅式17.下列不属于系统转换⽅式的是( )A.直接转换B.并⾏转换C.垂直转换D.分段转换18.对项⽬的正向风险不应采取的策略是( )A.开拓B.⾃留C.分享D.强化19.下列可以放⼤增强信号的⽹络互联设备是( )D.路由器20.数据字典中数据存储的条⽬主要描述该数据存储的( )A.结构B.有关的数据流C.查询要求D.以上均对参考答案:16.D 17.C 18.B 19. A 20. D⼆、填空题21.事实上,信息系统是⼀个集技术、_______、社会组成为⼀体的结合物。
3. 系统分析的目的是(将用户的需求及其解决方法确定下来(分析阶段)4. 下列哪一项不属于业务流程重组的基本特征(C) A 、根本性B 、彻底性C 、层次性(业务流程的特点) D 、显著改善5. 数据流程分析一般用到三种工具,其中(数据字典)是用图表描述系统中的每一个数据组、数据存储和数据项。
B P1116.数据流程分析的主要步骤是(绘制数据流图→绘制数据字典→撰写处理说明)7.有关系统分析报告的作用,下列表述不正确的是(A)A、描述了新系统的物理模型,作为系统设计和实施的依据B、描述了新系统的逻辑模型,作为系统设计和实施的依据C、为用户和开发人员的交流和监督提供基础D、为新系统验收和评价提供依据8.下列哪一个不属于模块的耦合方式(公共耦合)9.所谓模块的扇入数是指(一个模块拥有的直接上层模块的个数)10. 编码设计的原则,下列表述正确的是(、唯一化、规律化、标准化、可扩充且容易修改)11. 数据库设计的主要步骤是(概念设计→逻辑设计→物理设计) D P14312. 如果按照功能对编码进行分类,以下哪一项不属于编码的种类(字符码(按照文字的种类))13. 数据库设计中的概念设计一般采用(E-R图)14. 系统设计阶段的主要活动是(D )15.防止对系统资源非法使用的主要途径是(身份鉴别)A1.下述对系统实施工作描述正确的是(系统实施要严格按照系统开发流程进行)2. 关于系统测试,下列表述错误的一项是(B)A、系统测试是为了寻找错误而执行程序的过程B、成功的测试是没有发现错误的测试C、成功的测试是发现了至今为止尚未发现的错误的测试D、系统测试只能找出程序中的错误,而不能证明程序中没有错误3. 下列软件维护的方式中,维护工作量占整个维护工作量17﹪~21﹪的是(改正性维护)4.下列哪一项不属于系统评价要考虑的内容(D)A、新系统是否达到了预期的目标B、新系统是否具有较好的适应性和安全性C、新系统是否为企业带来良好的直接或者间接的效益D、根据评审和分析的结果,找出系统的薄弱环节,提出改进意见5. 系统运行状况报告是对新系统开发工作的评定和总结,也是今后进行系统维护工作的依据6. 下列活动中哪一项不属于系统实现阶段的活动(B)A、选择开发语言B、系统测试C、代码审查D、编写代码7. 下列哪一种测试方法不属于黑盒测试的一种技术(D)A、等价划分法B、边界值分析法C、错误推测法D、逻辑覆盖法白盒测试的方法有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖五种8. 系统测试的顺序是(模块测试、子系统测试、系统总体测试)9. 一般情况下比较大的系统,采用(分段切换)系统切换方式比较适宜,能保证平稳、可靠的转换,费用也不太大。
从数据流程图导出初始结构图方法下面分别讨论通过“变换分析”和“事务分析”技术,导出“变换型”和“事务型”初始结构图的技术。
1.变换分析根据系统说明书,可以决定数据流程图中,哪些是系统的主处理。
主处理一般是几股数据流汇合处的处理,也就是系统的变换中心,即逻辑输入和逻辑输出之间的处理。
确定逻辑输入——离物理输入端最远的,但仍可被看作系统输入的那个数据流即为逻辑输入。
确定方法是从物理输入端开始,一步步向系统的中间移动,直至达到这样一个数据流:它已不能再被看作为系统的输入,则其前一个数据流就是系统的逻辑输入。
确定逻辑输出——离物理输出端最远的,但仍可被看作系统输出的那个数据流即为逻辑输出。
方法是从物理输出端开始,一步步向系统的中间反方向移动,直至达到这样一个数据流:它已不能再被看作为系统的输出,则其后一个数据流就是系统的逻辑输出。
对系统的每一股输入和输出,都用上面的方法找出相应的逻辑输入、输出。
逻辑输入和逻辑输出之间的加工,就是系统的主加工。
如图4-24所示。
图4-24(a) 初始DFD图图4-24(b) 找系统的主加工2)设计模块的顶层和第一层“顶层模块”也叫主控模块,其功能是完成整个程序要做的工作。
在与主加工对应的位置上画出主模块。
系统结构的“顶层”设计后,下层的结构就按输入、变换、输出等分支来分解。
设计模块结构的第一层:为逻辑输入设计一个输入模块,它的功能是向主模块提供数据;为逻辑输出设计一个输出模块,它的功能是输出主模块提供的数据;为主加工设计一个变换模块,它的功能是将逻辑输入变换成逻辑输出。
第一层模块同顶层主模块之间传送的数据应与数据流程图相对应。
这里主模块控制并协调第一层的输入、变换、输出模块的工作。
(3)设计中、下层模块由自顶向下、逐步细化的过程,为每一个上层模块设计下属模块。
输入模块的功能是向它的调用模块提供数据,由两部分组成:一部分是接受输入数据;另一部分是将这些数据变换成其调用模块所需要的数据。
从数据流程图导出初始结构图方法
下面分别讨论经过”变换分析”和”事务分析”技术, 导出”变换型”和”事务型”初始结构图的技术。
1.变换分析
根据系统说明书, 能够决定数据流程图中, 哪些是系统的主处理。
主处理一般是几股数据流汇合处的处理, 也就是系统的变换中心, 即逻辑输入和逻辑输出之间的处理。
确定逻辑输入——离物理输入端最远的, 但仍可被看作系统输入的那个数据流即为逻辑输入。
确定方法是从物理输入端开始, 一步步向系统的中间移动, 直至达到这样一个数据流: 它已不能再被看作为系统的输入, 则其前一个数据流就是系统的逻辑输入。
确定逻辑输出——离物理输出端最远的, 但仍可被看作系统输出的那个数据流即为逻辑输出。
方法是从物理输出端开始, 一步步向系统的中间反方向移动, 直至达到这样一个数据流: 它已不能再被看作为系统的输出, 则其后一个数据流就是系统的逻辑输出。
对系统的每一股输入和输出, 都用上面的方法找出相应的逻辑输入、输出。
逻辑输入和逻辑输出之间的加工, 就是系统的主加工。
如图4-24所示。
图4-24(a)初始DFD图
图4-24(b)找系统的主加工
2) 设计模块的顶层和第一层
”顶层模块”也叫主控模块, 其功能是完成整个程序要做的工作。
在与主加工对应的位置上画出主模块。
系统结构的”顶层”设计后, 下层的结构就按输入、变换、输出等分支来分解。
设计模块结构的第一层: 为逻辑输入设计一个输入模块, 它的功能是向主模块提供数据; 为逻辑输出设计一个输出模块, 它的功能是输出主模块提供的数据; 为主加工设计一个变换模块, 它的功能是将逻辑输入变换成逻辑输出。
第一层模块同顶层主模块之间传送的数据应与数据流程图相对应。
这里主模块控制并协调第一层的输入、变换、输出模块的工作。
( 3) 设计中、下层模块
由自顶向下、逐步细化的过程, 为每一个上层模块设计下属模块。
输入模块的功能是向它的调用模块提供数据, 由两部分组成: 一部分是接受输入数据; 另一部分是将这些数据变换成其调用模块所
需要的数据。
在有多个输入模块的情况下, 我们可为每一个输入模块设计两个下层模块, 其中一个是输入, 另一个是变换。
输出模块的功能是将其调用模块提供的数据变换成输出的形式。
也就是说, 要为每一个输出模块设计两个下层模块, 其中一个是变换, 另一个是输出。
该过程自顶向下递归进行, 直到系统的物理输入端或物理输出端
为止, 如图4-25所示。
图4-25由变换型数据流程图导出初始模块结构图
变换模块设计下层模块则没有通用的规则能够遵循, 能够根据数
据流程图中主处理的复杂与否来决定是否分为子处理。
每设计出一个新模块, 应同时给它起一个能反映模块功能的名字。
运用上述方法, 就可获得与数据流程图相对应的初始结构图。
2.事务分析。