UML-软件体系结构-实验2-中南大学-软件学院

UML-软件体系结构-实验2-中南大学-软件学院
UML-软件体系结构-实验2-中南大学-软件学院

实验2 UML实验(2)

实验学时: 2

每组人数: 1

实验类型: 3 (1:基础性2:综合性3:设计性4:研究性)

实验要求: 1 (1:必修2:选修3:其它)

实验类别: 3 (1:基础2:专业基础3:专业4:其它)

一、实验目的

1. 学习类图的绘制;

2. 学习从系统需求中识别类,并构建相应的面向对象模型;

3. 学习使用顺序图描述对象之间的交互;

4. 学习使用活动图为业务流程建模;

5. 学习使用PowerDesigner实现正向工程和逆向工程。

二、实验内容

1. 根据以下描述绘制类图,再正向工程生成Java源代码(也可生成其他面向对象语言的源代码,如C++或C#等):

图形(Shape)可分为圆形(Circle)、矩形(Rectangle)、椭圆形(Ellipse)等具体图形,在Shape 类中提供了一个抽象的draw()方法用于绘制图形,而在具体的图形类中实现该抽象draw()方法。

提供一个图形工厂类(ShapeFactory),该类提供一个静态方法createShape(char type),其返回类型为Shape,参数type为所需绘制图形对应的代码,例如“c”表示圆形,“r”表示矩形,“e”表示椭圆形等,在createShape()方法中,可以使用条件语句来判断所需绘制图形的类型,并根据参数的不同返回不同的具体形状对象。【注:“创建关系”是一种特殊的“依赖关系”】

2. 根据以下描述绘制类图:

某商场会员管理系统包含一个会员类(Member),会员的基本信息包括会员编号、会员姓名、联系电话、电子邮箱、地址等,会员可分为金卡会员(GoldMember)和银卡会员(SilverMember)两种,不同类型的会员在购物时可以享受不同的折扣;每个会员可以拥有一个或多个订单(Order),每一个订单又可以包含至少一条商品销售信息(ProductItem),商品销售信息包括订单编号、商品编号、商品数量、商品单价和折扣等;每一条商品销售信息对应一类商品(Product),商品信息包括商品编号、商品名称、商品单价、商品库存量、商品产地等。

3. 某基于C/S的即时聊天系统的注册和登录模块功能描述如下:

(1) 注册功能:用户通过注册界面(RegisterForm)输入新帐号,系统检测该帐号是否已存在,如果不存在则可注册成功,否则提示“帐号已存在”,用户再次输入帐号;用户输入其他个人信息;系统保存用户个人信息;用户个人信息包括帐号、密码、姓名、性别、年龄、电话、电子邮箱等。

(2) 登录功能:用户通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的用户信息进行比较,验证用户输入是否正确,如果输入正确则进入主界面(MainForm),否则提示“输入错误”。

现对这两个模块进行设计,要求如下:

(1) 根据以上描述绘制类图,要求分析出每个类中的主要方法;

(2) 需要提供独立的业务逻辑类和数据访问类,考虑到数据库的移植性,需提供抽象的数据访问接口;

(3) 尽量使用数据传输对象(DTO)来传递参数,减少方法中参数的个数。

4. 某运输公司决定为新的售票机开发车票销售的控制软件,下图给出了售票机的面板示意图以及相关的控制部件。

售票机相关部件的作用如下所述:

(1) 目的地键盘用来输入行程目的地的代码(例如,200表示总站)。

(2) 乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。

(3) 继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。

(4) 显示屏显示所有的系统输出和用户提示信息。

(5) 插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。

(6) 打印机用于输出车票。

(7) 所有部件均可实现自检并恢复到初始状态。

现采用面向对象方法开发该系统,使用UML进行建模,绘制该系统的核心类图并尽量分析出每一个类所包含的方法。

5. 根据如下描述绘制顺序图:

在某在线订房系统中,顾客输入房间套数、房间类型、入住时间、入住天数等信息,系统显示符合要求的房间号;顾客确定预订的房间,系统显示预付订金信息;顾客输入信用卡账号和密码,系统请求银行信用卡系统提供支付服务;银行信用卡系统验证用户信息并返回验证通过和支付成功消息;顾客请求系统打印预订单和收据,系统打印相关资料;预订结束。

7. 根据以下描述绘制某订餐系统中顾客订餐过程的活动图(要求绘制泳道):

(1) 顾客请求查看菜单;

(2) 系统显示菜单和今日特价;

(3) 顾客选菜;

(4) 系统显示订单和价格;

(5) 顾客确认订单;

(6) 系统显示可送餐时间;

(7) 顾客指定送餐时间、地点和支付方式;

(8) 系统确认接受订单,然后发送Email给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工。

三、实验要求

1. 熟练使用PowerDesigner绘制类图、顺序图和活动图;

2. 熟练使用PowerDesigner实现正向工程和逆向工程;

3. 使用UML2.X中的标准图符绘制图形,对于一些较为复杂的图形,适当增加文字注释来进行说明;

4. 所绘制图形必须正确、完整,需具有较好的可读性,注意图形中图符和文字大小及布局。

四、实验步骤

1. 根据描述绘制类图并正向工程生成源代码;

2. 分析商场会员管理系统中实体类之间的关系,绘制相应的类图;

3. 分析某基于C/S的即时聊天系统的注册和登录模块的功能,绘制对应的类图;

4. 分析车票销售控制系统,绘制该系统的核心类图;

5. 分析在线订房系统中顾客与系统之间的交互过程,绘制相应的顺序图;

6. 根据源代码绘制相应的顺序图;

7. 分析订餐系统中顾客订餐过程的流程,绘制相应的活动图。

五、实验结果

1. 类图:

Circle

+draw () ...: Shape

Rectangle

+draw ()

...

: Shape

Ellipse

+draw ()

...

: Shape

ShapeFactory

+createShape (char type)

...

: Shape Shape

+draw ()

...

: Shape

源代码:

2. 商场会员管理系统类图:

1..1

1..*

Member

-----memberNumber MemberName phone email address : String : String : String : String : String

++++++++++

<><><><><><><><><><>getMemberNumber ()

setMemberNumber (String newMemberNumber)getMemberName ()

setMemberName (String newMemberName)getPhone ()

setPhone (String newPhone)getEmail ()

setEmail (String newEmail)getAddress ()

setAddress (String newAddress)

...

: String : void : String : void : String : void : String : void : String : void

GoldMember -discount : double SilverMember -discount : double

Order

-----orderNumber productNumber productQuantity productPrice productDiscount : String : String : int : double : int

++++++++++

<><><><><><><><><><>getOrderNumber ()

setOrderNumber (String newOrderNumber)getProductNumber ()setProductNumber (

String newProductNumber)

getProductQuantity ()setProductQuantity (

int newProductQuantity)

getProductPrice ()

setProductPrice (double newProductPrice)getProductDiscount ()setProductDiscount (

int newProductDiscount)...

: String : void : String : void : int : void : double : void : int : void

ProductItem

-----orderNumber productNumber productQuantity productPrice discount : String : String : int : double : double

++++++++++

<><><><><><><><><><>getOrderNumber ()

setOrderNumber (String newOrderNumber)getProductNumber ()setProductNumber (

String newProductNumber)

getProductQuantity ()setProductQuantity (

int newProductQuantity)

getProductPrice ()

setProductPrice (double newProductPrice)getDiscount ()

setDiscount (double newDiscount)

...

: String : void : String : void : int : void : double : void : double : void

Product

-----productNumber productName productPrice stockQuantity production : String : String : double : int : String

++++++++++

<><><><><><><><><><>getProductNumber ()setProductNumber (

String newProductNumber)

getProductName ()

setProductName (String newProductName)getProductPrice ()

setProductPrice (double newProductPrice)getStockQuantity ()

setStockQuantity (int newStockQuantity)getProduction ()

setProduction (String newProduction)

...

: String : void : String : void : double : void : int : void : String : void

3. 即时聊天系统类图:

RegisterForm

--user

userDAO

: UserDTO

: IUserDAO

UserDTO

-------userAccount userPassword userName

userSex

userAge userPhone userEmail

: String

: String

: String

: char

: int

: String

: String

+ + + + + + + + + + + + + +<>

<>

<>

<>

<>

<>

<>

<>

<>

<>

<>

<>

<>

<>

getUserAccount ()

setUserAccount (String newUserAccount)

getUserPassword ()

setUserPassword (String newUserPassword)

getUserName ()

setUserName (String newUserName)

getUserSex ()

setUserSex (char newUserSex)

getUserAge ()

setUserAge (int newUserAge)

getUserPhone ()

setUserPhone (String newUserPhone)

getUserEmail ()

setUserEmail (String newUserEmail)

...

: String

: void

: String

: void

: String

: void

: char

: void

: int

: void

: String

: void

: String

: void

IUserDAO

+addUser (UserDTO userDTO)

...

: boolean

UserDAO

+addUser (UserDTO userDTO)

...

: boolean

注册类说明

类名

RegisterForm

1..1

1..1 1..1

1..1

LoginForm

-loginBO : LoginBO

++<>LoginForm ()login (String account, String password)...

: void

MainForm

LoginBO

-userDAO : IUserDAO +++<><>validate (String account, String password)

getUserDAO ()setUserDAO (IUserDAO newUserDAO)...

: boolean

: IUserDAO : void

IUserDAO

+findUserByAccountAndPasswd (String account, String password)...

: boolean UserDAO

+findUserByAccountAndPasswd (String account, String password)...

: boolean

登录类说明

登录类图方法说明

4. 车票销售控制系统类图:

0..1

0..1

0..1

DestinationCodeKeyBoard +getDestinationCode ()...

: String TicketKindKeyBoard +getTicketKind ()...

: String KeyBoard +getKey ()...

: int ActionKeyBoard +getAction ()...

: String Screen

+showMessage ()...

: void MCardSlot ++debitFare ()ejectMCard ()...

: double : int CashSlot

+giveChange ()...

: double Printer +printTicket ()...

: void Component ++testSelf ()init ()...

: void : void TicketSaleSystem

-------destinationCodekeyBoard ticketKindKeyBoard actionKeyBoard screen mCardSlot cashSlot printer : DestinationCodeKeyBoard : TicketKindKeyBoard : ActionKeyBoard : Screen : MCardSlot : CashSlot : Printer +

saleTicket ()...

: void Pay

+getCharge ()...

: String 类说明

方法说明

5. 在线订房系统顺序图:

System BankCreditCardSystem

错误少于三次

6. 顺序图:

:Sale item:SalesProductItem total:Money [for (SalesProductItem item : productItems)]

7. 订餐系统活动图:

顾客系统

查看菜单选菜

指定送餐时间、地点、支付方式

显示菜单和今日特价

显示订单和价格

显示可送餐时间

确认接受订单、email 顾客确认、通知员工

确认订单

六、实验小结

给出本次实验的体会,如学会了什么,遇到哪些问题,如何解决这些问题,存在哪些有待改进的地方。

【注:完成实验报告之后删除以下内容】 实验报告提交要求:

1. 提交电子版实验报告,格式为“学号-姓名-实验

2.doc ”,如

“060102-张三-实验2.doc ”,所有材料均放在一个Word 文件中,格式为doc 或docx ,不需要提交PowerDeigner 所保存的oom 模型。

2. 实验报告格式参见下页:

告诉你一个真实的中南大学和湖南大学汇总

告诉你一个真实的中南大学和湖南大学 ——中南大学和湖南大学各有所长 易元唐 每当一年一度的中国大学排名发布时,各个学校都希望从中找到安慰。这是一种正常的、合理的心态;而看到毗邻的学校比自己所在学校超前时,就发出嗓音,使用侮辱性,甚至诽谤性的言词,攻击它。这种人,轻者是“红眼病”,重者是心态或精神不正常。取得成绩,广为宣传,无可非议;如果在宣传时贬低了相关者,就不好了。当人家在前进的过程中遇到困难,受了挫折,从中吸取教训,这是对的;如果对人家的挫折辛灾乐??,甚至造谣生事,那是一个人的品质问题了。这种人不配在网上发表言论。 遗憾的是,打开网大论坛?D?D中南大学和湖南大学栏目时,所看到的,到处充斥着侮辱性,甚至诽谤性的言词,给人一种强烈的感觉:这那里是“论坛”?这简直是泼妇骂街的场所! 我呼吁参加“论坛”的网友,理智一点,实事求是一点。为了以正视听,我把一个真实的中南大学和湖南大学告诉你们,供你们讨论问题时参考。 一.中南大学和湖南大学的历史渊源 1.中南大学是在“湖南高等实业学堂”一个矿科半个路科专业的基础上发展起来的,湖南大学是在“湖南高等实业学堂”半个路科专业的基础上发展起来的。 要想了解中南大学和湖南大学的历史渊源,只要看看中南大学和湖南大学的历史就清楚了。中南大学是2000年由原中南工业大学、原湖南医科大学、原长沙铁道学院合并而成的;而现在的湖南大学是于2000年后,由1959年复名后的湖南大学,先后合并湖南财经学院、湖南省计算机专科学校而成的。中南工业大学的前身是中南矿冶学院。1959年复名后的湖南大学的前身是湖南工学院,湖南工学院的前身是中南土木建筑学院。中南矿冶学院和中南土木建筑学院都是老湖南大学工(程)学院的一部分。老湖南大学工(程)学院是由1926年组建老湖南大学五所学校之一的“湖南高等实业学堂”的相关专业组成的。“湖南高等实业学堂”创建于1903年,到1926年共设有矿(矿冶)、路(土木)、机械、应化、窑业、电机、数理诸科。1953年撤消老湖南大学时,以原“湖南高等实业学堂”中的矿科?D?D老湖南大学工(程)学院矿冶系和矿冶研究所为基础与中南地区的同类学科组建中南矿冶学院,以原“湖南高等实业学堂”中的路科?D?D老湖南大学工(程)学院土木系为基础与中南、西南同类学科组建中南土木建筑学院。当中南土木建筑学院于1958年改名为湖南工学院、1959年复名湖南大学时,“湖南高等实业学堂”中的路科已发展为土木系、机械系、电机系、化工系、铁道建筑系、桥梁隧道系、铁道运输系。1960年7月,铁道建筑系、桥梁隧道系、铁道运输系三系调出成立长沙铁道学院。这就是说,中南大学是在“湖南高等实业学堂”一个矿科半个路科专业的基础上发展起来的,湖南大学是在“湖南高等实业学堂”半个路科专业的基础上发展起来的。这一个半和半个就奠定了这两所大学的发展基础。2001年评选全国重点学科时中南大学获得17个,而湖南大学只获得2个,就是上述结论的最好佐证。 2.中南大学的“祖宗”?D?D矿科或中南矿冶学院先于湖南大学的“祖宗”?D?D路科或中南土木建筑学院问世。 1903年10月,“湖南高等实业学堂”招收预科甲班生,为矿科;次年招收预科乙班生,为路科。如果硬要给矿科取一个俗一点的名字,叫“矿工”的话,那路科就叫“泥瓦匠”。在1950年代院系调整时,中南大学的前身之一?D?D中南工业大学?D?D中南矿冶学院于1952年11月成立,而1959年复名后的湖南大学前身?D?D中南土木建筑学院于1953年成立。由此可见,中南大学的“祖宗”比湖南大学的“祖宗”提前一年问世。1903/1904,1952/1953,别小看这一年的时间差,就是这仅仅一年的时间差,却为这两所大学以后的发展顺序定下了基调。例如,列入全国重点院校的时间:中南大学的前身之一?D?D中南工业大学?D?D中南矿冶学院是1960年10月,湖南大学是1978年2月;又如,中南大学的前身之一?D?D中南工业大学的“211工程”建设于1997年7月正式列入“九五”建设计划,湖南大学的“211工程”建设于1998年6月立项;再如,中南大学的前身之二?D?D中南工业大学和长沙铁道学院在首批博士点遴选中获得5个,湖南大学在第二批博士点遴选时才获得3个。 3.中南矿冶学院和中南土木建筑学院,都在自己的发展过程中引入了“名牌”“品牌”。 中南矿冶学院在自己的发展过程中引入了“清华精神”和“湘雅品牌”,中南土木建筑学院在自己的发展过程中引入了“湖南大学”和“岳麓书院”品牌。 中南矿冶学院在自己的发展过程中引入了“清华精神”和“湘雅品牌”,是中南矿冶学院?D?D中南工业大学——中南大学取得举世瞩目成就的秘密。所谓“清华精神”就是国耻的痛楚和重负,与振兴国运的责任和决心,交织着凝结在清华的校史里和一代代清华学子身上的精神!引入“清华精神”是在中南矿冶学院阶段进行的。“清华精神”是通过两任院长:1952-1957年的陈新民院士、1958-1965年的唐楠屏和主管科研长达32年的副院长黄培云院士来实施的。陈新民是清华大学的本科和硕士生,美国麻省理工学院的博士生,清华大学教授,清华大学校务委员会委员兼秘书长。担任中南矿冶学院院长后,他用选校址、开校门、设校庆这种潜移默化的方法来渗透“清华精神”。唐楠屏曾就读于东北大学和清华大学,1937年于东北大学毕业后,1938年赴延安抗日军政大学和陕北公学学习。1941年任延安大学校长

中南大学软件体系结构实验4-结构型设计模式实验

实验4 结构型设计模式实验 实验学时: 2 每组人数: 1 实验类型: 3 (1:基础性 2:综合性 3:设计性 4:研究性) 实验要求: 1 (1:必修 2:选修 3:其它) 实验类别: 3 (1:基础 2:专业基础 3:专业 4:其它) 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的结构型设计模式,包括适配器模式、组合模式和外观模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。 二、实验内容 1. 现有一个接口DataOperation定义了排序方法sort(int[]) 和查找方法search(int[], int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法,类BinarySearch 的binarySearch(int[], int)方法实现了二分查找算法。试使用适配器模式设计一个系统,在不修改源代码的情况下将类QuickSort和类BinarySearch的方法适配到DataOperation接口中。绘制类图并编程实现。(要求实现快速排序和二分查找,使用对象适配器实现) 2. Windows Media Player和RealPlayer是两种常用的媒体播放器,它们的API结构和调用方法存在区别。现在你的应用程序需要支持这两种播放器API,而且在将来可能还需要支持新的媒体播放器,请问如何设计该应用程序绘制类图并编程模拟实现。 3. 使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、视频文件VideoFile。绘制类图并编程模拟实现。 4. 某教育机构组织结构如下图所示:

UML实验心得体会

uml实验报告 学院 班级学号姓名 uml实验报告 实验一:用例图 实验结果: 小结实验心得体会: 用例模型用于需求分析阶段,它描述了待开发系统的功能需求,并驱动了需求分析之后 各阶段的开发工作。用例图是uml中用来对系统的动态方面进行建模的7种图之一。用例图 描述了用例、参与者以及它们之间的关系。用例图从用户角度描述系统功能,并指出各功能 的操作者。通过本次实验,我熟悉rational rose建模环境,更加清楚的了解了用例图的语 义和功能,如何清晰明了的识别参与者、用例,学会了如何使用事件流描述用例。同时掌握 了用例间的类属关系、include关系和extend关系的语义、功能和应用。最后通过本次实验 学习了如何使用用例图为系统的上下文以及系统的需求建模。 思考题: 1. 如果要删除参与者、用例,请问是在导航窗口删除,还是在绘图窗口删除? 答:都可以删除,但在绘图窗口中有两种删除方式:一种是只删除参与者、用例,而不 改变其在导航窗口中的存在,另一种是从建模中完全删除。 2. 如果要删除参与者和用例的联系,用例和用例的联系,请问是在绘图中删除,还是在 参与者或用例的设置对话框中删除? 答:都可以删除。 实验二:类对象模型的建立 实验结果: 小结实验心得体会: 类图是面向对象系统建模最常用的图,描述了类图、接口集、协作以及它们之间的关系。 类图描述了系统的静态设计视,该视主要体现系统的功能需求,即系统应该提供给用户的服 务。通过本次实验,加深了我对类图语义的理解和功能的应用,掌握了类之间的联系,关联、 依赖、聚合等,同时基本掌握了在rational rose中绘制类的关联、依赖、泛化关系。 思考题:选中一个模型对象,点击鼠标右键,比较快捷菜单项“edit——delete”与“edit ——delete from model”,它们二者之间区别在哪里? 答:“edit——delete”只是在绘图窗口中删除了模型对象,而“edit——delete from model”则是彻底的删除了模型对象。 实验三:顺序图、协作图 实验结果: 顺序图: 1. 归还图书 2.借出图书 协作图: 1. 归还图书 2. 借出图书 小结实验心得体会: 顺序图描述了对象之间的动态合作关系,它强调对象之间消息发送的时间顺序,同时显 示对象之间的交互。协作图与顺序图是同构的,rose可自动转换。顺序图是强调消息的交互

软件体系结构KWIC实验

《软件体系结构》 实验:软件体系结构风格之应用

一、实验目的 通过 KWIC 实例分析,理解和掌握软件体系结构风格设计与实现。 二、实验容 多种软件风格设计与实现之 KWIC 实例: 1.采用主/子程序体系结构风格实现 KWIC 关键词索引系统 2.采用面向对象体系架构风格实现 KWIC 关键词索引系统 3.采用管道过滤 体系架构风格实现 KWIC 关键词索引系统 4.采用事件过程调用体系架构风格实现 KWIC 关键词索引系统 三、实验要求与实验环境 熟练掌握基于主/子程序体系结构风格的 KWIC 关键词索引系统,在此基础上, 完成基于面向对象体系架构风格的 KWIC 关键词索引系统设计与实现。选做基于 管道过滤体系架构风格的 KWIC 关键词索引系统;选做基于事件过程调用体系架 构风格的 KWIC 关键词索引系统。 实验课前完成实验报告的实验目的、实验环境、实验容、实验操作过程等 容;实验课中独立/团队操作完成实验报告的实验操作、实验结果及结论等容;每 人一台 PC 机,所需软件 Win2003/XP 、 UML 工具( EclipseUML/ Rose/Visio/StartUML/)、Eclipse/MyEclipse、JDK6.0 等。 四、实验操作 1、采用主/子程序体系结构风格实现 KWIC 关键词索引系统 主程序/子程序风格(Main Program/Subroutine Style)将系统组织成层次结 构,包括一个主程序和一系列子程序。主程序是系统的控制器,负责调度各子程

序的执行。各子程序又是一个局部的控制器,调度其子程序的执行。设计词汇表: 主程序 main(), 子程序 shift(), sort() 方法,方法的调用,返回构件和连接件类 型: 构件:各类子程序,如 shift(),sort() 连接件:方法的调用基本的计算模型: 子程序有 shift(), sort()方法,shift() 对单词进行移位,sort()方法对单词进行 排序 风格的基本不变性: 主程序有顺序地调用子程序,单线程控制。 KWIC 的主/子程序体系结构风格示意图如下所示: 主程序/子程序风格的重要设计决策与约束有:

中南大学铁道工程认知实习报告

铁道工程实习报告 班级: 姓名: 学号: 指导老师:娄平、汪优 一、实习时间:2012年9月9日、10日 二、实习地点:黑石铺车站、武广高铁 三、实习目的: 铁道作为土木工程中一个重要的分支,我们有必要认真地了解与学习铁道工程。作为大二新生,还不是十分了解自己学习的专业情况下,认识实习有助于我们对以后的学习道路更为了解。我们通过在铁路的实地认识实习,加上指导老师的系统讲解过程,使我们对铁道工程的相关基础知识及其设计、施工过程有了初步的了解,对铁路工程有了初步的认识,加深了对所学课程知识的理解,使学习与实践能够完美地结合。 四、实习内容:

第一天下午我们去实地考察,与往日不同的是我们今天是坐公交前往,真是别有风味。在公交车上老师给我们介绍了中国在铁路建设上的一些历史与知识。京张铁路是我国首条由自己设计并施工的铁路,从北京到张家口,建设这条铁路的总工程师就是家喻户晓的詹天佑。老师也介绍了京广铁路的历史,以前的京广铁路是分为两段的,北段是由北京到汉口的京汉铁路,南段是武昌到广州的粤汉铁路。两条铁路被长江分开,人们到武汉后只能坐渡轮过长江再坐南段火车。在1957年,武汉长江大桥建成通车后,两条铁路接轨并改名为京广铁路,成为连接中国南北的重要干线。不久我们便到了今天实地考察的地点,黑石铺车站,是位于京广线上的一个车站。 站在铁道旁边,老师给我们做出详细讲解。黑石铺车站是个货运车站。老师带我们走到月台后面一条钢轨上,解释道这条钢轨是一些厂房专用线,一 般不通火车,所以我们可 以站在这观看。钢轨是铁 路轨道的重要组成部分, 在火车经过的时候,它承 受车轮的巨大压力并传 递到轨枕上。以前的轨枕 用的材料是木材,现在用 的是钢筋混凝土。钢筋混凝土相对于木材来说使用寿命更长,养

中南大学软件体系结构重要资料

第一章软件体系结构概述(5分) 一、软件体系结构的定义 ●国内普遍接受的定义:软件体系结构包括构件、连接件和约束,它是可预制和可重 构的软件框架结构。 ●软件体系结构= 构件+ 连接件+ 约束 二、软件体系结构的优势 ●容易理解 ●重用 ●控制成本 ●可分析性 第二章软件体系结构风格(10分) 一、软件体系结构风格定义 ●软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。 An architectural style defines a family of systems in terms of a pattern of structural organization. ●体系结构风格定义了一个系统家族,即一个体系结构定义一个词汇表和一组约束。 词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连 接件组合起来的。 An architectural style defines a vocabulary of components and connector types, and a set of constraints on how they can be combined. 二、常见的体系结构风格 ●管道和过滤器

?每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。 ?过滤器风格的连接件就像是数据流传输的管道,将一个过滤器的输出传到另一个过滤器的输入。 ●数据抽象和面向对象组织 ?数据的表示方法和它们的相应操作被封装在一个抽象数据类型或对象中。 ?这种风格的构件是对象或者说是抽象数据类型的实例。 ?对象通过函数和过程的调用来进行交互。 ●基于事件的隐式调用 ?构件不直接调用一个过程,而是触发或广播一个或多个事件。 ?事件的触发者并不知道哪些构件会被这些事件影响。 ●分层系统 ?组织成一个层次结构。 ?每一层都为上一层提供了相应的服务,并且接受下一层提供的服务。 ●仓库系统 ?构件:中心数据结构(仓库)和一些独立构件的集合。 ?仓库和在系统中很重要的外部构件之间的相互作用。 ●过程控制环路 ?源自于控制理论中的模型框架,将事务处理看成输入、加工、输出、反馈、再输入的一个持续的过程模型。 ?通过持续性的加工处理过程将输入数据转换成既定属性的“产品”。 ●C2风格

uml学习心得体会

uml学习心得体会 篇一:UmL学习心得耿庆博 UmL学习心得 (一)UmL(UnifiedmodelingLanguage,统一建模语言)是一组用于描述ooad过程的图形化表达方式。 UmL为交流面向对象的设计中的需求,行为、体系结构的实现提供了一套综合的表示法。 (二)UmL由9个不同类型的图组成: 用例图:显示了系统的外部可视行为。 用例图描述了系统外的人员和系统的交互动作,以及系统的响应,该类型的图可以用于描述系统的功能需求。 活动图:显示系统行为的峡谷纳西描述。 活动图描述了单个功能需求内部的细节行为,包括基本的场景和一些可选的场景。 组件图:显示了系统的体系结构。 组件图描述了系统的可部署单元(可执行文件,组件,数据存储和其他一些内容)以及一些借口,可部署单元通过这些接口进行交互,该图可以用于研究系统的体系结构。 顺序图:显示了对象随着时间的交互。 顺序图描述了某个功能需求的路径或场景内相对时间的详细行为,该

图可用于理解系统元素之间的消息流程。 协作图:显示了对象的交互,强调对象之间的关系。(在UmL2.0里面找不到了) 类图:显示了类的定义和关系。 类图描述了系统设计中的类和接口,以及他们之间的关系。该图可用于定义内部的,面向对象的代码结构。 状态图:显示了响应时间的状态改变。 状态图描述了系统如何改变状态以相应内部的和外部的事件,确保每个事件都被适当的处理。 部署图:显示了系统的物理体系结构。 部署图描述了系统的可部署单元(应用,组件,数据存储等)如何被赋予不同的节点,这些节点如何交互通信,用于系统映射和负载的研究。 包图:显示了设计的层次结构。 包图描述了设计的相关元素如何按组结合在一起,以及他们之间的关系。 (三)各种图的作用 1.用例图(Usecasediagram) 它是UmL中最简单也是最复杂的一种图。说它简单是因为它采用了面向对象的思想,又是基于用户视角的,绘制非常容易,简单的图形表示让人一看就懂。说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。用例图表示了角色和用例以及它们之间的关

中南大学轨道工程_铁道工程_习题及答案_加宽免费版

铁路轨道 由钢轨、轨枕、连接零件、道床、道岔和其他附属设备等组成的构筑物。位于铁路路基上,承受车轮传来的荷载,传递给路基,并引导机车车辆按一定方向运转。有些国家或地区也称线路上部建筑。在钢梁桥、灰坑、转盘、某些隧道以及采用新型轨道结构的地段,可以没有道床、或者也没有轨枕。 轨道组成 轨道最早是由两根木轨条组成,后改用铸铁轨,再发展为工字形钢轨,20世纪80年代,世界上多数铁路采用的 标准轨距(见铁路轨道几何形位)为 1435毫米(4英尺8(1/2)英寸)。较 此窄的称窄轨铁路,较此宽的称宽轨铁 路(见铁路工程)。轨枕一般为横向铺设,用木、钢筋混凝土或钢制成。道床采用碎石、卵石、矿渣等材料。钢轨、轨枕、道床是一些不同力学性质的材料,以不同的方式组合起来的。钢轨以连接零件扣紧在轨枕上;轨枕埋在道床内;道床直接铺在路基面上。轨道承受着多变化的垂直、横向、纵向的静荷载和动荷载,荷载从钢轨通过轨枕和道床传递到路基。通过力学理论,分析研究在各种荷载条件下,轨道各组成部分所产生的应力和应变,而确定其承载能力和稳定性。 轨道类型 为使轨道成为一个整体,要根据铁路的具体运营条件,使轨道各部分之间 的作用相互配合,并考虑轨道、车辆、 路基三者之间相互作用的配合协调。这就要求将轨道划分类型。轨道类型的内容包括钢轨类型,连接零件种类,轨枕的种类和配置,道床材料和断面尺寸。它所依据的主要运营条件为铁路运量、机车车辆轴重和行车速度。最佳的轨道结构须做到在给定的运营条件下,保证列车按规定的最高速度平稳、安全和不间断地运行,将荷载有效地传递给铁路路基,并结合合理的轨道材料使用和养护制度,使其设备折旧费、建设投资利息和设备养护费用之和为最小。轨道结构类型,常按不同运营条件将铁路线路分成为轨道等级来表示。这种分等的标准各国不同。中国铁路1975年的规程,将轨道分为四种类型:轻型、中型、次重型和重型四等(见表[中国铁路轨道 分类(1975年)])。 轨道养护 轨道各部分在列车重复荷载的作 用以及气候环境条件的影响下,将产生磨耗、腐蚀、腐朽、疲劳伤损和残余变形。同时还会使轨距、水平、方向、高低等轨道几何形位发生变化。这些变化积累起来,如不及时消除,将加剧冲击 振动,严重的甚至会引起脱轨、颠覆事故。因此,必须做好轨道更新和维修,以恢复轨道各组成部件的性能,并保持轨道几何形位处于良好状态(见轨道养护)。 展望轨道现代化的基本目标是适应 铁路运输高速度、大运量的要求,保证列车运行的安全、平稳和舒适,延长各部件使用寿命,减少养护维修工作量,减少各种污染,完成给定的运输任务,取得最佳的综合技术经济效果。其主要内容有:铺设超重型高强度耐磨钢轨;使用高速道岔;发展无缝线路;采用弹性连接零件,改善轨枕、道床、路基面的工作条件;研究发展新型的轨下结构;轨道设备更新、修理和维修工作的机械化及现代化。轨道现代化的另一发展将是结构的根本改革,如有些国家正在试

中南大学软件体系结构设计模式实验二

中南大学软件体系结构设计模式实验二 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

实验3 设计模式实验二 实验学时: 4 每组人数: 1 实验类型: 3 (1:基础性 2:综合性 3:设计性 4:研究性) 实验要求: 1 (1:必修 2:选修 3:其它) 实验类别: 3 (1:基础 2:专业基础 3:专业 4:其它) 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的行为型设计模式,包括职责链模式、命令模式、观察者模式和策略模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。 二、实验内容 1. 某企业的SCM(Supply Chain Management,供应链管理)系统中包含一个采购审批子系统。该企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括10万元)的采购单,董事长可以审批10万元至50万元(不包括50万元)的采购单,50万元及以上的采购单就需要开董事会讨论决定。如下图所示: 试使用职责链模式设计并模拟实现该系统。 2. 房间中的开关是命令模式的一个实例,现用命令模式来模拟开关的功能,可控制对象包括电灯和电风扇,绘制相应的类图并编程模拟实现。 3. 某软件公司欲开发一个基于Windows平台的公告板系统。系统提供一个主菜单(Menu),在主菜单中包含了一些菜单项(MenuItem),可以通过Menu类的addMenuItem()方法增加菜单项。菜单项的主要方法是click(),每一个菜单项包含一个抽象命令类,具体命令类包括OpenCommand(打开命令),CreateCommand(新建命令),EditCommand(编辑命令)等,命令类具有一个execute()方法,用于调用公告板系统界面类(BoardScreen)的open()、create()、edit()等方法。现使用命令模式设计该系统,使得MenuItem类与BoardScreen类的耦合度降低,绘制类图并编程实现。 4. 某实时在线股票软件需要提供如下功能:当股票购买者所购买的某支股票价格变化幅度达到5%时,系统将自动发送通知(包括新价格)给购买该股票的所有股民。试使用观察者模式设计并实现该系统,要求绘制相应的类图并编程模拟实现。 5. 某公司欲开发一套机房监控系统,如果机房达到某一指定温度,温度传感器(Thermosensor)将自动传递信号给各种响应设备,例如警示灯(CautionLight)将闪烁(flicker())、报警器(Annunciator)将发出警报(alarm())、安全逃生门(SecurityDoor)将自动开启(open())、隔热门(InsulatedDoor)将自动关闭(close())

中南大学土木工程学院简介

学院简介 中南大学土木工程学院前身是1953年成立的中南土木建筑学院的铁道建筑系和桥梁隧道系。1960年成立长沙铁道学院以来,土木建筑学院几经更名,1964年铁道建筑系更名为铁道工程系,1970年铁道工程系和桥梁隧道系合并称工程系,1984年更名为土木工程系,1994年建筑工程专业(即工业与民用建筑专业)分出,成立建筑工程系,1997年土木工程系与建筑工程系合并成立土木建筑学院。中南大学成立后,2002年5月,以原长沙铁道学院土木建筑学院为主体、机电工程学院建筑环境与设备工程系、数理力学系基础力学教研室及实验室、原中南工业大学资源环境与建筑工程学院土木所及力学中心合并组建中南大学土木建筑学院。2005年,建筑环境与设备工程系调出,并入能源与动力工程学院。 学院领导 2010年院长由余志武教授担任,党委书记由黄建陵同志担任。 学科建设 学院经过50多年的建设,学院已发展成为师资力量雄厚、专业设置齐全、学科学位建设成绩卓著、科研水平一流、学术成果突出的教学与科研实体。 学院设有桥梁工程系、隧道工程系、道路与铁道工程系、建筑工程系、岩土工程系、工程管理系、力学系、建筑与城市规划系、工程制图教研室、工程测量教研室11个系(或教研室);拥有桥梁工程研究所、隧道工程研究所、道路与铁道工程研究所、城市轨道交通研究所、建筑工程研究所、工程管理研究所、城市设计研究所、防灾科学与安全技术研究所、工程力学研究所、土木工程材料研究所、岩土及地下工程研究中心、结构与市政工程研究中心13个研究所(或研究中心);拥有高速铁路建造与技术国家工程实验室,湖南省土木工程与安全重点实验室,设有土木工程中心实验室、力学教学实验中心、工程力学实验室、防灾减灾实验室、计算中心等10多个实验室,其中土木工程中心实验室是湖南省建筑企业一级实验室。 重点学科 学院拥有土木工程国家一级重点学科,是我国拥有土木工程国家一级重点学科的六所院校之一(其余五所分别为:清华大学,同济大学,浙江大学,哈尔滨工业大学,湖南大学),土木工程一级学科拥有博士学位授权点,是全国13所具有一级学科博士授权的土木类院校之一。学院2010年设在有桥梁与隧道工程、道路与铁道工程、结构工程、岩土工程、市政工程、供热供燃气通风、防灾减灾及防护工程、消防工程、城市轨道交通工程、工程力学、土木工程规划与管理、土木工程材料12个博士点;桥梁与隧道工程、道路与铁道工程、结构工程、岩土工程、市政工程、供热供燃气通风及空调工程、防灾减灾及防护工程、消防工程、城市轨道交通工程、土木工程规划与管理、土木工程材料、固体力学、工程力学、建筑技术科学、建筑设计及其理论、城市规划与设计16个硕士点以及建筑土木与工程领域硕士学位授予权、高

中南大学 软件体系结构重点

需求工程 所有与需求直接相关的活动通称为需求工程。包括需求开发和需求管理。需求开发包括需求的调查,分析和定义,需求管理包括需求的确认、跟踪以及变更控制 C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。 C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络 c/s优点:1、具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受 2、对于硬件和软件的变化有极大的适应性和灵活性,而且易于对系统进行扩充和缩小。 3、将大的应用处理任务分布到许多通过网络连接的低成本计算机上,节约大量费用缺点 缺点: 开发成本较高 客户端程序设计复杂 信息内容和形式单一 用户界面风格不一,使用繁杂,不利于推广使用 软件移植困难 软件维护和升级困难 新技术不能轻易应用 b/s优点:1、实现了零客户端,易于服务升级2、提供了异种机、异种网、异种应用服务器的联机、联网、统一服务的最现实的开放性基础。b/s缺点: B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数 据库处理功能。 系统扩展能力差,安全性难以控制。 在数据查询等响应速度上,远远低于C/S体系结构。 数据的动态交互性不强,不利于在线事务处理(OLTP)应用。适配器模式(Adapter Pattern) :将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作 优点: 1、将目标类和适配者类解耦 2、增加了类的透明性和复用性 3、灵活性和扩展性都非常好

4、类适配器:可以在适配器类中置换一些适配者的方法,使得适配器的灵活性更强。 5、对象适配器:同一个适配器可以把适配者类和它的子类都适配到目标接口。 缺点: 类适配器:不支持多继承的语言,一次最多只能适配一个适配者类,而且目标抽象类只能为抽象类,不能为具体类,其使用有一定的局限性 对象适配器:要想置换适配者类的方法就不容易 适用: 系统需要使用现有的类,而这些类的接口不符合系统的需要。 想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类一起工作 桥接模式(Bridge Pattern):将抽象部分与它的实现部分分离,使它们都可以独立地变化 优点: ? 分离抽象接口及其实现部分。 ? 桥接模式有时类似于多继承方案,但是多继承方案违背了类的单 一职责原则(即一个类只有一个变化的原因),复用性比较差, 而且多继承结构中类的个数非常庞大,桥接模式是比多继承方案 更好的解决方法。 ? 桥接模式提高了系统的可扩充性,在两个变化维度中任意扩展一 个维度,都不需要修改原有系统。 ? 实现细节对客户透明,可以对用户隐藏实现细节。 缺点: 1、增加系统的理解与设计难度,由于聚合关联关系建立在抽象层,要求开发者针对抽象进行设计与编程。 2、要求正确识别出系统中两个独立变化的维度,因此其使用范围具有一定的局限性 适用: 一个类存在两个独立变化的维度,且这两个维度都需要进行扩展 不希望使用继承或因为多层次继承导致系统类的个数急剧增加的系统 一个系统需要在构件的抽象化角色和具体化角色之间增加更多的灵活性,避免在两个层次之间建立静态的继承联系 装饰模式(Decorator Pattern) :动态地给一个对象增加一些额外的职责(Responsibility)

UML学习个人总结——ROSE使用

Rational Rose使用 一、几种UML工具汇总。 目前市场上UML工具比较多,我们将列出比较有影响力的UML工具。 ◆Rational Rose: 如果不提及由Rational软件公司开发的Rational Rose建模工具,那就无需考虑UML工具的完整性。Rational Rose(Rose代表“Rational Object-oriented Software Engineering”)对UML来说,是一款可视化的建模工具。它有不同的版本来满足不同的需求。 Rational Rose提供上面我们谈到所有的特征。除此之外,Rational Rose也可以支持在同样的环境下进行数据模型的设计。Rational Rose更有趣的特征就是能够将UML中的图作为网页和图片发布。这就使得你能够在不安装Rational Rose的情况下分享你的应用设计。 ◆Together Control Center:由美国的Borland 公司开发的Together Control Center(源于Togethersoft)是一款可视化的UML建模工具。Together Control Center支持UML图、MVC 建模、正向工程技术和自动更新工程技术,以及双向工程技术,并且可以集成到比如IBM WebSphere Studio的集成开发环境。它不但支持文档编制,并且可以支持协作建模环境。Together Control Center的另一个特征是pattern repository。pattern repository使得经常使用的图和设计形式能够在建模中重新使用。它还支持Rational软件统一开发过程和极限编程方法等。 ◆Poseidon:源于Gentleware的Poseidon在ArgoUML开源软件中有其坚固的根基。作为开源的ArgoUML建模工具是一款实用的工具,包含全部UML特征的并且可以免费获得。Gentleware已经采取措施使得ArgoUML成为一款很好的建模工具。使用Poseidon不同的格调来满足不同的需求。 Poseidon通过使用单一用途的插件来支持正向技术和自动更新技术以及文档编制。Gentleware并没有忘记它的开源的特性,因此,为个人软件开发者免费提供UML Community Edition 1.5的Poseidon。 二、Rational Rose工具介绍与使用。 Rational Rose 是一种面向对象的统一建模语言软件设计工具,用于可视化建模和公司级水平软件应用的组件构造。就像一个戏剧导演设计一个剧本一样,一个软件设计师使用Rational Rose,以演员(数字)、使用拖放式符号的程序表中的有用的案例元素(椭圆)、目标(矩形)和消息/关系(箭头)设计个种类,来创造(模型)一个应用的框架。当程序表被创建时,Rational Rose记录下这个程序表然后以设计师选择的C++, Visual Basic, Java, Oracle8, CORBA或者数据定义语言(Data Definition Language)来产生代码。Rational Rose 的两个受欢迎的特征是它的提供反复式发展和来回旅程工程的能力。Rational Rose允许设计师利用反复发展(有时也叫进化式发展),因为在各个进程中新的应用能够被创建,通过把一个反复的输出变成下一个反复的输入。(这和瀑布式发展形成对比,在瀑布式发展中,在一个用户开始尝试之前整个工程被从头到尾的完成。)然后,当开发者开始理解组件之间是如何相互作用和在设计中进行调整时,Rational Rose能够通过回溯和更新模型的其余部分来保证代码的一致性,从而展现出被称为"来回旅程工程"的能力.Rational Rose是可扩展的,可以使用刻下载附加项和第三方应用软件.它支持COM/DCOM (ActiveX), JavaBeans, 和Corba组件标准. Rational Rose界面图:

软件体系结构实验二

南京邮电大学 《软件体系结构》实验报告 实验题目软件体系结构风格之应用 姓名xxx 学号xxx 院系计算机、软件学院 指导老师周国强 2013年12月18日

一、实验目的和要求 实验目的: 通过KWIC实例分析,理解和掌握软件体系结构风格设计与实现。 实验要求: 熟练掌握基于主/子程序体系结构风格的KWIC关键词索引系统,在此基础上,完成基于面向对象体系架构风格的KWIC关键词索引系统设计与实现。选做基于管道过滤体系架构风格的KWIC关键词索引系统;选做基于事件过程调用体系架构风格的KWIC关键词索引系统。 实验课前完成实验报告的实验目的、实验环境、实验内容、实验操作过程等内容;实验课中独立/团队操作完成实验报告的实验操作、实验结果及结论等内容;每人一台PC机,所需软件Win2003/XP、UML工具(EclipseUML/ Rose/Visio/StartUML/)、Eclipse/MyEclipse、JDK6.0等。实验课后完成实验报告的心得体会内容,并及时提交实验报告。 二、实验课时:2 三、实验内容及操作步骤 多种软件风格设计与实现之KWIC实例: 1.采用主/子程序体系结构风格实现KWIC关键词索引系统 public static void input(String inputFile){ fr=null; try { fr=new (inputFile);

} catch ( e) { // TODO Auto-generated catch block e.printStackTrace(); } BufferedReader br=new BufferedReader(fr); textLines=new ArrayList(); try { while(br.ready()){ textLines.add(br.readLine()); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void circularShift(){ shiftedLineIndexes=new ArrayList(); for(int i=0;i1){ if(j==sarray.length-1){ for(int k=0;k<(sarray.length-1);k++){ newLine=newLine+" "+sarray[k]; } } else{ for(int k=j+1;k

UML学习心得耿庆博

UML学习心得 (一) UML(Unified Modeling Language,统一建模语言)是一组用于描述OOAD过程的图形化表达方式。 UML为交流面向对象的设计中的需求,行为、体系结构的实现提供了一套综合的表示法。(二) UML由9个不同类型的图组成: 用例图:显示了系统的外部可视行为。 用例图描述了系统外的人员和系统的交互动作,以及系统的响应,该类型的图可以用于描述系统的功能需求。 活动图:显示系统行为的峡谷纳西描述。 活动图描述了单个功能需求内部的细节行为,包括基本的场景和一些可选的场景。 组件图:显示了系统的体系结构。 组件图描述了系统的可部署单元(可执行文件,组件,数据存储和其他一些内容)以及一些借口,可部署单元通过这些接口进行交互,该图可以用于研究系统的体系结构。 顺序图:显示了对象随着时间的交互。 顺序图描述了某个功能需求的路径或场景内相对时间的详细行为,该图可用于理解系统元素之间的消息流程。 协作图:显示了对象的交互,强调对象之间的关系。(在UML2.0里面找不到了) 类图:显示了类的定义和关系。 类图描述了系统设计中的类和接口,以及他们之间的关系。该图可用于定义内部的,面向对象的代码结构。 状态图:显示了响应时间的状态改变。 状态图描述了系统如何改变状态以相应内部的和外部的事件,确保每个事件都被适当的处理。 部署图:显示了系统的物理体系结构。 部署图描述了系统的可部署单元(应用,组件,数据存储等)如何被赋予不同的节点,这些节点如何交互通信,用于系统映射和负载的研究。 包图:显示了设计的层次结构。 包图描述了设计的相关元素如何按组结合在一起,以及他们之间的关系。 (三) 各种图的作用 1.用例图(UseCaseDiagram) 它是UML中最简单也是最复杂的一种图。说它简单是因为它采用了面向对象的思想,又是基于用户视角的,绘制非常容易,简单的图形表示让人一看就懂。说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。用例图表示了角色和用例以及它们之间的关系。 2.类图(ClassDiagram) UML面向对象中是最常用的一种图,类图可以帮助我们更直观的了解一个系统的体系结构。通过关系和类表示的类图,可以图形化的方式描述一个系统的设计部分。

uml实验指导书rose实验完成

目录 实验一用例图及进度安排 (2) 实验二活动图 (7) 实验三状态图 (15) 实验四类 (27) 实验五类的关系 (37) 实验六、七交互图 (43) 实验八、九对象图和包 (53) 实验十、十一组件图和部署图 (55) 实验十二正向工程 (62)

实验一用例图及进度安排 一、实验目的 1.熟悉用例图的基本功能和使用方法。 2.掌握如何使用建模工具绘制活动图方法。 3.学习使用Microsoft Project对题目进行进度安排。 二、实验器材 1.计算机一台。 2.Rational Rose 工具软件。 三、实验内容 根据图书管理系统开发要求,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。要求:对其中主要功能的用例书写书面用例。 四、实验步骤 书写“删除读者信息”用例的书面用例。一般应包含以下信息: (1)管理员在录入界面,输入待删除的读者名; (2)“业务逻辑”组件在数据库中,查找待删除的读者名; (3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续; (4)“业务逻辑”组件判断“待删除的读者”是否可以删除; (5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续; (6)在数据库中,删除相关信息; (7)显示删除成功信息; (8)结束。 分析: 在图书管理系统中,管理员首先登录系统,系统验证通过后,管理方可向系统查询数据,在查询后,系统会给出提示,有没有找到相关的数据,管理员根据系统查询的返回结果,进行下一步的操作,就是删除读者,在删除的过程中,系统会对查询得到的结果判断该记录是否可以删除,若可以删除,则给删除提示,若不能删除,也给相关的提示信息。 绘图步骤: (1)在用例图上双击main,出现如图1.1所示,为绘制用例图做好准备。

软件设计与体系结构实验报告

福建农林大学计算机与信息学院 实验报告 课程名称:软件设计与体系结构 姓名:陈宇翔 系:软件工程系 专业:软件工程 年级:2007 学号:070481024 指导教师:王李进 职称:讲师 2009年12月16日

实验项目列表

福建农林大学计算机与信息学院实验报告 学院:计算机与信息学院专业:软件工程系年级:2007 姓名:陈宇翔 学号:070481024 课程名称:软件设计与体系结构实验时间:2009-10-28 实验室田实验室312、313计算机号024 指导教师签字:成绩: 实验1:ACME软件体系结构描述语言应用 一、实验目的 1)掌握软件体系结构描述的概念 2)掌握应用ACMESTUDIO工具描述软件体系结构的基本操作 二、实验学时 2学时。 三、实验方法 由老师提供软件体系结构图形样板供学生参考,学生在样板的指导下修改图形,在老师的指导下进行软件体系结构描述。 四、实验环境 计算机及ACMESTUDIO。 五、实验内容 利用ACME语言定义软件体系结构风格,修改ACME代码,并进行风格测试。 六、实验操作步骤 一、导入Zip文档 建立的一个Acme Project,并且命名为AcmeLab2。如下图:

接着导入ZIP文档,导入完ZIP文档后显示的如下图: 二、修改风格 在AcmeLab2项目中,打开families下的TieredFam.acme.如下图: 修改组件外观 1. 在组件类型中,双击DataNodeT; 在其右边的编辑器中,将产生预览;选择Modify 按钮,将打开外观编辑器对话框。 2. 首先改变图形:找到Basic shape section,在Stock image dropdown menu中选 择Repository类型. 3. 在Color/Line Properties section修改填充颜色为深蓝色。 4. 在颜色对话框中选择深蓝色,并单击 [OK]. 5. 修改图形的边框颜色为绿色 7. 单击Label tab,在Font Settings section, 设置字体颜色为白色,单击[OK] 产生的图形如下图:

相关文档
最新文档