1、企业培训管理系统的设计与实现摘 要随着进入知识经济的时代,企业的竞争已经转化为人才的竞争,因此企业需不断提高员工的能力素质以应对当前激烈的市场竞争。由于知识更新快、培训量大、培训的方式呈现多样化,传统的手工培训管理方式已经远远不能满足当前培训管理的需要,企业培训迫切需要一套系统提高培训管理工作的效率,实现企业员工培训工作的系统化、规范化和自动化。企业培训管理系统正是利用计算机和互联网技术,对培训过程进行有效管理,大大提高了管理效率。通过阅读、参考大量国内外相关文献资料,分析总结了国内外对培训管理系统领域的相关理论和研究现状,设计并实现了企业培训管理系统。随着社会经济的发展以及企业数量的增多,企
2、业之间的竞争越来越大,在各项竞争中,人才的争夺最为激烈。企业要想实现长久的发展,就必须充分利用人力资源的作用,发挥人力资源的最大潜力,帮助员工规划职业发展道路,实现企业价值与员工价值的同时实现,为了提高企业人力资源的管理效率,最有效的一种方式就是进行员工培训,通过员工培训,可以让员工更快速地了解到企业的相关业务知识,同时企业组织的培训与学习针对性更强,可以有效促进员工对企业的认同感,更快速地提升员工的业务能力,最终实现企业利润的增加。本文结合某企业的员工培训现状,进行用户需求的收集与分析,然后对多种新型的系统开发技术进行认真学习,提出企业培训管理系统的建设方案。关键词 企业培训;人力资源;用户
3、需求III目录摘 要I第1章 绪论11.1 项目研究背景11.2 项目研究现状21.2.1 培训相关理论的发展21.2.2 国外研究现状31.2.3 国内研究现状31.3 项目研究意义4第2章 系统分析52.1 系统可行性分析52.1.1 技术可行性52.1.2 操作可行性62.1.3 经济可行性62.2 系统需求分析62.2.1 系统目标72.2.2 系统功能分析72.3 系统需求建模82.3.1 UML介绍82.3.2 业务流程分析82.3.3 用例分析102.3.4 用例图112.4 系统数据流分析162.5 系统非功能需求18第3章 系统设计193.1 软件设计概述193.2 系统架构
4、设计193.3 系统模块设计203.3.1 模块化设计原则203.3.2 系统功能模块设计203.4 数据库设计223.4.1 数据库设计概述223.4.2 数据库概念结构设计223.4.3 数据库逻辑结构设计26第4章 系统详细设计304.1 详细设计概述304.2 系统的时序图表示304.2.1 课程查询304.2.2 预定课程、取消课程、反馈课程314.2.3 公告信息维护324.2.4 基本信息维护334.3 程序流程图设计344.3.1 培训课程申请344.3.2 课程审批364.3.3 培训课程安排374.3.4 培训评教功能的的详细设计与实现414.3.5 学员信息维护功能的详细
5、设计与实现43总结45致谢46参考文献47第1章 绪论1.1 项目研究背景人类进行 21 世纪以来,最大的变化就是计算机以及网络的出现和普及。它们的出现彻底改变了人们传统的生活和工作方式,也为社会的现代化发展增添了更多特色。数字化和网络化推动着全球信息化的进程,而伴随着信息化的发展,加强了跨国界的竞争,使得信息和交易实现了全球范围内的迅速配置和合理流动。不仅如此国内各个企业,同行业之间的竞争也日益激烈。企业面临的问题也越来越多,传统的企业管理模式以及管理方式逐渐显露出弊端,企业纷纷在寻找更好的途径进行问题改善,以提高企业的核心竞争力,而其中企业最关心的就是人力资源以及环境资源。人力资源的重要性
6、不容忽视,在所有的企业资源中,人力资源的作用最特殊,也最具有挑战性。谁能更好地招募人才、培养人才、留住人才,谁就能在激烈的竞争中取得获胜的关键力量。人力资源管理的好坏对于企业来说,具有非常重要的作用,它可以直接体现在企业的竞争力上,为企业带来更多的经济效益1。很多学者也对人力资源进行相关的研究,比如英国经济学家马歇尔就曾出版过一篇著作经济学原理,在这部著作中,他提到,对人投资的重要性,指出在一个企业中,人的作用是无穷的,是推动企业持续发展的主要力量。随着人力资源重要性被越来越多的人了解到,企业也纷纷开始进行人力资源方面的管理与系统建设。企业要想提高人力资源管理效率,首先要做的工作就是提高企业员
7、工的整体水平,而员工的知识水平,在学校依靠的主要是老师的教学,而在工作中,更多的则是通过企业的培训或者自身的学习,而这其中,企业培训是最主要的一种方式。企业选择人才,人才选择企业,在双向选择的过程中,企业培训也作为一个重要的考量标准体现了企业的实力,决定着吸收人才的水准。时代在进步,知识在更新,企业要想稳定快速的发展,员工的知识水平就需要不断的提高,这就要求员工接受各种有针对性的培训,全方位的提高员工各项素质。因此,高水平,全面的,持续的企业培训势在必行,并已在各企业中得到普及。通过企业培训,可以让员工更快速地了解到企业的相关业务知识,同时企业组织的培训与学习针对性更强,可以有效的促进员工对企
8、业的认同感,更快速的提升员工的业务能力,最终实现企业利润的增加。在意识到企业培训的重要性后,各企业纷纷在员工入职前就开展培训课程,而且企业的人力资源管理部门也在想办法进行培训方式的设计,在企业培训实施过程中,伴随着全球经济一体化,国外的一些培训方式也进入到国内,然而由于很多方面的原因,比如国情的不同、思维方式的不同、管理方式的不同等,使得国外的培训方式在国内的有些企业并不是很适合。在国内也逐渐有学者进行人力资源相关的研究,企业员工的培训问题越来越被大家所看重,经过一段时间的研究与应用,国内的企业员工培训也开始成型,人们称其为现代企业员工培训方式2。对企业员工的培训受到越来越多的企业关注,尽管如
9、此,还是有许多的企业在员工培训方面采取的还是以往的一些传统方式,只是想当然的进行培训,事先不会对企业员工的培训需求进行探讨与分析,因而缺乏明确的目标,使得培训的目的仅仅是培训,达不到应有的效果,而且也没有一定的组织性与规范性;在培训方式方面也欠缺有效的手段与方法,显得过于简单与老套,所培训的内容不具有针对性,不能跟随时代的步伐,员工在培训过程中对培训的积极性也不高,很多人都只是被动地坐在课堂里,不愿用心去学习,因而使得整个的培训效果低下。在意识到这些问题后,企业需要想办法去改善这些问题,为了提高企业培训效果,使企业的人力资源发挥到最大的效益,企业急需要进行现代化的培训管理系统的建设。培训管理系
10、统的建立对于企业来说,具有十分重要的作用,它为企业培训提供了一个平台,企业可以通过该平台为员工提供更好的培训环境,有利于提高企业的培训效果,进而发挥人力资源的最大效益。它的作用主要表现在以下几个方面:1培训管理系统利用先进的一些计算机技术,结合新的培训管理理念,对培训的整个过程进行管理,并通过对培训效果的评估实现企业战略目标的实现;2由于培训管理系统的设计与开发是围绕用户的需求而展开的,这就使得企业能够更有效地培训员工,使员工发挥自己最大的价值,由于切合员工的实际需求,这也使得员工培训更具有积极性,最终实现企业与员工的双赢;3培训管理是对整个培训活动进行控制与管理,通过相关规则与准则的设定,可
11、以确保企业培训工作的顺利开展,同时还可以提高企业的培训效果,通过培训管理可以为企业养和储备人才,为企业以后的发展提供人力资源保障。在目前的信息化时代,互联网技术和电子计算机科技的突飞猛进,对世界起到了革命性的影响,并且渗透到各个领域成为人们日常生活中必不可少的技术。同样计算机技术也应用到了企业管理和培训的领域,使企业培训管理摆脱了以往繁琐、单调、实时性差等诸多弊端,为企业培训管理开拓了新的领域,使企业培训管理上升到一个新的高度3。1.2 项目研究现状1.2.1 培训相关理论的发展在上个世纪初,随着时代的进步和社会的不断发展,基于管理科学的培训理论的逐步形成。美国的古典管理科学家、科学管理之父泰
12、罗于1911年在其科学管理原理一书中第一次提出了培训的理论。在随后培训理论的发展中,培训理论衍生出了科学管理制度培训理论、人本主义培训理论、行为主义培训理论、终生教育培训理论等多个领域。英国的博伊代尔和帕瓦希尔吸提出了循环型的系统培训模型。该模型从确定培训需求开始,首先制定培训政策,然后确立培训目标,进而制定培训计划,最后返回再次确定培训需求。在该培训模型中,提出了培训的三点本质特征:第一,培训活动是一个富有逻辑的、一个环节紧扣下一个环节向前推进的过程。第二,无论是以个人的培训需要为依据,还是以组织对自身的整体发展目标为依据,抑或是两者的结合为依据,培训活动始终起始于对培训需求的确定。第三,无
13、论是什么形式的培训,它们都应归结于有效的评价。随后,英国的肯尼和瑞德修正了博伊代尔和帕瓦希尔的系统培训模式,提出了注重过程评价及其反馈作用的系统型培训模式。该模式主要突出了“评价学习”的重要性,强调了评价对培训活动的各个环节都产生重要的影响。随着科学管理理论的研究与发展,培训相关的理论也在逐步更新,纵观其发展历程,可以将其进行如下的划分:1传统理论时期的培训(1900-1930)。这是最古老的一种培训理论,在该时期,学者们普遍认为企业的员工必须要经过正规的培训才可以获得骄人的业绩,此时的培训主要的目标和出发点在于对个人技术与态度方面的提高,该理论的代表人物主要有美国的弗雷德里克.泰勒和德国社会
14、学家马克思.韦伯;2行为科学时期的培训(1930-1960)。在这一时期,培训理论有所创新,学者们通过长时间的研究,提出在培训过程中,培训环境的重要性,指出它可以直接决定培训的效果,在此时的研究中,学者们都在试图找出一种快速提高员工绩效的方法;3系统理论时期的培训(1960 年至今)。培训理论通过多年的研究与应用,到上个世纪 60 年代的时候,又出现了一种新的培训理论,即系统理论,在该理论中,指出企业员工的培训要集体开展,要在全公司范围内进行培训,主要的代表人物有弗农汉弗莱4。1.2.2 国外研究现状在欧美发达国家,员工培训被认为是企业最有价值的可增值投资。据美国教育机构统计,企业每投入1美元
15、用于培训,便可有3美元的产出。美国财富杂志指出:“未来最成功的公司,将是那些基于学习型组织的公司。”通过培训,不仅可以提升员工的个人素质和技能而使员工受益,正如克里曼斯通所言:“全世界所有员工最大的福利就是培训”,而且可以提高员工的自觉性、积极性、能动性、创造性和企业归属感,来增加企业产出的效益和组织凝聚力,并为企业的长期战略发展培养后备力量,从而使企业长期持续受益。员工培训已渗透到西方发达国家现代企业运营的方方面面,成为企业解决实际和潜在问题、提升竞争能力、拓展市场份额、制定发展战略的核心工具之一,如:员工入职时,需要培训;员工绩效考评结果未达标时,需要培训;员工轮岗晋级时,需要培训;新技术
16、、新工艺应用时,需要培训;新的管理制度、工作模式和系统出现时,需要培训;新工作岗位出现时,需要培训;出现高成本、高故障时,需要培训;研究开发技术落后时,需要培训;市场推广不利时,需要培训;顾客频繁投诉时,需要培训。国外在企业培训领域上有着领先的技术,并且早在80年代就提出了信息化的员工培训管理系统,并在以后逐步的付诸实践,目前已经形成良好的体系系统国外信息化企业培训系统构建可以分为两类:Linux系统下系统构建一般采用J2EE架构和Oracle数据库环境;对于企业Microsoft应用系统占据主导地位的企业多采用.Net框架和Sql ServerAccess数据库构建培训管理系统。1.2.3
17、国内研究现状我国对培训管理的相关研究起步较晚,基本上遵循了国外已经成体系的管理思想。随着时代的变迁我国的培训管理工作经历了从摸索到逐渐成熟的发展过程。在上个世纪的80年代到90年代,企业的培训方法和培训手段局限于经验和描述性的层次,该方法基本上能够适应当时的国有大中型企业的发展需要。自90年代到21世纪初,随着我国的改革开放力度的扩大,出现了越来越多的企业形式,企业的培训手段也逐渐丰富起来,其特点表现为企业培训不仅提供给员工满足岗位要求的知识和技能,还包括了道德、心理素质和适应性等多方面的内容。近一段时间,随着中国加入WTO,企业培训呈现多元化的特点,有越来越多的企业都采用定制培训的方法,解决
18、企业在发展过程中面临的问题。随着国内企业管理水平的提高及管理观念的转变,越来越多的企业开始重视员工的培训,因为有效的培训是企业提高效益的关键因素之一,从长远来看,好的培训对企业是一种高汇报率的投资。然而,在企业的培训管理过程中,培训主管常常会有这样的困惑:知道目前本企业亟需培训,但不知道如何进行有计划成体系的培训;辛辛苦苦组织了给各层人员的培训,但上级下级都不满意;明明给大家做一件好事,却得不到认可;“培训帮不上忙”、“培训是在烧钱 ”、“培训在添乱”多种表象干扰了企业培训业务的发展5。但随着我国企业改革的深化。这种错误的观点逐步被扭转,越来越多的企业意识到企业培训管理的重要性和不可或缺性。国
19、务院秘书长王忠禹曾在”全国经贸工作会议”上作过明确部署,要把培养企业家的工作提到议事日程,加强现有和未来的高级经营管理人员的培训,争取用35年时间,系统地培养出一批适应社会主义市场经济发展需求的企业家。企业在认识到培训的重要性后,开始逐步引入信息化企业培训管理系统,由于起步较晚所以系统使用的开发语言和数据库比较审一、简单。对于目前的各大企业普遍存在着引入企业培训管理系统和更新原有的企业培训管理系统。海尔是国内较早开展培训管理的企业,目前海尔的企业培训管理系统是基于VB和access数据库开发的C/S系统。在该培训平台下使得海尔员工的素质逐步提高,以可以与世界一流大企业媲美6。1.3 项目研究意
20、义企业的员工培训对于企业来说,意义重大。通过培训可以为企业培养和储备人才,提高企业的人力资源力量,进而提高企业的核心竞争力,通过培训挖掘出员工的内在潜力,并通过相关的激励政策提高员工工作的积极性,使员工能够的挥出最大的效能,进而最终提高企业的经济效益。培训的作用有很多,现将其总结如下:1增长员工的知识和能力,进而有助于其提高工作效率与工作业绩。在企业中对员工进行培训,通过规范化的培训流程,针对性的培训内容,可以使得员工在培训过程中学习到更多的知识与技能,以后期的工作中加以运用,能够有效提高员工的工作业绩;2有助于提高企业在员工心目中的形象,通过企业培训让员工理解企业的核心价值观以及企业的文化,
21、让员工对企业有更高的认同感;3提高员工自身优势。通过企业培训能够让企业员工认识到自身的不足,通过知识与技能的学习提高自己的整体素质,有助于提高员工对自身的满足感,通过培训还可以提高员工对环境的适应能力,最终实现价值的提升;4稳定企业员工。通过培训可以有效地协助员工进行职业生涯的确立,增加其对企业的信任,从而稳定企业的员工,防止员工流失;5增强员工的沟通能力。通过企业培训可以为员工之间以及员工与领导之间的交流与沟通,使得大家可以交上朋友,为彼此确定感情奠定基础,使得大家之间可以互相学习,有助于营造良好的工作环境。从目前的经济发展趋势来看,培训管理的信息化是必然的。企业培训管理系统就是在这样的背景
22、下应运而生的。培训管理涉及培训相关的信息管理,培训的计划和实施流程,培训结果的反馈等方面。传统的人工操作极为繁琐,讲师、设备、培训资料、员工技能、培训机构、培训科目等信息都是通过多个 EXCEL 文件进行管理,工作量之大可想而知;培训需求的获取、培训计划的审批、这需要整合各方面信息,流程操作繁琐费时并且对人的依赖性大;制定详细课程表,实施培训,统计培训结果,获取反馈信息,全部依靠培训助理通知各部门启动相关工作。针对这些问题,基于电子平台的培训系统,整个培训管理过程都可以在线的实时操作,实时查询等,完全的取代手工操作,同时提高准确性,时效性以及流程的规范性。电子平台的优势显而易见,但是,针对企业
23、培训的管理系统却相对的少。企业培训管理系统就是针对企业的培训而设计研发的一款在线管理系统。本系统涉及到从经理到普通员工,从培训设备到培训资料,让所有用户都可以通过简单的操作完成信息的查询和处理,节省人力、物力资源,规范流程,提高工作效率。这是一款基本普适的培训管理系统,可适用于大多数企业,对企业的发展有促进作用。第2章 系统分析2.1 系统可行性分析系统可行性分析指的是针对目标系统的开发,是否具备相关的开发条件而进行的分析,包括经济可行性、技术可行性、操作可行性等。详细的可行性对于系统来说,是很重要的,对于不具备开发可行性的软件,是没有必要开发的,可行性分析要从多个角度来进行,包括人力、物力、
24、财力等,只有这几个方面的条件都具备了,系统的开发才可以正常进行7。对企业培训管理系统的建设进行有针对性的可行性分析,可避免盲目地实施计划而造成的人力、财力、物力等的浪费,它是系统建设的前提与保障,其作用至关重要。可行性分析为是否建设企业培训管理系统的决策性文件,能为企业培训管理系统的建设提供科学决策依据,并为进一步开展培训管理工作奠定可行的信息化基础,因此企业的高层领导与部门技术主管领导决策层均会予以重视。本节将针对系统可行性的几个方面进行具体分析。2.1.1 技术可行性技术可行性分析指的是对目标系统的开发在技术上是否可行进行分析。在分析供选择的解法时,首先考虑的是技术上的可行性。显然,从技术
25、角度看不可能实现的方案是没有意义的。管理信息系统在国内已经经历过很长一段时间的研究与应用,相关的技术也都比较成熟,而企业培训管理系统正在这该技术与成就的基础上进行的开发。本系统基于B/S结构。在这样的结构下,用户使用系统通过浏览器进入工作界面,客户机极少涉及系统业务逻辑,只是前端显示。系统主要的业务逻辑处理都是在服务器端完成。这样大大减轻了客户端计算机的负载,对客户机要求不高,也易于后期的系统维护和升级,减少了工作量。目前,建立 B/S 结构的网络应用因其稳定性,易维护性,可靠性,安全性以及低成本等优势得到业界的肯定。同时本系统采用 MVC 模式,Struts-Spring-Hibernate
26、 轻量级集成框架,Oracle数据库。以上这些技术都已经发展得比较成熟,并获得了广泛认可。以上平台和技术的结合在实际应用中无疑是较为成功的一种解决方案。由此可见,技术方面实现起来比较容易。2.1.2 操作可行性开发出来的系统具有友好的用户界面,提高了用户使用的舒适度,系统完成后配有详细的操作说明书,操作简单,可以使各类用户更快地掌握系统的使用方法,不需要额外的知识,此外,目前的企业员工基本都受过高等教育,有丰富的计算机应用经验,因此,本系统是易操作的。2.1.3 经济可行性经济可行性分析中最重要的内容之一是成本-效益分析,成本-效益分析可用于评估系统的经济合理性给出系统的成本估算。对已经通过了
27、技术可行性和操作可行性检验的解决方案再进行成本/效益分析。通过整个开发过程可以看出企业培训管理系统在开发过程中所投入的经济成本主要是硬件和软件的成本投入,而目标系统开发需要的硬件为计算机客户端、服务器、相关的外部设备等,软件方面的投入主要有操作系统、数据库、开发工具和平台等,这些在目前都是较容易满足的,而且价格也相对较便宜,对系统开发者来说并不需要有太高的成本支出,并且开发周期不是太长,在很大程度上节约了人力、物力、财力资源。采用电子平台的信息管理系统,全程无纸作业,高效操作,不但提高了工作效率,还降低了成本。这对企业来说,电子系统开发的投入成本远远小于节省下来的时间与人力资源创造的额外经济效
28、益。同时,减少了传统方法的投入成本,有效的节省了开支。目标系统的开发,对于企业的未来来说,具有很重要的作用与意义,它所产生的间接效益是巨大的,通过该系统的应用,企业的培训管理效率和水平能够得到快速提高,通过提高企业员工的知识与技能,可以提高员工的工作业绩与效果,所建设的系统为培训管理所节省的人力成本、经济成本、管理成本等将远远大于系统开发所支出的经济成本,从而为企业带来更大的经济效益。因此,经济上是有益的,可行的。通过以上对技术、操作、经济三方面的分析可以看出,本系统从多种角度考虑,都是可行的,可以进行开发。2.2 系统需求分析系统的开发和用户的需求是分不开的,只有紧紧围绕用户的需求,开发出来
29、的系统才是最贴近实际的,而一切脱离用户需求的软件也都是不合理的。需求分析工作是一项非常重要的工程,通过需求分析,可以详细了解到目标用户对于系统的期望,通过对用户期望的总结与分析,可以为系统开发提供更有利的条件8。系统的需求分析是面向用户的,在需求分析中,需要深入到企业的相关部门,和目标用户进行深入的沟通,针对系统的功能和性能进行详细的探讨,之后再将这些需求进行总结并分析,再进行系统需求模型的建立,将用户的需求进行细化与具体化,使之成为系统需求文档,为后续的系统开发提供依据。一个优秀的软件必定有一个详细的需求文档,因此,作为系统分析人员,一定要重视系统的需求分析工作。2.2.1 系统目标企业培训
30、管理系统(Enterprise Training Management System,ETMS)充分运用现代企业培训管理理念,深化培训管理信息化进程,提高培训管理水平,为企业培训管理人员和员工提供一个方便快捷、界面友好的培训工作互动沟通的渠道,也为决策部门提供科学的培训政策制定依据,形成业务联动、信息互通、资源共享、结构合理、框架灵活、应用方便、先进安全的培训管理系统,全面提升企业对员工进行培训管理的信息化建设水平。在企业培训管理系统实施的过程中,采取分阶段,逐步实现中短期业务管理目标计划的思路。具体目标如下:(1)建立一个可扩展、可移植的企业培训管理信息系统,节省企业培训的人工管理、物力、财
31、力成本的投入,通过流程、组织等的用户自定义,满足不断简化的用户需求。(2)系统界面具备友好性、功能完善。系统中各参与者能够根据自己的角色职责,顺利流畅的完成相应的功能操作。(3)支持公司各级别的培训管理员在网上完成相应级别的培训日常事务的处理。能够对培训场地和设备进行管理和调配,同时能够统一管理教材、外聘咨询公司师资、内训师,能对经费进行监控及管理等。(4)支持企业既有的培训评估体系及评价模式。采用反馈法对培训效果进行跟踪评估,通过系统调动各级管理人员积极性,强化关注学习过程和学习效果。(5)支持各种报表及学习档案建立,并与人力资源系统进行集成和兼容。(6)能够方便的对咨询公司招投标项目进行网
32、络管理,优化管理流程。(7)由于与人力资源其他系统相连,因此必须确保相连的有效性、稳定性及系统安全性。2.2.2 系统功能分析系统功能分析是在系统开发的总体任务的基础上完成。本例子中的职工培训管理系统需要完成功能主要有:(1)员工各种信息的输入, 包括员工基本信息、职称、岗位、已经培训过的课程和成绩、培训计划等;(2)员工各种信息的查询、修改, 包括员工基本信息、职称、岗位、计划已经培训过的课程和成绩、培训计划等;(3)培训课程信息的输入, 包括课时、课程类别等;(4)企业所有职工培训需求的管理;(5)企业培训计划的规定、修改;(6)培训管理系统的使用帮助;(7)讲师信息的管理、讲师的评价;(
33、8)培训资源管理;(9)培训教材管理。2.3 系统需求建模2.3.1 UML介绍统一建模语言UML是 OMG 组织确定的面向对象的语言,被广泛应用于系统的模型构建过程中,它的最大特点就在于可以实现可视化建模,这使得模型建立更直观更方便。利用 UML 还可以较容易地实现对面向对象产品的相关说明以及文档的制作。UML 中运用了多项现代化的软件工程设计思想以及原理,使得应用范围越来越广泛,UML的作用也越来越明显9。UML包括视图,图,模型元素,通用机制几部分。对于UML图来说,也可以进行分类,主要有用例图、类图、对象图、状态图、交互图、活动图等。在建模过程中,可以根据系统的实际需要选择合适的建模方
34、法。2.3.2 业务流程分析1业务流程分析介绍业务流程分析的目的在于,通过整理培训系统运作的行为方式,分析出在不同场景下培训系统的各种动作序列。业务流程分析是后续用例分析和类定义的基础。本阶段工作的输入是:功能需求一览和参与者一览。由于普通登录用户是浏览用户的一种泛化,因此,在后续论述中,从用户和管理员两个角度,分别进行说明。通过UML语言的活动图可以表示系统中各种活动进行的流程和各活动间相互的依赖关系。2用户活动定义用户是系统的使用者,用户通过系统来获取想得到的各种信息。从用户打开系统开始到最终离开系统为止,可以定义为一次活动。在定义多次活动后,需要针对有重复前提条件的活动进行合并,划分出业
35、务模块。比如,用户可以通过系统查询自己参加课程的详细情况,当用户还没有预定课程时,可以进行课程的预定;当已经参加过某课程的培训,需要对课程给与反馈;当反馈提交后,可以修改自己的反馈,这三种情况都属于用户课程的三个分支,因此在定义业务逻辑时,可以划分出用户自身的课程状况业务模块,以及参加、反馈、修改反馈三个子业务模块。对于需要满足某些条件才能够进行的活动,需要加上逻辑判断条件。比如,在用户未登录系统时,是不能够进行课程的预定操作的,只能进行课程的查询、浏览以及查看统计结果等操作。当用户登录系统以后,不仅可以进行浏览用户的操作,也可以查看用户的参加过的课程状况、课程的反馈情况和课程的预定情况等。根
36、据实际的业务调查和进行业务流程的抽象,可以定义出系统的业务过程图,业务过程图反映了系统中各种业务的进行过程和先后次序。下图2-1显示了普通用户和浏览用户的主要动作流程。图2-1 用户活动图3管理员活动定义与用户定义的过程相同,管理员是系统的维护者。管理员可以维护系统的各种信息。图2-2显示了管理员的主要动作流程。图2-2 管理员活动图2.3.3 用例分析用例分析的目的在于,从系统用户的观点来分析需求。用例是描述系统功能需求的高效工具。通过业务分析可知,软件系统应该有的参与者主要有普通管理员、超级管理员、员工、讲师。(1)普通管理员普通管理员可进行的系统操作有:讲师管理,课程管理,排课管理,员工
37、管理,选课检查,员工选课管理,讲师授课计划管理,员工成绩管理。(2)超级管理员(Sa)Sa有所有普通管理员的功能,同时可以管理系统中的管理员账户,即可以创建、删除和修改任意一个管理员帐户,包括管理员的基本信息和权限信息(即用户基本信息的管理与维护、用户权限的分配与管理)、数据库的备份与还原等。(3)员工员工可进行的系统操作包括如下内容:个人基本信息的查看和修改。查看讲师信息,员工可以查看公司内的讲师信息。选课,员工通过选课功能,确定自己需要参与的培训课程。查看选课信息,员工可以查看自己的选课信息。成绩查询,员工可查看自己每个培训的考试成绩。公告与通知查看。讲师评教。课件下载。(4)讲师个人基本
38、信息的查看与修改。成绩录入与修改。成绩查看。授课。考勤管理。查看评教。课程与资料的发布。(5)培训主管个人基本信息的查看与修改。课程申请。课程创建。课程安排。公告信息查看。课程的增删改查。(6)培训科长系统个人基本信息的查看与修改。课程申请审批。2.3.4 用例图用例图从用户的角度描述系统功能,并指出各个功能的操作者。用例图定义了系统的功能需求。企业培训管理系统中,主要的用户类型有管理员(包括普通管理员和超级管理员)、员工、讲师、培训主管、培训科长。对于这几类不同的用户,他们所能进行的用例是不同的,下面将给出对应的系统用户用例图以及各用户对应的用例图。系统中所有的用户角色如图2-3所示。 图2
39、-3 系统用户用例图系统的五类用户都各自拥有不同的用例需求,如下:(1) 普通管理员用例图如图 2-4所示。图 2-4 普通管理员用例图(2)超级管理员用例图如图 2-5 所示。图 2-5 超级管理员用例图(3)员工用例图如图 2-6所示。图 2-6 员工用例图(4)讲师用例图如图2-7所示。图2-7 讲师用例图(5)培训主管的用例图如图 2-8所示。图2-8 培训主管用例图(6)培训科长的用例图如图 2-9所示。图2-9 培训科长用例图2.4 系统数据流分析程序在运行过程中,实际上就是数据的运行与流动,数据流程分析就是将数据流动的过程提取出来,通过对该过程进行分析,了解数据的整个流动过程,包
40、括数据的采取、输入、处理、加工、输出等,通过整个流程的分析,发现数据流动中可能存在的错误,方便及时改正10。通过对数据流动过程进行分析,获得数据交换以及存储的相关流程后,可以用数据流图的方式来进行表达。数据流图(DFD)指的是从数据的传递以及加工的角度,对系统的逻辑功能以及数据的流动过程进行描述,数据流图表达是结构化分析方法中的一种重要工具。图2-10给出的是顶层数据流图,顶层数据流图是站在系统的角度进行的数据流动分析。 图2-10 系统顶层数据流图由图可知,中间圆形的部分为目标系统,两边的是箭头指的是数据的流入和流出,流入系统的数据经过处理后再流出,成为输出的数据。左边的所有数据都是流入到系
41、统中的数据,而右边的所有数据都是代表流出的数据。该数据流图在站在系统的角度对培训管理系统进行的数据流动分析。由于顶层数据流图是站在系统的角度进行的数据流分析,无法全面具体的描述系统的数据流动,因而,对于顶层数据流图,还需要进行二次分解,形成一层数据流图,如图2-11所示。图2-11 系统一层数据流图相对于顶层数据流图来说,一层数据流图更加细致,然而由于涉及到多个业务的处理,而对于具体的某个业务来说,又无法具体描述出数据流动情况,因而一层数据流图又可以继续细化,形成二层数据流图,这里针对申请课程信息的二层数据流图进行分析。如图2-12所示。图2-12 系统二层数据流图之一图2-13的数据流图是针
42、对评教管理业务而进行的二层数据流动分析。该业务实现过程中涉及到的用户有学生、教师、培训主管和科长,学生通过系统进行评教,相关的评教数据会进入评教表中,而教师则可以通过评教表查看到自己的评教结果,培训主管和科长可以查看到所有教师的评教结果。图2-13 系统二层数据流图之二2.5 系统非功能需求作为功能需求的补充,软件需求规格说明还应包括非功能需求,它描述了系统展现给用户的行为和执行的操作等。它包括产品必须遵从的标准、规范和合约;外部界面的具体细节;性能要求;设计或实现的约束条件及质量属性。1.开放性和标准性原则基于开放式标准,进行全局统一规划;采用有关的国际标准、国家标准和行业规范;系统设计要充
43、分考虑后续开发的要求,在完成各功能模块软件开发的同时,提供便于各组织进行二次开发的数据接口和软件接口:对于系统中使用的代码表的编码尽量当前最权威、最广泛的标准,首先参照国际标准,没有国际标准时参照国家标准,没有国家标准的参照行业标准、没有行业标准的参照单位自己制订的单位标准。2.可操作性和易用性系统软件应安装简单、操作方便,具有良好的操作界面,尽可能考虑今后业务的发展。在进行人机界面设计时,需要编写用户手册或者提供联机帮助设施,内容应简练,以使用户遇到复杂问题时寻找答案。3.灵活性和可扩展性系统应易于扩展、升级和移植,并具备支持业务处理的灵活的参数化配置,业务功能的重组与更新的灵活性,新的业务
44、应用可灵活增加,不影响系统原有业务流程,用户权限的灵活变更。4.在安全性方面,系统应该有严格的权限管理功能,各功能模块有相应的权限方能进入。5.在可靠性方面,系统应让用户能可靠、正确的使用系统,并且系统应具有一定的容错能力,包括具有错误诊断功能,具有修正错误的能力,具有出错保护功能,例如系统要避免用户删除重要数据,在删除前加上确认操作,可以避免不可挽回的损失11。6.可维护性和可移植性可维护性指的是目标系统在开发好以后,方便维护与管理,在出现问题的时候能够快速定位并快速恢复,企业培训管理系统在设计过程中采用了模块化原理,各模块之间独立性强,因而在模块出现问题或需要功能扩展时,可以很容易地进行相
45、应的修改,不会影响到其他模块的运行。同时由于各模块之间独立性强,因而,也方便系统相关功能的移植,在需要功能扩展时也可以较容易地进行扩展12。第3章 系统设计3.1 软件设计概述对软件需求有了完整、准确、具体的理解之后,接下来的工作就是用软件正确地实现这些需求。为此,必须首先进行软件设计。软件设计的目标,是设计出所要开发的软件的模型。软件设计在软件工程过程中处于技术核心地位,是软件开发过程中决定软件产品质量的关键阶段,是后续的所有软件开发和软件维护步骤的基础,如果不进行设计,我们就会冒构造出不稳定系统的风险。为了获得高质量的软件设计结果,应该遵循模块化、抽象、逐步求精、信息隐藏、模块独立等基本设
46、计原理。通常把软件设计工作划分为概要设计和详细设计两个阶段。概要设计的主要任务是,通过仔细分析软件规格说明,适当地对软件进行功能分解,从而把软件划分为模块,并且设计出完成预定功能的模块结构,具体地说就是把需求分析得到的系统扩展用例图转换为软件结构和数据结构。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。概要设计有多种方法。在早期有模块化方法、功能分解方法;在60年代后期提出了面向数据流和面向数据结构的设计方法;近年来又提出面向对象的设计方法等13。3.2 系统架构设计首先对系统的逻辑结构进行设计,目标系统的设计采用的是
47、B/S 三层体系结构,分别是表示层、业务层和数据层。1表示层表示层的作用在于为用户进入系统提供入口,并且将系统处理结果表示给用户,供用户浏览。在表示层,采用到的主要技术是 Master Page 模板技术,该技术可以用来开发出风格统一的用户界面。2业务层业务层主要是用来对用户请求中的业务逻辑进行相关的处理,包括对业务逻辑的判断与逻辑的执行,该层所采用的主要组件有SqlClient、DataSet 和 DataReader等,通过业务层,可以实现系统数据的快速更新,同时也方便系统后期的相关维护工作。3数据层数据层的主要作用是为系统提供数据存储场所,并为数据执行提供相关的方法,当有数据需要执行时,会通过该层来进行,在执行完数据请求后,还会将操作的结果反馈至用户层,方便用户的浏览与查看。在三层中,数据层是基础层,为系统提供最基础的数据功能,同时它也是安全性与可靠性要求最高的一层,系统中所有的数据都是保存在这里,而且程序会运行一次,相关的数据就要被执行一次,因而,在该层需要配置一台较高性能的服务器,以满足相关的需求。3.3 系统模块设计3.3.1 模块化设计原则本系统遵循模块化的基本原理,自定