《2021-2022年收藏的精品资料软件工程导论 住房管理系统 实验指导.doc》由会员分享,可在线阅读,更多相关《2021-2022年收藏的精品资料软件工程导论 住房管理系统 实验指导.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 软件工程实验 2011年6月目录(Contents)实验一:软件需求分析3实验二:软件设计与编码11实验三:测试与调试21总结(Conclusions)22实验报告(Reports)实验题目:开发住房管理系统实验目的:软件工程时一门实践性很强的课程,上机实验是其重要的环节。本实验指导书配合软件工程课程的学习而制订的。实验目的是:1能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。2在软件系统开发过程中,能综合利用一门编程语言、数据库概论和软件工程三门课程的知识。3培养良好的软件开发习惯,了解软件企业文化。实验环境客户机/服务器模式(C/S) 操作系统:WindowsXP, 数据
2、库管理系统: SQL Server2000 开发工具:Java实验一:软件需求分析1软件系统需求描述: 1.1基本功能需求 基于学校的宿舍管理采用的还是人工来进行管理的,为了适应学校发展的实际状况,我通过实地调研之后,认为实现学生宿舍管理系统在设计时应尽可能的贴近学生便于学生用户操作,系统在实现上应具有入相功能: (1)系统实现用户身份认证管理。 (2) 系统应提供学生入学的注册、基本信息的录入。 (3) 系统应提供宿舍基本情况的录入。 (4) 系统应提供学生住宿情况的基本登记。 (5) 系统应提供学生退宿情况的处理。 (6) 系统还应具有基本的查询功能。1.2用户界面需求 学生宿舍管理系统应
3、提供简单、层次关系明了、清晰的操作界面,使用户一目了然。尽可能的为用户的录入、查询等功能操作提供方便。快捷按钮的创建也是非常需要的,以方便用户操作。2软件系统数据流图(由加工、数据流、文件、源点和终点四种元素组成): 1)顶层数据流图 宿舍管理系统管理员学生学生注册单 宿舍标准信息 2) 0层数据流图D 学生宿舍安排表公寓基本信息学生会4.0卫生检查管理5.0来访人员管理值班人员3.0寝室设施管理宿管科2.0宿舍管理学生1.0公寓管理D1 公寓信息D2 寝室信息卫生检查信息卫生检查信息来访人员登记信息来访人员登记信息宿舍信息寝室设施信息寝室设施信息报修信息公寓基本信息寝室信息学生住宿信息公寓基
4、本信息寝室信息 3)一层数据流图公寓管理宿管科1.1删除处理D1 公寓基本信息宿管科1.2添加处理1.3修改处理1.4打印处理另做它用或需拆迁的公寓输入已有公寓添加新建公寓要修改的公寓生成生成寝室管理宿管科2.1添加处理D2 宿舍基本信息2.2删除处理2.3查询处理2.4打印处理宿管科学生住宿名单批准可换寝室或毕业添加换寝室学生的信息查询到换寝室或毕业生删除毕业生或离校生信息卫生检查管理已统计信息或已过期信息宿管科D3 卫生基本信息3.1添加处理3.4删除已统计信息3.3统计多次信息3.2打印信息宿管科院系卫生检查情况已统计信息生成卫生检查信息表和统计表生成设备管理管理D4 设施基本信息宿舍科
5、4.1添加设施处理4.2保修登记4.3统计寝室维修情况4.4维修打印学生寝室设施表报修以维修信息宿管科宿舍设施信息统计信息表来访人员管理D5 来访人员基本信息值班人员宿管科5.1添加来访人员信息5.4删除处理5.3打印处理5.2查询处理宿管科来访人员信息删除已过期登记生成根据日期查询来访人员信息3软件系统数据字典:1数据流条目(1 )宿舍信息宿舍号=1数字30标准号=1数字|字符2床位总数=6|20已用床位=0数字床位总数未用床位=0数字床位总数(2) 学生入住信息入住编号=10000数字19999姓名=1字母50学学号=1数字50宿舍号=1数字30入住时间=年+月年=1900数字2020月=
6、1数字12联系电话=1000000数字1999999( 3 )学生信息学生信息=学号+姓名+性别+出生年月+入学时间+专业+工种+家庭住址+联系电话学号=1数字50姓名=2字母6性别=男|女出生年月=年+月入学时间=年+月+日年=1900数字2020月=1数字12日=1数字31专业=1字母20家庭住址=1字母50联系电话=1000000数字1999999 (4) 管理员信息 编号=30000数字39999姓名=1字母50性别=男|女(5)宿舍标准信息标准号=1数字|字母2住宿费=800|6002加工条目添加(信息)=将各种信息添加到各文件中 进行保存查询(信息)=根据要求在各文件中查询修改(信
7、息)=根据要求修改信息删除(信息)=根据要求删除信息3文件条目实验二:软件设计与编码1软件系统模块结构图: 2软件系统其中的3个模块的详细设计(画程序流程图):入住模块管理管理员登录管理员主界面学生住宿信息管理入住弹出入住对话框录入入住基本信息入住确认学生相关信息写入数据库 退宿模块管理管理员主界面学生住宿信息管理退宿退宿确认删除基本信息显示删除成功显示删除失败关闭关闭连接是否成功TF修改模块管理主界面修改弹出被选择的相关信息修改完毕显示修改成功结束关闭窗体显示修改失败成功与否3软件系统其中的2个模块的编码:package .Dia;import java.awt.BorderLayout;i
8、mport java.awt.Frame;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import javax.swing.*;import .Model.
9、RoomMod;import .Model.RoomdMod;public class RoomdDia extends JDialog implements ActionListener JButton jb1,jb2;JTextField jtf1,jtf2,jtf3,jtf4,jtf5,jtf6;JLabel jl1,jl2,jl3,jl4,jl5,jl6;JPanel jp1,jp2,jp3;Connection ct=null;ResultSet rs=null;PreparedStatement ps=null;public RoomdDia(Frame owner,String
10、title,boolean model )super(owner,title,model);jb1=new JButton(入宿);jb1.addActionListener(this);jb2=new JButton(取消);jb2.addActionListener(this);jtf1=new JTextField(10);jtf2=new JTextField(10);jtf3=new JTextField(10);jtf4=new JTextField(10);jtf5=new JTextField(10);jtf6=new JTextField(10);jl1=new JLabel
11、(入住编号:);jl2=new JLabel(姓 名:);jl3=new JLabel(学 号:);jl4=new JLabel(宿 舍 号:);jl5=new JLabel(入住时间:);jl6=new JLabel(联系电话:);jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp1.setLayout(new GridLayout(6,1);jp2.setLayout(new GridLayout(6,1);jp1.add(jl1);jp1.add(jl2);jp1.add(jl3);jp1.add(jl4);jp1.add(jl5)
12、;jp1.add(jl6);jp2.add(jtf1);jp2.add(jtf2);jp2.add(jtf3);jp2.add(jtf4);jp2.add(jtf5);jp2.add(jtf6);jp3.add(jb1);jp3.add(jb2);this.add(jp1,BorderLayout.WEST);this.add(jp2,BorderLayout.CENTER);this.add(jp3,BorderLayout.NORTH);this.setSize(400,300);this.setLocation(800,200);/this.setDefaultCloseOperatio
13、n(JDialog.EXIT_ON_CLOSE);this.setVisible(true);制表界面截图管理员登录表宿舍标准表宿舍表学生表学生入住表测试界面截图查看宿舍信息查看学生基本信息登录验证管理员密码修改管理员主界面修改入住信息学生入住学生退宿实验三:测试与调试1设计测试用例15个(白盒法10个,黑盒法5个): 白盒测试假设输入:(1) 学号=“”, 基本信息=“”,预期结果:入宿失败!(2) 学号=“081845155”,基本信息=“10011,刘备,1,2008,15555545”, 数据库中无此记录,预期结果 :入住失败!(3) 学号=“081842131”, 基本信息=“100
14、11,关羽,1,2008-9,5155551”,数据库中有该条记录 预期结果:入住成功!黑盒测试等价类的划分 有效 A学号=“081842131”, B基本信息=“10011,关羽,1,2008-9,5155551” C 入住成功 c入住失败 无效 a 学号=” ”或非法学号 b基本信息=” ”输入 A,B 输出C 输入A ,b 输出c输入a,b 输出 c输入a,B 输出 c总结(Conclusions)一、实验内容总结学生住宿管理系统完成学生入住,学生退宿,修改入住信息,删除入住信息等一系列管理功能,开发本系统的总体任务是实现学生公寓管理的系统化和自动化。本着实用性和介绍性的原则,整个系统由
15、七大模块组成,每个大的模块又包括三至四个小的模块。一、系统管理部分:包括对学生信息的增删该查功能。二、 学生信息管理部分:包括对学生在校信息的详细查询。但不能修改学生的基本信息。三、 宿舍信息管理部分:包括对宿舍信息的增删改查等的基本操作。四、 学生住宿信息管理部分:包括学生的入宿,退宿,修改住宿信息的基本操作。五、评比及奖励管理:提供对学生宿舍的各项奖励查询和基本的评比活动的查询。六、综合信息查询部分,提供对所有在校学生和住宿情况的整体查询。是系统的核心内容。七、帮助部分:提供基本的操作帮助。二、心得体会(in English) 历时两个多星期的软件工程实验设计现在已经接近尾声了,回想起这段
16、日子,感觉收获颇多。我们这次设计的任务是建立一个学生宿舍管理系统,它用到的开发工具是Java 语言,SQL Server数据库。 在设计的开始阶段为了尽快熟悉Java语言,我详细翻阅有关该方面的资料,对书中的基本理论知识逐章节地分析,同时还上机操作来加深理解。特别是对书中的一些典型实例,认真学习它的编程思想,吸引它的编程技巧,弄懂程序中每句话的含义。在对所要应用的技术有了一个基本认识后,就开始构思自己的系统设计。根据任务书的要求将整个系统分为几个模块,每个模块具体又要实现哪些功能,然后就逐个模块去一一详细设计,设计的过程中不时地翻阅资料,用一些巧妙的技术来优化程序。程序代码完成之后,要进行运行调试,刚开始由于没有调试经验和方法效率很低,最后在我们的相互配合下顺利的完成了我们的软件工程实验,我们也从中学到了不少东西。 总之,通过两个星期的设计,让我们感受了软件开发的整个过程。不仅一次的目前所学知识的一个综合运用,也是一次增长知识和经验的好机会,同时也使我们学会了许多处理、解决问题的方法,大大提高了自己的动手能力,为即将走上工作岗位打下了良好的基础。23