[TOC]
本文档描述了ERP系统的功能需求和非功能需求。开发小组的软件系统实现与验证工作都以此文档为依据。
除特殊说明之外,本文档所包含的需求都是高优先级需求。
该ERP系统是为一民营企业开发的业务系统,开发的目标是帮助该企业各个角色处理日常业务,包括单据制定、单据查看、账户管理、员工管理、员工打卡、薪酬制定、促销策略制定。
通过该ERP系统的应用,期望为该民营企业减少积压的库存,增加销售额,提高财务人员和人力资源人员工作效率,为经理的决策做支持。
1)IEEE标准。
2)ERP系统用例文档V1.2。
一民营企业专业从事灯具开关行业,是某著名开关品牌的南京地区总代理,主要在南京 负责品牌的推广及项目的落地销售、分销的批发等工作,服务对象包括项目业主、施工单位、 分销商、设计院、终端用户等。
现公司规模扩大,企业业务量、办公场所、员工数都发生增长,为适应新的环境,提高 工作效率和用户满意度, 该公司聘南鲸软件科技公司开发一套 ERP 系统。该系统主要包括 库存管理、销售管理、财务管理、人事管理和企业经营管理。
BR1:在系统上线运行6个月后,减少积压的库存,要减少50%。
BR2:在系统上线运行6个月后,增加销售额,要提高20%。
最好情况:40%。
最可能情况:20%。
最坏情况:10%。
BF3:在系统上线运行6个月后,提高业务人员和人力资源人员工作效率,要提高50%。
SF1:管理账户,查看名称和余额,了解企业经济情况。
SF2:制定和查看各类公司报表,把握公司发展动向。
SF3:掌握员工信息的增删改查及其授权情况
SF4:员工参与打卡,记录工作到岗状况。
SF5:制定销售策略进行销售竞争,处理积压商品。
SF6:制定薪酬规则以及年终奖规则,管理员工薪水。
财务人员:1 到 2 名。办公信息化系统较强,负责管理公司账户和制定单据。持积极态度。不希望增加现有工作量。
人力资源人员:1 到 2 名。办公信息化系统较强,负责管理公司员工入职,登记信息,制定薪资规则。持积极态度,不希望增加现有工作量。
总经理:2 名。能够熟练使用办公信息化系统,负责审批单据和制定促销策略。持积极态度。
CON1:采用 Vue+Springboot+Mybatis框架开发。
CON2:图形化界面进行操作。
CON3:用户远程使用系统。
AE1:商品数量默认为1,用户的默认身份为进货销售人员
AE2:时间为操作当天
AE3:不加其他说明条件的前提下,商品出库原因为到期报废
UI1 账户管理:系统应该使用管理账户的界面,帮助财务人员使用该界面完成账户管理任务。
UI1.1在财务人员查找相关账户时,系统应该展示账户列表界面。
UI2 员工管理:系统应该使用管理员工的界面,帮助人力资源人员使用该界面完成管理员工任务。
UI2.1在人力资源人员选择添加新员工时,系统应该展示新建员工信息界面。
UI3 员工打卡:系统应该使用员工打卡的界面,除了总经理外的所有角色完成打卡任务。
UI3.1在打卡后,系统应该显示打卡成功的界面。
UI4 制定薪酬规则、年终奖:系统应该使用制定薪水的界面,帮助总经理完成薪酬规则、年终奖的制定任务。
UI4.1在总经理选择制定后,系统应该显示新建薪酬规则界面。
UI5 制定促销策略:系统应该使用制定促销策略的界面,帮助总经理完成制定促销策略的任务。
UI5.1在总经理选择制定后,系统应该显示新建促销策略的界面。
UI6 制定表单:系统应该使用制定表单的界面,帮助财务人员完成制定表单的任务。
UI6.1在财务人员选择制定后,系统应该显示新建表单的界面。
UI7 查看表单:系统应该使用查看表单的界面,帮助财务人员、总经理完成查看表单的任务。
UI7.1在财务人员或总经理选择查看后,系统应该展示表单列表界面。
账户指的是此家公司的银行账户,仅限最高权限可以查看账户名称和余额。账号的属性有:名称和金额。余额不可修改,此数据项取决于收款单和付款单。
账户的增删改查包括增加账户、删除账户、修改账户属性和查询账户。账号的查询可以通过输入关键字进行模糊查找。仅限最高权限可进行这些操作。
刺激:财务人员输入新增账户的名称和金额。
响应:系统标记新增的账户。
刺激:财务人员输入账户信息关键字来查询账户。
响应:系统显示与关键字相关的账户列表。
刺激:财务人员对选中的账户信息输入修改后的名称和金额。
响应:系统记录修改的账户信息。
刺激:财务人员选择对应账户进行删除。
响应:系统删除选中的账户信息。
刺激:财务人员取消账户管理任务。
响应:系统关闭账户管理任务。
Account.Input:系统应该允许财务人员在账户管理任务中进行键盘输入
Account.Input.Info:在财务人员新建或修改时要输入账户信息,参见Account.Info
Account.Input.Del:在财务人员删除账户时,执行删除命令,参见Account.Del
Account.Input.Cancle:在财务人员输入取消命令时,系统关闭当前账户管理任务
Account.Input.Save:在财务人员输入保存指令时,系统保存账户信息,参见Account.Save
Account.Info.Start:在账户管理任务最开始,系统要允许财务人员输入账户信息
Account.Info.Name:账户信息包括账户名称
Account.Info.Money:账户信息包括账户金额
Account.Info.Cancle:在财务人员取消输入时,系统关闭任务,返回主界面,参见Account.Input
Account.Del.Lists:在财务人员从账户列表中选中待删除账户时,系统在账户列表中删除该账户
Account.End:系统应该允许财务人员要求结束账户管理任务
Account.End.Save:在财务人员要求结束账户管理任务时,系统保存数据,参见Account.Save
Account.Save:系统更新账户数据,整个更新过程组成一个事务,要么全部更新,要么全部不更新
Account.Save.Name:系统更新账户名称
Account.Save.Money:系统更新账户金额
人力资源人员参与。员工入职,登记员工信息(姓名、性别、出生日期、手机、工作岗位、基本工资、 岗位工资、岗位级别、薪资计算方式、薪资方法方式)、工资卡账户。系统入职后, 自动会创建相应账号。
刺激:人力资源人员输入新入职员工的各种信息。
响应:系统标记新增的员工。
刺激:人力资源人员取消员工管理任务。
响应:系统关闭员工管理任务。
刺激:人力资源人员提交新入职员工的各种信息。
响应:系统显示保存成功,并自动创建相应账号。
Staff.Input:系统应该允许人力资源人员在员工管理任务中进行键盘输入
Staff.Input.Info:在人力资源人员输入新入职员工的信息时,系统要标记新增的员工,参见Staff.Info
Staff.Input.Cancle:在人力资源人员输入取消命令时,系统关闭当前员工管理任务
Staff.Input.Save:在人力资源人员输入保存命令时,系统保存员工信息,参见Staff.Save
Staff.Info.Start:在员工管理任务最开始,系统要允许财务人员输入员工信息
Staff.Info.Individual:员工信息包括姓名、性别、出生日期、手机、工作岗位、基本工资、岗位工资、岗位级别、薪资计算方式、薪资发放方式、工资卡账户
Staff.Info.Cancle:在人力资源人员取消输入时,系统关闭任务,返回主界面,参见Staff.Input
Staff.End:系统应该允许人力资源人员要求结束员工管理任务
Staff.End.Save:在人力资源人员要求结束员工管理任务时,系统保存数据,参见Staff.Save
Staff.Save:系统保存员工数据,整个过程组成一个事务,要么全部更新,要么全部不更新
Staff.Save.Individual:系统更新员工信息,内容参见Staff.Info.Individual
Staff.Save.Account:系统在保存新入职员工信息后,为其自动创建账号
所有员工,每天需要登录系统进行打卡。缺席扣除基本工资的 1/30。总经理不参与打卡。
刺激:相关员工(除总经理外的员工)参与打卡。
响应:系统记录打卡时间,显示打卡成功。
刺激:相关员工(人力资源人员、总经理)查看打卡记录。
响应:系统显示所有员工(除总经理外)的打卡记录。
ClockIn.Participation:系统允许相关员工参与打卡
ClockIn.Save:系统保存员工打卡时间记录
ClockIn.Check:系统可以展示所有员工的打卡记录
库存人员和人力资源人员实行月薪制、销售人员实行基本工资+提成的制度。总经理实现年薪制。每个月人力资源人员制定工资单。工资单金额自动生成后,由人力资源人员审核,再由总经理审核,再交由财务人员发放工资。
刺激:人力资源人员根据员工的类型制定不同的薪酬。
响应:系统保存该薪酬记录,并生成工资单。
刺激:人力资源人员和总经理审核工资单。
响应:审核通过或未通过。
Salary.Input:系统应该允许人力资源人员在制定薪酬规则时进行键盘输入
Salary.Input.Type:人力资源人员在制定薪酬规则时可以输入员工类型,参见Salary.Type
Salary.Input.Cancle:在人力资源人员输入取消指令时,系统关闭当前薪酬规则制定界面
Salary.Input.Save:在人力资源人员输入保存命令时,系统保存薪酬信息,参见Salary.Save
Salary.Type.1:库存人员和人力资源人员实行月薪制
Salary.Type.2:销售人员实行基本工资+提成的制度
Salary.Type.3:总经理实现年薪制
Salary.End:系统应该允许人力资源人员要求结束薪酬制定任务
Salary.End.Save:在人力资源人员要求结束薪酬制定任务时,系统保存数据,参见Salary.Save
Salary.Save:系统保存薪酬数据,整个过程组成一个事务,要么全部更新,要么全部不更新
Salary.Save.List:系统在保存薪酬信息后,为其生成工资单,参见Salary.List
Salary.List.Check:人力资源人员和总经理审核工资单
Salary.List.Pass:工资单审核通过
Salary.List.Fail:工资单审核未通过
(注:所有单据的审核需求类似,以下不再赘述。)
- 总经理可以针对不同级别的用户制定促销策略(赠品、价格折让、赠送代金劵)。
- 总经理可以制定特价包(组合商品降价)。
- 总经理可以制定针对不同总价的促销策略(赠品、赠送代金卷)。所有促销策略都有起始时间和间隔时间。所有赠品条件促发后,系统会自动建立库存赠送单,由总经理审批通过后, 发送消息给库存管理员发放赠品。
刺激:总经理制定促销策略,输入系统。
响应:系统记录该促销策略。
刺激:总经理保存该促销策略。
响应:系统存入该促销策略并自动建立库存赠送单。
与员工管理类似,其中促销策略信息为赠品、价格折让、赠品代金券、起始时间、间隔时间等内容。
注:单据包括收款单、收款单、现金费用单等
制定收款单:新建一个收款单,包含以下信息:单据编号(SKD-yyyyMMdd-xxxxx),客户(同时包含供应商和销售商),操作员(当前登录用户),转账列表,总额汇总。转账列表中的一项包含:银行账户,转账金额,备注。填写完毕后点击“提交”即可入账。收款单通过审批后,会更改客户的应付数据。
制定付款单(基本同于收款单,只是这个是付款的。)
制定现金费用单:管理报销等现金操作,单据中包含:单据编号(XJFYD-yyyyMMdd-xxxxx),操作员(当前 登录用户),银行账户,条目清单,总额。条目清单中包括:条目名,金额,备注。 填写完毕后点击“提交”即可将此单据入账。入账后将会减少该账户的余额。付款单通过审批后,会更改客户的应收数据。
刺激:财务人员新建单据,输入相应信息。
响应:系统保存单据信息。
Receipt.Input:系统允许财务人员输入单据信息
Receipt.Save:系统更新。将单据保存作为一个事务,要么全部更新,要么全部不更新。
注:查看单据包括查看销售明细表、经营历程表、经营情况表
查看销售明细表:统计一段时间内商品的销售情况(包括销售和销售后退货),筛选条件有:时间区间,商品名,客户,业务员,仓库。显示符合上述条件的所有商品销售记录,以列表形式显示,列表中包含如下信息:时间(精确到天),商品名, 型号,数量,单价,总额。需要支持导出数据。)
查看经营历程表:查看一段时间里的所有单据,单据分为:1. 销售类单据(销售出货单,销售退货单) 2. 进货类单据(进货单,进货退货单) 3. 财务类单据(付款单,收款单,现金费用单,工资单)4. 库存类单据(报溢单,报损单,赠送单)。
查看经营情况表(统计显示一段时间内的经营收支状况和利润。经营收入显示为折让后,并显示出折让了多少。显示信息: 1. 收入类:销售收入、商品类收入(商品报溢收入、成本调价收入、 进货退货差价、代金券与实际收款差额收入)。收入类显示折让后总收入,并显示折让了多少。2. 支出类:销售成本、商品类支出(商品报损,商品赠出)、人力成本。支出类显示总支出。3. 利润:折让后总收入-总支出。)
红冲:生成一个一模一样但是仅仅把数量取负数的单子并入账,以此来抵消之前的单子。红冲并复制的操作是在红冲的基础上,新建一张以之前单子为模板的草稿单,给用户以编辑的机会。
刺激:财务人员筛选需要查看的单据。
响应:系统展示符合条件的单据列表。
刺激:财务人员选择红冲操作。
响应:系统生成一个一模一样但是仅仅把数量取负数的单子并入账,以此来抵消之前的单子。
刺激:财务人员选择红冲复制操作。
响应:系统在红冲的基础上,新建一张以之前单子为模板的草稿单,给用户以编辑的机会。
Receipt.Check.Select:系统允许财务人员筛选需要的单据
Receipt.Check.Show:系统展示符合条件的单据列表
Receipt.Red:系统完成红冲操作
Receipt.Red.Duplicate:系统完成红冲并复制操作
Safety1:系统应该只允许经过登录、验证和授权的用户访问。
Safety2:系统应该按照用户身份验证用户的访问权限。
Modifiability1:在系统的商品标志数据格式发生变化时,系统要能在2人1天内完成。
Modifiability2:如果系统要增加新的客户服务,要能在0.25个人月内完成。
Usablity1:销售处理和进货处理的账单信息要求能在一米之内看清。
Usablity2:使用系统1个月的进货销售人员进行进货销售的效率要达到6件商品/分钟
IC:系统要再网络上分布为一个服务器和多个客户端
DR1:系统需要储存一年之内的销售记录和进退货记录。
DR2:系统删除之后的商品目录数据和用户数据仍要继续储存3个月时间,以保证历史数据显示的正确性。
Default1:商品数量默认为1
Default2:用户的默认身份为进货销售人员
Default3:时间默认为当天
Default4:操作人员工号默认为当前登录用户
Default5:商品出库原因默认为到期报废
Format1:价格和费用的格式必须为大于等于0,精确到小数点后2位的浮点数,单位为元。
Format2:进货单的格式必须是JHD-yyyyMMdd-xxxxx,退货单的格式必须是JHTHD-yyyyMMdd-xxxxx,销售单的格式必须是XSD-yyyyMMdd-xxxxx,销售退货单的格式必须是XSTHD-yyyyMMdd-xxxxx。
Format3:数量的格式必须是正整数。
安装需求
Install1:在安装系统时,要初始化用户、商品库存等重要数据。
Install2:需要对用户进行1个星期的集中培训。