软件系统设计格式.docx

上传人:b****6 文档编号:7204399 上传时间:2023-01-21 格式:DOCX 页数:38 大小:1.02MB
下载 相关 举报
软件系统设计格式.docx_第1页
第1页 / 共38页
软件系统设计格式.docx_第2页
第2页 / 共38页
软件系统设计格式.docx_第3页
第3页 / 共38页
软件系统设计格式.docx_第4页
第4页 / 共38页
软件系统设计格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

软件系统设计格式.docx

《软件系统设计格式.docx》由会员分享,可在线阅读,更多相关《软件系统设计格式.docx(38页珍藏版)》请在冰豆网上搜索。

软件系统设计格式.docx

软件系统设计格式

学号:

 

软件工程/软件工程综合实验

 

基于三层架构的hr-eTraining培训系统的设计与实现

 

学院理学院专业信息与计算科学班级信息12-1.2

学生指导教师

完成时间:

2015年6月1日至2015年7月15日

摘要

开发了hr-eTraining(人力资源部培训系统),采用EasyUI的前台框架与基于WEB的三层分布式体系后台结构,以及数据库技术(MSSQLSERVER)和程序设计技术(ASP.NET,AJAX)的开发技术进行开发。

基于软件工程方法、思想对系统进行分析、设计。

包含四大模块:

权限管控模块、基础数据维护模块、培训计划自定义维护模块和报表数据查看与导出模块。

以捷普电子(广州)有限公司的实际情况为应用背景,具有较强的实用性。

对捷普电子(广州)有限公司电子化管理具有参考作用。

关键词:

ASP.NET 人力资源部培训系统 三层分布式体系结构 电子化管理

第一章 绪论

1.1 项目背景

传统的人力资源管理模式在电子化时代知识化、网络化、全球化的宏观环境中,已远远不能满足企业在培养组织能力、技术创新以及获取、保持、激励、评估人才等方面的要求[1]。

在日益高效化的今天,员工技能需要不断提升,才能满足生产需求。

提高员工技能,主要的途径就是培训。

随之培训需求的不断增加,培训方向、培训内容也变得越来越多样化,培训课程的管理也变得愈加混乱。

传统的人工创建培训,不仅耗费大量的人力物力,而且工作量大容易出错。

随着数据库技术的发展,使用计算机管理培训工作也成为大势所趋,它为培训工作节约了大量的人力和物力,也大大减轻了人力资源部门人员的工作量。

1.2 研究目的与意义

“hr-eTraining培训系统”则是以公司网络为背景的集管理、服务为一体的一个网络化、管理化的系统。

通过使用Google的“OneLogin”协议,不仅可以给予合法用户权限自定义培养课程,同时能阻止非法用户登录使用。

在出席问题上,取代了传统的纸质版签到模式,而是采用与IC卡进行关联,利用打卡机进行打卡签到,更加准确的获取人员的到场信息。

通过发送调查邮件取代传统纸质版调查问卷,获取调查结果,使得数据获取更加及时,统计更加准确。

该培训管理系统解决了人力资源部门培训课程多而混乱的问题,节约了大量的人力物力,提高了人力资源部门的工作效率。

第二章 开发环境介绍

结合系统需求分析,HR-eTraining系统基于.NTEFramework,使用C#语言,采用B/S结构体系,利用ASP.NET、MSSQL数据库以及EasyUI等,并且以IIS作为服务器、VisualStudio2010作为编译器等软件进行开发。

2.1.NETFramework

  .NETFramework,是微软公司针对互联网推出的战略构架,目的是解决异质平台的数据交换问题,即应用程序不管采用何种操作系统、编程语言或硬件环境,都可以通过Internet进行通讯和共享数据,从而使分散在Internet上的各种服务有机地组合起来。

该构架以网络为中心囊括了微软的所有产品和应用[2]。

  .NETFramework围绕着基于XML的web服务展开,实现了代码编译、组件配置、程序运行等各个层面的功能。

其包括了两个核心模块:

通用语言运行环境CLR(CommonLanguageRuntime)和.NETFramework类库。

这两大核心模块的出现让所有符合公共语言规范(CLS)的语言之间可以进行交互操作,实现了夸语言交互。

目前.NETFramework已经发布到.NETFramework4.5框架。

而市场上使用较多的仍然是.NETFramework3.5与.NETFramework4.0。

在.NETFramework4.0中,出现了多个新特性,其中2个新特性值得我们:

图表控件以及ASP.NET4可扩展的输出缓存。

这两个新特性的出现分别使得开发者就无需再去使用额外的插件来生成图表以及使得程序可以在本地/远程磁盘、数据库、分布式缓存引擎甚至是云中增加多个缓存,来存储页面和资源以提供更快的响应速度。

2.1.1.NETFramework的优势

  1.兼容性高

  .NETFramework的版本非常多,目前有六个.NETFramework发行版。

可能在计算机上安装了多个版本的.NETFramework。

计算机上的每个.NETFramework版本都能与其他版本共存。

但是在安装.NETFramework的某个发行版之前,必须删除该发行版所基于的任何测试版。

否则,将无法安装此.NETFramework发行版。

  2.支持异构环境

  基于.NETFramework的应用程序不依赖任何特定操作系统、中间件或硬件,因此,设计合理的基于.NETFramework的程序只需开发一次就可以部署到各种平台。

目前用Mono开发的程序就可以实现多平台同时发布,只需要安装了.NETFrame无论是PC机还是其他终端,均可运行程序[3]。

  3.提高开发效率

  由于组件技术的使用,可以按照开发人员的技能对应用程序开发进行分工,并行开发,提供整体开发效率。

例如:

图形设计师创建JSP模板,商业逻辑由该领域的专家完成,JSP页面和EJB由Java工程师完成,应用程序的装配和部署由团队中其他的成员完成,其中许多工作可以同时进行,有助于加速应用程序的开发。

  4. 更容易更新、安装

  .NETFramework后,MicrosoftUpdate服务会自动更新它。

如果通过“控制面板”接收“自动更新”,则计算机上安装的任何版本的.NETFramework将通过最新的ServicePack始终保持最新。

  5.安全性

  管理员可以通过决定给予哪些许可来优化安全策略,然后,依靠.NETFramework处理所有的安全操作。

代码访问安全能阻止大部分的恶意攻击,对代码的验证减少了缓存溢出和其它会导致安全攻击的不期望的行为。

因此,应用程序和组件生来就受到了保护,它们免于大多数安全问题的冲击,而这些安全问题一直困绕着本地代码的实现。

  总之,.NETFramework为我们提供了一个建立在标准的技术之上、非常灵活的端到端安全的多层体系架构,从而满足各种不同企业应用的需求。

2.2C#简介

  C#是微软公司推出的一种语法简洁、类型安全的面向对象的编程语言,开发人员可以通过它编写在.NETFramework上运行的各种安全可靠的应用程序[4]。

概述:

  C#是从C和C++派生出来的,集C与C++的大量优点,同时也摒除了C与C++的臃余的地方。

C#的发音模仿乐上的音名“C#”(C调升),是C语言的升级的意思。

C#语法简洁,去掉了C++中的指针,同时具有面向对象所应有的一切特性:

封装、集成和多态。

C#具有强大的安全机制,可以消除软件开发中的常见错误。

同时拥有完善的错误、异常处理机制,使程序可以在交付应用时能够更加健壮。

  从某种意义上来说,C#是最直接地反映了底层CLI的一种程序设计语言,它非常依赖于.NET框架,因为它被特地设计成能充分利用CLI所提供的特征的一种语言。

例如,绝大多数的C#内置类型,全都对应于CLI框架所实现的值类型(value-types)。

VisualC#1.0是随.NET框架1.0和VisualStudio.NET2002一起推出的。

在1.0版本中,C#以纯粹的面向对象语言的身份出现在人们的视野中。

2004年6月份,C#2.0发布,其中引入了泛型的概念,同时也引入的匿名方法。

匿名方法的应用,取代了一些一次性短小的委托,使得语言更加简洁紧凑。

C#3.0中实现实现了通过面向对象的语法实现非面向对象数据源的查询技术,课查询的数据源从关系型数据库眼神到一半意义上的数据集合(如列表、数组等)。

2010年,微软推出C#4.0,在C#4.0新增dynamic关键字,提供动态编程(dynamicprogramming),把既有的静态对象标记为动态对象,类似javascript, ActionScript3.0等。

近期的一个版本是2012年发布的C#5.0。

2.3ADO.NET

  ADO.NET的名称起源于ADO(ActiveXDataObjects),是一个COM组件库,用于在以往的Microsoft技术中访问数据。

ADO.NET可让开发人员以一致的方式存取资料来源(例如 SQLServer 与 XML)。

.NET有很多对象与ADO中的对象功能相似,但ADO.NET更强大,它使用XML来进行数据交换,添加了许多新的对象和程序化接口[5]。

  ADO.NET允许和不同类型的数据源以及数据库进行交互。

然而并没有与此相关的一系列类来完成这样的工作。

因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。

一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。

ADO.NET包含的类主要有如下几个:

  1、SqlConnection类

  SqlConnection是连接数据库的类,在进行所有与数据库交互的行为的时候,都必须用到它来连接数据库。

连接数据需要4个基本参数参数,分别是连接的数据库服务器、连接的数据库名字、操作数据库用户的用户名、操作数据库用户的密码。

除了这4个基本参数,当然还可以有其它参数,比如连接等候时间等。

  2、Command对象

  Command对象可以用来执行存储过程、函数以及数据库语句等。

用于实现对数据库的数据的增加、删除、查询和修改。

Command对象在执行的时候需要使用SqlConnection对象,用于指定修改Command执行的数据库。

成功使用SqlConnection后,再通过Command常用的ExecuteReader()方法、ExcrteScalar()方法和ExecuteNonQuery()方法就可以执行对应的Sql语句或存储过程。

其中ExecuteNonQuery()方法常用于执行插入语句,该方法没有返回值。

  3、SqlDataReader类

  许多数据操作要求你只是读取一串数据。

datareader对象允许你获得从command对象的SELECT语句得到的结果。

考虑性能的因素,从datareader返回的数据都是快速的且只是“向前”的数据流。

这意味着你只能按照一定的顺序从数据流中取出数据。

这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。

  4、DataSet对象

  DataSet对象是数据集,是数据在内存中的表示形式。

它包括多个DataTable对象,而DataTable是数据表,它的形式就象一个普通的数据库中的表。

你甚至能够定义表之间的关系来创建主从关系(parent-childrelationships)。

DataSet是在特定的场景下使用――帮助管理内存中的数据并支持对数据的断开操作的。

DataSet是被所有DataProviders使用的对象,因此它并不像DataProvider一样需要特别的前缀。

  5、SqlDataAdapter类

  某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。

同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。

Dataadapter通过断开模型来帮助你方便的完成对以上情况的处理。

当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,Dataadapter填充(fill)DataSet对象。

dataadapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。

另外,dataadapter包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。

你将为DataSet中的每一个table都定义dataadapter,它将为你照顾所有与数据库的连接。

所有你将做的工作是告诉dataadapter什么时候装载或者写入到数据库。

第三章 可行性分析和需求分析

3.1可行性研究

  可行性分析是软件开发过程的一个重要阶段也是项目决策的依据[6]。

可行性研究主要内容是要求以全面、系统的分析为主要方法,经济效益为核心,围绕影响项目的各种因素论证拟建项目是否可行,避免盲目投资。

主要是必要性分析和效益分析,以决定是否开发项目,同时还要进一步进行技术可行性分析、投资效益分析、组织管理可行性分析,确定是否存在否定项目的可能性。

下面就从经济可行性和技术可行性进行简要分析。

3.1.1经济可行性分析

  hr-eTraining培训系统开发需要投资费用和未来的运行维护费用,其中投资费用包括设备费用、人员费用及其他费用,如由于需要新增的用于签到的打卡机,通常为了保证数据的安全,要求额外的存储设备定期备份数据。

系统的收益主要是通过改变原有的工作模式,提高工作效率以及有其他难以计算的指标。

3.1.2技术可行性分析

  本系统在软件方面选择ASP.NET 4.0、EasyUI进行网站界面的设计和功能的实现,采用SQL Server 2008作为后台数据开发工具。

 代码开发工具是MicrosoftVisualStudio2010。

Visual Studio.NET提供了一个统一的、紧密集成的可视化编程环境,简化了开发应用程序的过程,缩短了实用方法的时间。

利用Visual Studio.NET,可以非常轻松地创建具有自动伸缩能力的可靠的应用程序和组件。

数据库开发工具是SQLServerManagementStudio,是T-SQL中非常成熟的工具[7]。

可视化的界面能有效的降低开发难度。

  综上所述,本系统具有很好的技术支持,具有技术可行性。

3.2需求分析

3.2.1功能需求

现代人事管理的核心本质是提高人才效能,培训是提高人才效能的有效办法[8]。

在工作中,课程培训是公司提高员工整体。

而公司越大,培训也就同样的会越多。

这个时候,往往由传统的人为方式去管理培训,往往会显得很吃力,并且会耗费大量的人力物力。

所以本系统着重解决的就是通过电子化的管理,取代传统的人工管理培训。

hr-eTraining培训系统包含了四个大模块:

权限管控模块、基础数据维护模块、培训计划自定义维护模块和报表数据查看与导出模块,而每大模块下又分出2-4个小模块不等。

  系统采用面向用户的需求分析方法设计。

系统的参与者包括了系统管理员、人力资源部工作人员、培训员工以及讲师。

系统采用processon建模工具建模,主要建立了用例视图。

1.系统管理员

  系统管理员是保证整个系统能够正常运行的操作人员。

各管理员拥有对应的管理权限,根据权限可操作使用系统的对应功能。

管理员操作权限包括了创建角色、创建用户、授予角色权限以及授予用户角色,如图3.1所示。

图3.1

  2.人力资源部工作人员

  人力资源部门工作人员可以查询各种记录、创建培训课程、发送培训通知邮件、打开打卡、记录员工请假情况、维护基础数据、录入员工成绩以及发送培训结果邮件等等,如图3.2所示。

图3.2

  3.讲师

  讲师启动打开界面让到场员工签到同时获取培训相关的邮件。

  4.培训员工

  培训员工重要参与者,培训员工持有IC卡。

培训员工通过IC卡进行打卡签到,培训员工需要对收到的调查问卷邮件进行回复,以及培训员工可以收到培训结果邮件,如图3.3所示。

图3.3

3.2.2数据需求

  根据需求分析,本系统数据采集部分有两主要组成部分,它们分别用E-R图表示为员工信息E-R图、培训计划E-R图。

这里主要给出了这两E-R图,其他E-R关系将不在此列举。

图3.4为员工E-R图,图3.5是培训计划E-R图。

图3.4

图3.5

3.2.3系统流程分析

  系统流程图(SystemFlowchart)是描绘系统物理模型的传统工具。

它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达信息在各个部件之间流动的情况。

系统流程图表达的是系统各部件的流动情况,而不是表示对信息进行加工处理的控制过程。

系统流程图的作用表现在以下几个方面:

  1.制作系统流程图的过程是系统分析员全面了解系统业务处理概况的过

程,它是系统分析员做进一步分析的依据。

  2.系统流程图是系统分析员、管理员、业务操作员相互交流的工具。

  3.系统分析员可直接在系统流程图上画出可以有计算机处理的部分。

  4.可利用系统流程图来分析业务流程的合理性。

本系统的基本操作流程如图3.6所示。

图3.6系统业务流程图

3.6系统的非功能性需求

  非功能性需求的定义就是指软件产品除了满足客户日常业务的要求而具有的功能性需求外,为保证产品的正常运作、性能以及满足日后维护的需要,产品所必须具有的功能。

一般情况下,非功能性需求主要是包括系统的性能稳定、可靠性以及可维护性、可扩展性等[9]。

在hr-eTraining系统中,对系统的功能性需求主要包括以下几点:

  系统运行的性能

  由于该系统面向的操作人员主要是管理员、人事部门工作人员、员工,这就需要系统操作更为方便,更容易维护,而且兼容性强,从而能正常运作的需要。

  系统稳定可靠性

  鉴于本系统及到员工的信息,而且必须承担起长时间的运行,保证培训的完整性,需要系统能够持续、稳定的长时间运行。

  维护性和扩展性能

  系统的维护性和扩展性指的是系统应对技术和功能需求变化的支持能力。

比如当使用的技术或功能性需求发生变化时,系统要根据需求的变化而变化,此时,就要对系统进行修改,故在系统架构上要考虑用最少的代价来应对这种可能的变化。

性能选项

描述

测试点

登陆时间

小于3

B/S客户端

并发量

大于100(受编码率影响)

所有模块

稳定性

容错,改错,致命错误恢复

所有模块

安全性

系统安全设置,安全软件,硬件安全设施

系统设置

可移植性

Windows

WINDOWS

数据库

后台数据存储/信息查询支持

SQLServer

表3.1性能需求表

  总体设计根据需求分析而得来的结果,为后面说的详细设计做铺垫,是需求分析和详细分析的过渡阶段,起着承上启下的作用。

本章针对学生评测管理系统进行了概要设计,包括功能模块、权限管理和系统开发硬件环境。

第四章 总体设计

4.1系统设计目标

  本系统针对人力资源部门培训流程最真实的需求而开发,通过对课程、员工、成绩、信息反馈等各项活动实施全面管理,不仅能使员工准确高效地执行各项活动,减轻劳动强度,而且能够让员工及时了解本自己的培训情况,从而达到完善高效培训的目的。

该系统具有科学、高效、实用等特点,能够达到较高的用户满意率。

  设计说明书的系统特别注意做到以下几点:

  1.易于管理维护。

该系统具备简易、快捷的各类管理工具,可以是对系统运行的控制工具、日志的查看工具、功能的管理工具。

用户权限管理、集成网络管理与系统调试、监控、诊断工具。

2.较高的可用性与可靠性。

该系统应该保证稳定的运行,持续长时间并且没有故障。

需要制定有效的技术和服务,来保证系统的可靠性运转。

这些方式,可以是错误跟踪和处理技术等。

  3.经济上可行。

能够让系统在满足尽可能多的用户需求上,花费较少的费用。

并保证系统能够可靠和稳定的运行,为用户提供更多的功能服务,满足用户的日常工作需求。

4.可扩展性。

因为系统运行之后,往往会根据用户的需求,来对系统中的功能进行修改或者是扩展,这就要求系统能够进行扩展。

易学易用。

系统开发时要充分考虑到操作人员的计算机水平,尽量使各种操作易学易操作。

该系统使用时,经常会并行操作,因此本系统应具备友好的人机界面,使得操作能简便灵活。

  5.良好的开放性。

系统应该具有较高的开放机制,为其它系统的接入提供丰富的API。

由于目前的主流开发技术是面向对象技术,因此要求系统所提供的API是面向对象的封装方式。

4.2系统功能设计

  根据hr-eTraining系统的特点,可以将综合评测系统分为权限管控模块、基础数据维护模块、培训计划自定义维护模块和报表数据查看与导出模块。

4.2.1权限管控模块:

  首先要有权限管控模块,该模块主要负责验证用户的合法性,并且根据身份的不同,进行相应的权限控制。

系统的注册身份主要是人力资源管理部门人员、讲师以及员工。

4.2.2基础数据维护模块

主要负责对部门信息、课程信息、员工信息以及讲师信息的录入。

这些信息是系统的基础信息,对这些信息的维护,保证了系统的时效性。

4.2.3培训计划自定义维护模块

该模块主要是对培训的创建及维护,包括了创建培训、添加培训员工名单、发送培训通知邮件、发送提醒邮件、员工打卡、录入考试成绩、发送缺勤调查邮件、发送课程评价调查邮件以及发送课程报告。

该模块是系统的主要业务模块,是系统的核心。

4.2.4报表数据查看与导出模块

主要实现报表预览及导出,报表要以Excel的形式导出。

根据上面功能模块分析,系统功能结构图如图4.1所示。

图4.1系统功能结构图

4.3开发及运行环境

系统开发平台:

MicrosoftVisualStudio2010、ie8

WEB服务器:

IIS

系统开发语言:

C#

系统后台数据库:

SQLServer

系统运行平台:

Windows8/Windows7/WindowsXP(SP3)。

  详细设计是系统设计的最后一步,详细设计主要根据总体设计中规定处理方式进行功能模块的流程和数据库的详细设计,以下将对系统几大核心模块和数据库的进行详细设计。

第五章 核心模块设计

5.1权限管控模块

  该模块主要负责验证用户的合法性,并且根据身份的不同,进行相应的权限控

制。

hr-eTraining培训系统的注册用户分别是管理员、人力资源部门人员、讲师。

  管理员:

添加、删除、更改用户身份。

添加、删除、更改身份权限。

  人力资源部门人员:

部门信息、员工信息、课程信息以及讲师信息进行添加、删除以及修改。

拥有基础数据维护模块、培训计划自定义维护模块和报表数据查看与导出模块的使用权限。

讲师:

能打开打卡界面,给予员工打卡。

学员:

打卡签到,接收邮件,添加调查问卷。

5.2基础数据维护模块

  主要辅助课程信息、员工信息、讲师信息以及部门信息的添加、修改、删除,保证这些信息的时效性,确保为最新数据。

5.3培训计划自定义维护模块

  该模块主要负责对课程的跟踪,从课程的创建开始,到发送培训通知邮件、再次通知邮件,再到培训开始前的打卡签到,以及培训结束有的缺勤调查问卷、课程评价问卷的发送,到最后培训全部结束,问卷收集完毕发送培训报告,都是该模块的内容。

5.4报表数据查看与导出模块

  主要实现报表预览及导出为Excel。

5.5数据库设计

  本系统采用SQLSever作为后台数据库,数据库命名为eTraining,其中缺勤问卷列表、缺勤问卷结果表、权限表、课程信息表、部门信息表、员工信息表、菜单表、菜单模块信息表、培训课程表、身份信息表、打卡记录表、打卡时间表、课程调查问卷列表、课程调查问卷结果表、教师信息表、参加培训员工表、用户身份表、用户表等18个数据表。

表5.1是对本系统中所有数据表的相

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1