资源描述
软 件 学 院
课程设计报告书
课程名称 软件工程
设计题目 公司固定资产管理系统设计与实现
专业班级
学 号 1
姓 名
指导教师
2012年 6月
目 录
1 设计时间 1
2 设计目的 1
3 设计任务 1
4 设计内容 1
4.1 设计内容概述 1
4.1.1组织机构介绍 1
4.1.2现业务流程介绍与分析 1
4.1.3新业务流程介绍与分析 3
4.2需求分析 5
4.2.1 总体目标 5
4.2.2 具体目标 5
4.2.3系统数据建模(ER图) 5
4.2.4 系统功能建模(数据流程图) 6
4.2.5 数据字典 9
4.3总体设计 10
4.3.1总体设计HIPO技术 10
4.3.2代码设计 13
4.3.3数据库设计 14
4.4详细设计 15
4.4.1商品录入模块详细设计 15
4.4.2收银业务模块详细设计 16
4.4.3进货管理模块详细设计 17
4.4.4销售管理模块详细设计 18
4.5.4库存管理模块详细设计 19
5 总结与展望 21
1 设计时间
2012年6月4日
2 设计目的
1.大大提高公司固定资产的管理效率。
2.通过全面的信息采集和处理,辅助提高公司的决策水平。
3.使用本系统,可以迅速提升公司的管理水平,是管理更简便,快捷。
3设计任务
完成需求分析,总体设计,详细设计及测试
4 设计内容
4.1 设计内容概述
总经理
办公室
销售
部
财
务
部
4.1.1组织机构介绍
图4.1 组织结构图
4.1.2现业务流程介绍与分析
4.1.2.1现业务流程描述
该公司各部门都配有计算机,进行一些日常文件的打印、报表输出等工作,在销售部应用了相关的软件对各类配件的购销存进行控制,但在其他部门,大部分的管理工作仍然是手工劳动。
a.采购管理:这项工作由办公室完成,当公司职工申请购置新的固定资产时,首先由办公室进行考察并做出是否购置的决定,然后报请总经理审批,最后再由办公室到财务部领取支票,去购买固定资产,购回后凭原始(凭证)发票向财务部报账。
b.日常卡片管理:由财务部会计人员完成。每月要根据固定资产卡片提取本月折旧额,并对固定资产的增加和减少,以及固定资产原始的变化进行相应的卡片处理。
c.财务核算:主要由财务部人员根据固定资产日常的变动情况和每月的折旧额数据,编制固定资产的记账凭证,并汇总出固定资产明细账数据和总账。
d.报表查询:主要是办公室及公司领导使用,根据固定资产的数据做出各种报表,以便于公司领导及时对资产的使用情况进行管理。
4.1.2.2现业务流程分析
目前规模不断扩大,公司所拥有的固定资产不断增加,而且品种繁多,分布散乱,给管理工作带来很多不便,而且管理方式仍然是手工方式,造成管理上的很多漏洞。具体分析主要存在以下问题:
A.固定资产分散在各不同部门,使用的人多,管理工作缺乏统一规范,相关人员对此难以全面准确了解。
B.固定资产管理方式仍然是手工处理方式,工作量大而且易出错。
C.公司领导对整个企业的资产的信息掌握不及时,不全面,造成正常的申购不能及时处理,而有些不必要的申购又造成浪费的现象。
4.1.3.1新业务流程描述
对公司业务进行梳理分析后,决定用固定资产管理系统,对公司的固定资产和财务情况进行管理,系统主要分为四个功能,分别是采购管理,固定资产管理,财务明细管理以及报表查询管理,可使公司的工作效率大大提高。
a.采购管理:当公司职工在系统中提交购置新的固定资产申请表,首先由办公室进行审核,然后报请总经理在系统中审批,最后再由办公室到财务部领取支票,去购买固定资产,购回后凭原始(凭证)发票向财务部报账。
b.固定资产管理:办公室人员对固定资产的增加和减少,以及固定资产原始的变化在固定资产表中记录。
c.财务明细管理:由财务部人员使用系统,记录固定资产明细账表。
d.报表查询管理:主要是办公室及公司领导使用,公司领导使用系统查询各种报表,以便于及时对资产的使用情况进行管理。
4.1.3.2新业务流程图
录入审核
采购员
购买物品申请库
购置物品申请表
经理
审批
办公员
核对操作
报账表
财务员
固定资产信息库
使用物品
员工
经理
查询报表
财产明细信息库
图4.2 新业务流程图
4.2需求分析
4.2.1 总体目标
1.让繁琐的工作井然有序。
2.公司管理者从繁重的传统式经营管理中解脱出来。
3.公司管理者对固定资产有个总体把握,对公司各种资源的流转进行更好的控制和发展。
4.办公室人员根据固定资产的使用进行分析,以更好的管理,更加节约成本。
4.2.2 具体目标
固定资产管理系统主要实现四大功能模块:
商品录入模块;采购管理模块;固定资产模块;财务管理模块;报表管理模块;
4.2.3系统数据建模(ER图)
采购人员
1
采 购
n
办公人员
固定资产
使 用
1
n
姓名
编号
部门
职位
编号
物品号
数量
日期号
物品号
物品名
数量
编号
数量
日期
编号
权限
部门
财产明细
1
记 录
n
财务人员
编号
姓名
部门
编号
日期
日期
原因
金额
编号
图4.3 系统E-R图
4.2.4 系统功能建模(数据流程图)
采购员
财务员
办公员
P
固定资产管理系统
采购申请表F1
明细账单F2
资产变动F3
经理
办公人员
报表F6
资产状况F7
审核F5
图4.4系统顶层DFD
F1
P1
购买申请处理
D1购买清单
F5
系统一级细化P1
P2
资产变动处理
F3
D2资产信息库
D1购买清单
系统一级细化P2
P3
账单记录处理
F2
D1购买清单
D3财务明细库
系统一级细化P3
图4.5系统一级细化DFD
P1.1
购买申请输入
F1
F5
P1.2
申请信息
审核
D1购买清单
系统P1的二级细化
F3
P2.1
资产变动申请输入
P1.2
资产变动处理
D2资产信息库
F1
D1购买清单
系统P2的二级细化
P3.1
账单信息输入
F2
F1
D1购买清单
P3.2
账单信息处理
D3财务明细库
系统P3的二级细化图
4.6系统二级细化DFD
4.2.5 数据字典
文字:采购信息
别名:采购表
描述:记录商品基本信息,并按商品编号递增排列
定义:采购表=商品编号+商品名称+数量+单价
位置:采购商品
文字:员工信息
别名:
描述:记录员工基本信息,并按员工编号排序
定义:员工信息=员工编号+姓名+联系电话+备注
位置:资产管理
文字:资产信息
别名:资产表
描述:记录资产基本信息
定义:资产表=编号+名称+数量+金额+备注
位置:资产管理
文字:明细账单信息
别名:明细账单表
描述:记录财务的详细信息
定义:明细账单表=编号+物品名称+单价+数量+金额+日期+用途+关联人员
位置:财务管理
图4.7系统数据字典
4.3总体设计
4.3.1总体设计HIPO技术
4.3.1.1系统层次图
资产管理系统
明细 管理
报表管理
折旧管理
资产 管理
采购管理
图4.8系统层次图
4.3.1.2系统IPO图
IPO图
系统:固定资产管理系统 作者:徐阳
模块:“采购管理”模块 编号:1.0
被调用:“固定资产管理系统”模块
调 用:无
输入:“采购申请”(F1)数据流表
输出:“采购信息库”(D1)数据库表
处理:根据采购表中的信息录入,录入采购申请的各项数据,进行核对后生成采购信息库,其中包括商品编号,商品名称,数量,单价。
图4.9 IPO: “采购管理”模块
IPO图
系统:固定资产管理系统 作者:徐阳
模块:“资产管理”模块 编号:2.0
被调用:“固定资产管理系统”模块
调 用:无
输入:“使用资产信息”(F3)数据流表
输出:“资产信息库”(D2)数据库表
处理:员工对资产的使用进行申请,然后系统记录资产的增减情况,采购后资产表中数据也改变。
图4.10 IPO: “资产管理”模块
IPO图
系统:固定资产管理系统 作者:徐阳
模块:“财务明细管理”模块 编号:3.0
被调用:“固定资产管理系统”模块
调 用:无
输入:“财务明细”(E2)数据流表 “采购信息库”(D1)数据库表
输出:“财务明细表”(F3)数据库表
处理:系统对财务进行明细记录,当有财务变动时候由财务管理人员使用系统记录,采购也要有相关记录。
图4.11 IPO: “财务明细管理”模块
系统IPO图
4.3.2代码设计
4.3.2.1代码设计的原则
为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:
(1)合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如采购、使用消耗等工作。
(2)实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。
(3)准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如:类型匹配,长度不超限等)。
(3)易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。
(4)源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。
(5)优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。
(6)安全性原则:可以为该系统的用户设置用户权限。
4.3.2.2系统所需代码设计
员工表(员工编号,姓名,性别,职务,部门,备注)
Staff (staffID, staffName, staffSex, staffPost, staffDepartment, staffOthers)
资产表(资产编号,资产名称,数量,单价)
Property (propertyID, propertyName, propertySum, propertyPrice)
采购申请表(采购编号,资产编号,数量,日期,原因)
purchase (purchaseID, propertyID, purchaseSum, purchaseDate, purchaseReason)
财务明细表(财务编号,详情,日期,金额)
finance(financeID, financeDetial', financeDate, financePrice)
4.3.3数据库设计
表4.1员工表(StaffBill)
列名 数据类型 长度 允许空 文字描述
staffID int 6 N 员工编号
staffName varchar 20 N 姓名
staffSex char 2 Y 性别
staffPost varchar 4 Y 职务
staffDepart varchar 12 Y 部门
others varchar 50 Y 备注
表4.2资产表(Property)
列名 数据类型 长度 允许空 文字描述
propertyID int 4 N 资产编号
propertyName char 6 N 名称
propertySum varchar 10 N 数量
propertyPrice float 15 N 价格
表4.3采购申请表(purchase)
列名 数据类型 长度 允许空 文字描述
purchaseID int 4 N 采购编号
propertyID int 4 N 资产编号
purchaseSum int 4 N 总数
purchaseDate varchar 12 N 日期
purchaseReason varchar 10 N 原因
表4. 4财务明细表(finance)
列名 数据类型 长度 允许空 文字描述
financeID int 6 N 财务编号
financeDetial' varchar 30 N 详情
financeDate char 6 N 日期
financePrice float 15 N 金额
4.4详细设计
4.4.1采购模块详细设计
4.4.1.1模块定义
在采购申请的录入前添加对进入系统的验证,确保系统的安全,采购申请录入后由总经理查看并进行核对,如果批准点击审核通过按钮,采购员可在系统中查询以通过审核的申请,然后就可以去财务部领取发票,财务部查看系统无误后开发票。
4.4.1.2输入项目
1.采购申请信息输入:资产编号,名称,数量,单价
2.审核信息输入:资产编号,是否批准,
4.4.1.3输出项目
1.批准采购资产:资产编号,名称
4.4.1.4程序过程设计
采购申请
N
审核
Y
打印单据
存储
图4.12 资产采购模块程序流程图
4.4.1.5测试要点
1.设计测试用例:采用等价类方法及边界值方法设计测试用例。
2.接口测试:数据能否正常输入输出。
3.功能测试:基本功能,常用功能,以及通常情况的错误处理。
4.4.2资产管理模块详细设计
4.4.2.1模块定义
系统自动把采购成功的资产加入资产表中,如果公司人员使用某资产也由办公人员在系统中进行相应的记录。
4.4.2.2输入项目
1.资产增加信息输入:资产编号,数量
2.资产减少信息输入:资产编号,数量
4.4.2.3输出项目
资产变动通知
4.4.2.4程序过程设计
资产增加
资产使用
Y
Y
审核
审核
N
N
资产使用
资产使用
资产变动
图4.13 资产管理模块程序流程图
4.4.2.5测试要点
1.设计测试用例:采用等价类方法及边界值方法设计测试用例。
2.接口测试:数据能否正常输入输出。
3.功能测试:基本功能,常用功能,以及通常情况的错误处理。
4.4.3财务明细管理模块详细设计
4.4.3.1模块定义
根据资产的变动情况,以及公司资金的变动情况,进行详细的记录。
4.4.3.2输入项目
1.资产增加信息输入:资产编号,数量,日期,原因,金额
2.资产减少信息输入:资产编号,数量,日期,原因,金额
4.4.3.3输出项目
资产明细表
4.4.3.4程序过程设计
资产变动
变动成功
记录入库
图4.14 财务明细管理模块程序流程图
4.4.3.5测试要点
1.设计测试用例:采用等价类方法及边界值方法设计测试用例。
2.接口测试:数据能否正常输入输出。
3.功能测试:基本功能,常用功能,以及通常情况的错误处理。
4.4.4汇总报表管理模块详细设计
4.4.4.1模块定义
由经理查看系统中的各项数据,如总金额,月报表,季度报表,年度报表,财务明细表等详细数据。
4.4.4.2输入项目
1.销售信息库输入:查询的参数
4.4.4.3输出项目
资产总金额,日月年报表
4.4.4.4程序过程设计
输入参数
N
Y
输出总额
总额
N
Y
输出报表
报表
图4.15 销售管理模块程序流程图
4.4.4.5测试要点
1.设计测试用例:采用等价类方法及边界值方法设计测试用例。
2.接口测试:数据能否正常输入输出。
3.功能测试:基本功能,常用功能,以及通常情况的错误处理。
4.4.5权限管理模块详细设计
4.4.5.1模块定义
根据用户名登录的情况,决定其权限
4.4.5.2输入项目
登录信息库输入:用户名,密码
4.4.5.3输出项目
权限信息
4.4.5.4程序过程设计
登录
N
Y
管理员
经理
N
Y
普通
员工
图4.16 库存管理模块程序流程图
4.4.5.5测试要点
1.设计测试用例:采用等价类方法及边界值方法设计测试用例。
2.接口测试:数据能否正常输入输出。
3.功能测试:基本功能,常用功能,以及通常情况的错误处理。
5 总结与展望
在学习软件工程和课程设计的过程中,让我学习到了软件工程的原理,以及为什么要按照软件工程的方法来开发程序,按照软件的开发过程,详细地写好每一个必要的文档,只有这样软件文档才真正提供了有意义的信息。这样的文档才能使开发过程中更加规范,进而减少了软件开发的风险和成本。课程设计的基本目的在于通过理论与实际的结合、团队合作精神,进一步提高对课程的理解。尤其是观察、分析和动手操作的实际工作能力,都有助于以后的软件开发职业生涯。作为整个学习体系的有机组成部分,课程设计虽然安排在一周进行,但并不具有绝对独立的意义。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,和检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。在一个星期的课程设计之后,我深深感觉到不仅实际动手能力有所提高,而且逻辑思维能力也有很大提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。
参考文献
[1] 软件工程导论(第5版)
课程设计成绩评定
出勤
情况
缺勤次数:
课程
设计
评估
设计成绩
教师签字
展开阅读全文