欢迎来到天天文库
浏览记录
ID:38687346
大小:1.66 MB
页数:48页
时间:2019-06-17
《软件设计与体系结构实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验1:ACME软件体系结构描述语言应用一、实验目的1)掌握软件体系结构描述的概念2)掌握应用ACMESTUDIO工具描述软件体系结构的基本操作二、实验学时2学时。三、实验环境计算机及ACMESTUDIO。四、实验内容利用ACME语言定义软件体系结构风格,修改ACME代码,并进行风格测试。五、实验操作步骤一、导入Zip文档建立的一个AcmeProject,并且命名为AcmeLab2。如下图:接着导入ZIP文档,导入完ZIP文档后显示的如下图:二、修改风格在AcmeLab2项目中,打开families下的TieredFam.acme.
2、如下图:修改组件外观1.在组件类型中,双击DataNodeT;在其右边的编辑器中,将产生预览;选择Modify按钮,将打开外观编辑器对话框。2.首先改变图形:找到Basicshapesection,在Stockimagedropdownmenu中选择Repository类型.3.在Color/LinePropertiessection修改填充颜色为深蓝色。4.在颜色对话框中选择深蓝色,并单击[OK].5.修改图形的边框颜色为绿色7.单击Labeltab,在FontSettingssection,设置字体颜色为白色,单击[OK]产生的
3、图形如下图:添加新元素类型1.在ComponentTypessection选择New按钮2.在对话框中,类型名称输入LogicNodeT.3.选择TierNodeT为父类型.4.单击[Finish].5.按照修改外观的步骤,修改LogicNodeT的外观:填充颜色为浅绿色,边框颜色为黑色,大小为2,其他默认。产生的图形如下图:添加新属性类型1.选择PropertyTypes2.选择New按钮3.在对话框中,类型名称为TierPropT4.类型选择enum5.值为:client,logic,data6.单击[OK].添加属性1.激活属
4、性视图页2.双击TierNodeT3.选择Propertiestab4.右击空白位置,或者单击图标,选择新建属性5.属性名为tier.6.类型为TierPropT(找不到,则直接输入TieredFam.TierPropT)7.单击[OK].添加规则1.单击Familyeditor中的TieredFam(Presstoselect).2.选择属性视图中的规则页3.单击生成新规则4.规则名为hostCheck,选择invariant单选项5.在规则框中输入(直接粘贴过去)Forallt1:TierNodeTinself.Componen
5、ts
6、!t1.allowShareHost->(Forallt2:TierNodeTinself.Components
7、t1!=t2->t1.host!=t2.host)6.单击[ParseRule]以确认无语法错误,有错误,要重新写。7.在标签中输入“Tiernodesrespecthostassignment.”8.在出错标签中输入“Twonodesthatcannotshareahostmustnotresideonthesamehost.”9.单击[OK]。若前面有语法错误,按钮是灰色的10.保存.Acme代码编辑1.查看编
8、辑器底端的区域,有3个区:Overview,AcmeSourceandFamily–TieredFam.选择Source2.在代码中找到TierNodeT3.复制其中的属性内容4.定位至ClientNodeT,粘贴刚才复制的内容5.把tier属性的值赋值为client.ComponentTypeClientNodeTextendsTierNodeTwith{Propertytier:TierPropT=client;}6.同样把复制的内容粘贴在LogicNodeT和DataNodeT中,前者的tier值为logic,后者的tier值
9、为data.7.单击TieredFameditortab,若有错,将指出错误添加可视变量1.编辑LogicNodeT组件的外观2.选择Variantstab.3.单击[New…]创建新的变量4.名为:Notlogictier.5.选择基于条件的单选按钮6.下拉菜单选择allowSharedHost,条件选择==,值输入false7.设置填充颜色为深绿色8.单击[OK]测试风格1.在Navigator的AcmeLab2中,单击右键,在弹出式菜单中选择NewAcmeSystem.2.系统名为TestSystem.4.单击[Next].5
10、.在风格类型中,选择的内容如下图所示。6.单击[Finish]Noticethepaletteoftypesontheleftfromwhichyoucandraganddropanelementtocreateaninstance.
此文档下载收益归作者所有