基于.Net的大学生项目管理系统的设计与实现
2013-12-29陈进陈士川
摘 要:随着“项目化”的教学方法在实践教学中深入应用,如何提高学生项目实践的主动性,让学生作为主体申报项目,指导教师对学生申报的项目进行全程控制管理,促进项目的顺利完成,成为了一个值得研究的课题。本文基于Web的B/S模式,运用SQL Server2008数据库和ASP.NET开发技术,设计了一个含项目申报、审核、立项至结项为一体的项目管理系统,解决了对项目的流程化管理需求。
关键词:ASP.NET B/S 三层结构 项目管理系统
中图分类号:G71 文献标识码:A 文章编号:1672-3791(2013)04(a)-0017-02
目前,越来越多的大学课程都采用“项目导入、任务驱动”的教学方法,主要思想就是选择比较典型的、实际的项目贯穿于整个教学始终,让学生在实现项目的过程中,学习到开发项目所需要的知识和职业技能。在整个教学过程中,“项目”的选择起到举足轻重的作用,比“项目”选择更为重要的是确保整个项目的顺利实施,把握好项目开发的每一个环节。大学生项目管理系统就是为解决项目的过程管理而设计的一套项目管理平台,通过该平台可以实现从项目申报到项目结项全过程的无纸化管理,确保项目实践的效果。
1 系统功能设计
1.1 系统框架设计
本系统采用B/S三层架构作为系统开发框架,系统架构图如图1所示。B/S三层架构将整个系统划分为表示层(WebUI)、业务逻辑层(BLL)、数据访问层(DAL)。
表示层(WebUI):负责接收用户输入,并将结果显示在页面上。
业务逻辑层(BLL):负责系统中所有业务逻辑的处理,并将处理的结果告知给上层。
数据访问层(DAL):负责处理和数据库的所有交互操作,其中包含与数据库的连接、查询、添加、删除和修改等操作方法。
1.2 系统总体设计
根据对用户的需求调研,本系统主要包含如下功能模块。
(1)基础设置:包括系部、专业、班级、学生、教师以及数据字典项管理等功能。
(2)系统设置:包括系统功能、系统模块、角色管理、角色功能管理等功能。
(3)项目申报:包括填写项目申报书、项目列表、项目编辑等功能。
(4)项目审核、立项、日志:包括指导教师审核上报项目,专业负责人同意立项,在项目开发期间填写项目开发日志等功能。
(5)中期检查:包括学生填写期中检查表,指导教师审核等功能。
(6)申请结项:包括项目申报人根据项目完成情况,申请结项,参加项目答辩等功能。
(7)项目结项:包括指导老师录入项目答辩情况,确定是否同意结项等功能。
在整个系统中,主要完成对学生所申报项目的过程化管理,这也是整个项目的核心功能。项目管理的主要流程如图2所示。
1.3 系统数据库设计
根据前期对项目管理系统的需求分析,针对项目的流程管理,设计了项目开发所需要的数据库,共包含了11张表,如下表1所示。
2 系统实现关键技术
2.1 B/S三层架构搭建
本系统的开发技术采用基于B/S三层架构,开发之前,先搭建好项目的开发框架,开发框架中包含了:CXCY.Web(表示层)、CXCY.DAL(数据访问层)、CXCY.BLL(业务逻辑层)、CXCY.Model(业务实体类)和CXCY.Common(公共处理方法类)。
为了提高开发效率,在开发时使用了辅助开发工具CodeSmith,它是一种基于模板的代码生成工具,可以自行编写模板,结合所设计的数据库,生成各层的处理代码,这样可以大大减少项目开发时间,缩短项目开发周期。下面给出数据访问层(DAL)删除方法的模板代码,仅供大家参考,删除模板代码如下:
2.2 分页查询技术
在实现绑定查询列表时候,用到了分页绑定技术。分页绑定有两种方式,一种是把所有数据先读取到内存,然后进行分页处理,这种方式在处理大数据量数据时,速度会很慢。另一种是每次查询只取固定条数的数据,这种方式是目前主流方式。本项目在实现时,就采用了第二种方式。为了实现分页,特设计了一分页存储过程,具体代码如下:
3 结语
本项目设计的初衷是为了配合课堂教学,提高课堂教学效果,让学生自由组织团队或以个人的名义申报项目,指导老师可以通过平台对学生所申报项目进行流程控制和管理。经过两个学期的试用,发现很大程度上提高学生的学习积极性,规范了他们的行为,提升了老师的管理效率,值得继续推广和应用。
参考文献
[1]特罗尔森.C#与NET4高级程序设计[M].北京:人民邮电出版社,2011,4.
[2]崔淼.ASP.NET程序设计教程(C#版)[M].2版.北京:机械工业出版社,2011,6.
[3]卢扬,张光桃.基于ASP.NET技术的印刷管理系统的设计与实现[J].计算机与现代化,2012,12.
[4]张杰敏.ASP.NET Web程序设计(C#版)[M].北京:北京大学出版社,2011,1.