软件工程实验指导.docx
《软件工程实验指导.docx》由会员分享,可在线阅读,更多相关《软件工程实验指导.docx(46页珍藏版)》请在冰豆网上搜索。
软件工程实验指导
软件工程实验指导书
1
实验一、使用Visio绘制数据流图
实验目的:
1.掌握在MicrosoftVisio中绘制图形的基本方法;
2.认知数据流图的基本元素;
3.掌握使用数据流图对系统进行自顶向下逐步求精的分析过程。
实验内容:
1.根据下面的描述,按要求画出“教育基金会捐助资金管理系统”的数据流图。
2.或画出自主设计的系统的数据流图。
某教育基金会捐助资金管理系统的基本功能如下:
1.由捐助者向基金会提出捐助请求,经身份确认后被接受,对捐助人进行登记并授予捐助证书,捐款存入银行。
2.由教育单位提出用款申请,在进行相应的合法性校验和核对相应的捐款储备后做出支出。
3.每月给基金会的理事会一份财政状况报表,列出本月的收入和支出
情况和资金余额。
实验要求:
1.确定“教育基金会捐助资金管理系统”的数据源点和终点,画出该系统的顶层数据流图;
2.分析系统的主要功能,细化系统的顶层数据流图,画出系统的第1层数据流图;
3.细化系统的各个主要功能,画出系统的第2层数据流图。
提示:
1.系统中有三个实体:
捐助者、教育单位、基金会的理事会;
2.系统的主要功能有:
收入处理、支出处理、产生报表。
其中收入处理可以细分为:
接受请求(捐助请求)、确认身份和登记收入(存入款项);支出处理可以细分为:
接受请求(用款请求)、合法性检查和登记支出(支出款项);
3.系统需要存储的信息:
捐助者信息、教育单位信息和收支状况信息。
实验所需的基本技术知识,参见基础知识一。
1
基础知识一、Visio基本绘图知识
MicrosoftVisio2003为我们提供了强大的绘图功能,使用Visio中提供的图形模板,我们可以轻松绘制数据流图、系统流程、程序流程图、ER图、UML类图、Gantt图等图形,这些图形是我们在软件工程系统分析和设计过程中使用的非常重要的系统描述工具。
利用Visio,我们不仅可以绘制ER图,还可以对一个现有的数据库结构进行反向工程来生成数据库的ER图和具体的表的定义结构。
Visio支持包括MicrosoftSQLServer、MicrosoftAccess、Oracle和IBM的DB2在内的多种数据库。
首先,我们学习利用Visio进行绘图所需的基本操作。
利用Visio进行绘图的大致步骤可以概括如下:
1.打开模板,添加图形.
2.移动图形或者改变图形的尺寸.
3.添加文本.
4.将图纸中的图形连接到一起.
5.格式化图形.
6.保存制图.
下面我们将分6个循序渐进的单元学习使用Visio绘图的基本操作。
1:
初学绘图
在本节,你将学会:
1.打开模板
2.在图纸中添加图形
3.查找图形
打开模板
1.在File菜单选择New,然后单击ChooseDrawingType.
2.在Category下,单击某一个分类,并在Template下,单击某一个模板.
提示如果你不知道应该选哪一个模板,单击BlockDiagram类别,并单击BasicDiagram模板。
这样会打开BasicShapesstencil,其中包含矩形、圆形、三角形、箭头等基本形状。
2
Visio中可以用于软件工程的模板列举如下,但不限于此:
1.系统流程图:
File/New/Flowchart/BasicFlowchart
2.数据流图:
File/New/Flowchart/DataFlowDiagram或者File/New/Software/DataFlowModelDiagram
3.实体-联系图:
File/New/Database/DatabaseModelDiagram
4.UML模式图:
File/New/Software/UMLModelDiagram
5.Window用户接口:
File/New/Software/WindowsUserInterface
6.Jackson图:
File/New/Software/Jackson
7.Gantt图:
File/New/ProjectSchedule/GanttChart
在打开模板之后,你可以采用两种方式将图形添加到你的图中,一是从stencil
中拖拽一个图形,一是使用绘图工具绘制。
从stencil拖拽一个图形
1.点击stencil标题栏,显示其中的图形
2.从stencil中拖拽一个图形到绘图纸上
利用绘图工具绘图
•点击任意绘图工具,比如Rectangle或者Ellipse,然后在绘图纸上画出图形
从图中删除某个图形
•点击这个图形,然后按下DELETE键.
有些时候,你选择的template的stencil中没有你需要的图形。
例如,当你打开BasicFlowchart模板时,它打开三个stencils:
BasicFlowchartShapes,Backgrounds,和BordersandTitles.你会发现其中没有你需要的computer图标.如果是这样,你可以键入名字进行搜索,或者打开其他stencils查找.
打开其他stencils
1.在File菜单,指向Stencils,点击OpenStencil.
2.双击某一个文件夹,然后双击某一个stencil,之后查找你需要的图形.
3
查找图形,当你不知道应该打开哪一个stencils的时候
1.在File菜单,点击FindShape.
FindShape面板会出现在stencil所在的区域,在绘图纸的左侧.
2.在SearchFor编辑框中,输入一个或者多个可以描述你需要的图形的关键字.
3.点击Go.
4.当你查找到你需要的图形时,从FindShape面板将它拖拽到绘图纸中.
提示如果想关闭stencil或者FindShape面板,右键单击标题栏,然后在快捷菜单中,单击Close.
练习
1.在File菜单,指向New,然后单击ChooseDrawingType.
2.在Category下,单击Flowchart,然后在Template下,单击BasicFlowchart.
3.在图纸中添加图形:
拖拽Process图形到图纸上.
4.再拖拽一个Process图形到图纸上,将它放在第一个Process图形下方.
5.拖拽一个Decision图形到图纸上,将它放在第二个Process图形下方.
6.拖拽一个Predefinedprocess图形到图纸上,将它放在Decision图形的右侧.
7.拖拽另一个Process图形到图纸上,将它放在Decision图形的下方.
8.拖拽一个Terminator图形到图纸上,将它放在最后一个Process图形下方.
4
2:
移动图形或者改变图形的尺寸
在本节,你将学会:
1.移动图形
2.改变图形的尺寸
3.缩放图形
移动某个图形
1.单击工具栏中的Pointer工具
.
2.移动鼠标到图形上,鼠标变成十字箭头形状.
3.拖动图形。
或者,用键盘上的箭头键移动图形.
你可以利用绘图纸上的网格对齐图形,或者放置图形到适当的位置.
一次移动多个图形
1.按下SHIFT键,点击每个图形.或者,如果你想移动的图形聚在一起,在选中Pointer工具的情况下,点击这些图形周围的空白区域,拖拽鼠标选中所有你想移动的图形.
2.将鼠标放在选中图形的中央.
3.拖动这些图形.或者,用键盘上的箭头键移动图形.
提示你可以利用Rotation工具
旋转一个图形.
改变图形的尺寸
1.选中Pointer工具.
2.选中图形.
3.其余操作类似在Word中改变图形的大小.
5
指定一个或者多个图形的精确尺寸
1.选中一个或者多个图形.
2.在View菜单,点击Size&PositionWindow.
3.在Size&Position窗口中,输入图形的宽度和高度.
X:
距离图纸左边沿的距离
Y:
距离图纸下边沿的距离Width:
图形的宽度Height:
图形的高度
有时,你很难移动或者改变特别小的图形的尺寸.为了能够准确的放置图形的位置,需要将图的一部分进行放大,你可以利用快捷键或者工具栏上的Zoom工具.你也可以利用Pan&Zoom窗口将一个大的图缩小,以观察其全貌.
使用快捷键缩放图纸
1.为了放大图的某个部分,选中Pointer工具,然后按下CTRL+SHIFT键,用鼠标拖拽出你想放大的部分.
2.为了迅速缩小图纸以查看你的制图的全貌,你可以按下CTRL+W键.
利用Pan&Zoomwindow,缩放图纸
1.在View菜单,单击Pan&ZoomWindow.
2.在Pan&Zoom窗口,拖拽出你想放大的区域,这个区域会被用红色的边框围起来.
3.如果你想变换视图,在Pan&Zoom窗口中拖拽红色边框的位置或者大小即可.
6
练习
继续前一节的练习.
1.删除最后一个Process图形(在Terminator图形上方的那个Process图形).
2.为了更精确的制图,按下CTRL+SHIFT键,用鼠标拖拽出一个区域以放大该区域.
3.选中图中除了Terminator图形之外的其他图形(用shift键或者用拖拽的方式).
4.移动选中的图形到图纸中的适当位置.
5.按下CTRL+W键,看看你的制图的全貌.
3:
添加文本
本节,你将学会:
1.添加一个图形的文字
2.添加独立的文字
3.格式化文字
给一个图形添加文字
•双击图形,输入文字。
或者选中Text工具,点击图形,然后输入文字.
将图形中的文字删除
•双击图形,图形中的文字呈反显状态,按下DELETE键.或者选中Text工具,点击图形,选中你想删除的文字,然后按下DELETE键.
添加独立的文字
•点击Text工具,单击你想添加文字的地方,在文本框中输入文字即可.
删除独立的文字
•点击Pointer工具,点击文字区,然后按下DELETE键.
7
在绘图纸上移动一个文字区
1.选中Pointer工具,点击文字区.
3.拖动文字区到目标位置.
格式化文字
1.选择文字
a.选中Pointer工具,点击文字区或者包含文字的图形可以选中整个文字区或者图形内的文字.
b.如果想选择部分文字,则双击文字区或者图形内部的文字。
2.在Format菜单,单击Text,然后在Text对话框中更改文字的属性.或者单击工具栏上的格式化按钮,比如Bold(加粗),Italic(倾斜),或者Underline(下划线).
如果工具栏中没有这些按钮,右键单击工具栏,然后在快捷菜单中单击Formatting.
技巧为了显示更多的文字格式化按钮,你可以右键单击工具栏,然后在快捷菜单中选择FormatText.
练习继续前面的练习.添加文字到流程图的图形中
1.单击第一个Process图形,输入1.
2.单击第二个Process图形,输入2.
3.单击Decision图形,输入3.
4.单击Predefinedprocess图形,输入A.
5.单击Terminator图形,输入B.
6.选中流程图中所有图形.
7.为了改变文字的颜色,选择所有图形,单击TextColor按钮右侧的小箭头,选择红色.
8
8.为了给你的流程图添加一个标题,单击Text工具,在流程图的上方的适当位置单击,
然后输入123AB.
4:
连接图形
在本课中,你将学到:
1.使用Connector工具连接图形;
2.使用stencil中的connector连接图形;
3.给connectors添加文字.
Connectors可以将图中的图形连接起来,用于标明图形之间的某种关系.在Visio中当你移动被连接的图形时,连接线也会跟着图形移动.
注意:
如果使用Line工具连接图形,当你移动被连接的图形时,你将不得不重新绘制图形之间的连接线.因此,务必使用Connectors连接图形.
连接绘图纸上的图形
1.单击Connector工具.
2.将鼠标移动到需要连接的图形之一,这个图形的边框将变为红色.
3.拖动鼠标到需要连接的另一个图形,这个图形的边框也变为红色.
删除connector
•单击connector,然后按下DELETE键.
利用stencil中的connectors连接图形
1.从stencil中拖出一个connector,然后拖动它的一个端点到需要连接的图形之一,直到图形的边框变成红色,或者connector的端点变成红色.
2.拖动connector的另一个端点到另一个需要连接的图形.
提示MicrosoftVisio包含Connectorsstencil,其中包含许多不同类型的connectors.如果你在现有打开的stencils中找不到,可以试试VisioExtras文件夹中的Connectorsstencil.
9
给connectors添加注释文字
•选中Pointer工具,单击connector,然后输入文字.
5:
格式化图形
本节,你将学到:
1.格式化二维图形;
2.格式化一维图形;
3.利用controlhandles改变图形的外观
格式化二维图形
1.单击二维图形,也可以选择多个二维图形.
2.采用下面的方法之一:
•在Format菜单,单击Line改变直线的颜色、粗细或者样式.
•在Format菜单,单击Fill改变填充颜色和填充样式.
•单击任何格式化按钮,比如FillColor按钮.
提示为了显示更多的格式化按钮,右键单击工具栏,在快捷菜单中单击FormatShape.
技巧你可以利用FormatPainter工具将一个图形的格式化属性——文字、填充、线等的属性拷贝到另一个图形。
单击你想复制格式化属性的图形,单击FormatPainter工具,然后单击你想格式化的图形.
格式化一维图形
1.单击一维图形.
2.利用下面方法之一格式化图形:
•在Format菜单,单击Line了改变颜色、粗细、样式或者端点.
•单击任意格式化按钮,比如LineColor按钮,LineWeight按钮,或者LineEnds
按钮.
10
练习
格式化流程图中的图形
1.为了改变Decision图形的填充颜色,单击这个图形,单击FillColor按钮,然后选择绿色.
2.为了改变Predefinedprocess图形的边框颜色,单击这个图形,单击LineColor按钮,然后选择灰色.
3.为了减少Predefinedprocess图形的大小,拖动图形的控制句柄.
4.为了调整Line-curveconnector图形的connector的曲线,拖动connector的控制句柄.
5.为了改变Line-curveconnector的样式,单击这个图形,单击LinePattern按钮,然后选择虚线.
6:
完成和使用Visio制图
本课中,你将学到:
1.预览和打印你的图;
2.在微软Office产品中使用visio图形
你已经掌握了创建Visio图形的基本技能,现在你可以对这个制作好的图进行其他处理。
首先,你需要保存它,打印,以其他格式保存,或者将它放在微软的Word文档中。
预览和打印
1.单击PrintPreview按钮.
2.如果你需要进行调整或者重新进行打印设置,单击Close按钮,关闭预览窗口.
更改图纸,利用File/PageSetup.更改打印设置,利用File/Print,然后单击Properties.
3.在File菜单,单击Print.
将图拷贝到Word文档中
1.为了选中图纸中的每一个图形,在Edit菜单,单击SelectAll.
11
2.为了复制这些图形,在Edit菜单,单击Copy.
4.打开Word文档,单击你想插入图的位置.
5.选择Edit菜单,单击Paste插入该图.
在Word文档中修改visio图
1.在Word文档中,双击图.
MicrosoftVisio在Word中启动,然后你可以象在Visio环境中一样修改这个图.
2.为了退出MicrosoftVisio,返回Word文档,单击图的外Word文档的其他地方即可.
练习:
保存你的流程图,拷贝到Word文档中
继续前面的练习。
1.为了保存你的流程图,在File菜单,单击SaveAs.
2.在Filename对话框中,输入文件名,然后单击Save.
3.在Properties对话框,填入任何你需要的信息,然后单击OK.
4.为了选择你的流程图上的所有图形,在Edit菜单,单击SelectAll.
5.为了复制你的流程图,在Edit菜单,单击Copy.
6.启动MicrosoftWord.
7.单击你想插入流程图的位置.
8.为了插入你的流程图,在Edit菜单,单击Paste.
实验二、利用RationalRose进行面向
对象分析
实验目的:
学会使用Rose进行面向对象分析,创建各种基于UML的框图。
实验内容:
本实验将利用Rose支持面向对象分析和设计的功能,设计并创建用于说明某个系统的框图。
这个系统可以是你熟知的任何系统。
系统的规模不用过大(有3~10项系统功能即可),比如一个IC卡式的自动电话机,或者自动售货机等系统。
实验要求:
1.用语言描述这个系统的功能;
2.利用Rose完成该系统的建模(对象模型、功能模型、动态模型);
实验所需的基本技术知识,参见基础知识二。
21
基础知识二、Rose与UML
UML框图
UML(统一建模语言,UnifiedModelingLanguage),是最广泛使用的面向对象系统的标准建模方法。
它是GradyBooch、JamesRumbaugh博士、IvarJacobson、RebeccaWirfs-Brock、PeterYourdon和许多其他人员集体智慧的结晶。
其中Booch、Rumbaugh和Jacobson是Rational软件公司的三剑客,着重于UML的标准化和改进。
利用UML可以开发几种不同的可视框图,表示系统的不同方面。
RationalRose支持开发这些模型的大部分,包括:
zBusinessUseCase框图
zUseCase框图
zActivity框图
zSequence框图
zCollaboration框图
zClass框图
zStatechart框图
zComponent框图zDeployment框图这些模型框图表示系统的不同方面。
BusinessUseCase框图
BusinessUseCase框图表示整个机构提供的功能。
用来回答如下问题:
公司干什么?
为什么要建立系统?
BusinessUseCase框图在业务建模活动期间大量用于设置系统情境和形成创建使用案例的基础。
下图显示了一家财务公司的简化BusinessUseCase框图。
22
BusinessUseCase框图显示业务用例与业务角色之间的交互。
业务用例表示公司执行的过程,而业务角色表示业务要交互的角色,如客户与厂家。
也就是说,业务角色表示公司外与公司交互的任何人,而不表示公司内的角色或人员。
公司内的角色或人员表示为业务工人。
UseCase框图
UseCase框图显示使用案例与角色间的交互。
使用案例表示从用户角度对系统的要求,因此表示系统功能。
角色是系统的主体,表示提供或接收系统信息的人或系统。
这个框图显示哪个角色启动使用案例,并显示角色何时从使用案例收到信息。
利用UseCase框图可以演示系统的需求。
BusinessUseCase框图与自动化过程无关,而UseCase框图则针对自动化过程。
业务用例和使用案例之间没有一对一的关系。
一个业务用例可能需要30个使用案例来实现其过程。
下图是自动柜员机(ATM)系统的UseCase框图。
23
这个UseCase框图显示ATM系统使用案例与角色间的交互。
本例中,银行客户启动几
个使用案例:
取钱、存钱、转帐、付款、查阅结余和改变PIN。
UseCase框图显示系统的总体功能。
用户、项目管理员、分析人员、开发人员、质量保证工程师和任何对系统感兴趣的人都可以浏览这个框图,了解系统功能。
Activity框图
Activity框图演示了系统中的工作流。
这个框图定义工作流从哪里开始,到哪里结束,工作流中发生哪些活动,这些活动按什么顺序发生。
Activity框图中,框图中的活动用圆角矩形表示,这是工作流进行期间发生的步骤。
工作流影响的对象用方框表示。
开始状态表示工作流开始,结束状态表示工作流结束,决策点用菱形表示,如下图所示。
24
客户服务代表信用部经理客户
可以通过查看Activity框图中的虚线,了解对象的流程。
对象