基于web计算机系统公司员工考勤系统的设计与实现计算机软件专业_第1页
基于web计算机系统公司员工考勤系统的设计与实现计算机软件专业_第2页
基于web计算机系统公司员工考勤系统的设计与实现计算机软件专业_第3页
基于web计算机系统公司员工考勤系统的设计与实现计算机软件专业_第4页
基于web计算机系统公司员工考勤系统的设计与实现计算机软件专业_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中文题目:基于Web的中讯计算机系统(北京)有限公司员工考勤系统的设计与实现英文题目:THE DESIGNING AND IMPLEMENTATION OF THE SINOCOM COMPUTER SYSTEM (BEIJING) CO. LTD EMPLOYEE ATTENDANCE SYSTEM THAT BASED ON WEB 毕业设计(论文)共 62页(其中:外文文献及译文7页)图纸共 0张完成日期 2015年6月 答辩日期2015年6月摘要中讯计算机系统(北京)有限公司随着时代的发展,将计算机技术大量应用到各种信息管理的系统中,考勤管理系统是将计算机信息技术引入人力资源管理之中,利用计算机对人力资源进行管理的一种信息管理系统,它是企业信息化中的一个重要组成部分。介于在公司实习期间遇到的种种问题,本文主要针对目前公司的在线请假管理而设计的信息管理系统。文中对项目的一些相应的技术背景和软硬件环境都做了简要的描述,利用Oracle Database 10g Express Edition数据库管理系统进行数据存储,使用 MyEclipse 8.5集成开发环境进行开发;重点在于描述考勤系统业务流程的分析过程,和软件项目的实施过程,并对关键代码的实现进行必要的描述。中讯计算机系统(北京)有限公司员工考勤系统通过计算机实现对员工的请假和加班的在线管理,员工利用本系统进行请假和加班申请,管理人员可以用系统对其申请做审核。简化了人工申请审批的过程,同时响应了无纸化办公的绿色环保理念。关键字:考勤单;考勤管理;在线请假ABS TRACTWith the development of the times,Sinocom computer system (Beijing) co., LTD has apply the computer technology to various kinds of information management system.Attendance Management System puts the computer information technology and the human resource management together,which is an information management system using computer to manage human resources,has became an important component part of enterprise informatization.Take the problems I met in my internship into consideration,this is mainly aimed at the present situation of the company online leave management.Some corresponding technical background of the project,the hardware and software environment are described briefly in this paper.Oracle Database 10g Express Edition is used as DBMS.MyEclipse 8.5 integrated development environment is used as the development tool.The implementation of the key codes which are necessary are described as well. Employee attendance system of Sinocom computer system (Beijing) co., LTD has accomplish the online management of staff leave and overtime though computer.Using this system,staff can aplly for leave or overtime,and Managers can apply for review.It has simplified the process of artificial application for examination and approval,respond to the paperless office in the green environmental protection idea as well.KEYWORDS: Attendance sheet ,Attendance Management, Online For LeavingI目录1 项目概述11.1 现系统概述11.2公司组织机构11.3 系统业务流程21.4 系统功能模块42 系统需求分析52.1 需求陈述52.2 Use Case建模62.2.1定义活动者62.2.2 Use Case图73 系统架构设计153.1架构设计目标153.2 系统架构设计163.3 系统架构类图204 系统详细设计224.1 系统交互图224.1.1系统架构类交互图224.1.2 活动者与模块间的交互2214.1.3 系统协作图254.1.4 系统状态图284.1.5 系统活动图294.2 业务逻辑对象类设计304.2.1发现业务逻辑类304.2.2业务逻辑对象类图304.3 数据库设计334.3.1 ER图334.3.2 物理表结构图344.4 开发环境的选择354.4.1系统开发工具354.4.2数据库的选择364.4.3 系统网络架构设计365 编码385.1 概述开发工具及编程脚本385.2 脚本习惯说明385.3 脚本396 系统测试406.1 测试原则及测试方法概述406.2 测试项目测试用例416.3 软件测试结论446.3.1 软件能力446.3.2 缺陷和限制446.3.3 建议446.3.4 测试结论44结论45致谢46参考文献47附录A 中文译文48附录B 英文原文51附录C 源程序代码55辽宁工程技术大学毕业设计(论文)1 项目概述1.1 现系统概述中讯软件集团股份有限公司(以下简称中讯),自1995年成立以来,中讯以成为中国最有价值的软件开发公司为目标而自强不息。时至今日,中讯已成为以信息技术为核心,专门从事外包软件开发、技术服务支持等业务的高科技企业。 中讯的外包业务涉及证券、金融、保险、通信、流通、电子商务等应用领域。在长期的对外软件开发活动中,与客户建立了良好的合作关系,取得了客户的高度信任。 在企业成长过程中,中讯采取了强化自己在特定领域的优势,稳健成长的企业战略,使其在天时、地利、人和的大环境下,迅速崛起。几年来,中讯承接了来自日本为主的海外软件开发项目上百个,其中包括银行、证券、电子商务交易等规模庞大、要求严谨的核心业务开发。在承接海外软件开发项目方面,中讯在项目管理与质量控制、安全保密管理等方面独有心得,从而在技术,品质等方面处于竞争的优势。中讯作为大型集团化企业,在北京、上海、大连、成都、杭州、无锡、吉林等地设有大型研发中心,在日本东京、香港设有分支机构。创业以来,公司的业绩及员工数都保持着良好的增长趋势,一跃成为中国首屈一指的独立外包软件开发公司。中讯公司作为一个日趋成熟的对日软件外包公司,在员工的管理上已经逐渐形成自己的体系,但是由于经济危机期间公司的组织机构曾经进行过重组,所以在最普通的考勤管理上,虽然制度趋于完善,但是员工的请假、加班等过程仍需要员工手动填写纸质的申请表,管理人员还要一张表、一张表的向计算机里录入。对各种申请的审批,也需要员工亲自找每一个相关人员签字。由于公司规模的扩大,办公场地也在扩增,在不同场地工作的员工通常要找同一个人签字。第一,各个办公场地相距甚远;第二,审批人的工作地点有时也不固定,这就导致有时员工的申请得不到及时的反馈,这给平日企业员工的管理带来很多的不便。因此作为进入中讯实习的实习生,在被考勤相关的申请审批折磨了无数次后,逐渐产生实现一个与考勤管理相关系统的想法。1.2公司组织机构公司实行董事长监管下的总经理负责制,总经理和办公室负责协调开发部门、系统部门、质量部门、销售部门、人事部门和财务部门之间相互合作。完成整个公司的业务流程的运作。中讯能集中超过100人,同时开发大型机上的应用软件,充分体现在大型软件开发管理中的优势。中讯经过多年的努力,建成了一支以大批具备海外软件开发经验的技术人员为主的管理队伍,并制定了完整的项目管理与质量控制体系。中讯计算机系统(北京)有限公司事业部系统部总务部销售部品质监理部人力资源部开发部第一开发部第二开发部第三开发部第四开发部图1-1 公司组织机构图Fig 1-1 Diagram of the Companys Organizational Structure1.3 系统业务流程中讯软件公司作为一家大型软件公司,每个工作场地外都设有门禁,每个员工都配有门禁卡,一是为了公司的信息安全,二可以做员工的考勤。平日员工考勤信息由此收集,当员工因为某些原因未能正常进行考勤,则需要向公司提出申请,比如实习生为了毕业答辩返校而不能继续工作时,需先至自己所在工作场地的前台处,领取请假申请用表称为考勤单,按需要填写,考勤单上需要填写员工的工号、姓名、所在部门,开始请假的日期时间,填写好后交予部门负责人审批签字后,再交予前台录入电脑。经过前期调研分析和综合其它各方面的相关理论知识,给出整个考勤系统的业务流程图如下图1-2所示:整个考勤系统的开发主要围绕上述业务流程,侧重考勤单的管理进行开发,开发过程采用面向对象的开发技术,具体开发过程见下面的章节。图1-2 考勤系统流程Fig 1-2 the Workflow of Attendance System1.4 系统功能模块根据上述业务流程,整个考勤系统抽象出以下几个功能模块,如图1-3。下面模块划分只是抽象意义上的划分,各模块之间需要共享数据,相互协作,完成整个系统流程,单一事物功能模块间是相互独立的。中讯员工考勤系统差假管理模块考勤查询模块人事管理模块考勤信息采集模块数据库备份模块日志管理模块公告管理模块员工申请管理领导审核管理修改密码系统登录模块查看员工增加员工图1-3 系统功能模块Fig 1-3 Function Models of System2 系统需求分析2.1 需求陈述通常,需求陈述的内容包括:问题范围,功能需求,性能需求,应用环境及假设条件等。指出哪些是系统必要的性质,哪些是任选的性质。应该避免对设计策略施加过多的约束,也不要描述系统的内部结构,因为这样做将限制实现的灵活性。对系统性能及系统与外界环境交互协议的描述,是合适的需求。此外,对采用的软件工程标准、模块构造准则、将来可能做的扩充以及可维护性要求等方面的描述,也都是适当的需求。根据前期调研和分析,可得知在整个考勤系统的差假管理模块及部分考勤管理模块的需求如下所述。1)系统登录模块。提供员工登录功能,员工输入自己的工号和密码,系统做登录验证,决定是否可以访问系统。实现提供登录页面,输入员工号和密码,系统从数据库中验证是否有匹配数据,根据查询结果输出,若输入的工号和密码正确,进入系统的操作界面,不正确输出错误信息并重新返回登录页面。2)考勤信息采集模块:考勤信息采集模块主要用于签到签退等平日考勤信息的取得用,由于签到签退功能不是本次系统的实装重点,所以不做细致的需求分析。3)差假管理模块:差假管理模块大致分为员工申请和领导审批两大模块。而员工申请模块中又可分为员工的请假申请和加班申请两种。所以又将差假管理模块分为3个小模块。员工申请请假。实现填写、保存、提交请假单,可以实现手工填入请假申请表中的内容,并能保持请假信息的持久化(将请假的信息保存到数据库),输入请假单中的内容,包括请假人的信息,请假的起止时间,请假的类型等,系统对填写内容做出处理,对其内容进行格式验证,之后保存,等待员工确认申请。4)加班申请模块:实现填写、保存、提交加班申请表,可以实现手工填入申请表中的内容,并能保持加班申请信息的持久化(将加班的信息保存到数据库),输入加班申请表中的内容,包括加班人的信息,加班的起止时间等,系统对填写内容做出处理,对其内容进行格式验证,之后保存,等待员工确认申请。5)审核模块 为有审批权限的人提供审批页面,如部门经理,可以看到等待他审批的该部门的考勤单,并根据考勤的明细信息对其进行审核,输入审核意见,系统将审核结果反馈给申请人,系统可以将审批完成的考勤单持久化(将审批结果存入数据库)。6)考勤查询模块。查看请假信息。为员工提供请假单的查看功能,系统将按申请人列出其考勤申请,员工可以查看考勤单的明细,以确认提交。7)人事管理模块。人事管理是各种信息管理系统的基础,所以考勤系统中也必然涉及公司的员工的管理。大致分三个模块。密码修改。因为每一个新员工入社时由人事部提供信息再由系统部统一将新员工加入系统并提供初始密码,所以要为员工提供密码修改页面,让员工可以修改自己的登录密码,输入新密码和旧密码,系统根据新密码修改数据库数据,修改成功后系统返回登录页面,此时员工需重新登录系统。添加员工。向系统中添加员工,并能将增添的员工信息持久化,输入员工的基本信息,如员工的工号、姓名、入职时间等等基本信息,然后提交,可以将员工信息保存起来,以备在其他模块使用。查询员工。按给定的条件查询相应员工,输入查询条件,可以按员工编号和部门编号两种条件查询员工,提交查询条件,系统按条件从列表中查询,并返回查询结果给用户。2.2 Use Case建模2.2.1定义活动者根据以上的管理需求可以确定3个活动者,即企业员工、部门经理和公司的人事,企业员工利用考勤申请模块填写请假信息,如请假的时间、类型等,提交考勤单等待审核,并可以查看审核结果。管理者使用审核模块,可以查看待相关人员审核的考勤单信息,并对其进行审核。公司的人事主要使用系统的人事管理模块,系统中的所有活动都源自于企业员工,所以员工的管理是各种管理模块的基础。2.2.2 Use Case图Use Case(用例)就是对系统功能的描述。根据系统的需求分析并结合以上系统的活动者的定义得到主要的用例如下员工申请加班、申请请假、审批考勤单、查询考勤申请等等;图2-1考勤管理Use Case 图Fig2-1 Use Case for Attendance Management依据以上对系统的用例分析,对各用例做进一步分析得到以下对用例的描述。(1)登录系统用例。是所有用例的前置用例,只有先以合法身份登录系统,才可以再进行各种操作。表2-1 员工登录的用例规约Table 2-1 The Use Case Specification of employee login用例名称:登录系统用例编号:Sino_EAMS_001用例描述:用例主要功能是实现登录,起始于普通员工的登录参与者:企业员工前置条件:访问网页,进入登录界面后置条件:登录成功基本操作流程:参与者动作系统响应1.用户输入基本信息(员工号和密码),点击登录按钮2.系统查找数据库,看该用户在数据库表中是否存在,若存在则进入操作页面,若不存在,则进入2.2,若未输入则进入2.1可选操作流程:参与者动作系统响应2.1.1未输入用户名2.1提示用户名或密码没输入2.2.1用户名不存在2.2提示用户名或密码不正确2.1.2未输入密码2.2.2密码不正确(2)修改密码。为员工提供修改密码的功能,通过此功能修改初始密码。表2-2 修改密码的用例规约Table 2-2 The Use Case Specification of change the password用例名称:修改密码用例编号:Sino_EAMS_002用例描述:用例主要功能是实现登录密码的修改参与者:企业员工前置条件:登录成功后,进入密码修改页面后置条件:修改成功基本操作流程:参与者动作系统响应1.填写旧密码和新密码,单击修改按钮2.系统去数据库查相应的登录员工的员工信息,修改密码,若新密码为空则进入2.1可选操作流程:参与者动作系统响应2.1未填写新密码2.1提示密码不能为空(3)请假申请。请假是本系统主要需要实装的功能,员工通过该功能可以填写考勤单,提交或保存,以达到申请请假的目的。下表是请假申请的用例描述。表2-3 申请请假的用例规约Table 2-3 The Use Case Specification of Apply for Business trip用例名称:申请请假用例编号:Sino_EAMS_003用例描述:用例主要功能是实现员工的请假申请参与者:企业员工前置条件:成功登录系统后,进入请假申请页面后置条件:申请完成基本操作流程:参与者动作系统响应1.进入主界面,点击添加考勤单的连接2.系统响应点击事件,进入考勤单的添加界面3.员工填写考勤单中的相应信息后,可点击“保存”或“提交”按钮4.判断用户输入是否合法,判断为合法时,若点击“保存”按钮,将填写的信息存入数据库不提交给部门经理,若点击“提交”按钮,将填写的考勤单提交给部门经理;判断不合法时,若有信息为空则进入4.1,若有格式错误则进入4.2可选操作流程:参与者动作系统响应4.1.1.1未输入考勤起始日期4.1.1提示未输入考勤起止日期4.1.1.2未输入考勤结束日期4.1.2.1未输入考勤起始时间4.1.2提示未输入考勤起止时间4.1.2.2未输入考勤结束时间4.1.3.1未输入折合小时数4.1.3.2提示折合小时数不能为空4.2.1输入的考勤起始时间晚于考勤结束的时间4.2.2提示考勤开始日期不能大于考勤截止日期(4)申请加班。申请加班是员工在规定的正常工作时间以外的时间继续工作时提出的申请,该用例还可以为外部系统,如企业的财务管理提供一定的信息。加班申请的用例描述如表2-4 。表2-4 申请加班的用例规约Table 2-4 The Use Case Specification of Overtime Notice用例名称:申请加班用例编号:Sino_EAMS_004用例描述:用例的主要功能是实现员工的加班申请参与者:企业员工前置条件:登录系统后,进入加班申请页面后置条件:完成申请基本操作流程:参与者动作系统响应1.进入主页面,点击加班申请中的添加申请的连接2.系统响应点击事件,进入加班申请的添加页面3.员工添写加班信息,然后单击“保存”或“提交”按钮4.判断用户输入是否合法,判断为合法时,若点击“保存”按钮,将填写的信息存入数据库不提交给部门经理,若点击“提交”按钮,将填写的加班申请提交给部门经理;判断不合法时,若有信息为空则进入4.1,若有格式错误则进入4.2可选操作流程:参与者动作系统响应4.1.1.1未输入加班日期4.1.1.2提示加班日期不能为空4.1.2.1未输入加班起始时间4.1.2提示加班起始时间不能为空4.1.2.2未输入加班结束时间4.1.3.1未输入加班事由4.1.3.2提示加班事由不能为空4.2.1加班开始时间晚于结束时间4.2.2提示加班开始时间不能大于截止时间(5)审核考勤。审核考勤是本系统实装的另一重点功能,在员工提交考勤申请后,相应的部门负责人需要审核员工的申请,以确定是否批准其申请。因为不论是请假申请还是加班申请都要做审批,所以考勤审核用例还分为请假申请的审核,和加班申请的审核。分析以上两个用例得到表2-5和表2-6的用例描述。表2-5 审核请假申请的用例规约Table 2-5 The Use Case Specification of The Audit of Asking for Leave用例名称:审核请假申请用例编号:Sino_EAMS_005用例描述:用例主要功能是实现请假申请的审核参与者:企业员工,部门经理前置条件:有员工体提交请假申请后置条件:考勤单查询基本操作流程:参与者动作系统响应1.部门经理登录系统2.系统从数据库查询待其处理的考勤单3.若有待处理的考勤单,单击审批按钮4.显示考勤单详情5.进行审批,审核通过进入5.1,审核拒绝进入5.26.将相应结果存入数据库,显示考勤单的查询页面。可选操作流程:参与者动作系统响应5.1.1单击“审核通过”按钮5.1.2保存结果,返回查询页面显示5.2.1单击“审核拒绝”按钮5.2.2保存结果,返回查询页面显示表2-6 审核加班申请的用例规约Table 2-6 The Use Case Specification of The Audit of Working Overtime用例名称:审核加班申请用例编号:Sino_EAMS_006用例描述:用例主要功能是实现员工的加班申请的审核参与者:企业员工,部门经理前置条件:有本部门的员工体提交加班申请后置条件:加班申请的查询基本操作流程:参与者动作系统响应1.部门经理登录系统2.系统从数据库查询待其处理的加班申请3.若有待处理的加班申请,单击审批按钮4.显示考勤单详情5.进行审批,审核通过进入5.1,审核拒绝进入5.26.将相应结果存入数据库,显示加班申请的查询页面。可选操作流程:参与者动作系统响应5.1.1单击“审核通过”按钮5.1.2保存结果,返回查询页面显示5.2.1单击“审核拒绝”按钮5.2.2保存结果,返回查询页面显示(6)查询考勤申请信息考勤申请信息的查询,是部门经理对部门员工的请假申请和加班申请的前置条件用例,对员工的申请做审批前,可以查看到本部门的员工的申请信息。以下为查询考勤申请信息的用例描述。表2-7查询考勤申请信息的用例规约Table 2-7 The Use Case Specification of Select The Application for Business trip用例名称:查询考勤申请信息用例编号:Sino_EAMS_007用例描述:用例主要功能是实现查看员工的申请参与者:企业员工,部门经理前置条件:有本部门的员工体提交申请后置条件:基本操作流程:参与者动作系统响应1.员工或部门经理登录系统,进入考勤申请的查询页面2.系统从数据库查询待其处理的申请,若有申请则进入2.1,若无记录则进入2.2可选操作流程:参与者动作系统响应2.1显示相关申请列表2.2提示没有相关记录(7)员工管理。无论是企业的考勤管理系统,还是财务管理系统,管理的对象都是企业员工,所以只要与企业管理相关系统,必然要存在对员工的管理。一是员工管理是企业各种管理的基础,二是员工也是各种系统的主要使用者。员工管理主要涉及四个用例,即员工的增加、删除、修改、查询。四个用例描述如下表2-8、表2-9、表2-10、表2-11。表2-8增加员工的用例规约Table 2-8 The Use Case Specification of Add Employee用例名称:增加员工用例编号:Sino_EAMS_008用例描述:用例主要功能是实现员工的添加参与者:公司人事前置条件:有新进员工需要添加时,登录系统进入员工的添加页面后置条件:添加成功基本操作流程:参与者动作系统响应1.公司的人事管理人员登录系统,点击添加员工的连接2.系统响应点击事件,进入添加页面3.人事管理人员填写要添加的员工信息,单击“提交员工信息”按钮4.判断提交信息是否合法,若合法,返回原页面,若不合法,则进入4.1可选操作流程:参与者动作系统响应4.1.1.1未输入员工工号4.1.1.2提示员工编号不能为空4.1.2.1未输入员工姓名4.1.2.2提示请填写员工姓名4.1.3.1未输入员工入职时间4.1.3.2提示请填写员工的入职时间4.1.4.1未选择部门4.1.4.2提示请选择员工所在部门当企业中有员工离职时,需要删除该员工,此删除是逻辑删除而不是物理删除,只是填写员工的离职时间,用来表示该员工已经离职,并不把该员工从员工表中物理的删除掉。表2-9删除员工的用例规约Table 2-9 The Use Case Specification of Delete Employee用例名称:删除员工用例编号:Sino_EAMS_009用例描述:用例主要功能是实现员工的删除参与者:公司人事前置条件:有员工离职时,登录系统进入相应员工的删除页面后置条件:删除成功基本操作流程:参与者动作系统响应1.公司的人事管理人员登录系统,找到员工单击删除按钮2.系统响应点击事件,进入员工的删除页面3.人事管理人员填写要离职的员工离职时间,单击“提交员工信息”按钮4.判断提交信息是否合法,若合法,返回原页面,若不合法,则进入4.1可选操作流程:参与者动作系统响应4.1.1未输入离职时间4.1.2提示请填写离职时间修改员工信息用例可以完成对员工的信息修改的功能,可修改项里包括密码,所以该用例同时也可以重置员工的登录密码。表2-10修改员工信息的用例规约Table 2-10 The Use Case Specification of Update Employee Information用例名称:修改员工信息用例编号:Sino_EAMS_010用例描述:用例主要功能是实现对员工信息的修改参与者:公司人事前置条件:登录系统进入相应员工的信息修改页面后置条件:修改成功基本操作流程:参与者动作系统响应1.公司的人事管理人员登录系统,找到员工单击删除按钮2.系统响应点击事件,进入员工的修改页面3.人事管理人员填写员工需要修改的信息,单击“提交员工信息”按钮4.判断提交信息是否合法,若合法,返回原页面,若不合法,则进入4.1可选操作流程:参与者动作系统响应4.1.1.1未输入员工工号4.1.1.2提示员工编号不能为空4.1.2.1未输入员工姓名4.1.2.2提示请填写员工姓名4.1.3.1未输入员工入职时间4.1.3.2提示请填写员工的入职时间4.1.4.1未选择部门4.1.4.2提示请选择员工所在部门4.1.5.1未选择职位4.1.5.2提示请选择职位4.1.6.1未输入密码4.1.6.2提示请输入密码查看员工。可以完成对员工的查看功能,该用例可以说是删除和修改两个用例的前置条件用例,因为要查询到员工后才能对其做修改或删除操作。因为查看员工包含于删除操作的过程中,所以在做用例分析时容易漏掉。表2-11查看员工的用例规约Table 2-11 The Use Case Specification of Select Employee用例名称:查看员工用例编号:Sino_EAMS_011用例描述:用例主要功能是从列表中查看员工,起始于点击查找的连接参与者:公司人事前置条件:登录系统进入主页面后置条件:查找成功基本操作流程:参与者动作系统响应1.公司的人事管理人员登录系统,点击查看员工的连接2.系统响应点击事件,进入员工的查询页面3.人事管理人员可以按照工号或部门查询员工,输入查询条件后单击“提交员工信息”按钮4.判断提交信息是否合法,若合法,系统去数据库中查询数据,若存在则返回结果到原页面,若无结果则提示没有相应结果;若不合法,则进入4.1可选操作流程:参与者动作系统响应4.1.1.1未输入要查询的员工工号4.1.1.2提示请填写要查询的员工工号4.1.2.1未选择要查询的部门4.1.2.2请选择要查询的员工部门3 系统架构设计软件的系统架构是指使用某种特定的技术平台,从而完成软件系统的整体功能的开发过程。也可以大致理解为:总体设计和总体结构布局。就一般而言,软件系统架构有两个要素:(1)它是一个软件系统从整体到部分的最高层次的划分。(2)建造一个系统所做出的最高层次的,以后难以更改的,商业和技术的决定。3.1架构设计目标软件架构设计要达到如下的目标:(1)可行性(Feasible)。系统的架构具有可行性是架构设计的基石。本系统运用B/S(浏览器/服务器)模式。主要采用面向对象的开发方法,前台使用JSP网络编程语言,JSP语言出台已十余年的时间,技术已经比较成熟,非常适合开发B/S构架的WEB应用,而且关于JSP技术的参考书籍和网络资料丰富,可为开发提供很大的帮助。此次以Oracle 10g XE版作为后台数据库,Oracle 10g Express Edition (简称 Oracle XE) 是真正免费的,不需要购买许可就可免费分发和使用。Oracle XE建立在Oracle数据库10g第二版的代码库之上,与Oracle数据库产品系列完全兼容,并可以用于32位的Windows系统中,由于是免费版,所以虽然在某些方面存在一定的限制,但已经可以满足一般中小型企业的需求,又可以和Oracle数据库产品系列兼容,所以也能比较容易应用于大型公司。(2)可靠性(Reliable)。软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。JSP具有健壮的存储管理和有效的安全性,而Oracle数据库也是目前世界上使用最为广泛的数据库管理系统,它拥有完整的数据管理功能,是一个完备关系的产品。所以系统初步具有一定的可靠性。(3)安全性(Secure)。软件系统所承担的交易的商业价值极高,系统的安全性非常重要。因为公司电脑不连外网,所以在一定程度上保证了其网络的安全性。系统的使用需要口令的验证,并且按照身份权限的不同进行不同的操作,使系统具有一定的信息安全性。(4)可定制化(Customizable)。同样的一套软件,可以根据客户群的不同和市场需求的变化进行调整。(5)可扩展性(Extensible)。在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展。(6)可维护性(Maintainable)。软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持的花费。(7)可升级性(Scalable)。软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。(8)客户体验(Customer Experience)。软件系统必须易于使用。软件的最终用户很可能是不具有计算机专业技术的人员。系统能提供友好的界面供用户使用3.2 系统架构设计下面我们将根据架构设计原则和信息系统原理来建立系统的架构设计模型。将信息系统中比较关心的对象分层,可分为四层:用户界面层、请求控制层、业务层、数据访问层(如下图3-1所示)图3-1 系统体系架构图Fig3-1 The Diagram of System Architecture根据系统架构得到系统包图如下。图3-2 考勤管理模块包图Fig3-2 Package Diagram of Attendance Model(1)用户界面包用户界面包负责以下几项:1)与用户的交互,接收用户的各种输入以及输出各种提示信息或处理结果。2)对于输入的数据进行数据校验,过滤非法数据。3)向业务处理对象发送处理请求。图3-3 用户界面包展开图Fig3-3 Package Diagram of Users Interface用户界面包包含的类见图3-4:图3-4 用户界面类图Fig3-4 Class Diagram of Users Interface(2)请求控制包请求控制包的职责是:1)接收界面传来的请求2)根据不同的请求向业务逻辑处理对象发送业务处理请求3)向用户界面层返回处理结果。请求控制包图展开如图3-5所示:图3-5 请求控制包图展开Fig3-5 Package Diagram of Action请求控制包包含的类见图3-6:图3-6 请求控制类图Fig3-6 Class Diagram of Action(3)业务逻辑包业务逻辑包的职责是:1)实现各种业务处理逻辑或处理算法。2)验证请求者的权限。3)向数据访问对象发送数据持久化操作的请求。业务逻辑包图展开如图3-7所示:图3-7 业务逻辑包图展开Fig3-7 Package Diagram of Business业务逻辑包包含的类见图3-8:图3-8 业务逻辑类图Fig3-8 Class Diagram of Business(4)数据访问包数据访问层的职责是:1)实现数据的持久化操作。2)实现事务处理。数据访问包图展开如图3-9所示:图3-9 数据访问包图展开Fig3-9 Package Diagram of Data Access数据访问包包含的类见图3-10:图3-10数据访问类图Fig3-10 Class Diagram of Data Access对于每一个业务处理中需要持久化操作的对象都可以对应为一个数据库访问对象,在很多业务处理中需要请求多个数据库访问对象来进行数据的读写操作,而这些操作又必须在同一个事务中,这时需要用同一个数据库连接对象来进行统一的事务处理。(5)权限管理包 权限管理并不单一的指对登录人员的权限管理,最基本的是对系统合法人员和非系统合法用户的权限管理权限管理的主要职责是:1)验证请求者的请求权限。2)提供请求者的权限列表。权限管理包图展开如图3-11所示:图3-11权限管理包图展开Fig3-11 Package Diagram of Access Authorization操作员提供自己的验证信息(例如,用户名、密码等),通过权限管理类获取权限列表,做权限验证。从而判断请求者是否可以使用系统,若可以使用系统,则对其使用的身份做判断。权限管理包包含的类见图3-12:图3-12权限管理类图Fig3-12 Class Diagram of Access Authorization3.3 系统架构类图将包图展开,得到类图,该类图是架构的静态结构图,表达了各个类之间的静态联系。图3-13 系统架构类图Fig3-13 Class Diagram of System Architecture4 系统详细设计本部分设计主要涉及软件系统的动态建模和系统类图的详细设计,是对概要设计方案做完善和细化。软件系统的动态模型分为交互模型和活动状态模型,顺序图和协作图构成其中的交互模型,活动状态模型主要包括活动图和状态图。通过为软件系统项目建立动态模型,从而产生体现系统动态行为的可视化分析结果包括对象的时间特性和对象为完成目标任务而相互进行通信的机制、对象行为的改变和状态变化情况,以及对象可能出现的各种活动状况等信息2。4.1 系统交互图交互图(interaction diagram)是用来描述对象之间以及对象与参与者之间的动态协作关系之际协作过程中行为次序的图形文档。它通常用来描述一个用例的行为,显示该用例中所涉及的对象和这些对象之间的消息传递情况。4.1.1系统架构类交互图系统架构类的工作流程:(1)用户界面对象在接收了用户的输入请求后,向请求控制对象发送用户请求。(2)请求控制对象将请求发送给向业务代理对象。(3)业务代理对象接收到请求后,向权限管理对象发送验证权限请求。(4)权限管理对象验证权限后将验证结果返回给业务代理对象。(5)业务代理对象根据验证结果进行以下处理:对于不符合权限的请求则返回提示信息;对于符合权限的请求,则将请求转发给业务对象。(6)业务对象进行业务处理。对于业务处理中的数据持久化操作,通过访问数据库访问对象进行操作,期间的任何异常都交给异常处理对象处理。最后返回处理结果信息给业务代理对象。(7)业务代理对象将处理结果信息返回给用户界面。系统架构类的交互图如图4-1所示:4.1.2 活动者与模块间的交互对象之间的交互用时序图来描述,时序图也称为顺序图。这些对象时按时间顺序排列的,时序图中显示的是参与交互的对象以及对象之间消息交互的顺序。图4-1系统架构类的交互图Fig4-1 Interactive Diagram of System Architecture Class系统登录用例的顺序图如下,其中的参与者是企业员工。图4-2系统登录顺序图Fig4-2 Interactive Diagram of Login System系统的密码修改用例的顺序图如下所示,员工在密码修改页面输入新密码,然后提交业务请求,由密码修改处理的类对数据库做更新操作,修改密码后返回登录界面重新登录。图4-3修改密码的顺序图Fig4-3 Interactive Diagram of Password Change系统的请假申请的顺序图如下,员工需要请假时,先打开考勤单页面,输入对应考勤信息,然后提交考勤单,系统将考勤单存入数据库,考勤管理类的业务逻辑处理会将员工的考勤单提交给相应的部门经理。图4-4请假申请顺序图Fig4-4 Interactive Diagram of Apply for Business trip系统关于考勤审核的顺序图如下所示,当员工提交考勤单后由系统交给相应的部门经理做审批,经理首先要能查看等待自己处理的考勤单,然后根据情况决定审核通过或打回,然后系统将保存审批的结果,并将审批结果反馈给申请者,使申请者能查看自己的考勤单是否申请成功。图4-5考勤审核顺序图Fig4-5 Interactive Diagram of Check for Business trip14.1.3 系统协作图协作图是交互图的另一种表现形式,是用于描述系统的行为是如何由系统的成分协作实现的图。协作图与顺序图同属于交互图,都用于描述系统中对象之间的动态关系。两者可以相互转换,虽然两者在语义上是等价的,但并不能完全相互替代。根据上一节的各功能的时序图可以得到相应的协作图如下系统登录用例的协作图:图4-6系统登录协作图Fig4-6 Timing Diagram of Login System密码修改用例的协作图:图4-7修改密码的协作图Fig4-7 Timing Diagram of Password Change请假申请的协作图:图4-8请假申请协作图Fig4-8 Timing Diagram of Apply for Business trip考勤审核的协作图:图4-9考勤审核协作图Fig4-9 Timing Diagram of Check for Business trip4.1.4 系统状态图UML中的状态图(statechart diagram)主要用于描述一个对象在其生存期间的动态行为,表现一个对象所经历的状态序列,引起状态转移的时间,以及因状态转移而伴随的动作。员工对象的状态图中,员工有申请请假、等待审批结果、得到结果几种状态,得出状态图如下。图 4-10 员工的状态图Fig4-10 State Diagram for Employee部门经理的状态图:图 4-11 部门经理的状态图Fig4-11 State Diagram for Deployment Manager考勤单的状态图如下,考勤单开始时被创建,填写后可以提交或保存,则状态变为被保存或被提交,状态为被提交的报销单可以进行审批,审批后变成被审批的状态。图 4-12 考勤单的状态图Fig4-12 State Diagram for Attendance sheet4.1.5 系统活动图活动图是对系统的动态行为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论