网络架构系统的开发与部署课程教学研究与思考.doc

上传人:3d66 文档编号:1853256 上传时间:2019-01-12 格式:DOC 页数:13 大小:23.50KB
返回 下载 相关 举报
网络架构系统的开发与部署课程教学研究与思考.doc_第1页
第1页 / 共13页
网络架构系统的开发与部署课程教学研究与思考.doc_第2页
第2页 / 共13页
网络架构系统的开发与部署课程教学研究与思考.doc_第3页
第3页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《网络架构系统的开发与部署课程教学研究与思考.doc》由会员分享,可在线阅读,更多相关《网络架构系统的开发与部署课程教学研究与思考.doc(13页珍藏版)》请在三一文库上搜索。

1、网络架构系统的开发与部署课程教学研究与思考 网络架构系统的开发与部署是软件开发类课程中的综合性实践课程,目的是培养学生企业级软件开发及工程运用能力。文章主要针对课程的具体教学方法和教学内容组织两方面进行阐述,从软件开发和实际教学相结合的角度,说明该课程在软件工程专业CDIO课程体系中的实践和理论方面体现出较深层次的专业特色。 0、引言 网络架构系统的开发与部署是北京信息科技大学软件工程专业从2018级培养方案开始设置的一门综合性较强的实践课程。所设置的课程体系主要以Java系列技术为主,并基于CDIO培养模式,十分注重学生工程实践能力的培养。依据CDIO模式的主要目标,在其培养方案中,每学期都

2、会根据学生对专业知识的学习进度,设置一门综合性的软件开发类实践课程,网络架构系统的开发与部署课程设计被设置在本科教学的第6学期,它综合了程序设计语言技术、数据库技术、软件工程、软件设计模式、软件体系结构、信息系统设计、Java Web开发技术以及XML技术,对学生综合运用技术工具以及解决实际问题能力的培养有帮助;同时该课程的设置还可以帮助学生整合专业知识,进一步形成合理的专业知识体系,为学生的专业学习和工程实践提供有力的实践和支持。 在以Java系列开发技术为主的教学课程体系中,网络架构系统的开发与部署课程是学生独立进行开发技术培养的最后一门综合性实践内容,最终目的是让每个学生能进一步了解和体

3、会专业知识在软件开发方面如何综合运用,进而达到初级软件系统工程师的水平。然而,目前有关JavaEE体系方面的教学还主要在社会的一些培训机构或专门培训教育中进行,课程学时相对较长,学费较为昂贵;此外,因该课程对授课教师理论与实践能力要求较高,授课学时的设置相对受限等原因,很少有学校将其作为独立的程被纳入到正式的教学体系中。我们从2018级的培养方案开始,主要依据CDIO办学的理念,为更好地培养学生工程实践能力,进一步加强校企教学方面的衔接,将其作为一门综合性实践课程设置到培养方案中,共设置32学时,其中讲授8学时,实践24学时。 如何合理利用学时、如何组织课堂理论和实践教学、如何设置具体教学内容

4、等问题则成为影响该课程教学效果的主要方面。通过近3年来对北京信息科技大学软件工程专业学生的教学实践,不断改进教学方法,调整教学内容,逐步取得了良好的效果。 1、课程的主要教学方法 1.1 教学内容设置的衔接问题 软件工程专业教学培养计划是多位经验丰富的教授通过遵循CDIO理念,经多方调研、推敲、整理后定制出来的。可以说从Java技术的连续性、软件工程理论体系的贯穿性、各门课程的前后衔接、专业发展的软件开发、测试方向及职业规划等方面,都考虑得较为全面,但在对连续几届高年级学生的调查中也发现了一些问题。学生对于所学知识,大多不太清楚每门课程之间存在怎样的衔接关系,课程学习完会对将来有什么用途。有些

5、学生每门课程均拿到高分,但遇到编程,就手足无措,违背了工程培养的初衷。此外,某些学生建立软件工程的思想相对较早,自身注重编程能力的培养,对于软件开发问题可以很快搭建总体框架,解决程序开发与调试中的问题,然而,大部分学生在看似编程能力很强的表象下,系统理论不扎实,对于软件调试问题只知道按照技术支持所给定的方法修改调试,却不知道为何修改,软件构造粗糙而无法交付用户实际使用。这些因素导致其失去了对学习的积极性。本质上,除学生自身差异及努力程度不同外,产生这些问题的另一主要原因,在于学生对课程体系的衔接关系以及课程在高度层次上的体系认识方面没有很好地理解与把握。 该课程的核心内容是网络环境下如何构建软

6、件的开发环境并解决开发中的各种问题。其中最具代表性的是以SSH(strots-Spring-Hibernate)为核心的开发框架、基于Web Services的SOA(Service-Oriented-Architecture)应用与服务体系等。教师如要讲授清楚以上技术课程,必须梳理好各种框架、体系与软件开发的关系。如何组织该课程的教学,教学过程是如何构建,是教师必须认真思考的问题。 1.2 具体教学过程构建 该课程在培养计划中,共计32学时,其中讲授8学时,实践24学时。如何在短期内尽可能达到教学要求和效果,对授课教师的要求较高。(1)授课教师要对Java开发技术熟悉,有丰富的工程实践经验;

7、(2)教师能够对课程体系及其教学内容,有相当程度的了解。在目前高校中,具有高级软件开发经验的人才紧缺,鼓励教师参加培训并加强与软件开发企业间的交流是一种快捷的途径;(3)教师应进一步加强软件工程理论体系的科研工作,把握软件工程相关理论的新技术、新动态,建立长期积累经验的环境。 如何合理利用所分配的学时制定讲授内容,根据课程特点,有针对性地把学生需要掌握的内容提炼并讲解清楚,主要包括几个方面 (1)中、大型软件协作开发的主要问题是什么,SSH框架和SOA体系的优势有哪些,将来的发展会怎样。 (2)具体分析框架、体系与软件工程的关系,并分析其与各门课程的关系如何。 (3)深入剖析框架体系,结合案例

8、说明软件如何构造,如何把握关键的技术点及实现方法。 (4)软件开发实践与科学研究的总体方向会如何,学生应如何把握。 如何把握时间进度,合理组织实践过程,从学生学习的角度非常困难,实践教学的学时过于集中会影响学生对所学知识的消化吸收,起不到预期效果,将时间段拉长,学生会产生疲惫感,产生投机和应付的心态,严重影响其对学习的积极性。目前所采用的方法是将讲授和实践内容在2.53个月内完成,以项目驱动方式,结合学生软件开发和软件测试的学习方向,让学生组成34人的小组共同协作完成一个软件项目,由软件开发动手能力相对较强的同学搭建开发框架,其他同学按照项目的功能点担任业务功能的研发及参与项目最后的整合、测试

9、、验收及文档的撰写。对已完成该课程学习的3届学生总体调查来看,此种方式普遍得到认可。 课程考核是综合类实践课程,学生小组开发的软件制品,完成了教学的基本要求,应作为考核的基础。为避免学生“照猫画虎”完成软件制品,我们采用独立答辩方式,让学生在自主选择项目角色,在承担定量工作的基础上,接受一些被动强化学习的知识理论,评定教师对相关理论、开发技术以及具体的操作能力,进行综合评定。此外,为激励学生把握开发理论学习、进行新技术探索、加强能力培养,授课教师公开量化了考核等级的具体要求及激励分数,给定了优、良、中、及格、不及格的软件验收、答辩、文档等的具体指标要求,依据综合平时成绩、新技术应用加分激励,给

10、出最后的总评成绩。从执行此考核方法近2年的学生反馈意见来看,该考核方式被普遍认同。 2、课程重点内容的组织 为更好地让学生掌握网络架构软件系统的构造及编程思想,案例驱动是当前最理想的方式。随着Java技术不断发展和成熟,很多编程高手相继在书籍和网络上分享了很多系统案例,这些都可以成为该课程的辅助教学资源。如何筛选案例、整理讲义和组织教学才能够让学生获得更多的收益是任课教师必须考虑和面对的问题。笔者在不断改进的课程教学中,选出了相对开发较为完善、学生较为熟悉的业务系统作为案例展开教学。 2.1 教学课程体系内容的结合 围绕案例,各小组按照视频教学将开发部署的软件环境搭建完成并调试。初步让学生体会

11、软件开发环境的框架结构。以目前较为流行的JavaEE体系的SSH框架为例,让学生认识Web浏览器、应用开发集成环境、Web应用程序以及相应服务器(如Tomcat)之间是如何通信的。这样学生就可以综合以往学过的课程及内容,思考到各门课程内容之间的衔接关系口。例如请学生思考以下问题 (1)JavaWeb程序设计课程的Servlet编程与框架编程是何种关系? (2)框架编程中如何支持计算机网络中的HTTP协议? (3)软件工程中的面向对象和面向方面编程、封装和抽象、模块解耦与复用、系统易维护与可扩展性,在框架中以何种方式体现? (4)XML技术的可配置、数据共享及数据交换等功能在框架中是如何运用的?

12、 (5)框架技术中哪些结构体现了设计模式? 让学生独立查阅资料,组内和组间进行讨论,使其重温所学课程的内容并进一步体会和理清课程的衔接与贯穿关系,对其框架高度理解很有帮助。 2.2 网络架构系统的框架层次认识 要求学生仔细读程序,梳理程序包结构及包间的关系,总结出系统的总体层次结构。这一过程主要让学生进一步学习在SSH等框架下构造的软件应用程序,在其层次上是如何组织的,从而让学生初步理解本课程教学的核心内容,并在后续任课教师的讲解中得到进一步学习,主要包括如下内容 (1)Web层开发技术的原理,包括基于MVC完成表现层和控制业务逻辑层的交互、主要文件元素和属性的作用及配置方法,Web层关键类的

13、作用及用法。 (2)业务层框架设计的基本原理和体系结构以及利用框架(如Spring)将Web层、Service层、DAO层和持久层无缝整合的方法。 (3)持久层框架设计的基本ORM原理和体系结构、框架配置文件的内容、作用和配置方法,此外还有一些核心类和接口的使用方法。 (4)如何利用框架协调各层关系,依托集成开发环境完成业务系统的设计、部署和运行应用。 在具体课程的讲授过程中,从软件框架开发和部署的实例角度,带领学生进一步认识框架层次,阐明各门课程内容在框架开发中的体现及其作用。引导学生深入体会软件开发中需注意的问题及在框架中的实现,理解软件工程的开发理论、设计模式等,让学生分析基于框架的开发

14、对软件测试产生的影响。 2.3 网络架构系统的关键问题构造与实现 进一步深入学习案例程序,指导学生分析系统的功能点构造、非功能点构造以及实现方式。从本质上是对网络架构系统核心思想的学习。对于软件工程专业的学生培养,不仅是培养出能进行编码开发的人才,更关键是能培养出高级的软件架构师,能够有能力组织项目的协调开发与管理,此外也希望为将来从事软件工程学科的科学研究奠定基础。 该内容教学按照以下4个方面进行。 1)学生首先结合案例,分析系统基本的业务功能需求,案例系统的代码中哪些是基本数据的增删改查与统计、数据信息的计算、转换等的业务功能类,哪些是具有特定服务功能的类或接口等。对于系统所需求的业务和服

15、务功能的设计与实现,目前多数学生基本都能理解并掌握。在实际的系统项目中,学生的小组团队基本能够将系统所需的基本业务功能设计和实现出来,因此在该课程中只进行简单的概述和说明。 2)要求学生找出案例系统中与业务功能看似无关但系统中又必须具有的非功能类,分析其存在的意义。利用框架和软件构造体系是采用何种技术将这些非功能类与系统进行无缝结合的?对于没有实际项目经验的学生而言,此部分的概念薄弱,因此可以通过向学生提出思考题的方式,让学生很好地思考系统非功能点的问题。比如,一个可实用的Web应用系统是否需要设定用户的访问及操作权限?对于随意的用户输入是否需要对输入的数据信息进行校验,需要在客户端校验还是在

16、服务器端校验?在所支持的业务功能中,是否存在公共数据的大量访问与修改,其中数据访问的事务和并发监听是否得到妥善处理?为使系统安全得到保障,系统是否为用户操作记录日志?对于后台数据是否进行了敏感数据的加密、防SQL注入等保护?是否考虑用户使用群体的语言语种?国际化和本地化工作是否应作为该Web应用系统的一部分,其编码和字符集应如何设置?为防止专业人员的直接页面获取,系统页面访问的次序是否做了拦截等约束?由上述问题,经学生思考和查阅资料,引出框架中主要使用的技术,如SSH框架中的StrutsMVC、Spring MVC、拦截过滤、AOP以及WS等,并通过小案例,讲述实现过程,给学生详细的感性认识。

17、 3)在详细介绍了相关技术及应用后,让学生进一步思考,这些技术体现了软件工程哪些方面理论,与后期学生真实项目中的开发和测试工作关系如何。例如,系统如何利用MVC、DAO和ORM体现了分层、模块化与解耦?ORM的本质是什么?模块的复用是如何实现的,其中在一些系统中的Js、表达式、动态菜单等,与软件框架的复用、解耦什么关系?框架体系中的易维护性和可扩展性如何体现?在相关内容的测试中,该如何组织测试和管理?对上述问题的讲解,会使学生进一步认识自己所学的课程内容,明确专业方向,为其就业打下基础。 4)体会框架和体系目前是否还存在缺点,未来的发展会怎样,有哪些方向可以进行深入探索和研究等。在该方面的讲授

18、中,主要提及框架的智能性,而在框架集成一些非功能点上,是否考虑过应用系统的特殊人群,即系统的无障碍设计。目前的框架对于结构化数据处理很有优势,而对于越来越多的非结构化数据,是否能够完全适用?同时大数据处理和语义技术会给未来的软件开发带来怎样的变化?这些内容则以激励学生进一步深入学习和提高科研的兴趣为主。 3、结语 2018年以来,北京信息科技大学软件工程专业就以CDIO模式对学生进行工程化教育和培养,从近3届本科毕业的学生就业情况来看,取得了良好效果,学生就业率较高,多数学生选择了本专业相关的开发和测试工作。该课程教学已开设4年,在学生对课程和教师的综合评价方面取得了理想的成绩。在对已就业学生

19、的回访中,从事相关工作的学生对该课程有较好认可,认为所讲内容实用,对其工作发展帮助较大。 对于软件工程网络架构系统的开发与课程部署尽管取得了良好效果,但未来的工作还需不断完善该课程内容、调整教学模式以适应软件发展对高校相应人才的需求。 (1)还需进一步加强软件工程课程体系的一体化建设。不断调整相互衔接课程的具体教学内容,给系列课程的教师一个良好的教学、科研交流平台,加强教师之间的沟通。 (2)加强校企联合培养,对于软件开发很多先进的开发技术思想不是在书本或高校,而是在公司企业能够建立校企联合机制,并进行有效地交流互通,达到企业和高校师生双赢的目的。 (3)灵活教学管理,加强师资培养。目前很多高校的教学和管理被分成较为独立的两条线,容易产生不同步现象,相互协调较难,在灵活教学管理的同时,充分信任教师教学,进一步加强软件工程专业的师资建设。第 13 页

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1