Android软件工程案例驱动教学探讨

Android软件工程案例驱动教学探讨

1Android应用案例的选择

(1)案例要简单。

案例的简单可以更好地安排课堂教学,比如每次课可以深入讲解并完成一个知识点。同时简单也使得学生更容易理解并在课下模仿重现。

(2)案例要贴近学生的生活。

案例贴近学生生活使得学生容易理解其执行流程,更容易认识到讲解内容的意义,并进而产生兴趣。以笔者所选择的课程表这一应用为例,它只包含两个用例。两个简单却完全反映一个Android应用功能的用例,非常适合一次课程(3个课时)的教学,来深入讲解需求分析的作用、用例模型的意义、用例模型的概念、用例建模的过程、用例的具体书写方式等知识点。它的应用背景同时以及所解决的问题都与学生的生活息息相关,所以为学生所熟悉和接受,学生愿意学习,有兴趣尝试应用于生活中。

2Android应用案例驱动的软件教学过程

在以Android应用为案例的软件工程教学过程中。在设计该过程时,笔者坚持案例驱动、先整体后部分的原则。具体过程的解释如下。软件工程课程概述:该概述利用一次课(3个学时)的时间来向学生解释软件工程产生的历史背景、意义和当前的发展状况,同时向学生说明课程的具体授课安排。该课程概述的目的是使学生了解软件工程这一研究领域的意义以及软件工程这一课程将要讲授的内容。软件工程的概念和方法概述:该概述主要是向学生完整阐述一个大型软件开发的完整过程以及其中所涉及的概念、方法、技术和工具。该部分的讲解主要分为两部分:①基本知识点讲解,包括软件生命周期的概念、软件开发的基本过程模型(比如瀑布模型、螺旋模型)、主流的软件开发方法(面向对象和面向过程)和每个方法用到的技术和工具(比如需求分析的用例建模);②扩展知识点的讲解,主要是介绍当前软件工程的发展,包括敏捷开发方法、形式化方法、需求工程、UML、WebServices等内容。该概述的目的是使学生掌握软件工程的基本概念和方法、了解软件工程的最新发展。Android和Android应用开发技术概述:该概述主要介绍Android的意义、起源和发展趋势,以及开发Android应用的具体过程、所使用的工具、与传统软件开发的异同等。其目的是使学生了解Android、Android开发的发展趋势以及Android应用开发的具体过程。Android应用案例驱动的开发过程具体阶段讲解:该阶段主要通过案例来讲解一个软件开发过程中所涉及的各个基本任务(包括需求分析、设计、实现、测试等)以及完成这些基本任务的基本方法。该阶段的讲解坚持案例驱动的原则,即在讲解的过程中先由具体案例出发,引出问题,然后提出解决问题的具体方法和最终的方案,讲解最终方案中所涉及的知识点。该阶段的目的是使得学生能够通过一个案例了解软件的具体开发过程、掌握这个过程中一些基本的方法。比如,对于课程表这一应用,在讲授需求分析的过程中,笔者首先提出的问题是如何弄清软件的需求,即到底要开发一个什么样的课程表,它包含哪些功能、具体使用过程是什么?然后针对这一问题,提出用例建模这一方法,并从笔者角度出发给出所建立的用例模型,在此之后详细讲解什么是用例模型、如何建立所给出的用例模型等知识点。Android应用案例驱动的课程实验:该实验主要是让学生通过模仿案例并应用课堂所讲授的方法来动手开发一个具体的应用,其目的是使学生通过动手来体验软件的开发过程并在此过程中复习和掌握课堂所讲授的概念、方法和工具。

3效果评定

由于本课程抛弃了传统软件工程教学过程中不断堆砌概念和方法的做法,以实用为目的并结合当前流行的技术和案例,学生总体反馈良好、认为课程的教学充实而不空洞。一般来说,学生在学习的过程中往往会在开始阶段对陌生的知识保持较高的兴趣,而随后其兴趣会逐渐下降。所以,我们选择在开始的时候讲解软件工程的基本概念和方法等抽象的知识,而在学生兴趣开始下降的时候,引入Android案例来讲解软件工程的具体过程。由于学生学习Android应用开发的兴趣比较高,这样使得整个学期的软件工程教学过程中学生的出勤率比较高。在教学过程中,我们还将学生的作业同具体的案例结合起来,不再让学生简单地抄课本、抄概念,而是要求他们去动手开发一个实际的APP,这也使得学生完成作业的意愿比较高,具体体现在很多学生会主动询问其完成的作业(比如书写的用例、建立的系统框架图、测试用例的设计等)质量情况。

4结语

从具体实践来看,以Android应用案例来驱动软件工程的教学,不仅提高了学生学习软件工程的兴趣,增强了学习的主观能动性,还使学生了解了Android应用的开发过程,培养了学生的动手能力,并深入理解了软件工程的基本概念。

作者:刘春 单位:河南大学计算机与信息工程学院