第1章绪论
1.1培养软件工程师的实训教育平台开发背景
从2010年起,浪潮实训中心与济南大学、山东经济学院、山东工商学院、山东师范大学、山东女子学院、山东财政学院、山东轻工业学院、山东交通学院等20多所高校开展校企合作,创办计算机科学与技术专业(软件外包方向)、信息管理与信息系统(软件服务外包方向)、数字媒体技术(服务外包中的动漫方向)等专业,引入印度、日本、微软等先进国际化服务外包课程,突出外向型就业特色,培养一批具有高度的敬业精神和团队合作意识、实用的软件 发基本技能、精通外语和商务礼仪,且具备行业背景知识的复合型、国际化、实用型服务外包人才。2011年,浪潮实训中心与高校共建服务外包方向专业人数过千人;预计到2014年,服务外包方向学生在校人数将超5000人,所以如何建立有企业特色培训的平台成为我们首要考虑的问题,且实训中心与高校根据引入的先进的国际化服务外包课程体系和自身优势,校企共同制定四年教学计划、教学大纲、课程体系。根据引入的先进的国际化课程和服务外包企业的需求,实训中心与高校共同研发课程、教材、课件、实训案例等;结合浪潮的技术优势和开发经验,不断开发、更新实训案例,这些案例和课件如何更好的应用于学生也摆在我们面前。
为适应新形势下的市场环境及教学管理,打造高效的企业实训环境,构建培养软件工程师的实训教育平台已是迫在眉睫。通过培养软件工程师的实训教育平台实现对高校教学资源的整合, 发管理课件、课程及题库,管理大量的实训实战案例,支持学生、学员的学习、考试及人才库管理成为校企合作教育的首选途径。
........................................
1.2届内外研究现状
随着互联网和移动互联网技术的发展,由Web网络技术带来的教育革命使在线教育市场在近几年的时间里如火如荼的发展。很多在线教育平台如雨后春齊般从互联网中“冒出来”,这些平台可分为“B2C”和“C2C”两种模式:学而思网校、新东方网校是典型的B2C模式;用户自发上传内容并呈现出电商形态和社区形态的,则更像电商领域的C2C模式。
中国八家在美国上市的中国教育企业中,新东方、学而思、弘成、正保远程教育、安博均 展了在线教育业务。新东方在线上线于2000年,其网络课程横跨留学考试、学历考试、职业教育、英语充电、多种语言、中学教育等6大类60余小类,共计1200多门课程。截至2012年12月,新东方在线网站个人注册用户已逾1000万,移动学习用户超过200万。学而思网校自2009年上线以来,已成为覆盖全球近200个地区、拥有逾二十万学员的中小学远程教育实训平台。
在线教育市场正获得越来越多的重视,一方面是基于互联网技术,授课学习不受时间和空间限制,另一方面是线下教育机构受成本上升的压力,第三,线上教育可以无限复制,成本较低。
并且目前比较流行网上教育平台有新浪公 课、网易学院等。其中新浪名校公开课汇集哈佛、耶鲁、斯坦福、麻省等全世界各大名校的著名教授视频课程,涉及人文、历史、经济、哲学、理工等各学科,汇集了海量的视频共享平台,这些大都均为学习型科普教育网络平台,因此这种电子实训教育平台将是今后网络教育的主力军。
.......................
第2章培养软件工程师的实训教育平台系统需求分析
2.1系统概述
2.1.1系统项目背
面向企业、学校、组织等单位,为其内部人员提供学习、培训、交流、考核的软件平台,使用户的学习、培训更加快捷、灵活和高效,实现对学员学习情况的全程跟踪管理和员工学习培训需求的全面掌握,同时为用户提供良好的讨论交流功能。在线学习平台的应用,能够减少企业培养员工的成本,降低企业产品研发成本,提高企业收益。
2.1.2系统项目说明
本系统主要通过记录学员在线上实施软件工程汇报(开发文档管理及进度管理)、实训问题总结、参加课程培训、考试竞赛、论坛交流等情况,实现对学员学习情况的全程跟踪管理和员工学习培训需求的全面掌握。通过该在线学习平台,学员能够迅速获取相关知识并成长为公司优秀员工,同时减少企业培养员工成本。
本系统可以广泛应用于企业、学校、组织,对其人员分配学习任务或进行培训,并进行考核与测评,以便对相应人员的学习成果进行评估和记录。另外,为系统所有用户提供论坛功能,方便用户进行讨论交流。
本系统按照之前功能需求分析时的功能进行设计,将需求功能划分成几个不同的模块,其中主体模块如下:
在前台的实训课程中心模块中,包含软件工程汇报(开发文档管理及进度管理)、实训问题总结、案例库管理、人才库管理。实训课程中心能够显示系统中所有课程信息,学习任务能够显示用户需要学习的课程,并能够查看相应的课程信息;在前台的考试中心模块中,用户能够报名参加考试,并进行成绩查询和阅卷打分;在前台的互动社区模块中,用户能够逛论坛,査询最新话题,并且搜索自己感兴趣的话题;在前台的学员自助模块中,用户能够修改信息,但用户修改信息的地方是有限的,比如个人的真实姓名是无法修改的,同时,用户能够上传图像来修改个人头像,以及修改登录密码。
.....................
2.2需求问题描述
2.2.1系统功能性需求
1.系统涉及的需求描述
本系统主要通过记录学员完成软件工程汇报(开发文档管理及进度管理)、实训问题总结等。在线上参加课程培训、考试竞赛、论坛交流等情况,实现对学员学习情况的全程跟踪管理和员工学习培训需求的全面掌握。
通过该在线学习平台,学员能够迅速获取相关知识并成长为公司优秀员工,同时减少企业培养员工成本。本系统可以广泛应用于企业、学校、组织,对其人员分配学习任务或进行培训,并进行考核与测评,以便对相应人员的学习成果进行评估和记录。另外,为系统所有用户提供论坛功能,方便用户进行讨论交流。
2.2.2系统非功能性需求
1.性能需求
(1)在运行WINDOWS XP及以上操作系统的的Pentium II的计算机上,当系统至少有51%以上的空闲资源的时候,90%的目录数据库查询必须在三秒内完成。
(2)系统必须在不超过8秒的时间内处理10起登录任务。
(3)用户和测试工程师对有关术语的理解要一致,如并发用户数、在线用户数、注册用户数等。
(4)在150个并发用户的高峰期,系统的基本功能,处理能力保持正常水平。
(5)系统能够在高于实际系统运行压力2倍的情况下,稳定运行48小时。
(6)系统登陆的WEB页面打开速度在3s以下,web登陆速度10s以下。
(7)系统应该支持每天1.5万次以上的登录。
2.安全性需求
(1)每个用户在第一次登录系统后,必须更改他的初始登录密码,初始登录密码不得重用。
(2)系统用户不得更改数据库中的数据,每一种角色都只能拥有其角色范围以
内的权限,任何一种角色都不得拥有超过其角色范围内的权限。
(3)任何用户都只能查看自己的用户信息,他们不能够查看其他用户的个人信
..............................
第3章培养软件工程师的实训教育平台系统..................13
3.1系统设计目标和原则..............................................13
3.2系统总体架构设计..................................................13
3.2.1系统功能架构......................................................13
3.2.2界面设计.............................................................14
3.2.3数据库结构设计...................................................15
3.2.4系统信息提示设计....................................................15
3.2.5系统安全设计...........................................................16
第4章培养软件工程师的实训教育平台系统详细设计........18
4.1数据库详细设计..........................................................18
4.1.1 概念结构设计..........................................................18
4.1.2逻辑设计....................................................................22
4.1.3 安全保密设计...........................................................24
4.2用例详细设计................................................................24
4.3界面详细设计..............................................................26
4.3.1 用户界面.................................................................26
4.3.2界面处理流程及界面约束描述(以课程中心为例)...........30
4.4功能模块与类文件关联关系(部分).................................33
.............................
第5章培养软件工程师的实训教育平台系统实现与測试
5.1代码配置管理
培养软件工程师的实训教育平台系统采用了MyEclipselO、MySQL 5.5、Tomcat 6.0的环境配置迸行了开发,配置管理釆用源的SVN配置管理服务器,使用MyEclipse插件与SVN服务器相连,完成代码每天的检入(Checkin)和检出(Checkout)。
如上图,为Eclipse平台的SVN设置,通过此配置可完成代码的及时保存及更新,每天编写的代码Checkin和Checkout放置于服务器,并且为版本控制提供了很好的支持,且SVN为 源配置管理服务器,应用方便简洁,在 发中发挥了很好的作用。
5.2核心功能和代码实现
此培养软件工程师的实训教育平台主要采用了Struts2+Spring3+Hibemate3主流技术架构,在网络模块的调用上使用模板模块,将重复的代码和冗余代码做最大限度的整合,完成网络多态的实现。
初始画面一般为三部分组成,首先为初始内容的正常显示,其次为画面上可以输入的项目检查,例如可输入的文本框,其中每个可输入的项目分正常输入和错误输入,这两种状态都需要检查。第三需要画面事件的测试,如Button事件的触发最为常见,同样需要测试。因为采用了SSH架构,所以参照web.xml我们可以看到Spring架构和Struts架构以及Hibernate架构都在web.xml里面加以体现。在web.xml的<^011161;-|5813111>里面我们可以看到<param-value>已经设置了Spring的配置文件 applicationContext-core.xml、applicationContext-security.xml,因为在login.jsp中触发的action为/login。我们从applicationContext-security.xml文件中可以看到,通过MyUserDetailsService我们已经 Spring 的注入交给com.inspur.smartweb.security.MyUserDetailsService类。我们通过userService类的接口实现类完成对Hibernate的转交。然后可以由用户ID等字段传入Hibernate层进行数据库的返回,如果存在该用户则返回相应用户的实例。如果该实例不为空,又将返回上一层的调用(即Spring)架构的调用。通过相应的配置文件又将返回原Jsp页面,完成此用户的有无调用。
.........................
结论
培养软件工程师的实训教育平台系统在充分理解客户需求的基础上,已经进行了测试,并在实际应用中证明该系统满足了行业的需求和技术要求。但同时也应该注意到,由于代码和设计问题,在实际应用过程中也发现了响应时间过长等问题。因此,充分利用现有硬件和软件资源,挖掘系统潜能,对系统进行进一步优化是下一步要解决的主要问题。解决该问题需要从以下几个方面入手:首先,要规范设计和代码过程;其次,对影响系统性能的关键算法和代码进行优化;最后,研究系统与数据库的接口,充分利用数据库提供的优化方法。
针对不同的角色,系统分配了相应的权限。对于系统普通用户来说,他可以改变自己的个人信息,选择课程信息,发送站内信息等,但是不能够直接操作数据库;对于系统管理员来说,他可以操作数据库,但是不能够对一些信息进行删除操作。
数据和文件以密文的形式保存在数据库中,若没有对应的算法进行解密,保存在数据库中的数据就是一堆乱码,从而增强了數据和文件的安全性。
通过软件系统概要设计说明书说明对程序系统总体设计的考虑,包括程序的基本流程和组织机构、输入/输出、接口设计、运行设计、数据结构设计和系统出错处理设计等,为系统的详细设计提供基础。同时,进一步细化软件设计阶段得出的软件总体概貌,明确系统的数据结构与软件结构,并加工成在程序细节上接近源程序的软件表示,使程序开发人员能够在后续的程序开发阶段对待开发系统有更加清晰的认识,进一步加深开发人员对程序功能的统一认识。.....
参考文献(略)