300 likes | 453 Views
Beyond Technology. 软件工程与 UML. 林琳 Email: linlin@ccniit.com. 图书管理系统 —— 第 12 周第 1 次课. 我们的进度,在这里. 今天的工作任务. 图书管理系统的详细设计 —— 程序流程图。. 提交内容. 图书管理系统 —— 详细设计流程图。. 我们的进度,在这里. 知识点:详细设计 —— 程序流程图. 程序流程图是人们对解决问题的方法、思路或算法的一种描述。 流程图的优点: ( a )采用简单规范的符号,画法简单; ( b )结构清晰,逻辑性强; ( c )便于描述,容易理解。. 我们的进度,在这里.
E N D
Beyond Technology 软件工程与UML 林琳 Email: linlin@ccniit.com
我们的进度,在这里 今天的工作任务 • 图书管理系统的详细设计——程序流程图。 提交内容 • 图书管理系统——详细设计流程图。
我们的进度,在这里 知识点:详细设计——程序流程图 • 程序流程图是人们对解决问题的方法、思路或算法的一种描述。流程图的优点: • (a)采用简单规范的符号,画法简单; • (b)结构清晰,逻辑性强; • (c)便于描述,容易理解。
我们的进度,在这里 程序流程图 • 表达算法简明直观,易于学习掌握,是一种常用的详细设计工具
我们的进度,在这里 程序流程图
我们的进度,在这里 程序流程图 多分支选择 顺序结构 选择结构 T F A2 An A1 A1 当型循环 直到型循环
我们的进度,在这里 流程图案例分析: • 有一个处理单价为2元饮料的自动售货机软件,该软件负责控制两个LED显示灯(红,绿)和控制饮料的送出。待机状态,显示红灯。若投入2元硬币,LED绿灯闪烁,之后按下“可乐”、“雪碧”或“红茶”按键,显示绿灯,相应的饮料就送出来.
我们的进度,在这里 MS Visio工具绘制流程图 • Microsoft Office Visio 有助于 IT 和商务专业人员轻松地可视化、分析和交流复杂信息。它能够将难以理解的复杂文本和表格转换为一目了然的 Visio 图表。该软件通过创建与数据相关的 Visio 图表(而不使用静态图片)来显示数据,这些图表易于刷新,并能够显著提高生产率。 • Office Visio 提供了各种模板:业务流程的流程图、网络图、工作流图、数据库模型图和软件图,这些模板可用于可视化和简化业务流程、跟踪项目和资源、绘制组织结构图、映射网络、绘制建筑地图以及优化系统。
我们的进度,在这里 软件流程图绘制方法 • 在“文件”菜单中,依次指向“新建”、“业务流程”或“流程图”,然后单击“基本流程图”。 • 对于您所要展示的流程中的每个步骤,将流程图形状拖到绘图页上。 • 使用“连接线”工具来连接流程图形状。 • 提示 如果先选择“连接线”工具,然后再将形状拖到绘图页上,即可自动连接形状。放置在绘图页上的形状将按照它们各自的放置顺序进行连接。 • 要将文本添加到形状中,请先选取该形状,然后键入文本。键入完成后,在文本块外单击。 • 您可以对流程图中的各个形状进行编号,以说明流程中各步骤的顺序。
我们的进度,在这里 课堂练习1 • 利用visio工具,绘制出系统登录时身份验证的流程图。
我们的进度,在这里 课堂练习2 • 更改刚才的流程图,实现用户输入用户名uname和密码upassword,如果uname为aaa,并且upassword为123时登录成功,否则登录失败的程序流程图。
我们的进度,在这里 完成工作任务——图书借阅用例的详细设计 • 【步骤一】、阅读用例描述文档,关于图书借阅用例是如何进行描述的。 • 用例名称:图书借阅 • 用例描述:图书馆工作人员输入借阅证编号和图书编号来完成图书借阅。 • 参与者:图书馆工作人员。 • 前置条件:图书馆工作人员点击“图书借阅” • 基本路径: • 输入借阅证编号。 • 输入图书编号。 • 点击“借阅” • 显示当前借阅信息(书名,ISBN,借阅时间,应归还时间) • 备选流程: • 点击“重填”实现借阅证和图书编号重新填写
我们的进度,在这里 图书借阅用例的详细设计 • 【步骤二】、考虑实现此用例,需要哪些数据,数据从哪里来。 • 需要图书证编号、借阅证编号 • 可以从界面的jTextFiled控件中通过getText方法获得。
我们的进度,在这里 图书借阅用例的详细设计 • 【步骤三】、需要哪些操作来处理数据,这些操作在哪里获得? • 1.向数据库“借阅信息”表中插入一条新记录,并获得这条新记录。 • 2.更改“图书”表中的图书状态为“借出未还”。
我们的进度,在这里 图书借阅用例的详细设计 • 【步骤四】、产生哪些数据,这些数据怎么在界面上显示。 • 产生了借阅信息数据(书名,ISBN,借阅事件,归还时间) • 这些数据,要显示在界面上,可以使用jLable的setText方法进行显示。
我们的进度,在这里 图书借阅用例的详细设计 • 【步骤五】:把1-4步的结果进行汇总,形成“借阅”按钮处理事件的详细设计: • 1.从GUI界面的jTextFiled获得,借阅证编号sid,图书编号bid • 2.使用BookRegistrationDAO类的方法BorrowView insertBorrowInfor(java.lang.String bid, java.lang.String sid) 插入借阅信息并返回最新记录 ,存放在一个BorrowView对象里面 • 3.使用BookDAO类的方法void modifyBookState(java.lang.String state, java.lang.String bid) ,将所借的图书的状态修改为“借出未还”。 • 4.将BorrowView类对象中的属性“书名”“ISBN”“借阅时间”“归还时间”,通过get方法取出,并显示在GUI界面上。
我们的进度,在这里 图书借阅用例的详细设计 • 第五步的流程图:
我们的进度,在这里 改变详细设计,让图书借阅用例更完美一些。 • 1.如果输入的借阅证编号和图书编号不正确,是不能进行图书借阅的。因此在详细设计中,要考虑新的算法 • 2.如果借阅的图书已经借出,则不允许重复借阅,这样也要重新考虑算法。 • 【解决办法】 • 使用BookDAO类的方法Book getBookByID(java.lang.String bid) ,此方法返回一个Book类的对象,如果此对象的Book_id属性为0,则说明图书编号输入有误。如果此对象的book_state属性为“借出未还”则说明图书不可以借阅。 • 使用StudentDAO类的方法StudentgetStudentByID(String sid) ,此方法返回一个Student类的对象,如果此对象的Student_id属性为0,则说明借阅证编号输入有误 • 使用两个if-else嵌套结构来完成这两个算法。
重新进行详细设计的流程图 我们的进度,在这里
我们的进度,在这里 图书归还用例的实现 • 【步骤一】、阅读用例描述文档,关于图书借阅用例是如何进行描述的。 • 【步骤二】、考虑实现此用例,需要哪些数据,数据从哪里来。 • 【步骤三】、需要哪些操作来处理数据,这些操作在哪里获得? • 【步骤四】、产生哪些数据,这些数据怎么在界面上显示。 • 【步骤五】:把1-4步的结果进行汇总,形成“查询”和归还按钮处理事件的详细设计
我们的进度,在这里 图书归还用例——“查询”按钮处理流程图
我们的进度,在这里 图书归还用例——“归还”按钮处理流程图
我们的进度,在这里 完成实验10:详细设计流程图
我们的进度,在这里 实验报告书写注意: 实验:十 注意:实验报告每个同学都要完成,当节课做,下课时课代表收上来交给老师.电子版程序也由课代表收齐后发给老师.
我们的进度,在这里 实验报告书写注意: • 实验名称:详细设计流程图 • 实验目的、要求 • 掌握详细设计技术,利用详细设计流程图来描述详细设计。 • 通过使用MS Visio工具,绘制流程图。 • 实验设备 • 学生自己的笔记本 • 实验内容、步骤 • 内容: • 1)对图书馆管理系统中,“图书借阅”类和“图书归还”类进行详细设计。 • 2)使用MS Visio完成流程图。
我们的进度,在这里 实验报告书写注意: • 步骤: • 打开MS Visio工具,新建形状——流程图,命名为:学号姓名-实验10,如:7317110101兰维海-实验10.vsd • 完成“图书借阅”类和“图书归还”类的详细设计:按照所给的示例,将元素拖放到设计窗口中。完成设计之后,保存设计图。
完成以下流程图 图书借阅流程图 图书归还——“查询”按钮处理流程