您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > 浅谈《系统建模语言UML》教学体会
浅谈《系统建模语言UML》教学体会周静(重庆电子工程职业学院重庆401311)摘要:本文主要介绍了系统建模语言UML教学实践中几处教学难点的体会。关键字:建模语言、UML、教学方法、教学体会UML是一种面向对象的可视化的建模语言,而不是一种面向对象的建模方法,它只是给出一套用于建模的元素及表示符号,并定义了它们的语义,而不涉及如何进行系统建模,它本身没有提供过程的概念,这意味着我们在使用UML进行建模时,可以选用任何适合的方法和过程。针对UML是一种用来设计和编制软件系统蓝图的标准化语言,在教学过程中主要从几种视图模型的概念语义上来着手讲解。UML的视图模型主要采用用例图、类图、包图、对象图、状态图、活动图、顺序图、合作图、构件图和部署图来建立系统模型,而这10种模型图从不同方面对系统进行了描述,在软件开发的需求、分析、设计、实现、集成与交付以及测试各个阶段中,可以使用不同的UML视图对系统进行描述。我们就这几种视图,并以清华大学编写的适用于高职高专计算机系列教材的《UML基础与应用》为蓝本,针对学生在学习过程中的思维规律,结合自己在教学过程中的总结和积累,以及教学实践中的一些方法,来谈谈在系统建模语言UML教学中的点滴体会。1、注重教学方式,以实例与实践相结合的教学模式;在系统建模语言UML教学中,我注重实例与实践相结合的教学模式。教学中我不仅在上课时会针对具体的系统,比如《图书管理系统》、《教学管理系统》等进行讲解分析,也要求学生在课程开始时就拟好一个建模系统名称,每一类视图讲解结束后,都要针对这一系统设计出相应的UML视图,并以自愿和抽调的方式对自己设计的UML系统视图进行一个分析讲解。这样既可以充分了解学生对知识的掌握情况,以便能及时改正不足之处,也能培养学生的分析问题和解决问题的能力,还锻炼了学生勇于表达自我的能力。2、加强师生交流,经常总结,及时解决教学过程中出现的问题在教学过程中,我尽可能地增加与学生交流、沟通的机会。让学生针对前一次课程讲解的UML视图进行实例设计,并以自愿和抽调的方式进行分析和讲解,以便进一步了解学生对课程内容的掌握情况。然后有针对性地进行总结,不让问题沉积。在学生进行UML建模的问题中,我总结出学生在学习中遇到的几个关键问题。用例图主要用于需求分析阶段,可以用来描述用户的需求,指导软件的测试,以及在其他工作阶段中起指导作用。用例图在整个教学中既是重点也是难点。首先用例是由执行者发起的,执行者能够从用例的执行中获得有价值的事物。直立人形图表示执行者,用一个椭圆表示用例,发起用例的执行者在用例的左面,用关联线连接用例。执行者、用例和互联线共同组成了用例模型视图。其次每个用例是一组场景的集合,而每个场景又是一个步骤序列,有好些同学在设计用例的时候忽略或没有理解到这一点。所以在为用例命名的时候应该要注意简练准确的反应这一活动场景。再有我们往往看到的用例视图并没有把这些步骤表现出来。通常也没有附加注释来说明这些用例。这里需要说明的是,对于可视化视图来说,清晰性是很关键的。对于每一个用例都附加注释进行说明,则布图就很混乱。那么我们就采用在提供给客户和开发组参考的设计文档中为用例中的场景描述设计一个文档页,在文档中进行详细描述:发起用例的执行者、用例的前置条件、场景中的步骤、场景完成后的后置条件。还可以列出场景的假设条件,例如一个学生最多只能借出书的数量。而这部分详细说明也是大多同学忽视的地方,也是我们教学中强调的一个重点。每个用例就是一项活动,用户可能针对该项活动会有具体的要求,这需要我们在用例的详细说明中的场景步骤的描述中体现,如果缺乏这个详细说明,那么用例视图就不能完整清晰地反应用户的需求。最后就是用例之间的关系的描述,用例间的关系包括:包含和扩展两种。而对包含与扩展关系的讲解,在教学过程中是一个重点和难点。学生往往在设计用例视图时会忽略它们之间的区别或不能真正理解它们之间的区别。包含与扩展关系都是用带虚线的箭头表示,注意,包含是指一个用例作为另一个用例必需的部分被使用,箭头指向被包含的用例;而扩展则是指一个用例扩充了另一个用例的功能,但这个扩充功能不是必需的,箭头指向被扩充的用例。如右图所示:这是一个简单的用例视图,它主要体现的用例之间的包含和扩展关系。读者在借书时如果不知道要借的图书的具体名称和编号,就需要查询书目。如果知道了要借图书的具体书目,则不需要查找书目。因此“查找书目”用例扩展了“借书”用例。而读者在借书时,系统必须要对读者身份进行验证,因此“借书”用例包含了“身份验证”。活动图与状态图在UML中我们统称为行为图,活动图类似于我们所熟悉的流程图,用来对一个系统的动态行为建模;状态图描述了一个特定对象的所有可能状态及由于各种事件的发生而引起的状态之间的转移。正因为活动图类似于我们熟悉的流程图,所以在学习过程中,学生往往对于状态图的理解不准确,有时甚至将状态图绘制成活动图。这也是我上课时重点强调的问题,也是同学们难于理解的地方。这里要注意的是状态图是对于一个特定对象,这里强调的是一个对象。那么要设计一个状态图,首先应确定对什么对象进行状态图的绘制。也就是对象的确定,而对象就是类的实例,也就要求我们还要掌握前面所提到的类图和对象图,根据它们确定我们需要设计的对象,再针对这个对象在某一特定的时期所有可能的状态以及由于各种事件的发生而引起的这些状态之间的转移设计状态图。在《图书管理系统》中,“书刊”作为一个类的对象(它是对某种书的描述,而并不是具体的某一本书,且这类书籍可能存在多本情况),它在借书过程中的状态分成:预订与未预订两种状态。如上图所示。实心圆代表开始,即书刊对象最初为未预订状态,通过预订事件,该书刊对象的状态转移为预订状态。而预定状态通过取消预订事件可能发生两种转移,一种是对于该书籍还存在着预订,即预订数大于1的情况,这样状态仍然处在预订状态,另一种是对于该书籍还存在着预订,但是预订数等于1的情况,通过取消预订,这时该书籍不存在预订,故而状态由预订转移到未预订状态。3.循序渐进的教学与作业相结合,提高学生的分析设计能力在系统建模语言UML课程教学时,应遵循循序渐进,在详细介绍基本的10种视图之后,再深入到一些常见的细节,并举例说明;而由于此课程每星期课时数不多,学生仅利用课堂时间无法将所学的知识连贯起来。因此,在教学过程中,我每类视图都会安排作业,先举例给出一些必要的提示,再要求学生利用课余时间给出UML视图的设计方案,以督促学生对所学知识加以消化利用,最后对学生作业进行系统讲解,并给予方法思路的分析,再指出作业中某些学生设计好的方面和某些学生出现的有代表性的错误,从而使学生的综合分析与设计能力有所提高。不过这一切的学习不仅需要老师的循循善诱和认真督促,也需要学生努力自觉的配合,这样才能在学习中达到事半功倍的效果。以上只是我的一点心得与体会,在实际的教学过程中应注意的问题还有很多。作为一名教师,教学中的关键就在于对教学内容(教什么)和教学方法(如何教)进行合理的组合;但现实中由于教学目的、教学内容及学生情况等因素的千差万别,没有哪一种教学模式或方法是普遍适用的,唯一的原则就是根据实际情况采用合适的教学模式和教学方法。《SystemModelingLanguageUML》teachingexperienceZhouJing(ChongqingCollegeofElectronicEngineeringchongqing401311China)Abstract:ThemainofthisarticleintroduceexperienceaboutseveraldifficultyinSystemModelingLanguageUMLteachingpractickeywords:SystemModelingLanguage、UML(UnifiedModelingLanguage)、teachingmethods、teachingexperience
本文标题:浅谈《系统建模语言UML》教学体会
链接地址:https://www.777doc.com/doc-2312742 .html