张永恒,艾晓燕
(榆林学院 信息工程学院,陕西 榆林 719000)
CDIO工程教育模式体现了近年来国际工程教育改革的最新成果,也是我国高等教育改革向职业教育转型过程中,培养应用型和技能型人才的一个主流方向,“CDIO”代表构思(Conceive)、 设 计 (Design)、 实 现 (Implement) 和 运 作(Operate),是以“做中学”和“基于项目的学习”为核心基础理念的教学模式。《Access数据库程序设计》作为数据库技术的入门课程,是诸多高校非计算机专业公共计算机教学第二层次的必修课程,也是部分高校计算机相关专业的必修课程,并且也是本校重点建设的校级精品资源共享课程,其教学目的主要是使学生掌握Access2010数据库的操作,熟悉面向对象程序设计的基本方法,培养学生的计算思维和一定的数据库设计能力,具备开发小型数据库应用系统以解决实际问题的能力,锻炼其项目思维和动手实践的职业技能,进而激发学生的创新意识。ACCESS课程的教学目标与CDIO工程教育的目标和理念相一致,而实验教学不仅是ACCESS课程教学体系的重要组成,也是学生将所学知识转化为能力的重要环节,上机实验教学的成效直接关乎学生掌握计算机知识的程度和动手能力的养成。
在ACCESS实验教学中通过引入基于CDIO理念设计的ACCESS实验系统,构建“教、学、做”一体的新型实验教学模式,使CDIO与ACCESS实验课程教学有机结合,加强了ACCESS课程学习与项目设计的相互联系,学生在接近实际的项目实训过程中“做中学,学中做”,实现了“从实践出发,上升至理论,再回到实际操作,创作出最终产品”的CDIO教育模式过程,不仅能够有效促进学生掌握基础知识,建立系统完整的知识体系,极大地提高其学习的积极性和主动性,而且能够提高其自我学习能力、实践能力、团队协作与沟通能力,学生的职业技能也得以提升;另一方面还能够提高实验环节的教学质量和管理效率。
文中结合本校实际情况,根据对Access数据库程序设计课程上机实验过程的深入分析,介绍了基于CDIO工程教育理念B/S程序开发结构的上机实验系统设计,及按照MVC模式开发的系统的实现过程。
ACCESS实验系统在进行总体分析时,就要考虑将CDIO工程教育的理念融入到实验教学过程,并体现在系统功能中,因此,将实验过程分解为“学”、“做”、“测”以及综合项目训练4个环节。
“学”的环节属于基于知识点的设计性实验案例学习,教师按教材分章进行组织案例和实验题目,学生可在校园网内随时随地学习相关案例。在案例学习环节中,首先,由教师根据教学重点和教学难点提炼出知识点,并进行总结介绍;其次,精心设计案例,提出所要解决的实际问题,对其进行文字说明和图片静态展示;再次,给出思路分析和算法流程图;之后,较为详细地描述解决该问题的步骤与过程;最后,给出ACCESS数据库文件,学生可演示运行示范工程项目,并从中进行知识点分析,总结知识体系,从而能举一反三。
“做”的环节属于课内设计性实验,在接受教学实例的学习引导后,要求学生在所有免费开放的机房或安装有ACCESS环境的学生个人计算机上完成,也可以在相关实验课上进行编程调试。对该部分实验案例的成果,要求学生在规定时间内进行提交并由教师进行成绩评定,计入实验作业成绩。
在“做中学”的过程中,教师也要注重对学生进行“提出问题、分析问题、解决问题”的思维训练,学生要养成项目开发完整过程的系统思维能力,并逐步提高其个人能力与职业技能。
“测”的环节分为学生自测和统一的阶段评测,对于学生自测没有任何限制,学生可以随意练习,巩固知识,而统一的阶段评测则是由教师组题,学生在实验课上当堂提交,成绩作为实验成绩的重要依据。
综合项目训练环节则要求讲授到一定阶段后按专业班级选取不同类型的案例给学生布置,并进行小组划分,学生自己安排团队内的分工,并将“构思、设计、实现和运作”四阶段融入到项目开发过程中,在项目完成后进行集体汇报,由教师进行评分并总结,成绩计入实验成绩。
根据系统的总体目标和建设思想,ACCESS上机实验系统的功能主要由基本信息管理、成绩评定管理、用户权限管理、分章实验管理、综合实验管理5个部分组成。基本信息管理用于设置学生、班级、教师等基本信息,成绩评定管理则是教师对实验结果给予成绩评定,用户权限实现不同用户访问系统时的合法性控制,分章实验管理完成教师进行案例项目、实验项目、测试题库等相关管理,以及学生进行案例学习、做实验、上传结果文件、课后随机测验等业务需求,综合实验管理完成对大项目实训的管理。系统应具备的具体功能如图1所示。
图1 功能组成图Fig.1 Functional components
在Access上机实验教学活动中,各项业务活动主要围绕着教师和学生这两个角色(Actor)进行,也包括管理员这一角色(Actor),这三类角色在登录后根据每个角色不同的权限分别进入不同的页面,完成各自相应的操作功能。管理员成功登录后可以设置教师、学生、班级的信息。教师登录后可修改密码、进行案例定制管理、实训项目的增删改查、学生实训成果文件查看和实验成绩评定。学生登录后可修改密码、选择案例进行学习,然后查看实验项目,在做完实验后提交实验结果,也可以参与模拟测验练习和进行统一组织的阶段测试等。
根据以上流程分析,对系统的教师、学生和管理员3个角色进行用例图设计,主要的系统用例图如图2所示。
图2 系统用例图Fig.2 Use Case diagram
软件架构设计是基于软件需求分析下的一项基础设计工作,在架构设计时,一般要先确定系统的技术体系,ACCESS实验系统确定采用B/S开发模式;再根据技术体系把业务模型部署到硬件设备上,形成物理模型,本系统部署校园网内,其物理模型如图3所示。
图3 系统物理模型图Fig.3 System physicsmodeldiagram
依据分层设计理论,为提高软件重用性,降低各部分之间的耦合,将系统划分为表现层、业务逻辑层和数据层。客户端使用浏览器,并应该安装Access2010环境;表示层提供用户WEB界面的显示并实现和用户交互操作;业务层封装了上机实验核心业务逻辑的处理;数据层则是用于提供与数据库进行的交互。最终形成了本系统的系统模型,系统架构模型如图4所示。
图4 系统架构模型图Fig.4 System architecturemodeldiagram
在进一步的设计过程中,确定系统基于JSP设计模式Ⅱ进行开发,由于JSP模式Ⅱ是基于MVC架构的设计模式,因此本系统严格遵循MVC设计模式,细化设计为“B”层、“V”层、“C”层、“M”层和“D”层,其分别表示浏览器、MVC 的视图层、MVC的控制器层、MVC的模型层 (业务逻辑)、DAO数据持久层。其中,MVC的控制器仅完成转发,既不参与业务逻辑的任何实现,也不允许对数据持久层进行访问,这样构造的表现层层次清晰、耦合度降低、可读性较好。
系统不同层次之间的数据交互和传递离不开业务实体,其在数据库中的表现形式就是所谓的关系数据。通过深入分析,本实验系统应构建8个业务实体,主要包括用户基本信息、用户权限信息、班级信息、章节信息、案例信息、实验项目信息、学生实验成果信息实体、学生实验成绩信息等,各实体模型具体的含义介绍如下:
1)用户:主要属性有编号、姓名、密码、联系电话、QQ号码、用户类别等。
2)权限:主要属性有编号、模块名称、权限分配、权限类别。
3)班级:主要属性有班级编号(取自类别为学生的用户编号前6位)、班级名称、所属院系。
4)章节:主要属性有章节编号、章名称等。
5)案例:主要属性有案例编号、章节编号、知识点、案例名称、案例描述、算法分析、操作指南、演示文件、附加图片等。
6)任务:主要属性有任务编号、任务名称、任务描述、所属章节、相关知识点、类似案例。
7)成果:主要属性有成果编号、用户编号、任务编号、文件名称、存储路径、提交时间等。
8)成绩:主要属性有用户编号、任务编号、成绩、日期等。
一个软件系统是由功能“模块”组成的,系统的每一个功能又往往最终可以归结为在一定条件下的、对业务实体的“增删改查”基本操作,如案例管理功能,就可以划分为案例添加、案例删除、案例修改、显示全部案例、按章显示案例、按条件查找案例等操作,这些操作就是“模块”。实现每一个模块,并将它们通过主界面集成为一体,业务系统就基本实现了。系统总体操作流程如图5所示。
图5 系统操作流程图Fig.5 System operating processdiagram
本系统的各个模块采用MVC模式实现,每个模块又由界面、控制器、逻辑处理、数据访问、业务实体等组成,由JSP、Servlet、业务逻辑Javabean、DAO操作类、实体类等分别加以实现,在实现过程中面向接口编程,将业务逻辑类、DAO类又分解为接口类和实现类分别实现。
不同用户因为有不同的操作,因此可以有不同的主界面,这些主界面一般通过共同的登录接口进行跳转。在各自的主界面里,需要布局每个模块的操作链接,并在操作结束之后根据需要返回各自的主界面。本系统各个主界面功能区域基本上划分为两个区,左侧布局为导航区,实现章节和案例选择导航、综合项目导航,或者基本信息管理等操作,右侧布局为对应导航下的结果显示区,对于查询结果则又添加了“增删改”操作。学生用户的主界面如图6所示。
本系统基于JSP技术Model2开发模式开发,在ACCESS实验系统的分析设计中引入CDIO工程教育思想,使CDIO与ACCESS实验课程教学有机结合,实现了用户登录模块、修改密码模块,实现了学生学习案例、接受实验任务、网络测试、提交成果等模块,以及教师管理案例、管理实训项目、查看并评价学生作品、查看学生成绩等模块。目前该系统已经在实验教学中得以应用,学生在校园网内即可完成“做中学,学中做”的真实项目实训过程,帮助学生掌握基础知识和知识体系,培养动手能力和项目分析设计能力,提升了个人职业素质,也促进了实验教学信息化水平的提高。
[1]周志平.基于MVC架构实验教学系统的研究与实现[D].南京:南京理工大学,2013.
[2]邱月,黄晓武.基于CDIO教育理念的数据库课程实验教学改革研究[J].电脑知识与技术,2014(22):5255-5256,5264.
[3]Li Pi Su,Nolan M deMare G etc.Prognostics frame work soft ware design tool[C].Aerospace Conference Proceedings,2000(6):18-25.
[4]沙洁,徐子闻,朱琳玲.应用型大学数据库学科实践教学体系探索[J].计算机教育,2014(5):90-93.
[5]卢磊,张峰.基于J2EE的高校资产管理系统的设计与实现[J].电子设计工程,2011(2):92-95,99.
[6]Zhang XJ.System Integration in Business Information Systems:Framework,Implementation and Case Study,2008 International Conference on Wireless Communications,Networking and Mobile Computing (WiCOM 2008),IEEE,p4681094:1-6,2009.
[7]王莉.ACCESS课程教学改革的探索与实践[J].内蒙古师范大学学报(教育科学版),2014(9):150-152.
[8]张永恒.《Access数据库应用基础》教学改革探究[J].榆林学院学报,2012(6):42-44.
[9]庄科君,贺宝勋.基于云计算的高校计算机实验教学系统设计研究[J].电脑知识与技术,2013(2):306-309.
[10]谢延华,徐小亚.高校计算机程序设计类课程实验教学改革与研究[J].电脑编程技巧与维护,2014(4):80-82.