软件工程综合实践报告Word文件下载.docx
《软件工程综合实践报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件工程综合实践报告Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
b.为了使电力部门对企业用电的管理更方便;
c.为了减轻电力部门人员的工作负担。
2.1.2应用目标
通过本系统软件,能帮助相关电力管理人员利用计算机,快速方便地对企业用电的管理。
2.1.3作用及范围
本软件适用于小范围电力部门管理,以及学生以及相关爱好者学习使用。
2.2用户的特点
本软件的使用对象是相关电力部门及相关编程爱好者,有一定的行业特点。
2.3假定与约束
技术约束:
本项目的设计是JAVA程序设计语言的条件下进行的,技术设计采用软硬一体化的设计方法。
环境约束:
运行该软件所适用的具体设备必须是奔腾4、内存256兆以上的计算机;
3.需求分析
3.1对功能的规定
1、理解需求
理解需求是在问题及其最终解决方案之间架设桥梁的第一步。
开发者只有和用户充分理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,设计上都必须大量的返工。
下面是对系统的终端用户和客户调研后得到的需求规格说明书。
(1)由于使用者为相关电力部门及学习使用,系统开始时,便可以进入到欢迎界面。
(2)进入到系统之后,友好的界面可以很清晰的分为企业信息管理跟企业用电信息管理两大选择。
(3)点击企业信息管理,下拉菜单中选项可以实现对企业信息的查询、添加、修改、删除操作。
(4)点击企业用电管理信息,下拉菜单中选项可以实现对企业用电管理信息的查询、添加、修改和删除操作。
(5)系统客户端运行在Windows平台下,服务器可以运行在Windows或Unix平台下。
系统还应该有一个较好的图形用户界面。
(6)系统应该有很好的可扩展性。
2、需求分析
需求分析是从客户的需求中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,确定系统的功能需求。
这个步骤是对理解需求的升华,直接关系到该系统的质量。
分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通机制,因此,系统的需求分析也应该是开发人员和用户或客户一起完成的。
<
1>
系统功能模块划分
根据开发者和客户的需求分析后,可以把系统功能分为两个大的个功能模块:
(1)用电企业基本信息模块
包括:
用电企业编号、地址、电话、联系人的查询、添加、修改、删除等操作模块。
(2)电费信息
单价、电量的查询、添加、修改、删除等操作模块。
3.2对性能的规定
3.2.1精度
在精度需求上,根据使用需要,在各项数据的输入,输出及传输过程中,可以满足各种精度的需求。
如:
根据关键字精度的不同,查找可分为精确查找和泛型查找,精确查找可精确匹配系统使用者所知道的企业名称及编号快速便捷的查询所要知道的信息。
3.2.2时间特性要求
在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。
3.2.3灵活性
当用户需求,如操作方式,运行环境,结果精度,数据结构于其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
4.软件的基本结构
查询企业信息:
输入关键字为企业编号或者联系人姓名,按照精确匹配为主,再索引关联字。
输出时列出索引到的所有企业信息,具体信息包括企业地址,电话等,方便电力管理者查找。
查看企业用电信息:
进入企业用电信息管理系统,输入关键字为企业编号或者联系人姓名,按照精确匹配为主,再索引关联字。
输出时列出索引到的所有企业信息,具体信息包括电费单价、电量等。
4.1数据管理能力要求
定时整理数据:
系统管理员根据企业用电信息定时整理系统数据库,对用电企业以及企业用电信息的增减等均可有计算机执行,并将运行结果归档。
查询库存量:
能随时查询库中用电企业以及企业用电的库存量,以便准确、及时、方便地为企业提供信息,但不能修改数据,无信息处理权。
5.详细设计
本系统包含企业信息查询、添加、修改删除跟企业用电信息查询、添加、修改、删除这几大模块。
1、欢迎界面
系统打开时,友好的欢迎界面包括了两大选项,即企业信息管理跟企业用电信息管理两大模块。
2、企业信息查询功能
在该模块中采用对企业进行编号方式或者企业用电量来管理。
管理者点击进入系统页面之后,便可以输入企业编号,实现对企业信息的查询。
3、企业信息添加功能
这部分主要完成的是电力管理者输入用电企业编号、联系人姓名、地址、联系电话,点击添加按钮实现添加功能。
4、企业信息修改功能
这部分通过输入要更新的企业编号,输入新的联系人姓名、地址、新的电话,然后点击提交修改按钮,实现对企业信息的修改。
5、企业信息删除功能
这部分只要输入企业编号,点击提交删除按钮便可以实现删除功能。
6、企业用电信息查询的功能
在该模块中采用对企业用电进行编号来管理。
管理者点击进入系统页面之后,便可以输入企业编号,实现对企业用电信息的查询。
7、企业用电信息添加功能
这部分主要完成的是电力管理者输入用电企业编号、输入电费单价,用电量,点击添加按钮实现添加功能。
8、企业用电信息修改功能
这部分输入要更新的企业编号,新的电费单价,新的用电量,点击提交修改按钮,实现修改功能。
9、企业用电信息删除功能
这部分只要输入企业编号,点击提交删除按钮就可以实现删除功能。
流程图如下:
图
(1)总体设计
图
(2)修改操作
数据库结构设计:
表一:
member表
企业信息表
字段名
数据类型、长度
小数点位数
是否为空
字段含义
qiyenumber
Char(10)
No
企业编号
address
Char(20)
企业地址
lianxiren
联系人
phone
Interger
电话号码
表二:
dianfei表
企业用电信息表
danjia
Float(10)
单价
dianliang
Char(24)
电量
6.部分编码
6.1企业信息查询代码
packagemyservlet.control;
importjava.sql.*;
publicclassQueryQiye
{StringdatabaseName="
ssh"
;
//数据库名
StringtableName="
member"
//表名
Stringuser="
sa"
;
//用户
Stringsecret="
ycit"
//密码
StringBufferqueryResult;
//查询结果
publicQueryQiye()
{queryResult=newStringBuffer();
try{Class.forName("
com.mysql.jdbc.Driver"
);
}
catch(Exceptione){}
publicvoidsetDatabaseName(Strings)
{databaseName=s.trim();
queryResult=newStringBuffer();
publicStringgetDatabaseName()
{returndatabaseName;
publicvoidsetTableName(Strings)
{tableName=s.trim();
publicStringgetTableName()
{returntableName;
publicvoidsetSecret(Strings)
{secret=s.trim();
publicStringgetSecret()
{returnsecret;
publicvoidsetUser(Strings)
{user=s.trim();
publicStringgetUser()
{returnuser;
publicStringBuffergetQueryResult()
{Connectioncon;
Statementsql;
ResultSetrs;
try{queryResult.append("
tableborder=1>
"
Stringuri="
jdbc:
mysql:
//127.0.0.1:
3306/ssh?
user=root&
password=&
useUnicode=true"
Stringid=user;
Stringpassword=secret;
con=DriverManager.getConnection(uri);
DatabaseMetaDatametadata=con.getMetaData();
ResultSetrs1=metadata.getColumns(null,null,tableName,null);
int字段个数=0;
queryResult.append("
tr>
while(rs1.next())
{字段个数++;
StringclumnName=rs1.getString(4);
td>
+clumnName+"
/td>
/tr>
sql=con.createStatement();
rs=sql.executeQuery("
SELECT*FROM"
+tableName);
while(rs.next())
{queryResult.append("
for(intk=1;
k<
=字段个数;
k++)
+rs.getString(k)+"
/table>
con.close();
catch(SQLExceptione)
请输入正确的用户名和密码"
returnqueryResult;
6.2企业用电信息查询代码:
publicclassQueryDianfei
dianfei"
publicQueryDianfei()
String
uri="
6.3删除企业用电信息代码:
publicclassDelDianfei
{Stringnumber="
//企业编号
danjia="
//联系人姓名
dianliang="
//地址
StringdelMessage="
publicDelDianfei()
{try{Class.forName("
catch(Exceptione){}
publicvoidsetNumber(Strings)
{number=s.trim();
publicvoidsetDanjia(Strings)
{danjia=s.trim();
try{bytebb[]=danjia.getBytes("
ISO-8859-1"
danjia=newString(bb,"
gb2312"
catch(Exceptione){}
publicvoidsetDianliang(Strings)
{dianliang=s.trim();
publicStringgetDelMessage()
{StringdelCondition="
deletefromdianfeiwhereqiyenumber="
+number+"
Stringstr="
Connectioncon;
try
{
if(number.length()>
0)
{intm=sql.executeUpdate(delCondition);
if(m!
=0)
{str="
对表中删除"
+m+"
条记录成功"
else
删除记录失败"
else
{str="
必须要有企业编号"
}
con.close();
catch(SQLExceptione)
+e;
returnstr;
6.4删除用电企业信息代码:
publicclassDelQiye
name="
address="
//地址
phone="
//电话
publicDelQiye()
publicvoidsetName(Strings)
{name=s.trim();
try{bytebb[]=name.getBytes("
name=newString(bb,"
publicvoidsetAddress(Strings)
{address=s.trim();
publicvoidsetPhone(Stringn)
{phone=n;
deletefrommemberwhereqiyenumber="
try{Stringuri="
输入的联系人不允许重复"
测试:
本系统用的是用了黑盒与白盒测试的方法。
7.软件核心技术,存在问题等
a.内部故障处理
在开发阶段可以随即修改数据库里的相应内容。
b.外部故障处理
对编辑的程序进行重装载时,第一次装载认为错,修改。
第二次运行,在需求调用时出错,有错误提示,重试。
c.本软件可能产生的错误为数据库的错误信息,应由数据库管理员对数据库进行维护。
为了确保系统恢复的能力,数据库管理员要定期对数据库进行备份。
数据的安全性、完整性要求:
图书馆各项数据信息必须保证安全性和完整性。
网络系统设有通信、程序、网络三级权限和口令管理,确保系统安全。
迎界面欢
查询企业信息
添加企业信息
修改企业信息
删除企业信息
查询企业用电信息
添加企业用电信息
删除企业用电信息
修改企业用电信息
8.实验心得
通过本次课程设计,对软件工程的结构与各种模型的认识更加了解了,开发一套系统,最重要的是细心,并不是一定要做到面面俱到,但也要充分考虑到客户的需求和现实意义,不管什么系统,只用运用到实际应用中,才具有先现实意义。
所以在准