text: 案例驱动式方法教学应用探索
  1案例选取在软件工程案例驱动式课程教学中，案例的选取很重要，如果选择的项目规模太大、行业性太强，会增加学生的完成难度，有的项目无法理解，学生会失去兴趣，因此，首先要精心挑选一些具有针对性和代表性的案例来进行课堂的知识点讲解，便于总结和学生实施项目时模仿，然后选择两个类似项目和3个中等难度的项目让学生在课后完成，在学生分组时，每个团队都要把成绩较好和一般的学生合理分配，实行因材施教，根据学生的实际情况和动手能力来选择分配项目，做到既有共性又有个性，难度适中。
  案例讲解要和软件生命周期结合起来，具有启发性，使学生熟练掌握软件开发各个阶段中完成的内容。
  具体有软件可行性分析研究报告、软件需求分析报告、软件总体设计报告、软件详细设计报告、软件使用说明书、软件测试报告。
  另外可以根据学校教师科研的实际情况，让学生参与一些科研项目，做力所能及的工作。
  加强学校和企业合作，通过课程培训和企业项目实习，也可以改编项目教学案例，比如学生成绩管理系统、职工信息系统、图书管理信息系统、医院病历管理系统、餐厅点餐系统、航空订票系统等普遍比较熟悉的项目，把经典的项目和先进的前沿技术结合。
  比如在讲解用面向对象方法进行软件系统的分析、设计和开发过程时，通过学生比较熟悉的案例ATM自动取款机来贯穿。
  然后确定属性，分析和选择属性时要注意不要将对象和状态误当作属性，不要过于细化;确定了类的属性后，可以识别出类的继承关系，通过反复修改得到ATM系统的对象模型，如图2所示。
  在建立对象模型时，并不一定严格执行这样的顺序，可以交替完善。
  第二步:建立ATM系统的动态模型，编写正常情况和异常情况下交互行为的脚本，设计出系统的应用逻辑和设想友好的用户界面，然后从脚本提取事件并画出事件跟踪图，描绘出事件与对象关系的状态图，如图3所示。
  第三步:建立ATM系统的功能模型，根据系统中数据之间的依赖关系和数据处理的功能，画出基本系统模型，把基本系统模型中单一的处理框分解成若干个子处理框，得到功能级数据流，并描述处理框的功能和定义服务。
  详细讲解ATM系统的需求分析报告和系统设计说明书后，学生可以采用面向对象的编程方法来实现一个简单的模拟系统，一般采用VisualStudio2010+SQL2008，后台编程语言是C#或VB，也有的项目组采用JSP+MYSQL数据库来完成。
  要求使用UML语言和RationalRose2007工具来统一建模，为软件工程课程实践打下基础。
  在每个软件开发阶段结束后，五个项目团队都要交相关文档给教师审阅，然后针对问题提出修改建议并完善报告。
  软件工程的这种案例驱动式课程教学模式有利于提高学生的项目管理和软件开发素养。
  遵义医学院医学信息工程系的教师建立了软件工程实验室，把学生分成了几个小组，每个教师带领一个团队，项目结束后学生先提交每个阶段的开发文档报告，然后以教师参与的项目答辩的形式，让学生一边演示软件系统、教师一边提问，对所做的工作进行总结，考察了学生的学习态度、软件开发能力和编写文档的能力。
  采用案例教学和多元化的考核方式来提高学生的学习主动性和兴趣，更好地理解软件工程的理论知识并加以实践，使学生课堂内外结合，培养具有良好的团队开发能力和开拓精神人才。
  根据医学信息系近几年的实践，教学改革取得了优良的成绩。
  教师采用软件工程课程案例式驱动教学，学生通过近一年的项目实践，能够全面掌握面向对象的软件系统的开发设计和维护，提高了分析问题和解决问题的能力，掌握了项目开发管理的基本流程方法，为将来的学习、毕业设计和工作奠定基础。
  当然，在今后的教学工作中，还要更多地开发和探索其它优秀的教学方法，积累经验，争取获得更好的教学效果。