软件工程实验三.docx
- 文档编号:29455033
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:37
- 大小:93.02KB
软件工程实验三.docx
《软件工程实验三.docx》由会员分享,可在线阅读,更多相关《软件工程实验三.docx(37页珍藏版)》请在冰豆网上搜索。
软件工程实验三
昆明理工大学信息工程与自动化学院学生实验报告
(2012———2013学年第2学期)
课程名称:
软件工程开课实验室:
4442013年5月17日
年级、专业、班
学号
姓名
成绩
实验项目名称
设计建模实践
指导教师
丁家满
教师评语
该同学是否了解实验原理:
A.了解□B.基本了解□C.不了解□
该同学的实验能力:
A.强□B.中等□C.差□
该同学的实验是否达到要求:
A.达到□B.基本达到□C.未达到□
实验报告是否规范:
A.规范□B.基本规范□C.不规范□
实验过程是否详细记录:
A.详细□B.一般□C.没有□
教师签名:
年月日
一、实验目的
1、熟悉sybasepowerdesigner绘制图形软件的环境,以及各种模型的绘图功能;
2、掌握ClassDiagram_1模型下各种符号的形状和功能,以及在ClassDiagram_1绘制用例图;
3、了解和掌握关联、扩展、包含、泛化、实现的基本符号形状及使用范围,能够在类图中准确的表达;
4、能够准确的描述类的属性,以及操作方法
5、掌握生成报告的方法
二、实验内容
在sybasepowerdesigner的ClassDiagram_1模型下绘制教务管理系统类图。
三、所用仪器、材料(设备名称、型号、规格等)
PC机一台、SybasePowerDesigner15
四、实验原理和步骤
1、分析各个角色及其功能绘制用例图,从而绘制类图,分析步骤如下:
(1)谁使用了系统的主要功能;
(2)谁要系统的支持来完成日常工作任务;
(3)谁维护、管理,并保证系统正常运行;
(4)系统需要应付或者处理那些硬件设备;
(5)系统需要和哪些外部系统交互;
(6)谁对系统运行的结果感兴趣。
2、根据以上分析,创建类模型步骤:
(1)找出角色和用例图中的名词
(2)寻找需要保存的结果
(3)完善类的属性
(4)确定各个类之间的结构关系
(5)绘制类图
五、实验结果(图形、数据、图表、计算等)
五、实验分析数据(表、图)
IModelinformation
I.1模型教务管理系统类图的卡片
名称
教务管理系统类图
代码
教务管理系统类图
注释
ICommonobjects
I.1Associations
I.1.1Modellevelassociations
I.1.1.1关联清单
名称
代码
类B
类A
角色A
角色B
多重性A
多重性B
Association_1
association1
成绩
学生
0..1
0..*
Association_2
association2
学习计划
教务管理员
0..1
0..*
Association_3
association3
学习计划
学生
0..1
0..*
Association_4
association4
课程
学生
0..1
0..*
Association_5
association5
申请
教务管理员
0..1
0..*
I.1.1.2关联Association_1
I.1.1.2.1关联Association_1的卡片
名称
Association_1
代码
association1
类B
成绩
类A
学生
角色A
角色B
多重性A
0..1
多重性B
0..*
I.1.1.2.2关联Association_1的扩充属性清单
名称
数据类型
值
目标名称
roleAContainer
ObjectContainer
Java
roleAImplementationClass
ContainerImplementation
Java
roleBContainer
ObjectContainer
java.util.Collection
Java
roleBImplementationClass
ContainerImplementation
java.util.HashSet
Java
I.1.1.3关联Association_2
I.1.1.3.1关联Association_2的卡片
名称
Association_2
代码
association2
类B
学习计划
类A
教务管理员
角色A
角色B
多重性A
0..1
多重性B
0..*
I.1.1.3.2关联Association_2的扩充属性清单
名称
数据类型
值
目标名称
roleAContainer
ObjectContainer
Java
roleAImplementationClass
ContainerImplementation
Java
roleBContainer
ObjectContainer
java.util.Collection
Java
roleBImplementationClass
ContainerImplementation
java.util.HashSet
Java
I.1.1.4关联Association_3
I.1.1.4.1关联Association_3的卡片
名称
Association_3
代码
association3
类B
学习计划
类A
学生
角色A
角色B
多重性A
0..1
多重性B
0..*
I.1.1.4.2关联Association_3的扩充属性清单
名称
数据类型
值
目标名称
roleAContainer
ObjectContainer
Java
roleAImplementationClass
ContainerImplementation
Java
roleBContainer
ObjectContainer
java.util.Collection
Java
roleBImplementationClass
ContainerImplementation
java.util.HashSet
Java
I.1.1.5关联Association_4
I.1.1.5.1关联Association_4的卡片
名称
Association_4
代码
association4
类B
课程
类A
学生
角色A
角色B
多重性A
0..1
多重性B
0..*
I.1.1.5.2关联Association_4的扩充属性清单
名称
数据类型
值
目标名称
roleAContainer
ObjectContainer
Java
roleAImplementationClass
ContainerImplementation
Java
roleBContainer
ObjectContainer
java.util.Collection
Java
roleBImplementationClass
ContainerImplementation
java.util.HashSet
Java
I.1.1.6关联Association_5
I.1.1.6.1关联Association_5的卡片
名称
Association_5
代码
association5
类B
申请
类A
教务管理员
角色A
角色B
多重性A
0..1
多重性B
0..*
I.1.1.6.2关联Association_5的扩充属性清单
名称
数据类型
值
目标名称
roleAContainer
ObjectContainer
Java
roleAImplementationClass
ContainerImplementation
Java
roleBContainer
ObjectContainer
java.util.Collection
Java
roleBImplementationClass
ContainerImplementation
java.util.HashSet
Java
I.1Dependencies
I.1.1Modelleveldependencies
I.1.1.1依赖清单
名称
代码
流入对象
依赖对象
Dependency_1
Dependency_1
学习计划
申请
Dependency_2
Dependency_2
开设课程
学习计划
I.1.1.2依赖Dependency_1
I.1.1.2.1依赖Dependency_1的卡片
名称
Dependency_1
代码
Dependency_1
流入对象
学习计划
依赖对象
申请
I.1.1.2.2包含依赖Dependency_1的图清单
名称
代码
ClassDiagram_1
ClassDiagram_1
I.1.1.3依赖Dependency_2
I.1.1.3.1依赖Dependency_2的卡片
名称
Dependency_2
代码
Dependency_2
流入对象
开设课程
依赖对象
学习计划
I.1.1.3.2包含依赖Dependency_2的图清单
名称
代码
ClassDiagram_1
ClassDiagram_1
I.2
Generalizations
I.2.1Modellevelgeneralizations
I.2.1.1泛化清单
名称
代码
父对象
子对象
Generalization_1
Generalization_1
用户
学生
Generalization_2
Generalization_2
用户
教务管理员
Generalization_3
Generalization_3
课程
开设课程
I.2.1.2泛化Generalization_1
I.2.1.2.1泛化Generalization_1的卡片
名称
Generalization_1
代码
Generalization_1
父对象
用户
子对象
学生
I.2.1.3泛化Generalization_2
I.2.1.3.1泛化Generalization_2的卡片
名称
Generalization_2
代码
Generalization_2
父对象
用户
子对象
教务管理员
I.2.1.4泛化Generalization_3
I.2.1.4.1泛化Generalization_3的卡片
名称
Generalization_3
代码
Generalization_3
父对象
课程
子对象
开设课程
II
Classdiagramsobjects
II.1Classes
II.1.1Modellevelclasses
II.1.1.1类清单
名称
代码
父类
产生
可见性
抽象
类的类型
学习计划
学习计划
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
学生
学生
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
开设课程
开设课程
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
成绩
成绩
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
教务管理员
教务管理员
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
用户
用户
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
申请
申请
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
课程
课程
Object-OrientedModel'教务管理系统类图'
TRUE
public
FALSE
Class
II.1.1.2类属性清单
名称
代码
已显示的
域
数据类型
可见性
初始值
类元
只读
学号
学号
TRUE
int
public
学生
FALSE
姓名
姓名
TRUE
char
public
学生
FALSE
性别
性别
TRUE
char
public
学生
FALSE
专业
专业
TRUE
char
public
学生
FALSE
成绩
成绩
TRUE
double
public
学生
FALSE
账号
账号
TRUE
int
public
用户
FALSE
密码
密码
TRUE
int
public
用户
FALSE
姓名
姓名
TRUE
int
public
用户
FALSE
姓名
姓名
TRUE
char
public
教务管理员
FALSE
性别
性别
TRUE
char
public
教务管理员
FALSE
年龄
年龄
TRUE
int
public
教务管理员
FALSE
职称
职称
TRUE
char
public
教务管理员
FALSE
账号
账号
TRUE
int
public
教务管理员
FALSE
密码
密码
TRUE
int
public
教务管理员
FALSE
成绩单
成绩单
TRUE
double
public
成绩
FALSE
绩点
绩点
TRUE
double
public
成绩
FALSE
姓名
姓名
TRUE
char
public
成绩
FALSE
课程号
课程号
TRUE
int
public
成绩
FALSE
学院
学院
TRUE
char
public
学习计划
FALSE
专业
专业
TRUE
char
public
学习计划
FALSE
时间
时间
TRUE
Date
public
学习计划
FALSE
内容
内容
TRUE
String
public
学习计划
FALSE
周期
周期
TRUE
Date
public
学习计划
FALSE
教师
教师
TRUE
char
public
学习计划
FALSE
申请时间
申请时间
TRUE
Date
public
申请
FALSE
申请人
申请人
TRUE
char
public
申请
FALSE
申请内容
申请内容
TRUE
String
public
申请
FALSE
课程号
课程号
TRUE
int
public
课程
FALSE
课程名
课程名
TRUE
char
public
课程
FALSE
成绩
成绩
TRUE
double
public
课程
FALSE
教师
教师
TRUE
char
public
课程
FALSE
课程号
课程号
TRUE
int
public
开设课程
FALSE
课程名
课程名
TRUE
char
public
开设课程
FALSE
成绩
成绩
TRUE
int
public
开设课程
FALSE
II.1.1.3类学习计划
II.1.1.3.1类学习计划的代码预览
/***********************************************************************
*Module:
学习计划.java
*Author:
student
*Purpose:
DefinestheClass学习计划
***********************************************************************/
importjava.util.*;
/**@pdOid632da019-1d64-4e38-bdc7-871e4f602440*/
publicclass学习计划{
/**@pdOiddc523ca6-a69c-44cf-a437-e1d1f20eda28*/
publicchar学院;
/**@pdOid7cb0df5d-9b84-45bb-9948-9b2298b52b33*/
publicchar专业;
/**@pdOid285f633b-d182-467d-941c-cbef3e25da5c*/
publicDate时间;
/**@pdOiddcb1b4a7-e0d3-4027-9204-825fe7e00a8c*/
publicString内容;
/**@pdOid4708fd0b-d862-4e64-acdb-8e1cd6e4c6c8*/
publicDate周期;
/**@pdOida36a54e8-34d8-404c-8136-28609984c983*/
publicchar教师;
}
II.1.1.3.2类学习计划的标题
/***********************************************************************
*Module:
学习计划.java
*Author:
student
*Purpose:
DefinestheClass学习计划
***********************************************************************/
II.1.1.3.3类学习计划的导入
importjava.util.*;
II.1.1.3.4类学习计划的属性学院
II.1.1.3.5类学习计划的属性专业
II.1.1.3.6类学习计划的属性时间
II.1.1.3.7类学习计划的属性内容
II.1.1.3.8类学习计划的属性周期
II.1.1.3.9类学习计划的属性教师
II.1.1.4类学生
II.1.1.4.1类学生的代码预览
/***********************************************************************
*Module:
学生.java
*Author:
student
*Purpose:
DefinestheClass学生
***********************************************************************/
importjava.util.*;
/**@pdOid459751ec-ac22-4a6d-9abc-5936cbd03ca4*/
publicclass学生extends用户{
/**@pdOid82cb82ea-382d-4786-925c-b77ebdc5366d*/
publicint学号;
/**@pdOiddca40564-bb7e-4665-b987-c46474101b8b*/
publicchar姓名;
/**@pdOid3a6c04ed-efb5-4cca-8ec3-c5702eeb5243*/
publicchar性别;
/**@pdOid49ab514f-7ef8-4555-a45c-92511d3aa3f7*/
publicchar专业;
/**@pdOid11b2708f-d6bd-41aa-9d91-265c00a03f48*/
publicdouble成绩;
/**@pdRoleInfomigr=noname=学习计划assc=association3coll=java.util.Collectionimpl=java.util.HashSetmult=0..**/
publicjava.util.Collection<学习计划>学习计划;
/**@pdRoleInfomigr=noname=课程assc=association4coll=java.util.Collectionimpl=java.util.HashSetmult=0..**/
publicjava.util.Collection<课程>课程;
/**@pdGenerateddefaultgetter*/
publicjava.util.Collection<成绩>get成绩(){
if(成绩==null)
成绩=newjava.util.HashSet<成绩>();
return成绩;
}
/**@pdGenerateddefaultiteratorgetter*/
publicjava.util.IteratorgetI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 实验