软件工程Word文档格式.docx
《软件工程Word文档格式.docx》由会员分享,可在线阅读,更多相关《软件工程Word文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
基于MicrosoftVisualStudio2008及SQLServer2000数据库平台开发
开发方案B:
基于Eclipse及MySQL5.0平台开发
方案A以小型数据库管理系统为后台数据库,该前台与数据分离,能实现多层应用系统,系统对硬件设备的要求剧中,特别适合在网络环境下使用,操作方便。
而且此方案中用户界面可以直接通过拖动,无需通过代码实现,从而提高了效率。
方案B以数据库管理系统为后台数据库,同样能实现多层应用系统,虽然用户界面需通过代码来实现,但快捷键的提示大大减轻我们的工作负担。
二种方案都可实现系统目标,但实现的方式、成本、工期不同。
通过比较从技术可行性,,经济可行性,操作可行性,社会因素可行性分析方案A更高效,简捷,选择方案A。
二:
软件需求分析
1.软件系统需求基本描述:
1.背景描述
实验室设备管理系统主要用于实验室设备的管理,通过利用计算机提高管理的效率,节约成本,合理充分的利用资源。
本管理系统通过计算机对实验设备进行自动管理,设备管理员可以直接在计算机实现实验设备的信息管理,并在一定程度上实现自动化,改善了工作运行效率和效果。
2.功能分析
(1)、对于已彻底损坏的作报废处理,同时详细记录有关信息。
(2)、对于有严重问题(故障)的要即使修理,并记录修理日期、设备名、修理厂家、修理费、责任人等。
(3)、对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。
新设备购入后要立即进行设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容。
(4)、设备管理员可以查询信息,对设备进行管理。
(5)、随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段查询。
2.软件系统数据流图(由加工、数据流、文件、源点和终点四种元素组成):
(1)第0层数据流图
(2)第1层数据流图
(3)第2层数据流图
3.软件系统数据字典:
1、数据流条目
(1)登陆信息
输入:
设备管理员
输出:
身份验证
描述:
登陆信息=用户名+密码+登陆权限
(2)查询信息
合法人员对设备的查询操作
设备信息表
查询信息=设备名/型号/类别/购置日期
(3)维修信息
所需维修设备的信息
确定维修设备的记录
维修信息=设备名+修理日期+修理厂家+修理费+负责人
(4)购买设备
购买设备的信息
确定购买的新设备的记录
新设备=类别+设备名+型号+规格+单价+数量等
(5)报废设备
所需报废的设备的信息
报废的设备记录
报废设备=类别+设备名+型号等
(6)审核信息
审核
上级领导
审核信息=报废设备信息/新设备购买记录
2、加工条目
身份验证,统计查询,维修,购买,报废,生产报表,审核
3、文件条目
(1)登陆表
数据结构:
用户名+密码+登陆权限
(2)设备信息表
统计查询
类别+设备名+型号+规格等
(3)维修记录表
统计查询,维修
设备名+修理日期+修理厂家+修理费+责任人等
(4)新设备表
统计查询,购买
类别+设备名+型号+规格+单价+数量+生产厂家+购买人等
(5)报废记录表
报废,统计查询,生产报表
统计查询,生产报表
类别+设备名+型号等
(6)申请表
统计查询,生产报表,购买
设备名+型号+规格+数量+负责人
4.E-R图
三:
软件设计
1.软件系统模块结构图
2.软件系统数据设计(数据库的表)
登陆表
列名
数据类型
长度
允许空
用户名
varchar
50
notnull
密码
登陆权限
char
10
设备型号
设备名
20
规格
单价
float
8
null
购买日期
datetime
生产厂家
购买人
数量
Int
4
维修记录表
允许空列名
维修日期
维修厂家
30
维修费用
责任人
报废记录表
报废日期
申请表
日期
Datatime
int
申请人
Varchar
Null
新设备表
3.软件系统其中的3个模块的详细设计:
1.上级领导操作功能
2.设备管理员操作
3.系统功能
四:
软件编码
1.软件系统的编码:
namespaceWindowsApplication1
{
publicpartialclass登录页面:
Form
{
public登录页面()
InitializeComponent();
}
privatevoidbutton2_Click(objectsender,EventArgse)
textBox2.Text="
"
;
textBox1.Text="
privatevoidbutton1_Click(objectsender,EventArgse)
if(textBox2.Text!
=null&
&
textBox1.Text!
textBox2.Text.Equals("
admin"
))
SqlConnectionsqlcn=newSqlConnection();
sqlcn.ConnectionString=connectionString;
SqlCommandobjcmd=newSqlCommand("
login"
sqlcn);
objcmd.CommandType=CommandType.StoredProcedure;
SqlParameterparname=newSqlParameter("
@name"
SqlDbType.VarChar,50);
parname.Value=textBox2.Text;
objcmd.Parameters.Add(parname);
SqlParameterparmima=newSqlParameter("
@pass"
parmima.Value=textBox1.Text;
objcmd.Parameters.Add(parmima);
objcmd.Connection.Open();
SqlDataReaderdr=objcmd.ExecuteReader();
if(dr.Read())
Hide();
f.Show();
else
MessageBox.Show("
用户名或密码输入错误!
);
dr.Close();
objcmd.Connection.Close();
elseif(textBox2.Text!
=null)
//Console.WriteLine(name1);
主菜单图f=new主菜单图();
用户名或密码不能为空!
}
publicpartialclass主菜单图:
public主菜单图()
this.Hide();
设备查询a=new设备查询();
a.Show();
设备申请a=new设备申请();
privatevoidbutton6_Click(objectsender,EventArgse)
维修记录a=new维修记录();
publicpartialclass维修查询:
public维修查询()
SqlParameterparkcmc=newSqlParameter("
@kcmc"
parkcmc.Value=t1.Text;
objcmd.Parameters.Add(parkcmc);
SqlParameterparcbs=newSqlParameter("
@cbs"
parcbs.Value=t2.Text;
objcmd.Parameters.Add(parcbs);
SqlParameterparjcdm=newSqlParameter("
@jcdm"
parjcdm.Value=t3.Text;
objcmd1.Parameters.Add(parzy);
SqlDataReadersd=objcmd1.ExecuteReader();
sd.Close();
objcmd1.Connection.Close();
录入成功!
t1.Text="
t2.Text="
t3.Text="
this.Hide();
主菜单图a=new主菜单图();
2.主要功能运行界面
五:
实验小结
1、实验内容总结
实验开发的是一个实验室设备管理系统,系统开发用到了数据库和MicrosoftVisualStudio2008开发工具。
要求实现对设备的查询。
维修,报废,申请购买的功能。
同时用户可以进行一定的操作。
上级领导对申请可以进行批准等操作。
经过几周的开发,实现了几大功能,同时也具有许多的不足,在数据库的应用上有待提高。
系统分成三个模块:
系统功能模块,设备管理员操作模块和上级领导模块,每个模块再细分成具体的操作模块。
设计系统E-R图建立关系数据表。
软件编码阶段设计系统功能界面,并添加相应的代码,与数据库相连接,实现系统功能。
软件测试与调试时,将要测试的数据输入到相应的功能界面,测试本系统能否正常实现相应的功能,并及时进行相应的改进。
2、心得体会
通过实验对软件工程真门课有了更深入的了解,对软件开发的流程更加的熟悉。
本系统是一个管理实验室设备的系统,比较简单,对开发水平要求不高。
通过对本实验室设备管理系统的设计,使我认识到软件开发的过程实际上就是描述现实世界的过程。
而由现实世界向软件模型的转化过程是其中最核心的过程。
在课程设计的过程中我们遇到了许多问题,如在需求分析阶段不能完全正确的把握住系统的功能描述,设计数据流图时出现了很大的问题,在与同学讨论过程中,解决了这些问题。
本次实验是一个很好的实践过程,不仅熟悉了软件开发的流程,也对自己的开发水平有一个了解,找到了自己的不足,为以后的提高打下了基础。
让我从整体的程序开发到具体软件的设计都有了一个全面的掌握,为我即将从事的工作打下了一个坚实的基础!
该系统还有许多不尽人意的地方,用户界面设计不够美观,在真正实现数据库时候为了读取与写入方便将类型全部设为varchar型等等,由于时间的仓促和能力限制这些都有待进一步改善。
但本次实验提高了我实际操作能力,从以前的理论上升到实践,从感性认识上升到理性认识,真正做到学有所用。
实验让我知道只有通过自己的实践才能找到自己的不足,才能更好的提高自己,开发不是一朝一夕的事情,是一个积累的过程,只有不断的努力实践,才能真正的提高自己。