合同管理系统分析与设计全解.docx
《合同管理系统分析与设计全解.docx》由会员分享,可在线阅读,更多相关《合同管理系统分析与设计全解.docx(31页珍藏版)》请在冰豆网上搜索。
![合同管理系统分析与设计全解.docx](https://file1.bdocx.com/fileroot1/2023-2/7/63117b34-77ca-4cfc-b075-cde08aa86a46/63117b34-77ca-4cfc-b075-cde08aa86a461.gif)
合同管理系统分析与设计全解
前言
“财富的一半来自合同”。
随着我国加入WTO,社会主义法治建设的逐步推进,企业依法经营决策问题必将更加突出地显现出来。
合同是企业从事经济活动取得经济效益的桥梁和纽带,同时也是产生纠纷的根源。
经营活动是风险与利益共存的活动,利益越大,风险也越大。
企业在日常的经济交往中极易陷入不法分子设置的合同陷阱中,企业就可能因此蒙受巨大的经济损失。
因而企业合同管理是企业管理的重要内容,搞好合同管理,是维护企业合法权益的最基本的要求。
随着科学技术的不断提高,计算机科学日渐成熟,信息管理技术的强大的功能已为人们深刻认识;进入人类社会的各个领域并发挥着越来越重要的作用。
合同管理信息系统的开发是为了大中企业省时省力地、轻松管理众多复杂的合同而设计的软件。
这就需要有一个美观大方,操作尽量简单明了的系统。
该系统就本着这一思想,使计算机的界面和操作方法适合人们的思维习惯,使用户能更快地熟悉和掌握。
对于不懂计算机知识的用户也可以很快熟练掌握系统的操作,只有这样的系统才能更广泛地应用,才能有更好的发展前景。
第1章概述
第1.1节课题背景
合同是企业从事经济活动取得经济效益的桥梁和纽带,同时也是产生纠纷的根源。
经营活动是风险与利益共存的活动,利益越大,风险也越大。
企业在日常的经济交往中极易陷入不法分子设置的合同陷阱中,企业就可能因此蒙受巨大的经济损失。
因而企业合同管理是企业管理的重要内容,搞好合同管理,是维护企业合法权益的最基本的要求。
企业往往会签订一系列的合同,并且会考虑如何去管理合同的进展,合同账款的收取和支付。
完善的合同管理是企业健康运作的一个重要标志。
然而,完善的合同管理需要占用企业许多的资源,如何简化合同的管理而不失其完整性、科学性对许多企业来说是棘手的问题。
采用手工管理的方式当然可以,但费时费力,而且容易出错。
也有许多公司的合同现在已经是采用电子文档如word格式保存了,但也仅仅是保存在计算机的某一个位置而已,查找起来非常不方便,更缺乏统计功能。
安全性也不好,误操作有可能删除合同文档。
第1.2节课题的目的和意义
在信息化程度越来越高的当今社会,合同管理作为企业管理中的重要一环,随着公司签订合同数量的增多,对合同数据的准确性、数据传输的安全性和业务处理的规范性有很高的要求。
也正因如此,合同管理工作中繁琐的业务流程限制了管理人员工作效率的提高;另外,为了有效地利用庞大的合同历史数据、为合同管理人员提供必要的决策支持,我们需要一种能对数据进行各种操作的工具——数据库管理系统。
目前,合同管理已逐步由传统的手工作业转化为计算机管理。
初期的合同管理系统为文档管理系统,实现合同生命周期的过程记载,而后发展为数字化合同模型,对合同实行元素化管理,形成了规范的数据结构,可方便进行数据统计、比较和查询分析。
技术架构也由单机模式逐步向局域网环境下的客户端/服务器,浏览器/服务器结构过渡。
因此,本论文的目标就是利用计算机软件实现合同的录入,查询,修改,管理等功能。
使工作人员对合同的管理更加容易,提高工作效率,降低管理成本。
本系统是通过ASP+SQLServer2000设计的B/S结构的软件。
可以大大节省系统资源,还可以实现移动办公。
第1.3节可行性分行
可行性分析的任务是确定项目开发是否必要和可行。
这项工作应建立在对系统初步调查的基础上,调查内容包括:
系统的外部约束环境、规模、历史、主要业务流程、系统的资源情况,系统中信息处理的概况和各类人员对信息系统的态度。
本系统可行性分析包括以下三方面内容:
1.经济可行性。
主要是对新系统的成本效益进行估算,一方面是系统支出的费用,其中包括设备购置费用、软件设计和开发费用、管理和维护费用、人员工资和培训费等。
另一方面是取得的收益,估算是否会高于项目预期的全部经费,并分析系统开发是否会对其它产品或利润带来一定影响。
本系统的直接效益是加强合同管理后,对合同管理员来讲将大大减少其日常对合同信息的维护工作,提高工作效率;对管理者或其它相关人员来讲,可以方便、快捷的查询到所需合同信息,及时跟踪合同执行情况,缩短合同执行周期,急时收回货款,加速资金周转率。
经调查分析,开发该系统的预期收益将大于预期成本,在经济上是可行的。
2.技术可行性。
随着互联网在世界范围内的普及和信息技术的发展,基于Web的信息系统对传统管理信息系统的体系结构产生了巨大的影响。
与C/S结构相比,基于Web的管理信息系统具有如下优势:
1)开放性:
基于Web的管理信息系统可以做到开放式的、跨平台的应用;
2)易于维护和升级:
采用分布式多层应用技术,大大节省了用于系统维护和升级的时间和费用,也改善了C/S结构的延展性问题;
3)标准化:
基于Internet上的公开协议和技术标准(如TCP/IP,HTTP,XML,SOAP等)可实现应用系统在Internet/Intranet上的集成,具有良好的扩展性。
对于操作人员来说,客户端可使用标准化的浏览器软件,用户界面的操作简单易学;
4)安全性:
与传统的C/S结构相比,基于Web的管理信息系统在客户端与数据库服务器之间增加了Web层服务器和其他的中间层服务器,使客户端和数据库服务器不直接相连,可有效地防止用户的非法入侵。
此外,中间层为系统提供了基本的安全保护,并支持软件开发人员使用SSL(SecuritySocketLayer)对传输的资料进行加密解密。
3.管理可行性。
主要是指管理人员对开发信息系统的态度和管理方面的基础工作。
该公司主要领导非常支持新系统的开发工作并在多方面给予了大力配合,而且该公司已经历了几年的发展逐步走向成熟,管理制度和方法较科学合理,规章制度比较齐全以及原始数据准确齐全,有利于系统开发。
第2章系统分析
第2.1节系统需求分析
软件系统的设计与开发中,最重要是从用户的专业领域中整理出需要计算机处理的需求。
通过对某公司进行调研,发现其公司规模大,地域分散较广。
下属单位可能根据自身实际情况形成内部独立的合同管理工作模式,这对整个公司合同管理的标准化造成了困难;而且基础数据存留在基层部门,将形成信息孤岛现象,造成信息不准确,利用率低等问题,合同数据传输的滞后也会对企业决策层的决策产生影响。
除此之外,软件应用存在跨地域实施的特点,使得软件开发人员必须要考虑应采用何种技术架构来解决软件系统与不同软件平台之间的兼容性问题,以及日后的升级、维护等问题。
因此可以总结该公司跨地域合同管理的需求如下:
1)实现信息处理的标准化和数据化,在公司内部建立标准的合同管理流程和内容规范;
2)建立统一的数据库系统,实现全公司数据集中管理,避免信息孤岛的出现;
3)在合同生命周期内,实现数据信息跟踪管理,包括基本信息和履行信息的管理;
4)实现合同的归档管理,以及合同数据查询、统计等处理功能;
5)确保合同管理工作的规范性和安全性。
第2.2节业务流程分析
调查管理业务流程应顺着原系统信息流动的过程调查,本例中业务流程为:
首先销售员将拟好的合同提交销售部门经理进行审批,部门经理收到合同后对其内容,包括销售价格、付款条件、账期等进行审核。
若审核未通过,则将合同返回销售员进行修改;若审核通过,则将合同转交给合同管理人员。
随后合同管理员将合同信息录入系统。
业务流程图见图2-1:
图2-1业务流程图
实体
表单
业务流
图2-2业务流程图图例说明
第2.3节数据流程分析
根据对现实系统的详细调查与分析,开发合同管理系统总体设想流程是:
对销售员提供的信息进行人工审核,将通过审核的数据汇总录入计算机,进行数据录入处理程序,再将数据存储到相关信息文件中。
系统的数据流程见图2-3:
图2-3数据流程图
第3章系统设计
第3.1节系统总体结构设计
3.1.1功能模块设计
本合同管理系统主要实现如下功能:
员工信息管理、客户信息管理、合同信息管理,合同执行情况的全面跟踪监管控制,并具有严格的系统用户分级权限控制,保证了公司合同数据的严格保密性。
系统模块划分如图3-1所示,将系统分别5个模块,每个模块负责的功能相对专一。
图 3-1模块划分图
每个功能模块的功能描述如下:
(1)员工信息管理
管理所有参与合同管理动作的员工信息。
包括员工编号、姓名、部门、电话等。
(2)客户信息管理
客户管理模块主要实现对客户的增、删、改、查等操作。
客户分为两种类型,重要客户和一般客户。
管理员可以添加客户、按照客户类型或者客户名称进行客户查询,通过查询条件的结果链接到客户的修改或者删除页面,对客户进行修改删除等操作。
(3)合同管理
合同管理模块主要实现对合同的增、删、改、查等操作。
管理员可以添加合同,对合同进行查询,为了使查询更加简便。
系统提供两种查询方式,一种是按照编号进行查询,另一种是按审核标志进行询,可以通过查询的结果链接到合同的修改或删除页面,对合同进行修改或者删除。
(4)项目信息管理
管理所有项目信息。
项目信息包括项目编号、项目名称、联系人等。
(5)使用权限管理
本系统从合同信息的安全角度出发,将系统设计成具有严格的系统用户及分级权限控制。
系统的员工分为两类用户:
一般用户和合同管理员。
使用不同用户名登录所具有的权限不同,保证了企业合同数据的严格保密性。
3.2.2系统流程分析
合同管理系统提供对公司内部合同的管理功能。
使用本系统,可以完成合同的录入、修改以及维护等操作,同时对合同管理员进行权限控制,以满足安全性方面的要求。
本系统分为合同管理员和经理(即系统管理员)2种用户。
合同管理员默认可以添加、修改、删除和查询自己的合同;经理可以查看和管理所有合同,并对合同进行统计及管理用户信息。
用户登录后自动读取该用户的操作权限,用户可以在导航栏中选择某一操作链接进入相应的操作页面。
为了更清楚地说明系统框架,以便更好地设计该系统的解决方案,图3-2给出了系统流程图。
系统流程图展示了该系统所有功能模块之间的逻辑关系,其中的各个功能模块基本上都代表了一个独立的页面,并将在下面的系统设计阶段得到体现。
图3-2系统流程图
第3.2节代码设计
代码是人为确定的代表客观事物(实体)名称、属性或状态的符号或者是这些符号的组合。
在系统开发过程中设计代码作用是唯一化、规范化和系统化。
在本系统中为了避免二义性,唯一地标识每一个人,因此编制了员工代码。
编码原则和结构如下:
(1)人员编号由3位数字组成,其排列顺序从左至右依次为:
第1位数字表示地区号,第1位数字表示所在部门,第3位数字为员工顺序码。
(2)人员编号的编码对象是企业的每一个正式职工。
(3)合同管理系统软件是网络版,每一名正式职工在信息网络中确定一个编号,并只有一个编号。
为保证人员编号的惟一性,员工在系统内调动,其编号不变;对调出人员,取消的人员编号再分配给新的正式员工。
第3.3节数据库设计
3.3.1数据库需求分析
合同管理系统的主要目的就是利用软件实现合同的录入、查询、编辑等功能,使工作人员对合同的管理更加容易,提高工作效率、降低管理成本。
具体分析如下:
(1)员工管理
Ø浏览负责管理所有参与合同管理动作的员工信息。
包括员工编号、姓名、部门、电话等。
Ø添加、删除、修改,查找员工信息。
Ø此权限只有经理(即系统管理员)具有。
(2)客户管理
Ø浏览所有客户信息。
客户信息包括客户编号、客户名称、联系人等。
Ø添加、修改、禁用和查找客户信息。
(3)合同管理
Ø合同分类管理:
按采购类合同和销售类合同进行分类划分。
Ø浏览与合同相关的明细资料。
合同信息包括合同编号、签订日期、客户名称、项目名称、货品名称、数量、单价、金额、合同执行状态等。
Ø分别按合同号、客户名称及项目名称查找合同信息。
Ø添加、修改、删除合同信息。
Ø对合同信息进行实时处理。
如合同执行情况控制,包括已执行、执行中、未执行三个状态。
Ø按项目名称、客户名称、合同执行情况等几项内容或任意几项内容组合来对合同的执行情况进行综合查询。
Ø按项客户名称对所有合同运作情况进行统计,包括合同总金额,执行中合同数量,未执行合同数量等。
(4)项目管理
Ø浏览所有项目信息。
项目信息包括项目编号、项目名称、联系人等。
Ø添加、修改、禁用及查询项目信息。
(5)账号管理
Ø公司信息设置。
Ø系统参数。
Ø添加操作员。
Ø修改密码。
其中,系统参数和添加操作员两个功能,只有经理(系统管理员)具有此操作权限。
(6)考虑到公司合同的保密性,对合同维护的各项操作需按照员工的工作类别区别给予。
故对系统分为两类权限:
合同管理员(级别为B)和经理(即系统管理员,级别为A)。
他们所具有的操作权限如下:
Ø合同管理员所具有的操作权限:
合同管理员可以录入新的合同,并对自己录入的合同进行查询,也可以进行合同修改、更新及删除操作,但不允许查看其他人所签的合同,也不允许修改或删除其他人的合同。
Ø经理所具有的操作权限:
经理拥有对所有合同的添加、删除、修改、合同查询、统计的权限和账号权限的设置。
数据字典
表名
属性名
类型
长度
必填字段
主键
说明
Empolyee
empl_id
empl_name
empl_type
empl_dep
empl_dia
empl_mp
empl_email
char
varchar
Char
Char
Charvarchar
varchar
10
50
10
10
10
50
50
是
是
否
否
否
否
否
主键
员工编号
姓名
员工类别
部门
固话
手机
邮件
Consumer_list
Consumer_num
consumer_name
Consumer_lxr
Consumer_dia
consumer_phonenum
consumer_add
consumer_email
consumer_beizhu
sta
chat
varchar
char
varchar
varchar
varcharr
varchar
varchar
char
10
50
10
50
50
50
50
50
10
是
是
否
否
否
否
否
否
否
主键
客户编号
客户名称
联系人
电话
手机
联系地址
邮件
备注
客户状态
Order_list
ord_id
ord_no
ord_dd
cus_num
xm_id
prd_name
qty
up
amtn
ord_st
bil_dd
xinyong
ord_rt
ordertype_id
jiluren
adddate
Int
varchar
datetime
int
int
char
decimal
decimal
decimal
Char
char
Char
char
int
char
datetime
4
50
8
4
4
10
9
9
9
10
10
10
10
4
10
8
是
是
否
否
否
否
否
否
否
否
否
否
否
否
否
否
主键
外键
外键
序号
合同编号
签订时间
客户编号
项目编号
项目名称
数量
单价
金额
执行情况
账期
信用额
收款情况
合同类别
建立人
系统时间
Proj_info
proj_id
proj_cons
proj_name
proj_lxr
proj_ms
proj_sta
char
varchar
varchar
char
varchar
char
10
50
50
10
50
10
是
否
是
否
否
否
主键
项目编号
客户名称
项目名称
联系人
项目描述
项目状态
Admin
adminid
admin
password
Numeric
Nvarchar
Nvarchar
9
50
50
是
是
是
主键
ID号
用户名
密码
3.3.2数据库概念结构设计(E-R图设计)
数据库概念结构设计的目标是产生出一个能反映组织信息需求的概念模型。
最广泛使用的概念模型是实体-联系(E-R)模型。
对合同管理系统实体关系的设计是建立在需求分析、系统分析的基础上的。
本系统的实体包括合同管理员、客户、合同、项目、账号、合同类别。
下面分别对这6个实体做E-R图设计。
1)一个合同管理员可以负责多个合同,所以员工和合同实体之间是一对多的关系,设计局部E-R模型如图3-3所示。
1M
图3-3
2) 一个客户可以签订多份合同,所以客户与合同实体之间是一对多的关系,设计局部E-R模型如图3-4所示。
1M
图3-4
3)一个客户会签订多个项目的合同,所以客户与项目实体之间是一对多的关系,设计局部E-R模型如图3-5所示。
1M
图3-5
4)一个项目隶属于一个合同,所以项目与合同实体之间是一对一的关系,设计局部E-R模型如图3-6所示。
11
图 3-6
5)一个员工拥有一个账号权限,所以员工与账号实体之间是一对一的关系,设计局部E-R模型如图3-7所示。
11
图3-7
归纳上述5项,可以定义5个实体:
员工、客户、合同、项目和账号,这些实体之间的相互联系见表3-1。
实体
联系
实体
合同管理员
维护
合同
客户
制定
合同
客户
签订
项目
项目
隶属
合同
员工
拥有
账号
表3-1
将局部E-R模型综合成整体E-R模型,如图3-9所示。
图3-8 整体E-R模型
3.3.3数据库逻辑结构设计
逻辑结构设计是将概念模型(E-R模型)转换成关系数据库。
按照3.3.2节介绍的转换规则,将E-R模型转换成关系数据库。
1)员工信息表(员工编号,姓名,员工类别,部门,固话,手机,邮件)
PK=员工编号 NOTNULL。
2)客户信息表(客户编号,客户名称,联系人,电话,手机,联系地址,邮件,备注,客户状态)
PK=客户编号 NOTNULL。
3)合同信息表(序号,合同编号,签订时间,客户编号,项目编号,项目名称,数量,单价,金额,执行情况,账期,信用额度,收款情况,合同类别,建立人,建立时间)
PK=合同编号 NOTNULL。
FK=项目编号,参照表是“项目信息表。
FK=客户编号,参照表是“客户信息表”。
4)项目信息表(项目编号,项目名称,联系人,项目描述,客户名称,项目状态)
PK=项目编号 NOTNULL。
5)账号管理(ID号,帐号,密码)
PK=ID号NOTNULL
3.3.4数据库物理结构设计
数据库的物理设计是对给定的逻辑数据模型选取一个最合适应用要求的物理结构。
数据库的物理结构主要指数据库在物理设备上的存储结构和存取方法,它当然完全依赖于给定的计算机系统的DBMS以及存储设备等软件、硬件因素。
本系统所采用的数据库是SQLServer,是由Microsoft开发和推广的关系数据库管理系统(DBMS),SQLServer 2000是一款面向高端的数据库管理系统,提供了以Web标准为基础的扩展数据库编程功能。
丰富的XML和Internet标准支持允许用户使用内置的存储过程以XML格式轻松存储和检索数据。
用户还可以使用XML更新程序,容易地插入、更新和删除数据。
第3.4节输入输出设计
系统输入输出设计是一个在系统设计中很容易被忽视的环节,又是一个重要的环节,它对于用户和今后系统使用的方便和安全可靠性来说都是十分重要的。
一个好的输入系统设计可以为用户和系统双方带来良好的工作环境,一个好的输出设计可以为管理者提供简捷、明了、有效、实用的管理和控制信息。
下面就分别来讨论这两方面的问题。
3.4.1输入设计
输入界面是管理信息系统与用户之间交互的纽带,设计的任务是根据具体业务要求,确定适当的输入形式,使管理信息系统获取管理工作中产生的正确的信息。
输入设计的目的是提高输入效率,减少输入错误。
(1)用户界面:
输入界面的风格统一,即美观、大方、便于用户填写。
(2)输入方式:
本系统菜用了填表式输入屏幕设计,以键盘输入和下拉框选择相结合的方式输入数据信息,最大程度上简化用户输入过程。
(3)输入校验:
以合同添加页面为例,页面所显示所有项目必需全部输入。
输入后由计算机计算“数量”*“单价”并与所输入的“金额”值进行比较,若二者相等则校验通过,否则给出警告信息,由操作者进行修改。
3.4.2输出设计
输出是系统产生的结果过提供的信息。
对于大多数用户来说,输出结果是系统开发的目的和评价系统开发成功与否的标准。
尽管有些用户可能直接使用系统或从系统输入数据,但都要应用系统输出的信息。
为了提高系统的规范化程度和编程效率,在输出设计上尽量保持输出流内容和格式的统一性,采用表格形式输出,方便用户的使用。
第4章系统实施
第4.1节程序设计与调试
4.1.1程序设计语言的选择
本设计使用ASP+SQLServer2000实现。
●ASP:
ASP是ActiveServerPages的缩写。
是微软公司推出的一种Web应用程序开发技术。
它不是一种语言,也不是一种开发工具,是一种未经编译的开放的应用软件。
能使用户能够更好地利用HTML和ActiveX强大的功能创建功能强大、与应用平台无关的Web系统。
简单来说ASP就是运行于Web服务器上的动态网页。
ASP程序主要运行在Windows系列的操作系统上,例如Windows98、Windows2000、WindowsXP、WindowsServer2003等,通过PWS(PersonalWebServer)或IIS作为服务器软件来执行ASP程序。
其中,PWS是指个人网络服务器,它只适用于Windows98的Web网络服务器,可以在Windows98的安装光盘中找到,也可以直接从网络上下载PWS服务器安装程序;IIS是一款功能强大的Web服务器,现在已发展到7.0版本,在Windows2000、WindowsXP中,默认安装的是IIS5.0。
IIS的作用是实现客户端与服务器端之间的连接。
当访问者在浏览器中发出一个请求时,这个请求通过网络路由到服务器端,然后服务器再将它交给IIS处理,IIS检索所请求的页面,并根据请求文件名对该页进行相应处理。
ASP不仅可以在Windows平台的IIS环境下运行,同时也可以在非IIS环境下运行。
ASP本身并不是一种语言,它的程序是通过HTML、VBScript或JavaScript等脚本语言来实现的,且不需要进行编译。
实际上,ASP文件本身就是一个文本文件,因此,只要能够进行文本编辑的编辑器都能够用来开发ASP应用程序。
目前比较流行的ASP开发工具有Dreamweaver、记事本VisualInterDev、ASPEdit、EditPlus、UltraEdit等。
●Dreamweaver 本系统ASP程序