管理系统可行性研究报告综述.docx
《管理系统可行性研究报告综述.docx》由会员分享,可在线阅读,更多相关《管理系统可行性研究报告综述.docx(30页珍藏版)》请在冰豆网上搜索。
管理系统可行性研究报告综述
山西大学计算机与信息技术学院
x管理系统
程序设计:
指导教师:
可行性分析报告
1引言
需求规格说明书是需求分析的产物,它是软件系统生存期中软件定义阶段的最后一个步骤。
作为整个软件开发过程的指南,它也是软件开发人员开发出符合用户要求的软件的基础。
1.1编写目的
软件需求说明书的编制目的是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解;使之成为整个开发工作的基础。
本软件需求说明书的读者是系统开发人员或合同约定的人负。
1.2背景
a.软件系统名称:
山西大学计算机科学与信息技术学院xx
b.本项目任务的提出者:
计算机科学与信息技术学院2010级
c.本项目的开发者为:
计算机科学与信息技术学院2010级
d.该软件系统同其他系统或其他机构的基本的相互来往关系:
xxxxxxxxxxxxxxxxxx
2.可行性研究的前提
2.1要求
功能:
这是一个xxxx系统,主要负责xxxxxxxxxxxx(本软件的功能~~~~~)
2.2目标
目前xxxxxxxxxxxxxxxxxxxxxxxx(现在已有的软件状况)
2.3条件、假定和限制
a.编程实战经验不足。
b.进行系统方案选择和设计的时间较短。
3.对现有系统的分析
3.1处理流程和数据流程
a.软件服务方面:
软件通过读取有关的货物存储信息,反馈给使用者
3.2工作负荷
仅仅使用本地资源,所以工作负荷基本没有
3.3费用开支
软件需要少量的维护使用费用
3.4人员
需要数据维护人员对数据的维护
3.5设备
个人主机,信息存储服务器(硬盘)
3.6局限性
系统比较封闭,暂时无法进行网络查询服务
4.所建议的系统
Windows95/98/xp/2003
4.1对所建议系统的说明
a.功能概括:
(1)xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
(2)对用户信息进行增加、删除、更改
b.系统环境以及工具
系统运行环境:
Windowsxp/2003
编程语言:
visualc++6.0
数据库:
无
4.2处理流程和数据流程
处理流程:
客户端→存储系统(或服务器)→客户端
数据流程:
客户请求登陆信息:
→存储系统(或服务器)
4.3改进之处
本软件系统暂时不依赖外部网络,仅能在本机上查询使用,建议后续版本建立局域网(互联网查询功能)
4.4影响
4.4.1.对设备的影响
不明
4.4.2.对软件的影响
不明
4.4.3.对用户单位机构的影响
使用该系统,客户原有体系几乎不需要太大的变化,这是个xxxxx件,对人员技术的要求不高,只要用户会简单的计算机操作即可
4.4.4.对系统运行过程的影响
该系统工作量小,一般情况下不会由于信息量大而造成麻烦。
4.4.5.对开发的影响
不明
4.4.6.对地点和设施的影响
暂时不需要特殊的设备,以后网络版可能需要添置服务器
4.5技术条件方面的可能性
VisualC++语言稳定可靠,适用范围广
5.可选择的其他系统方案
由于该系统的结构比较简单、开发时间仓促,故只使用这一个方案,无其他备用方案。
6.社会因素方面的可能性
使用方面的可行性:
物理行业,商店需要货物进出,商场、超市也需要,所以引用范围广泛,
7.结论
经过了我们整个的可行性研究报告的研究,最终我们得出了一个研究的结论。
结论是:
我们可以立即执行我们的软件设计,来达到我们的预期目标。
软件需求说明书
1引言
需求规格说明书是需求分析的产物,它是软件系统生存期中软件定义阶段的最后一个步骤。
作为整个软件开发过程的指南,它也是软件开发人员开发出符合用户要求的软件的基础。
1.1编写目的
软件需求说明书的编制目的是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解;使之成为整个开发工作的基础。
本软件需求说明书的读者是系统开发人员或合同约定的人员。
1.2背景
(1)本系统的名称是:
(2)开发者是计算机科学与信息技术学院2010软件一班
用户面向物流也以及商业部门
实现该软件的对象:
企业及个人局域网内部使用。
1.3参考资料
引用资料
《c++程序设计》清华大学出版社
《标准c++库大全》电子工业出版社
《visualc++6.0编程基础与范例》电子工业出版社
《visualc++库大全》电子工业出版社
2任务概述
2.1目标
局域网即时通信软件是现代网络通信技术的重要内容,也是万维网通信技术的基础性
工作。
局域网即时通信软件在开发过程中有很多不利于实现的地方,不适应现代的网络通信任务。
局域网即时通信软件是局域网企业内部及个人局域网内部不实现信息化、规范化,使工作效率及重要信息的可靠传递。
2.2用户的特点
本软件的用户是需要对货物
2.3假定和约束
a.可利用的信息和资源比较单一,客户的需求分析主要来自开发者在计算机科学与信息技术学院学习和生活过程中的一些问题;而技术方面,对Mysql等数据库软件和Java、以及网络编程的掌握和应用还有待提高,不足之处靠借阅有关书籍和向老师请教进行补充,组内成员间相互讨论分析决定。
c.经费不足
d.进行系统方案选择比较的时间较短。
e.系统投入使用的时间最晚为本学期末
3需求规定
3.l对功能的规定
3.l.1系统功能
主要分为客户端发送接收消息和服务器数据库管理和处理.通信系统功能部分分为2类:
客户相关,管理员相关.从使用和操作功能上分,有三种用户:
超级管理员用户(管理所有用户)管理员用户(管理普通用户信息)普通用户(接收发送信息,更改密码).为了便于整个系统组织管理,把各个相对独立的数据或功能组织到更大的系统中来,我们把各个相对独立的功能完全独立设计,编译成独立的目标(功能)模块,各功能模块最后被集成到一控制台模块中.相应的将系统分为一个控制台程序和两个子系统.客户子系统主要功能有发送接收信息和更改密码;管理员子系统主要功能是管理用户信息,在这里,某些模块都能用到的功能将不在重复解释,在每个模块中只列出每个子模块区别于其他子模块的功能实现.
3.1.2数据流图
详见局域网即时通信软件详细设计说明书
3.2对性能的规定
灵活性
(l)操作方式上应该能够满足鼠标和键盘任意切换的需要;
(2)能够支持Windows95、Windows98、Windows2000、WindowsMe和WindowsXP的运行环境;
(3)留有与其他系统的接口。
3.3输入输出要求
输入:
本即时通信软件所要求的字符格式与文件格式,否则无法传输文件及收发文字信息。
输出:
本软件提供用户打印聊天记录功能。
3.4故障处理要求
在输入不符合定义格式的数据时,软件应出现提示信息,而不是死机或删除已经输入的信息,然后再弹出输入界面重新开始。
4运行环境规定
4.1设备
运行本软件要求处理器在奔腾III以上、内存在256MB以上的计算机。
4.2支持软件
A.windows2000以上的操作系统或RedHatLinuxAS5:
这两个操作系统是主要的软件,此系统开发过程在除了文档的编写,其它的工作都在这两个操作系统中进行,这两个操作系统在开发过程中承担重要的开发任务
B.Eclipse3.4编程工具:
它作为一个集成开发工具,提供了部分的代码自动生成和可视化的资源编辑功能,在此系统开发过程中主要承担代码的编写任务
C.MySQL5.1应用软件:
Mysql数据库软件是一种使用极其方便的数据库软件,在处理少量数据是很好的,不但操作简单、效率高,而且适用于多种操作系统的适用,最重要的是它是一个免费的数据库软件,不会涉及版权问题,节约了大量的开发资金
4.3接口
本软件通过若干个中间表实现与其他软件的通信。
4.4控制
本软件通过“昵称登入”模块进行用户登录的控制,根据不同用户的昵称调用不同的模块。
其他模块控制情况照此描述。
(l)验证软件需求
需求分析阶段的工作结果是开发软件系统的重要基础,一旦对目标系统提出完整、具体的要求并写出了软件需求说明书之后,就必须严格验证这些需求的正确性。
通常,从以下4个方面进行验证。
①一致性:
所有需求必须是一致的,任何一条需求都不能和其他需求相矛盾。
②完整性:
需求必须是完整的,软件需求说明书应该包含用户对软件产品的每一项要求。
③现实性:
指定的需求应该用现有的硬件技术和软件技术可以实现。
④有效性:
需求必须是有效的,确实能解决用户所面临的问题,可以达到开发软件的目标。
软件概要设计
1引言
软件概要设计主要是一个把软件需求转化为软件表示的过程,这种表示只是描述出软件
总的概貌。
1.1编写目的
概要设计说明书编制的目的是:
说明对程序系统的设计考虑,包括程序系统的基本处理
I流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
本软件概要说明书的读者是系统开发人员或合同约定的人员。
1.2背景
(1)本系统的名称是:
局域网即时通信软件。
(2)本项目的任务提出者是计算机科学与信息技术学院2005级林真真、金鹏、王超、张拓,开发者是计算机科学与信息技术学院2005级林真真、金鹏、王超、张拓,用户是×××企业人事及相关部门,实现该软件的对象:
企业及个人局域网内部使用。
1.3定义
数据字典:
关于数据的信息的集合,也即是对数据流图中包含的元素的定义的集合。
VB:
VisualBasic。
1.4参考资料
《计算机科学与信息技术学院通信系统软件说明书》
《计算机科学与信息技术学院通信系统概要说明书》
《计算机科学与信息技术学院通信系统数据库设计说明书》
《国家开发标准文档》
《软件工程(第四版--张海藩)》
《UML面向对象设计与分析(朱丽平等)》
2总体设计
2.1需求规定
主要分为客户端发送接收消息和服务器数据库管理和处理.通信系统功能部分分为
2类:
客户相关,管理员相关.从使用和操作功能上分,有三种用户:
超级管理员用户(管理所有用户)管理员用户(管理普通用户信息)普通用户(接收发送信息,更改密码).为了便于整个系统组织管理,把各个相对独立的数据或功能组织到更大的系统中来,我们把各个相对独立的功能完全独立设计,编译成独立的目标(功能)模块,各功能模块最后被集成到一控制台模块中.相应的将系统分为一个控制台程序和两个子系统.客户子系统主要功能有发送接收信息和更改密码;管理员子系统主要功能是管理用户信息,在这里,某些模块都能用到的功能将不在重复解释,在每个模块中只列出每个子模块区别于其他子模块的功能实现.
2.2运行环境
硬件环境:
运行本软件要求处理器在奔腾III、内存在256MB以上的计算机。
软件环境:
本系统支持的操作系统包括Windows95、Windows98、Windows2000、
WindowsMe和WindowsXP;本系统的支持数据库为MySQL;本软件的开发工具为Java。
2.3结构
所有模块都必须调用“昵称等入”模块进行身份验证,只有合法用户才能使用系统。
2.4功能需求与程序的关系
用户必须输入昵称后,方能登入客户端,与服务器连接,程序正常运行。
2.5人工处理过程
本软件系统的工作过程中不需要人工处理数据。
3接口设计
3.1用户接口
本系统采用典型的Windows风格作为人机接口,如使用窗口、菜单、对话框等。
3.2外部接口
本系统支持处理器在奔腾III以上、内存在256MB以上的计算机;支持具有Windows
的操作系统,如Windows95、Windows98、Windows2000、WindowsMe和WindowsXP支持MySQL关系数据库
3.3内部接口
“用户验证”模块:
提供系统用户登录时的身份验证功能,用户进行角色切换时必裁用此模块进行身份验证。
4运行设计
4.l运行模块组合
不同的用户登录此系统获得的系统功能是不同的,如超级用户具有系统的全部功能;一些用户只具有浏览数据但不具备更新数据的功能。
4.2运行控制
超级用户对系统的其他用户设置系统功能的访问权限,这样权限受限的用户就只能访问部分系统模块。
4.3运行时间
“用户验证”模块在完成用户登录的身份验证后立即退出运行,释放占用的系统资源。
5系统数据结构设计
5.1逻辑结构设计要点
逻辑设计是系统中数据库设计的的重要步骤之一,其中罗列了文档需求分析中各种功能实现之间的本质关系,通过E-R图描述实例化了的文字抽象概念。
以下针对本系统的加以阐述其逻辑设计
数据表中的基本数据结构:
5.2物理结构设计要点
数据库结构的物理设计是对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程
主要设计表的结构,一般的试题对应于表,实体的属性对应于列,实体之间的关系为表的约束,逻辑设计中的实体大部分可以转化为物理设计中的表,但它们并不是一一对应的。
5.3数据结构与程序的关系
输入登入昵称,若不匹配,返回结果到登录窗口,提示错误,相反登录成功。
6系统出错处理设计
6.l出错信息
当输入信息超出字符的标准时,软件将会弹出警戒窗口提示,不会死机或软件自动关闭。
6.2补救措施
本系统中,当用户没有输入非空字段而进行数据提交时,系统提示××字段数据不得为空,请重新输入再提交。
此时输入界面保留刚刚输入信息的界面,而不是清空全部输入界面上的所有数据;要求用户重新输入。
本系统提供数据备份功能,方便用户对数据的备份。
6.3系统维护设计
详细编写各阶段的文档资料,以利于未来版本升级及移植等二次开发。
详细设计说明书
1引言
1.1编写目的
本文档为"计算机科学与信息技术学院通信系统详细说明书",主要是为了实现系统的功能而进行的系统详细设计说明,详细系统各个软件组成模块的实现流程、功能、接口、编译、测试要点等内容,便于对系统的编码进行指导和约束,本文档供全体组员和测试人员阅读。
1.2参考资料
《计算机科学与信息技术学院通信系统软件说明书》
《计算机科学与信息技术学院通信系统概要说明书》
《计算机科学与信息技术学院通信系统数据库设计说明书》
《国家开发标准文档》
《软件工程(第四版--张海藩)》
《UML面向对象设计与分析(朱丽平等)》
2系统功能实现
从前面的需求分析可知,系统的功能不是很庞杂,主要分为客户端发送接收消息和服务器数据库管理和处理.通信系统功能部分分为2类:
客户相关,管理员相关.从使用和操作功能上分,有三种用户:
超级管理员用户(管理所有用户)管理员用户(管理普通用户信息)普通用户(接收发送信息,更改密码).为了便于整个系统组织管理,把各个相对独立的数据或功能组织到更大的系统中来,我们把各个相对独立的功能完全独立设计,编译成独立的目标(功能)模块,各功能模块最后被集成到一控制台模块中.相应的将系统分为一个控制台程序和两个子系统.客户子系统主要功能有发送接收信息和更改密码;管理员子系统主要功能是管理用户信息,在这里,某些模块都能用到的功能将不在重复解释,在每个模块中只列出每个子模块区别于其他子模块的功能实现.
3.1系统控制台模块
功能:
各个子功能之间的调用;统一的登录界面实现到数据库服务器的登陆设计:
3.1.1登陆数据库
输入用户账号(id),密码(pwd),以账号ManagerPerson_id和密码ManagerPerson_pwd登陆的用户拥有对普通用户管理的权限,以账号Manager_id和密码Manager_pwd登陆的用户拥有对所由用户进行管理的权限.检索系统权限表,,根据权限设置相应的功能模块,
a.无此用户或禁止权限
Enable=false;Able=false;M=false
b.普通用户
Enable=true;Able=false;M=false
b.可管理普通用户权限
Enable=true;Able=true;M=false
c.可管理所有用户权限
Enable=true;Able=true;M=true
3.1.2程序组、程序项的原理组织各执行模块
可执行功能模块的调用执行,通过程序项名称获取可执行目标代码文件名,应用接口类Main开始执行,界面如下:
部分程序代码
JButtonbt=newJButton("登陆");
JLabellabel=newJLabel("用户名");
JPanelpanel=newJPanel();
panel.add(label);
panel.add(field);
frame.add(panel,BorderLayout.NORTH);
JPanelpane=newJPanel();
JTextFieldfieldpwd=newJTextField(10);
JLabellabe=newJLabel("密码");
pane.add(labe);
pane.add(fieldpwd);
frame.add(pane);
frame.add(bt,BorderLayout.SOUTH);
bt.addActionListener(this);
field.addKeyListener(
newKeyListener(){
publicvoidkeyPressed(KeyEvente){
if(e.getKeyCode()==e.VK_ENTER&&e.isControlDown()){
if(field==null)return;
start();
frame.dispose();
}
}
publicvoidkeyReleased(KeyEvente){
}
publicvoidkeyTyped(KeyEvente){
}
}
);
}
privateJTextFieldfield=newJTextField(10);
privateJFrameframe=newJFrame();
3.2用户子系统
总体功能设计:
用户子系统包含用户信息管理
用户之间数据的传递
下面给出设计方案和实现方法
3.2.1用户子系统包含用户信息管理
超级管理员信息管理
输入:
用户ID、初始密码
处理:
将用户信息按相同的
格式导入数据库
输出:
提示信息
数据表:
将Manager表中存放超级管理员数据,表存放在数据库DB中
管理员信息和普通用户信息与超级管理员的信息管理方式基本相同,区别在于管理员信息存放在表personManager表中,而普通用户的信息存放在person表中。
功能:
①普通用户更改自己密码的功能
②(超级)管理员添加删除用户
更改密码的界面如下:
部分程序代码:
JFrameframe=newJFrame("更改密码");
JButtonbt=newJButton("确定");
JLabellabel=newJLabel("旧密码");
JLabellabe=newJLabel("新密码");
JLabellabe1=newJLabel("确认密码");
JPanelpanel=newJPanel();
JPanelpane=newJPanel();
JPanelpane1=newJPanel();
JPaneljpanel=newJPanel(newGridLayout(2,1));
JTextFieldfield=newJTextField(20);
JTextFieldfieldpwd=newJTextField(20);
JTextFieldfieldpwd1=newJTextField(20);
panel.add(label);
panel.add(field);
pane.add(labe);
pane.add(fieldpwd);
pane1.add(labe1);
pane1.add(fieldpwd1);
jpanel.add(pane1);
jpanel.add(bt);
frame.add(pane);
frame.add(panel,BorderLayout.NORTH);
frame.add(jpanel,BorderLayout.SOUTH);
frame.pack();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
部分数据库代码:
//连接数据库代码
Stringurl="jdbc:
mysql:
//127.0.0.1:
3306/test";
Stringname="root";
Stringpwd="1234567890";
Connectioncon=null;
con=DriverManager.getConnection(url,name,pwd);
//更新密码代码
Statementstmt=con.createStatement();
stmt.executeUpdate("updatepersonsetpwd="+temp+"whereid="+id);//其中temp为新密码
删除用户界面为
部分界面代码:
JButtonbt=newJButton("确定");
JLabellabel=newJLabel("请输入你要删除的用户号码:
");
JPanelpanel=newJPanel();
panel.add(label);
panel.add(field);
frame.add(panel);
frame.add(bt,BorderLayout.SOUTH);
......
JOptionPane.showMessageDialog(null,"确定删除该用户","警告",JOptionPane.WARNING_MESSAGE);
部分删除用户数据代码:
stmt.executeUpdate("deletefrompersonwhereid="+id);
3.2.2用户之间数据的传递
数据传递间数据的管理
输入:
发送用户ID、用户所
发送的信息以及信
息类型,目的用户的
ID
处理:
将用户所发信息传递
给服务器
输出:
功能:
①给所有人发送信息以及接收在线用户给所有人发送的信息
②给某用户发送信息以及接受某个用户所给该用户发送的消息
③给某个发送文本文件
给所有人发送信息的界面如下:
部分代码如下:
if(!
ClientFace.getSendText().getText().isEmpty()){
PrintWriterpw=null;
try{
pw=newPrintWriter(ClientFace.getSocket().getOutputStream());
Stringstr=ClientFace.getSendText().getText();