数据流图与数据字典练习与答案.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1 1 ?需求分析阶段的主要任务是什么 ?怎样理解分析阶段的任务是决定 做什么”,而不是 怎样 做”? 解:需求分析阶段的主要任务是用户和软件人员双方一起来充分地理解用户的要求, 并把双方共 同的理解明确地表达成一份书面文档 一一需求说明书。用户要求通常包括功能要求、性能要求、 可靠性要求、安全保密要求以及开发费用、 开发周期、可使用的资源等方面的限制, 其中功能要 求是最基本的,它又包括数据要求和加工要求两方面。 所以,软件阶段的任务是解决软件系统做 什么,而不是怎么做。 ?什么是结构化分析方法?要经过哪些步骤来实现 ? 解:?所谓结构化分析方法是在分析一个软件系统时使用 自顶向下逐层分解”的方式表达用户需 求。对系统作了合理的逐层分解后,就可分别理解系统的每一个细部, 这样,就可以有效地控制 系统的复杂性。 ?结构化分析方法的步骤: 理解当前的现实环境,获得当前人工系统的具体模型。 从当前系统的具体模型抽象出当前系统的逻辑模型。 分析目标系统与当前系统逻辑上的差别,建立目标系统的逻辑模型。 为目标系统的逻辑模型作补充。 ?为什么DFD要分层?画分层DFD要遵循哪些原则? 解:?对一个大型的系统, 如用一张数据流图画岀所有的数据流和加工, 则图纸将极其庞大复杂, 因而难以理解。为了控制复杂性, SA方法采用分层”的技术。 ?画分层DFD要遵循哪些原则: 分解应自然,概念上合理、清晰。 只要不影响数据流图的 易理解性”,可以适当地多分解成几部分,这样分层图的层数就 可少些。 一般说来,在上层可以分解得快些,而在下层则应分解得慢些,因为上层是一些综合性 的描述, 易理解性”相对地说不太重要 .选择一个系统(例如人事档案管理系统、图书管理系统、医院监护系统、足球俱乐部管理系统、 财务管理系统、学生选课系统、飞机订票系统等),用SA方法对它进行分析,画岀系统的分层 DFD 图,并建立相应的数据词典 解: 解:?下面是一个学生选课系统的 DFD ?数据词典 谍程注册表 学生选课票坯的數据磴条目 数据流选课单 选课单二学生学号十{课程编码} 1 数据流 学生课程表 学生课程表二学生学号十 {课程时间表} 数据流 课程成绩单 课程成绩单二课程编码十课程名十 [任课教师I指导教师]十{学号十姓名十成绩(十备 注)} 数据流费用 费用二学生学号十[课程编码十课程费用]l十合计金额 数据流学生学号 别名 学号 学生学号:基本数据项, 由8位数字组成。其中丨?5位为班级号,6?8位为班内序号, 从001开始 数据流 合法选课记录 别名 选课记录,重修课程,已选课程 合法选课记录二学号 +课程时间表 (2)文件条目 文件开课清单 课程记录二课程编码十课程名十注册金额 十[任课教师|指导教师](十职称)十起始周+终止周+{上课时间} 组织:以课程编码为记录关键字升序排列 文件课程注册表 注册记录二学生学号十课程编码十课程名十 [任课教师|指导教师](十职称)十起始周 十 终止周十上课时间 组织:以课程编码为记录关键字升序排列 文件学生成绩库 学生成绩二学生学号十课程编码十成绩十备注 组织:以学号为记录关键字升序排列 注释:备注域用于标识课程类别 (必修/限选/任选) (3)数据项条目 课程编码:xxxxxxx(7 位数字) 第丨位:系编号 第2?3位:教研室编号 第4?6位:课程序号 第7位:课堂号 课程时间表=课程编码十起始周十终止周十 {星期十节十教室号} 起始周、终止周1?22 星期1?6 节:1?12 教室号:xxxx 课程名=长度w 30的字符串 任课教师、指导教师姓名 =长度W8的字符串 成绩=nnn(3位整数) ⑷加工说明 加工I」合法性检查 BEGIN 读取选课单; WHILE 课程编码不空 DO 在开课清单中查找该课程; IF 找到THEN输岀合法选课记录; 取该生下一选修课程编码 END DO ; 输出该生学号; END 加工1.2查已修课程成绩 BEGIN 根据学号在学生成绩库中查找该生的重修课程; 输出重修课程编码; END 注释:学生成绩记录中成绩不及格,备注二’必修’则该课程重修 加工1.3计算课程冲突率 BEGIN 接收合法选课记录或者重修课程; REPEAT CASE课程类别OF 重修课程://重修课程必须优先安排 // BEGIN查开课清单;填写该生个人课表 END; 合法选课记录: BEGIN 根据课程号在开课清单中查当前所选课程时间表; 检查当前所选课程与该生已选课程是否冲突; IF 不产生冲突 THEN填写该生个人课表; ELSE BEGIN 计算冲突率; IF 冲突率V 3O% THEN填写学生个人课表 //当前 课程可选 ELSE BEGIN 根据课程类别优先序删除冲突课程; //优先序:重修, 必修,

文档评论(0)

cooldemon0602 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档