《企业考试系统》项目实践(01):概述及需求分析
摘要:使用Visual Studio 2010,开发基于企业内部考试及考试管理的《企业员工认证考试系统》及《企业员工认证考试管理系统》。
本人所在的公司是一个软件开发公司下属的培训中心,在年初总公司提出需求,仿照MS MCTS、SUN SCJP、Oracle OCA等认证考试的模式对员工的技术能力进行考核,考虑要投入及企业员工内部的需求问题,不进行常规的认证考试,由我设计一个考试系统来满足其需求。另外本人也考虑到其他需要进行考试的教学需要,设计、开发一套考试及考试管理系统。
在网上查询了许久,发现网上的一些考试系统(开源的或免费的)都不能符合我们的需要,因此我自己设计、开发一套新的系统,现在系统基本已经开发完毕,在这里分享给大家,也算是对于已完成系统的一次重构。也请各位大牛提出意见和建议。
需求分析:
1、基本参照考试模式:MCTS等计算机认证考试、日语能力等级考试、日常学生考试
2、考试、试题、试卷等:
1)考试类型大体确定,其中每考试类型包含若干知识点,每知识点涉及技术类别、技术级别
2)试卷对应试题采用手动组卷模式,即手动由试题库中的若干试题组成一套试卷(如今后有可能,在题库丰富、技术可行的前提下,可以改为自动随机组卷)
3)每试题的知识点确定,且仅对应一个知识点。试题的类型分为单项选择题、多项选择题和主观题。考虑到安全性问题,试题以数据形式,加密存放到数据库
4)一个考试可由多个试卷组成,且考试是否通过可以是由得分或答对数量或答对百分比确定(例如MS和认证考试即为此种),也可以由考试各试卷是否均通过(例如我大学时期的外语四六级考试即为此种,作文必须合格,如作文分数不够,即使总成绩足够也算未通过)
3、考试环境:考虑到只是公司内部使用,《考试系统》采用C/S结构,只能在局域网内实施
4、考试后有多种报表提供给不同的人(如:员工得到其考试结论报表,部门经理得到其部门员工的统计报表等)
5、还有其他的一些细节内容,逐步在后面的功能实现中再详细讨论。。。
基本功能如下图所示:
系统架构:
1、后台管理系统采用B/S结构(或C/S结构,本人已做完的后台管理系统采用的是C/S结构,但为了多研究一些技术上的问题,想在第二版中采用基于Silverlight的B/S结构)
2、前台考试系统采用C/S结构(本人已做完的后台管理系统采用的是基于Form的Windows应用程序,但为了多研究一些技术上的问题,想在第二版中采用基于WPF的Windows应用程序)
系统平台
数据库服务器:SQL Server 2008 R2
Web服务器:Windows 2003 R2 + IIS
前台考试系统客户端:XP或Vista或Windows 7 + Framework
后台考试管理系统客户端:各种支持Silverlight的浏览器
开发平台:
Windows 7
.Net Framework 4.0 + Visual Studio 2010
编程语言:C#
前台考试系统界面:WPF4
后台考试管理系统:ASP.Net 4.0 + Silverlight 4
(注:已完成版本前台、后台均为基于Framework 2.0的Windows应用程序,在此只是为了更多的学习、掌握一些新的技术)
辅助工具:
Power Designer 15:用于数据库设计
CodeSmith:用来生成一些重复代码
PhotoShop:用来做一些图片
Dreamweaver:用来做一些网站的前台设计
Expression Blend:用来做一些WPF和Silverlight的前台设计
Trufun UML:UML工具
…
待续…