lJlHT-d-r1"'---J'HIS料"4"
3J-
■■I-
—工
—
■l.
厲勺*pH
E"1*7
R-i"-・■■ia.rH■
—―-
九、实验结论
成功绘制出数据流图,绘制IDEF1X图,绘制UML类图,绘制用例图。
十、实验总结
对visio不熟悉导致进度特别慢,以后应该加强对工具使用的练习,要熟练使用常用工具。
绘制UML类图的时候要明确各个类之间的关系。
实验三
系统设计
•实验室名称二.试验项目名称
系统设计
三.实验目的
1.掌握:
结构化数据流设计技术、面向对象设计技术;
2.掌握:
Visio工具绘制软件结构图;
3.掌握:
Rose或Visio工具绘制UML模型图。
四.实验内容
1、试针对实验二的培训中心管理系统,试用结构化设计
方法对其进行设计,并用Visio绘制其对应的软件结构图。
(选做)
2、某室内保温系统的描述如下:
如果主开关置于“加热”状态,保温系统的控制器负责开关锅炉,监视锅炉系统的燃油流量和燃烧状态,进而调节进入房间的热流量。
当室内温度降至(Tr-2)度以下,控制器启动锅炉。
这里Tr是用户设定的理想室温。
锅炉启动过程如下:
(1)控制器向锅炉的马达发送信号;
(2)控制器监视马达速度。
马达达到正常操作速度时,启动点火并打开油阀;
(3)控制器监视水温,一旦水温达到预定值,发信号打开水流循环阀。
热水开始在室内循环。
(4)如果发生异常情况,燃油流量指示器和光感器向控制器发信号。
此时控制器发信号关闭系统。
5秒钟;
5秒钟内应指示锅炉停
RationalRose绘制控制
阀,延迟5秒钟后关闭锅炉马达。
系统须满足以下限制:
(1)锅炉停机后重启必须延迟
(2)在主开关关闭或油阀关闭机。
试据此对系统进行设计,采用器的状态图,同时用顺序图描述锅炉启动过程。
五.试验方案分析与设计
依据软件设计原则,对系统进行设计
六.实验器材(设备,元器件)七.实验步骤
(1)建立软件结构图的基本步骤:
1.先添加函数/子例程;
2.再添加有条件调用;
3.然后添加调用连线;
4.最后为调用线添加数据流或标志流。
(2)Rose建立UML图的基本步骤:
1.启动Rose,建立新模型,保存模型
2.在某视图下建立模型。
八.实验数据记录结果分析
控制器状态图:
=;:
尸卵
罠用it和
-HHM~~$
令I胃雷如卅诂曲档箱t-4养违摩
-rWt比一”..・..丿?
■■■;■■
Ilr-ri-T
.14-
打itill
•:
■
共>
;:
kd|ftft
?
」
锅炉启动过程顺序图:
九.实验结论
成功绘制出控制器状态图和锅炉启动过程顺序图
十.实验总结
对visio不熟悉导致进度特别慢,自学软件使用技巧的能力差,以后应该加强对工具使用的练习,要熟练使用常用工具。
绘制
实验四
系统实现
一.实验室名称
二综
二.试验项目名称
系统实现
三.实验目的
1.掌握:
系统实现的有关技术及其相关工具。
四.实验内容
1、试对图3所示的课程管理对象类图,采用Java在Eclipse下编码实现,并用JUnit框架对某Java类进行测试
图3类图
2、针对某网站,采用SilkTest和SilkPerformer分别进行功
能测试和性能测试。
(选做)
5.试验方案分析与设计
1.设计的系统功能如下:
查询管理
选课W理
学生管理
学生信息管理系统
6.实验器材(设备,兀器件)
7.实验步骤
1.进入:
[Window]菜单下的[Preferences],选择Java支:
检测已安装的JRE;设置工作台选项;设置新建项目选项;设置Java编辑器。
2.选择[File]->[New]->[Project],从弹出的窗口中
选[Java]->[JavaProject],单击下一步;
3.输入项目名,并确定项目保存的文件目录,单击完成即可,在Java透视图中的“资源管理器”中便可看到创建的项目。
4.选择新建的项目;
5.在工具栏中单击“创建Java类”按钮(带有一个C标记);
6.在弹出的窗口中输入类名称,并设置有关属性(如
选中publicstaticvoidmain(String[]args)),单击完
成,则Java编辑窗口会自动打开。
7.在Window主菜单下选择Preferences;
8.从弹出的菜单中打开Java菜单,单击ClasspathVariables;
9.
的路径
单击New,在弹出的对话框中设置junit.jar
信息,单击确定即可。
八.实验数据记录结果分析
1.用户登录界面User.java
importjava.awt.Container;
importjava.awt.FlowLayout;
importjava.awt.Font;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JPasswordField;
importjavax.swing.JTextField;
publicclassUserextendsJFrame{
privateJLabeluse,password;
privateJTextFieldk1;//用户名输入框
privateJPasswordFieldk2;//密码输入框
privateJButtonb1,b2;
//登录窗口
publicUser(JFramef){
super("系统登录");
Containerc=getContentPane();c.setLayout(newFlowLayout());use=newJLabel("学号:
");use.setFont(newFont("Serif",Font.PLAIN,20));password=newJLabel("密码:
");password.setFont(new
Font("Serif",Font.PLAIN,20));
k1=newJTextField(12);
k2=newJPasswordField(12);
b1=newJButton("登录");
b2=newJButton("退出");
//设置登录方法
//BHandlerb=newBHandler();
//EXITd=newEXIT();
//b1.addActionListener(b);
//b2.addActionListener(d);
//添加控件
c.add(use);
c.add(k1);
c.add(password);
c.add(k2);
c.add(b1);
c.add(b2);
setBounds(600,300,250,150);
setVisible(true);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
;}
//主函数
publicstaticvoidmain(String[]args){
Userf1=newUser(newJFrame());}}
效果图:
2.用户界面:
Menu.java
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassMenuextendsJFrameimplements
ActionListener{
Addstu增加学生界面;
Updatastu修改学生界面;
Delstu删除学生界面;
AddC增加课程界面;
DelC删除课程界面;
UpdateC修改课程界面;
AddSC增加选课界面;
DelSC删除选课界面;
UpdateSC修改选课界面;
Selstu学生查询界面;
JPanelpCenter;
CardLayoutcard=null;
JLabellabel=null;
JMenuBarmb=newJMenuBar();//菜单栏
JMenum1=newJMenu("学生管理");
JMenuItemadd1=newJMenuItem("add1");
JMenuItemupdata1=newJMenuItem("updata1");
JMenuItemdelete1=newJMenuItem("delete1");JMenum2=newJMenu("课程管理");
JMenuItemadd2=newJMenuItem("add2");
JMenuItemupdata2=newJMenuItem("updata2");
JMenuItemdelete2=newJMenuItem("delete2");JMenum3=newJMenu("选课管理");
JMenuItemadd3=newJMenuItem("add3");
JMenuItemupdata3=newJMenuItem("updata3");
JMenuItemdelete3=newJMenuItem("delete3");
JMenum4=newJMenu("查询管理");
JMenuItem学生查询=newJMenuItem("查询信息");
JMenuItemm5=newJMenuItem("系统退出");
Fontt=newFont("sanerif",Font.PLAIN,12);
publicMenu(){this.setTitle("学生选课管理系统");try
{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}
catch(Exceptione){System.err.println("不能设置外观:
"+e);}
//组合菜单addMenu1();addMenu2();addMenu3();addMenu4();addJMenuBar();
setJMenuBar(mb);
label=newJLabel("选课管理系统",JLabel.CENTER);
label.setFont(newFont("宋体",Font.BOLD,36));
label.setHorizontalTextPosition(SwingConstants.CE
NTER);
label.setForeground(Color.red);
//点击事件
add1.addActionListener(this);
updata1.addActionListener(this);
delete1.addActionListener(this);
m5.addActionListener(this);
add2.addActionListener(this);
delete2.addActionListener(this);
updata2.addActionListener(this);
add3.addActionListener(this);
delete3.addActionListener(this);
updata3.addActionListener(this);学生查询.addActionListener(this);
card=newCardLayout();
pCenter=newJPanel();
pCenter.setLayout(card);
增加学生界面=newAddstu();
修改学生界面
=newUpdatastu();
删除学生界面
=newDelstu();
增加课程界面
=newAddC();
删除课程界面
=newDelC();
修改课程界面
=newUpdateC();
增加选课界面
=newAddSC();
删除选课界面
=newDelSC();
修改选课界面
=newUpdateSC();
学生查询界面
=newSelstu();
pCenter.add("欢迎界面",label);pCenter.add("增加学生界面",增加学生界面);pCenter.add("修改学生界面",修改学生界面);pCenter.add("删除学生界面",删除学生界面);pCenter.add("增加课程界面",增加课程界面);pCenter.add("删除课程界面",删除课程界面);pCenter.add("修改课程界面",修改课程界面);pCenter.add("增加选课界面",增加选课界面);pCenter.add("删除选课界面",删除选课界面);pCenter.add("修改选课界面",修改选课界面);pCenter.add("学生查询界面",学生查询界面);
add(pCenter,BorderLayout.CENTER);
validate();
setVisible(true);
setBounds(400,150,400,280);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
addWindowListener(newWindowAdapter(){//关闭程序时的操作
publicvoidwindowClosing(WindowEvent
e){System.exit(0);}});
validate();}
privatevoidaddJMenuBar(){
mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.add(m5);}
privatevoidaddMenu4(){
m4.add(学生查询);m4.setFont(t);}
privatevoidaddMenu3(){
m3.add(add3);m3.add(updata3);m3.add(delete3);m3.s
将菜单加入到菜单栏中
etFont(t);}
privatevoidaddMenu2(){//
m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont(t);}
privatevoidaddMenu1(){
m1.add(add1);m1.add(updata1);m1.add(delete1);m1.setFont(t);}
publicvoidactionPerformed(Actio