公司基础业务在线办公管理软件分析与设计,这里的基础业务云办公管理软件可以简称OA(Office Automation),即办公自动化。所谓OA系统就是用网络和OA软件构建的一个单位内部的办公通信平台,用于辅助办公。OA系统完成单位内部的邮件通信、信息发布、文档管理、工作流程自动化等等工作。 OA系统中包含的各类协同管理功能可以根据不同行业、企业需要动态的组装、设置,成为满足当前需要的应用系统,并随着业务的发展需要由用户随需改变扩展。OA系统实现了对人过往信息的记录及现在正在做工作的实时跟踪,可清楚反应具体人员的工作态度、工作业绩、工作效率等,实现全方位、多角度的管理。
在过去,公司管理基础业务只能通过岗位的层层设置,花费大量的人力、金钱、时间去管理,比如报销外出费用的记录要专门用账本或者excel表格去记录,这些信息的传递由此受到了不小的阻碍,不够公开透明化,也不易传达。再比如人员管理这一块,如果在一个完整的系统内,有一块单独的区域可以随时随地添加、删除、改动、查询人员信息,就会方便很多,也使得信息足够透明化。显然,传统的人工处理方式就没有这个优点,相反,可能只有少数人知晓人员信息的变动情况,这对于公司的运营来说是不利的,而且相应地要花费不少的资源代价。故而公司将资源投放到类似这样能被计算机完美替代的简单操作上,在现在是非常不可取的。
随着当代科学社会的不断发展,我们所需要接收和处理的信息越来越多,很多东西逐渐不再适合通过单纯的人力劳动来解决。在信息过载的时代,由于计算机、互联网和人工智能的迅猛发展,越来越多的智能化设备、操作系统完成了对单调重复的劳动力的替代,使得众多行业领域的工作效率大大提高。技术的飞速发展也为我们制作软件提供着不容小觑的助力,我们可以通过网络阅览各式各样的学习资料以供借鉴,音频、文字、网站...都是很好的学习途径。也正是互联网的发展,为我们带来了技术交流的便利,如B站、CSDN、GitHub等技术交流社区十分火热。很多东西已经有了模板,不需要我们再花时间从头开始,能够在一定的基础上就行学习研发,这样就能把有限的精力花在刀刃上了。某些算法的研究成果也使得代码的质量得到了提升。
由此,我们所要设计的这样一个公司基础业务云办公管理软件,即实现办公自动化的系统应运而生,这将在一定程度上提高公司基础业务的处理效率,解放劳动力和生产力,更为提升科技创新水平节省下更多的资源。
针对公司基础业务在线办公管理软件的研究,在线办公管理系统是一个全新的领域,能够推进开辟新的市场并且扩大与云办公管理相关行业的市场需求 。
相比于过去的公司管理方式,云办公管理方式会使得公司的管理更加的清晰、系统。
公司的员工可以通过其中的考勤系统来进行打卡签到,通过报销系统来向公司报销一部分的支出,同时还有个人收入柱状图使得自己的工资变动情况有更加直观的了解,同样的管理人员也可以通过该系统来招收员工,增加岗位,管理公司每个员工的考勤情况,能够快捷的查看以及批准报销账单,最后同样也可以通过公司收入统计柱状图来对比各个月的收入情况更加的直观。
公司基础业务云办公管理软件办公是将现代化办公和计算机网络功能结合起来的一种新型的办公管理方式,通过该系统使信息的传递更加快捷和方便,从而极大地扩展了办公管理手段,实现了办公管理的高效率。 本课题采用面向对象分析与设计方法,主要面向的是公司的员工和公司的管理人员,面对这两种不同的对象,公司基础业务云办公管理软件也具有不同的操作方面,对于员工最主要的就是考勤系统,报销系统以及收支系统来快速的了解以及上报自身的情况,面对管理人员则是通过人事管理、收支管理、考勤管理、报销管理,来快速的管理公司的种种情况。
第1章 公司基础业务云办公管理系统就是通过人事管理、收支管理、考勤管理、报销管理和个人平台这些功能使数据以一种更为生动的形式呈现出来,使人一目了然。在一定程度上提高公司基础业务的处理效率。
第2章 对公司基础业务云办公管理系统进行面向对象分析,通过分析该系统的需求,提供相应的功能以满足使用者的需求,做出相应的用例模型,使得对于该系统的设计更加的简洁明了。
第3章 对公司基础业务云办公管理系统进行面向对象设计,对软件体系结构,软件功能,数据库进行设计。
在现实生活中,上级部门对自己下属部门的调配往往十分繁琐,需要层层审核,对时间和空间的要求十分严格,但在系统中,有需求部门只需要在自己想要的模块中提交变更申请,上级部门便可以很方便的了解情况并且快速的给予回应,摆脱了时间和空间的限制。
在打卡和报销的日常中,员工有时会因为打卡系统的失灵而错过打卡但不知道或者申报的消费并没有报上但是不知道原因,在我们的系统中员工可以很方便的查询自己的打卡记录及报销项目,杜绝了此类事件的发生。并且正常的工作中员工很少知道自己的收支情况,但在系统中可以很方便的进行查询,最后的个人界面可以一目了然的知道自己的工作状态,方便员工对自己进行提高。
(1)人事部门登陆可以非常方便的对部门岗位及员工进行添加和调配。
(2)员工账号可以在到达工位后在线进行签到。
(3)员工在到达下班时间后可以在线进行签退,快捷的了解自己的在班时长,领导也能够对员工的工作时间一目了然。
(4)行政部门可以不受空间和时间的限制在考勤管理中直接进行查看员工工作情况。
(5)员工在进行报销是可以直接提交申请,不受时间和空间的限制。
(6)财务部门在审批报销单据时能够不受空间限制的在线审批员工的报销单据。
(7)领导和员工不需要仔细保存单据,只要在系统中就可以方便的进行查询。
(8)员工不需要记录自己的工资明细,系统能够直接显示出出勤情况和奖金发放。
(9)在个人中兴中员工可以直接的了解自己工作内容的变更,不需要人工通知,并且了解自己的出勤状况和工作完成进度,规划自己的提高方案。
(1)流程步骤1
员工点击签到,登记上班信息,完成上班信息的上传。
(2)流程步骤2
员工点击签退,登记下班信息,完成下班信息的上传。
(3)流程步骤3
系统生成员工出勤状况,方便查询,完成了对员工出勤状况的统计。
(4)流程步骤4
系统对签到员工进行排列,完成对签到员工位置的确定。
(5)流程步骤5
行政人员设置审查通知,完成了对员工通知。
(6)流程步骤6
行政人员完成审查,完成了对签到的确认。
员工签到签退,查询自己的考勤记录。因为员工有时会因为打卡系统的失灵而错过打卡,查询考勤记录可以帮员工实时了解自己的打卡记录并且帮助领导及时了解员工情况,这一流程主要完成了对员工的管理。
(1)流程步骤1
员工填写报销项目和金额,完成对项目的分类
(2)流程步骤2
员工拍照上传报销单据,为了提供报销依据,完成了信息的采集
(3)流程步骤3
系统根据报销单的填写进行分类
(4)流程步骤4
财务部门对报销单进行审核
(5)流程步骤5
系统通知员工审核结果
员工拍照上传报销单,生成报销记录,这一流程便于员工与领导的对接,摆脱了时空的限制,这一流程主要完成了员工报销的工作。
(1)流程步骤1
系统计算各员工工资,这一步骤为了发放员工和统计工资,完成了对工资的统计。
(2)流程步骤2
员工查询工资,这一步骤为了确保员工对工资没有异议,完成了对工资的复查。
(3)流程步骤3
财务部门填写企业其他支出收入明细,方便系统计算。
(4)流程步骤4
系统根据划分生成图像表格方便财务部门查看总结。
(1)流程步骤1
工作人员填写发布类型
(2)流程步骤2
工作人员填写相关内容
(3)流程步骤3
系统排列内容
(4)流程步骤4
员工查看企业新闻
这一功能主要是为了方便员工了解企业信息
(1)流程步骤1
系统总结考勤和细分计算总分
(2)流程步骤2
系统排列分数
(3)流程步骤3
员工查看积分明细
(1)流程步骤1
员工填写离职申请
(2)流程步骤2
领导审批申请并填写相关信息
(3)流程步骤3
系统发送审核情况
(4)流程步骤4
员工确认或者取消
因为在日常工作中人事的变更往往需要通知许多相关人员十分不便,需求人员可以在系统中根据自己的需求提交离职申请。
(1)流程步骤1
员工填写升职申请
(2)流程步骤2
部门审批申请并填写相关信息
(3)流程步骤3
系统发送审核情况
因为在日常工作中人事的变更往往需要通知许多相关人员十分不便,需求人员可以在系统中根据自己的需求提交职位升迁的需求。
(1)流程步骤1
员工填写岗位调动申请
(2)流程步骤2
领导审批申请并填写相关信息
(3)流程步骤3
系统发送审核情况
(4)流程步骤4
领导填写岗位信息
因为在日常工作中人事的变更往往需要通知许多相关人员十分不便,需求人员可以在系统中根据自己的需求提交岗位变更需求。
(1)流程步骤1
员工填写部门调动申请
(2)流程步骤2
部门领导审批申请
(3)流程步骤3
申请部门审核申请
(4)流程步骤4
系统发送审核情况
因为在日常工作中人事的变更往往需要通知许多相关人员十分不便,需求人员可以在系统中根据自己的需求变更部门。
(1)流程步骤1
人事部门填写入职信息
(2)流程步骤2
系统生成相关账号
(3)流程步骤3
系统发送账号信息
因为在日常工作中人事的变更往往需要通知许多相关人员十分不便,需求部门可以在系统中根据自己的职责添加信息。
参与者共有四个,分别为行政部,财务部,人事部和员工。不算身份验证总共有十个功能块,下边详细介绍参与者和对应的业务。行政部:积分管理,考勤管理,新闻管理。财务部:收支管理,报销管理。人事部:部门管理,升职管理,岗位管理,入职管理,离职管理身份验证为几个参与者共有的功能。具体关系模型如下图2-1所示。
业务用例模型图
(1)出勤积分管理业务的系统用例模型
是人事对员工出勤及积分的管理,首页界面点击员工出勤,考察员工的出勤情况,再点击积分管理,对员工相应的积分进行管理,其业务用例规约见下表。
出勤积分管理业务用例规约
标题 |
内容 |
用例名称 |
考勤管理 |
用例描述 |
为了监管员工的出勤、统计其上班时间并对其进行积分统计,公司员工在人事的监督下登录系统进行签到。 |
执行者 |
员工、人事 |
前置条件 |
员工在人事主管的监督下进行签到 |
后置条件 |
人事确认签到签退信息并做相应记录和统计 |
正常流 |
1. 员工出勤 1.1 员工在人事的监管下,定时定点签到 1.2 员工到固定下班时间之后进行签退 2. 人事统计出勤时间 2.1 人事记录员工的签到时间 2.2 人事记录员工的签退时间 2.3 人事计算员工的出勤时长 3. 人事统计出勤积分 3.1 人事获取员工的出勤时长 3.2 人事计算出员工的出勤积分 3.3 人事录入员工的出勤积分 3.4 人事发布员工的出勤积分 3.5 人事查看员工的出勤积分 3.6 人事修改员工的出勤积分 3.7 人事删除员工的出勤积分 4. 身份验证 4.1 员工身份验证 4.2 人事身份验证 |
替代流以及异常处理 |
1. 员工是否正确签到 2. 人事是否正确录入出勤积分 |
业务规则 |
1. 全局规则 员工需在人事监督下登陆系统才能进行操作 2. 交互规则 人事要根据员工的签到签退信息进行记录统计 3. 内禀规则 人事提交统计信息需要通过申请 |
涉及实体 |
|
出勤积分管理用例中,主要是两个主体:人事和员工。人事连接统计出勤时间类和计算出勤积分类。统计出勤时间类包括记录签到签退时间和计算出勤时长;计算出勤积分包括获取出勤时长,统计、录入、发布、查看、删除和修改出勤积分。员工要进行签到签退。人事和员工都要进行身份验证。
出勤积分管理用例中,主要是两个主体:人事和员工。人事连接统计出勤时间类和计算出勤积分类。统计出勤时间类包括记录签到签退时间和计算出勤时长;计算出勤积分包括获取出勤时长,统计、录入、发布、查看、删除和修改出勤积分。员工要进行签到签退。人事和员工都要进行身份验证。
出勤积分管理用例模型图
出勤积分管理用例中,主要是两个主体:人事和员工。人事连接统计出勤时间类和计算出勤积分类。统计出勤时间类包括记录签到签退时间和计算出勤时长;计算出勤积分包括获取出勤时长,统计、录入、发布、查看、删除和修改出勤积分。员工要进行签到签退。人事和员工都要进行身份验证。
(2)新闻管理业务的系统用例模型
新闻管理业务之中,公司工作人员可以发布公司新闻内容,员工可以查看新闻以方便员工了解企业信息,工作人员和员工需要登陆后操作系统功能,公司工作人员可以发布公司新闻内容,员工可以查看新闻以方便员工了解企业信息执行者包括工作人员和员工,工作人员其实也是员工的一部分。工作人员可以管理新闻发布,员工可以查看新闻。其业务用例规约见下表。
新闻管理业务用例规约
标题 |
内容 |
用例名称 |
新闻管理 |
用例描述 |
公司工作人员可以发布公司新闻内容,员工可以查看新闻以方便员工了解企业信息 |
执行者 |
工作人员,员工 |
前置条件 |
工作人员成功发布新闻到公司网站上 |
后置条件 |
员工可以查看公司新闻 |
正常流 |
1. 工作人员可以管理新闻发布 1.1 工作人员可以填写发布新闻类型 1.2 工作人员可以填写相关内容 1.3 工作人员可以添加新闻内容 1.4 工作人员可以修改新闻内容 1.5 工作人员可以删除过期新闻 1.6 工作人员可以查看新闻条目 2. 工作人员可以提供友情链接 3. 员工可以查看新闻 3.1 员工可以查看新闻分类 3.2 员工可以查看新闻具体内容 3.3 员工可以访问链接 |
替代流以及异常处理 |
1. 新闻发布后,内容排版出现异常 2. 员工访问链接时,无法打开 |
业务规则 |
1. 工作人员和员工需要登陆后操作系统功能 |
涉及实体 |
新闻:发布人名称,发布时间 |
新闻管理业务之中,执行者为工作人员,工作人员成功发布新闻到公司网站上,员工可以查看公司新闻,员工其系统用例图见图。主要职能是工作人员可以管理新闻发布,员工可以查看新闻。工作人员可以发布新闻的同时,身份也是属于员工的。工作人员管理新闻发布时,可以进行发布新闻类型,填写相关内容,添加新闻内容,修改新闻内容,删除新闻内容,查看新闻条目,发布完新闻后,也要生成一个新闻链接,并提供给员工进行查询。
新闻管理系统用例图
(3)报销管理的系统用例模型
报销管理的正常流是从员工申请报销开始,员工通过对管理账单信息来对账单信息进行增删改查的操作来完成要上传的账单,完成后则由系统进行上传将其传送到财务部门处,接着由财务部门对账单尽心管理,通过查看批注等操作来核实账单的信息并决定是否通过发放相关金额,并由系统通知员工相关的结果,其业务用例规约见下表。
报销管理的业务用例规约表
用例名称 |
报销管理 |
用例描述 |
员工在需要报销时,对财务部门进行上报,财务部门审批报销内容,并通知员工结果 |
执行者 |
员工,财务部门 |
前置条件 |
员工上传报销内容 |
后置条件 |
财务部门审批报销账单 |
正常流 |
1. 员工可以管理账单 |
替代流以及异常处理 |
1. 账单为上传收据照片时,系统无法生成账单 |
业务规则 |
1.全局规则 |
涉及实体 |
1. 员工:手机号,姓名,账号 |
报销管理的开始是从员工申请报销开始,员工通过填写相关的报销申请表,以及上传相关的收据或图片来证明是否可以报销,然后通过系统生成账单,并发送到财务部门处,当财务部门受到员工的账单时就可以对账单的内容进行审核并添加相关备注来审批账单,结束后系统则会提示员工账单的通过情况,,其系统用例图见下图。简要说明
报销管理的系统用例图
(4)收支管理业务的系统用例模型
收支管理主要是为了财务可以进行财务计算,和传统的纸质收支计算相比,简化了不需要再次计算账本,系统会自动计算出利润,利润率,总收入,总支出,收支情况图表等,节省了大量时间,其业务用例规约见下表。
收支管理业务用例规约表
标题 |
内容 |
用例名称 |
收支管理 |
用例描述 |
财务部可以在系统中根据自身的财务出入状况进行登记 |
执行者 |
财务 |
前置条件 |
财务部先填写完收入表,支出表 |
后置条件 |
财务进行利润,和收支总表的填写和计算 |
正常流 |
1. 财务填写收入表 2. 财务填写支出表 3. 财务生成收支总表 4. 财务生成利润表 |
替代流以及异常处理 |
财务没有收支表,提醒添加 |
业务规则 |
1. 全局规则 财务需要登陆才能进行操作 2. 交互规则 财务发布收支情况,员工可以查看 3. 内禀规则 利润表表需建立在收入和支出表上 |
涉及实体 |
财务:姓名,编号 支出表:费用,时间,原因,编号,操作者,凭证 收入表:费用,时间,原因,编号,操作者,凭证 收支表:费用,时间,原因,编号,操作者,凭证,总收入,总支出,图表 利润表:费用,时间,原因,编号,操作者,凭证,利润率,利润 |
收支管理业务的系统用例模型,财务部在收入管理,可以对收入信息进行增,删,改,查,查全部。同样,支出信息也是如此,通过增加收入得到的收入表以及增加支出得到的支出表,后面会生成一个收支总表和一个利润表,如下图所示。
收支管理业务的系统用例模型图
人事部门,行政部门,财务部门,员工都需要通过身份认证来进入软件,从而获得不同的身份权限,人事部门的权限为入职管理,部门管理,离职管理,升职管理,岗位管理,行政部门的权限为考勤管理,积分管理,新闻管理,人事部门的权限为报销管理,收支管理,而员工则可以使用大多数的功能来查看自己的各项信息。
泳道图,一种UML活动图,能够清晰体现出某个动作发生在哪个部门,常见工具有StarUML、Rose、Visio等。泳道图在纵向上是部门职能,横向是岗位(有时候横向上不区分岗位)。绘图元素与传统流程图类似,但在业务流程主体上,通过泳道(纵向条)区分出执行主体,即部门和岗位来。
泳道图是将模型中的活动按照职责组织起来。这种分配可以通过将活动组织成用线分开的不同区域来表示。由于它们的外观的缘故,这些区域被称作泳道。它可以方便的描述企业的各种业务流程,能够直观地描述系统的各活动之间的逻辑关系,利于用户理解业务逻辑。
在如上图中的业务泳道图中,横向的岗位有人事、行政、财务、员工,纵向的部门职能主要有:岗位调动(升值、降职)、部门调动(调进,调出)、出勤管理、积分计算、新闻发布。在业务流程主体上,我们通过泳道区分出执行主体,即部门和岗位。
(1)出勤积分管理业务的泳道图
主要展示员工出勤积分管理的业务流程,存在正常流的输出,也存在异常流的判断及处理。我们可以通过这个泳道图,清晰方便地看到企出勤积分管理业务的流程,能够直观地描述系统的各活动之间的逻辑关系,有利于让用户理解业务逻辑。具体见图:
出勤积分管理业务泳道图
新闻管理和入职管理。新闻管理业务内容主要是:工作人员可以管理新闻发布,工作人员可以提供友情链接,员工可以查看新闻;入职管理业务内容主要是:人事部门可以管理入职信息,人事部门可以上传入职信息,系统管理员可以处理员工信息,系统管理员可以发送员工账号。其中的人物包括,工作人员(员工的有权限和能力的一类),员工,系统管理(员工中另一类有权限和能力的一类),人事部门人员。他们的工作并履行职能都需要登录进行身份认证。
(2)新闻管理业务的泳道图
(3)报销管理的泳道图
员工通过对账单进行增删改查来完成对账单的操作,然后通过查看账单条目来选择相应的账单由系统进行上传账单操作,并由系统检测账单信息是否缺失,接着由财务部门查看账单列表选择账单,对账单内容进行查看,进行批注,完成后由系统通知员工结果。
(4)收支管理的泳道图
由财务部门进行身份确认进去到财务部门的系统,财务部门对公司的各项收支进行详细的记录,通过查看收支信息列表可以对各项记录进行增删改查的操作,完成相关操作后,交由系统对收支情况进行统计,并生成更加直观的图标。
此分析类图的出勤积分管理系统,一共包括7大类,分别是
用户类拥有属性:手机号、姓名、用户信息、用户编号
账户信息类拥有属性:用户编号、用户密码、用户权限
积分信息类拥有属性:计算对象、出勤时长、积分详情、特殊积分信息
出勤积分类拥有属性:计算对象、签到签退时间、出勤时长、出勤积分、出勤积分权重
加班积分类拥有属性:计算对象、加班时长、加班积分、加班积分权重
节假日积分类拥有属性:计算对象、节假日加班时长、节假日加班积分、节假加班权重
地址信息类拥有属性:地址、联系人、联系人手机
用户界面层拥有方法:传递进入详情页请求、显示积分列表、传递编辑积分详情操作...
控制器层拥有方法:验证处理进入详情页请求,处理编辑积分详情操作、处理积分介绍操作业务层拥有方法:获取积分列表、验证积分列表是否为空、获取积分列表、验证是否正常出勤、获取地址信息列表、验证地址信息列表是否为空、获取地址信息
存储层拥有方法:查询积分列表、积分和地址、添加或修改积分和地址,如下图:
出勤积分管理业务的分析类图
新闻管理业务分析图,细节描写了新闻管理业务的细节流程,insert入了新闻管理各个模块之中。并且各个模块要与用户界面层,控制器层,业务层和存储层联系起来,将各个功能和流程联系起来。执行者主要为工作人员,首先可以在新闻类里看到新闻类编号,内容更新时间,新闻记录,新闻总数,而新闻类里的主体时新闻项,获取新闻项的编号,名称,更改时间以及发布新闻人员得到员工账户。之后便可以对与新闻进行处理,故有新闻处理项,可以看到处理新闻的编号,新闻更改时间,账户编号,新闻更改历史。还有一个大类是链接类,毕竟有了新闻就应当生成相应的链接,链接类包括链接编号,链接创建时间,链接名称。包括了链接项,每个链接项都有自己的编号,名称,以及对于链接里的图片内容,还有每个链接创建的时间。具体分析类图如下所示。
新闻管理业务的分析类图
报销管理的分析类图主要包括员工类,报销单类,账单类这三个实体类。员工通过使用其相应的账号进行登录,所以账号信息就需要与员工实体类相关联,员工的主要信息包括手机号,姓名账号编号以及员工编号,通过员工编号确定其相关身份,账户信息需要包括账户编号,账户密码以及账户权限,报销单项主要是对报销单主要内容的填写所以报销单项需要有报销单项编号,报销单编号,报销内容,报销收据图片这些信息,报销单则只需要报销单编号,报销员工,报销时间,报销金额这些信息。帐单项主要是对帐单主要内容的填写帐单项就需要组成其的相关报销单编号,账单编号和账单项编号,账单类需要账单编号,员工,时间,金额这些信息。
报销管理业务的分析类图
收支管理的分析类图主要包括财务部门类,收入类,支出类这三个实体类。财务部门通过使用其相应的账号进行登录,所以账号信息就需要与财务部门实体类相关联,财务部门的主要信息包括手机号,姓名账号编号以及财务部门编号,通过财务部门编号确定其相关身份,账户信息需要包括账户编号,账户密码以及账户权限,收入项主要是对收入主要内容的填写所以收入项需要有收入项编号,收入编号,收入金额,拨款人,时间这些信息,收入单则只需要收入编号,总金额,收入时间,收入项编号这些信息。支出项主要是对支出主要内容的填写所以支出项需要有支出项编号,支出编号,支出金额,收款人,时间这些信息,支出单则只需要支出编号,总金额,支出时间,支出项编号这些信息。
收支管理业务的分析类图
一款软件的需求分析在设计之初尤为重要,故而软件体系结构设计不能只放眼于具体的代码实现阶段。我们在对应的设计当中也是尽可能地把用户的需求完善,做到每个用户各司其职,需要用一个类似于软件构架师的思维和角度去仔细思考和斟酌如何才能设计出一个体系结构相对合理,存储方式比较简洁的产品项目。
软件设计是一种设计方案,它在一个复杂的工艺中形成。具体到从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法并编写具体的代码。
软件设计的层次很多,不同的软件设计过程有不同的划分层次,大致可分为:架构设计,api/spi设计,数据库设计,功能设计,类设计,方法设计。
软件功能设计主要有以下四大原理:
(1)抽象:软件设计中考虑模块化解决方案时,可以定出多个抽象级别。抽象的层次从概要设计到详细设计逐步降低。
(2)模块化:模块是指把一个待开发的软件分解成若干小的简单的部分。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
(3)信息隐蔽:信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
(4)模块独立性:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。模块的独立程度是评价设计好坏的重要度量标准。衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准。内聚性是信息隐蔽和局部化概念的自然扩展。一个模块的内聚性越强则该模块的模块独立性越强。一个模块与其他模块的耦合性越强则该模块的模块独立性越弱。
内聚性是度量一个模块功能强度的一个相对指标。内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚。
如果需要管理出勤,那么管理出勤就需要的步骤为:执行者主要为人事,首先可以在出勤积分信息类里看到新闻类编号,内容更新时间,新闻记录,新闻总数,而新闻类里的主体时新闻项,获取新闻项的编号,名称,更改时间以及发布新闻人员得到员工账户。之后便可以对与新闻进行处理,故有新闻处理项,可以看到处理新闻的编号,新闻更改时间,账户编号,新闻更改历史。还有一个大类是链接类,毕竟有了新闻就应当生成相应的链接,链接类包括链接编号,链接创建时间,链接名称。包括了链接项,每个链接项都有自己的编号,名称,以及对于链接里的图片内容,还有每个链接创建的时间。
(1)设计类图
MVC是由Model(模型)放置业务实体,表示操作数据;View(视图)放置UI模板文件,负责展示输出结果;Controller(控制器)放置Controller类,处理URL请求 组成的。通常是和三成架构、工厂等一起使用,可以将高内聚和低耦合的概念体现得淋漓精致。如果想要完全理解楼主还得买本书或者找点资料好好看看,就算明白了道理短时间也很难在实际操作中完全体现这些思想。其中,Controller类和Servlet类组成了完整的C,但是controller替换了Servlet。
(2)表示层设计
(3)业务逻辑层设计
Service接口有getsattendList、getpointsList、isattendEmpty、updateAddress、issigninSuccess方法。分别实现了用户的请求获取出勤列表、获取出勤积分列表、判断签到是否为空、更新地址信息的功能。
(4)数据访问层设计
类似的不再表示QAQ
数据库设计的设计内容包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护。
数据库的设计,要考虑和遵循下列数据库设计的基本原则,以建立稳定、安全、可靠的数据库。一致性原则:对数据来源进行统一、系统的分析与设计,协调好各种数据源,保证数据的一致性和有效性。完整性原则:数据库的完整性是指数据的正确性和相容性。规范化:数据库的设计应遵循规范化理论。安全性原则:防止非法用户使用数据库或合法用户非法使用数据库造成数据泄露、更改或破坏。要有认证和授权机制。可伸缩性与可扩展性原则:数据库结构的设计要具有良好的扩展性、伸缩性和适度冗余。
(1)物理模型
考虑组成系统的计算机和设备的类型以及它们的互联,不涉及特定的技术细节。物理模型是从计算机和所用网络技术的特定细节中抽象出来的分布式系统底层硬件元素的表示。
(2)体系结构模型
从系统的计算元素执行的计算和通信任务方面来描述系统;这里计算元素或是指单个计算机或是指通过网络互联的计算机集合。CS或P2P是分布式系统中的两种最常用的体系结构模型。
共有五六十张表,太多了,只贴一部分
(1)积分信息(23xiaxu_Integralinfo)数据表,用于描述员工出勤积分,见表3-1:
表3-1 23xiaxu_Integralinfo表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
int |
100 |
Yes |
编号 |
2 |
computingobject |
String |
20 |
No |
计算对象 |
3 |
attendancetime |
Date |
500 |
No |
出勤时长 |
4 |
integralcontents |
int |
500 |
No |
积分内容 |
5 |
specialintegralcontents |
int |
500 |
No |
特殊积分内容 |
6 |
forward |
Boolen |
(2)人事(23xiaxu_Personnel)数据表,用于描述人事的个人信息,见表3-2:
表3-2 23xiaxu_Personnel表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
String |
20 |
Yes |
编号 |
2 |
name |
String |
20 |
No |
姓名 |
3 |
usersinformation |
String |
50 |
No |
客户信息 |
4 |
phone |
String |
20 |
No |
电话 |
(3)账户信息(23xiaxu_UsersAccount)数据表,用于描述账户信息,见表3-3:
表3-3 23xiaxu_UsersAccount表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
String |
20 |
Yes |
编号 |
2 |
password |
String |
20 |
No |
密码 |
3 |
role |
Int |
20 |
No |
角色 |
(4)出勤积分(23xiaxu_attendancepoints)数据表,用于描述员工的出勤积分,见表3-4:
表3-4 23xiaxu_attendancepoints表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
String |
20 |
Yes |
编号 |
2 |
computingobject |
String |
20 |
No |
计算对象 |
3 |
attendancetime |
Int |
500 |
No |
出勤时长 |
4 |
check-inandcheck-outtime |
Date |
500 |
No |
签到签退时间 |
5 |
integraldetails |
Int |
500 |
No |
积分详情 |
6 |
exceptionalcase |
Boolen |
特殊情况 |
||
7 |
holidaysandfestivals |
Boolen |
节假日 |
(5)地址信息(23xiaxu_addressmessage)数据表,用于描述员工的地址信息,见表3-5:
表3-5 23xiaxu_addressmessage表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
Int |
20 |
Yes |
编号 |
2 |
address |
String |
50 |
No |
地址 |
3 |
linkman |
String |
500 |
No |
员工 |
4 |
generalstaff |
String |
500 |
No |
人事 |
5 |
defaultaddress |
Boolen |
(6)离职(23xiaxu_departure)数据表,用于描述离职信息,见表3-6:
表3-6 23xiaxu_departure表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
int |
100 |
Yes |
编号 |
2 |
object |
String |
20 |
No |
离职对象 |
3 |
departuretime |
Date |
500 |
No |
离职时间 |
4 |
departurereason |
int |
500 |
No |
离职原因 |
5 |
departureprocess |
int |
500 |
No |
离职流程 |
6 |
forward |
Boolen |
(7)行政(23xiaxu_Admin)数据表,用于描述行政人员信息,见表:
表3-7 23xiaxu_Admin表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Id |
String |
20 |
Yes |
编号 |
2 |
name |
String |
20 |
No |
姓名 |
3 |
usersinformation |
String |
50 |
No |
客户信息 |
4 |
phone |
String |
20 |
No |
电话 |
(8)员工(23xiaxu_Staff)数据表,用于描述员工信息,见表:
表3-8 23xiaxu_Staff表
序号 |
名称 |
类型 |
长度 |
是否主键 |
说明 |
1 |
Name |
String |
50 |
No |
名字 |
2 |
Mobile |
Int |
50 |
No |
手机号 |
3 |
Id |
Int |
50 |
Yes |
编号 |
4 |
Reason |
String |
50 |
No |
离职原因 |
5 |
Time |
Int |
50 |
No |
离职时间 |
说明:进入管理员登录界面:在第一行输入行中填写登录用的名称,即在“请输入用户名”中填写账户名称或账户,在第二行中填写登录的密码,即在“请输入密码”中填写账户的密码。在“验证码”中填写和后面提示框中出现的相同的验证码,如果看不清楚,可以点击验证码,其中的验证码会自动刷新,最后点击【登录】按钮,验证成功后,进入软件管理页面,如果验证失败就会登录失败,显示账户不存在。
说明:点击左边导航栏中的【岗位管理】链接,展开后,点击【调岗】链接,会显示岗位调动界面,在该界面中,会显示一个岗位调动申请书,第一行可以填入员工姓名和员工编号,在填入员工姓名和员工编号的下方,是一个申请表,表中左边可以填入目前职位的信息,包括现部门(在现部门后面的文本框内可以填入申请人现在所在的部门)。现岗位(在现岗位后面的文本框内可以填入申请人现在所在的岗位)。现在薪资(在现在薪资后面的文本框内可以填入申请人现在的薪资状况)。表中右边可以填入目标职位的信息,包括拟部门(在拟部门后面的文本框内可以填入申请人所想要调动到的部门)。拟岗位(在拟岗位后面的文本框内可以填入申请人所想要申请的岗位)。目标薪资(在目标薪资后面的文本框内可以填入申请人期望的薪资状况)。下面是一个文本框,可以填写申请的原因。填写完毕后,点击【提交】按钮,即可提交岗位调动申请书。
说明:点击左边导航栏中的【岗位管理】链接,展开后,点击【查看我的申请书】链接,会显示查看我的申请书界面,在该界面中,会显示一个员工申请的岗位调动申请书目录,显示员工提交的岗位调动申请书。显示“旧部门”,“旧岗位”,“旧薪资”,“新部门”,“新岗位”,“目标薪资”,“理由”。底下的员工申请的岗位调动申请书目录。
点击左边导航栏中的【收支管理】链接,展开后,点击【添加收支】链接,会显示支出表单和收入表单,可以在支出表单中输入编号,时间,费用,原因,凭据和操作人员,点击【提交】按钮即可,即可完成对支出项目的提交。可以在收入表单中输入编号,时间,费用,原因,凭据和操作人员,点击【提交】按钮即可完成对收入项目的提交。
点击左边导航栏中的【收支管理】链接,展开后,点击【查看收支】链接,会显示收支目录表,可以清楚地看到收支的编号,提交时间,收入支出,理由,证明(收支过程证明),操作员。此功能可以清楚看到添加的收支后,形成的目录,包含了全部收支和全部收支的情况。
说明:点击左边导航栏中的【管理】链接,展开后,点击【管理员管理】链接,会显示管理员管理界面,在该界面中,会显示一个管理员后台管理表,显示一个管理员员工信息的表,包括,“ID”,表示管理员工编号,“账号”,“联系电话”,表示管理员的联系方式,“邮箱”,管理员的邮箱,“角色”,扮演的角色,即权限,“状态”,表示账号的可用性。“操作”,包括【修改状态】,修改账号的可用性;【编辑】,编辑对应的管理员员工信息;【删除】,删除掉该管理员员工信息。注意左上角也有功能性的小图标,从左到右分别代表是添加(添加管理员员工信息到表中),更新(更新表格),删除(删除选中的管理员员工信息)
点击左上方导航栏中的【添加管理员】链接,展开后,会显示添加管理员表,可以在添加管理员表单中输入账号,密码和联系电话,点击【确定】按钮即可,即可完成对添加管理员的提交。
说明:点击左上方导航栏中的【更新管理员】链接,展开后,会显示更新管理员表,可以在更新管理员表单中输入需要修改的账号,密码和联系电话,点击【确定】按钮即可,即可完成对添加管理员的提交。
说明:在上方的导航栏中的姓名与工号两个文本框可以通过搜索员工的姓名和工号来查找需要进行操作的员工,使其的各项基本信息在下方的列表中展示出来,点击取消按钮就会返回到一开始按照id排序的列表;左上角的三个按钮分别为增加积分信息,修改积分信息以及删除积分信息,通过多列表前的选择框进行勾选就可以选择到需要修改的信息列,选择多个选择框可以同时对多个列表信息进行修改,当员工离职时就需要删除器相关的积分信息,入职时就需要增加其积分信息,当做出企业规定的各项积分活动时就可以通过修改对其积分信息进行修改,接下来的就是列表中的各项信息,需要与数据库建立连接从积分表中将各种信息一一调出,表右侧的更新与删除按钮可以直接对当前行的信息进行修改简便了操作。
点击左边导航栏中的【管理】链接,展开后,点击【入职管理】链接,会显示员工的入职管理界面,在该界面中,第一行可以填入员工姓名和员工工号,可以在非常长的员工表中进行搜索员工的信息功能,有【搜索】和【取消】按钮。下面是员工信息表,员工信息包括了员工姓名,工号,年龄,岗位,入职时间,部门。可以进行的操作有【更新】,可以在员工目录中更新对应的员工信息。
说明:点击左边导航栏中的【新闻管理】链接,展开后,点击【查看新闻】链接,会显示查看的新闻界面,在该界面中,会显示一个新闻内容表,包括“新闻编号”,代表新闻的编号,“新闻标题”,代表显示新闻的标题,点击新闻标题可以跳转到新闻的详细信息进行查看具体新闻信息。“新闻发布时间”代表着发布者发布新闻的时间,“新闻发布者”,代表着新闻发布者的账号名称或者账号。
点击左边导航栏中的【签到管理】链接,展开后,点击【员工签到】链接,会显示员工的签到管理界面,在该界面中,第一行可以填入员工姓名和员工工号,可以在非常长的员工表中进行搜索员工的信息功能,有【搜索】和【取消】按钮。下面是员工信息表,员工信息包括了员工姓名,工号,年龄,岗位,入职时间,部门。可以进行的操作有【签到】,可以在员工目录中找到自己的信息并进行签到。
点击左边导航栏中的【管理】链接,展开后,点击【离职管理】链接,会显示员工的离职管理界面,在该界面中,第一行可以填入员工姓名和员工工号,可以在非常长的员工表中进行搜索员工的信息功能,有【搜索】和【取消】按钮。下面是员工信息表,员工信息包括了员工姓名,工号,年龄,岗位,入职时间,部门。可以进行的操作有【删除】,可以在员工目录中删除对应的员工信息。
点击左边导航栏中的【报销上传】链接,展开后,点击【添加报销单】链接,会显示添加报销单的表格,在该界面中,第一行可以填入报销人名字和报销单号,可以在非常长的报销单表中进行搜索报销单,有【搜索】和【取消】按钮。下面是报销单的目录,报销目录包括了报销人姓名,描述,报销单编号,状态,金额,日期。可以进行的操作,有【添加】按钮,添加报销单信息并录入,更新还可以对错误添加的报销单删除。
点击左边导航栏中的【升职管理】链接,展开后,点击【管理升职信息】链接,会显示管理员工的升职管理界面,在该界面中,第一行可以填入员工姓名和员工工号,可以在非常长的员工表中进行搜索员工的信息功能,有【搜索】和【取消】按钮。下面是员工信息表,员工信息包括了员工姓名,原职位,编号,升/降职,目标职位,时间。可以进行的操作有【处理】,可以在员工目录中对应的位置进行对员工信息的更新。可以进行的操作有【删除】,删除对应的员工信息。
系统测试部分不再赘述