《面向对象设计与分析》课程实验指导书
适用于软件工程2016级 指导教师:李玉龙
实验一 建立需求模型--用况图
1、实验类型:设计性(2课时) 2、实验目的与任务:
了解用况图中角色与用况的概念、表示法和发现方法。 了解用况之间的三种关系:包含、扩展、继承。
熟练掌握用况图设计工具,结合软件生命周期,了解需求分析如何解决“做什么和怎么做”的主要任务,采用面向对象分析与设计的理论方法建立需求模型,并将案例以用况图的形式明确表达出来。 3、预习要求:
了解软件生命周期,理解用况图的存在意义,根据教材第31页的用况模板为用况图进行文档描述。 4、实验基本原理:
软件设计是不断迭代的过程,设计人员需要将设计思路、设计过程和设计方案以一种较为严谨、统一的规范进行描述,提供相互交流的便利性和准确性。需求分析遵循该原则,采用用况图建立模型,使设计人员在需求说明方面建立规范的交流方式。 5、实验环境:
JBOO3.0、MS Visio或其他UML设计工具。
6、实验内容:
以下案例可任选其一完成用况图设计:
(1) 对于3.3.1节中的收款用况,补充使用信用卡付款和使用优惠卡的描述。
(2)自动售货机会按用户的要求进行自动售货,供货员会巡查向其内供货,取款员会定时取款,针对上述要求,请建立用况图,并描述各个用况。
(3)现要开发一个购书积分系统,其中至少要具有申请积分卡、增加积分、查看积分卡和按积分奖励功能,请建立用况图,并描述各个用况。
7、实验报告要求:按照实验步骤书写实验报告,并附上实验效果图,阐述实验过程中遇到的问题、解决方案以及心得体会。
实验二 建立基本模型—类图
1、实验类型:设计性(2课时) 2、实验目的与任务:
了解类图中属性、操作与关系的概念、表示法和发现方法。 了解类之间的四种关系:继承、关联、聚合、依赖。 熟练掌握类图设计工具,结合软件生命周期,了解概要设计的主要任务,采用类图建立概要设计模型,并通过具体的案例分析深入理解类图作为概要设计文档如何明确设计目标。 3、预习要求:
了解软件生命周期,理解类图的存在意义,回顾教材第四章,掌握类的属性与操作在类图设计中识别和审核的流程,充分理解类与类之间的四种关系分别适用于表述哪些计算机世界的具体问题。 4、实验基本原理:
软件设计是不断迭代的过程,设计人员需要将设计思路、设计过程和设计方案以一种较为严谨、统一的规范进行描述,保证相互交流的便利性和准确性。概要设计阶段遵循该原则,采用类图建立基本模型,使设计人员在概要设计文档的编写过程中建立统一的沟通方法。 5、实验环境:
JBOO3.0、MS Visio或其他UML设计工具。
6、实验内容:
以下案例可任选其一完成类图设计:
(1)为火车票预定系统建立类图,具体的需求为:预定某一车次的车票,包括具体的时间和座位;在预定后,顾客必须在一定的时间内购票,否则预定无效;旅行社和火车售票处均可进行预定业务。
(2)针对无向图和有向图分别建立类图
7、实验报告要求:按照实验步骤书写实验报告,并附上实验效果图,阐述实验过程中遇到的问题、解决方案以及心得体会。
实验三 建立辅助模型—顺序图、活动图
1、实验类型:设计性(2课时) 2、实验目的与任务:
了解顺序图与活动图如何描述多个对象在其生命周期内产生的交互操作流程。
了解顺序图与活动图在表示方法上存在的差异。
熟练掌握顺序图、活动图设计工具,结合实际案例中多个特定对象在各自生命周期内与其他对象的交互流程,深刻领会分支、合并、分岔、合并等动作流的含义。 3、预习要求:
巩固顺序图中对象生命线、执行规约、消息等概念;
牢记结构化顺序图中的控制操作符,如opt、alt、par、loop、ref; 巩固活动图中动作、控制流、对象流、泳道等概念。
4、实验基本原理:
软件设计是不断迭代的过程,顺序图与活动图主要用于详细设计阶段,职责在于理清对象之间的交互流程,且在某些对象活动过程中相互转换、彼此印证,确保设计文档的正确性和完整性。 5、实验环境:
JBOO3.0、MS Visio或其他UML设计工具。
6、实验内容:
使用信用卡可以在ATM机上进行取款。针对一次取款,建立顺序图与活动图。注意ATM机是与银行联网的。
7、实验报告要求:按照实验步骤书写实验报告,并附上实验效果图,阐述实验过程中遇到的问题、解决方案以及心得体会。
实验四 建立辅助模型—状态机图
1、实验类型:设计性(2课时) 2、实验目的与任务:
了解状态机如何描述一个对象在其生命周期内因事件响应而起的一系列状态变迁。
了解状态机涉及的四个概念:事件、状态、转移、组合状态。
熟练掌握状态机图设计工具,结合特定对象的生命周期,详细描述对象在事件发生后产生的状态转移,并标明状态转移条件。
深入体会状态机图从动态角度描述对象活动过程的意义,比较之前学习的用例图、类图与其之间的差异。 3、预习要求:
了解对象在系统运行过程中的生命周期,理解状态机图的存在意义,预习5.4.1节中事件、状态、转移的概念表示法,并阅读和理解5.4.2中提及的建立状态机图应遵循的策略。 4、实验基本原理:
软件设计是不断迭代的过程,设计人员需要将设计思路、设计过程和设计方案以一种较为严谨、统一的规范进行描述,保证相互交流的便利性和准确性。概要设计阶段遵循该原则,采用状态机图建立辅助模型帮助设计人员沟通项目中存在的一系列对象状态变化的复杂问题,使设计人员在详细设计前期更加统一地认识问题。 5、实验环境:
JBOO3.0、MS Visio或其他UML设计工具。
6、实验内容:
为一个只有两个按钮的简易电子手表建立状态机图。一个按钮用于选择显示时间和设置时间,一个按钮用于增减时间。时间单位:小时、分和秒。 7、实验报告要求:按照实验步骤书写实验报告,并附上实验效果图,阐述实验过程中遇到的问题、解决方案以及心得体会。
实验五 人机交互设计
1、实验类型:设计性(2课时) 2、实验目的与任务:
理解新一代的人机界面是“以人为中心的计算”,人机交互是面向对象设计的一部分。
了解设计人员与用户协同设计人机界面的工作过程。 掌握人机交互设计的输入、输出以及命令的组织结构。 理解人机交互部分的设计准则。
3、预习要求:
了解MVC设计模式的各层职责,以及它们之间的交互过程。
回顾之前所学的类图与顺序图,考虑MVC设计模式中如何运用这些模型图描述各层的关系与交互。 4、实验基本原理:
人机交互设计首先需要对使用系统的人进行分析,以便确定适合其特点的交互方式和界面布局;然后对人机交互过程进行分析,确定使用者如何命令系统并从系统获取返回信息。 5、实验环境:
JBOO3.0、MS Visio或其他UML设计工具。
6、实验内容:
有些系统的设计采用模型-视图-控制(model-view-controller)模式。查找相关资料,给出该模式的类图和顺序图。
7、实验报告要求:按照实验步骤书写实验报告,并附上实验效果图,阐述实验过程中遇到的问题、解决方案以及心得体会。