实验目的

(1) 理解组件图的基本概念;
(2) 理解部署图的基本概念;
(3) 理解包图的基本概念;
(4) 掌握在Rational Rose中绘制组件图、部署图和包图的操作方法。

实验内容

一、将上个实验的网上书店_领域建模.mdl备份一份,将其中另一份名命名为网上书店_分析建模.mdl,绘制分析阶段类图,并理解(类的职责分析-确定类的属性和操作)。

分析阶段类图:
  • Admin:
    Admin
  • Comment:
    Comment
  • Member:
    Member
  • Payment:
    Payment
  • Category:
    Category
  • Book:
    Book
  • Cart:
    Cart
  • CartItem:
    CartItem
  • Order:
    Order

二、将上一步的网上书店_分析建模.mdl备份一份,将其中另一份名命名为网上书店_设计建模.mdl,绘制设计阶段类图,并理解。

  • 使用UML建模是一个模型不断修改和完善的渐进过程。在领域模型和分析模型中的类图,经过多次分析设计,会逐步引入一些新的类,例如可通过交互模型(例如上个实验的会员添加图书到购物车顺序图)引入边界类和控制类或发现新的实体类,而在设计模型类图中可以将一个分析类映射为一个设计类或多个设计类的组合等。
  • 网上书店拟采用Java语言开发,作为提示和引导,本实验仅给出了购物车和购物记录的相关设计类。分析模型中的Cart和CartItem类各自保留了分析模型中的属性,此外还包含了类的构造方法和这些属性的设置与访问方法。而分析模型中Cart类和CartItem类的操作在设计模型中则对应了一组设计类:控制类CartAction、购物车服务接口CartService及实现类CartServiceImpl,并且分析模型中Cart类的操作addCart( )和updateCart( )中具有数据存储和更新功能的部分对应了设计模型中的接口CartService和实现类CartServiceImpl中的saveOrUpdateCartItem(cart:Cart)方法。CartItem中也有类似设计变化。
  • 分析模型中的其它类在设计模型中也有类似Cart和CartItem的变化。
  • Cart:
    Cart
  • CartService:
    CartService
  • CartAction:
    CartAction
  • CartServiceImpl:
    CartServiceImpl
  • CartItem:
    CartItem

说明:图中中间的两个类Cart和CartItem是分析阶段的类图,这里显示出来是为便于比较和理解;购物车控制类CartAction操作栏中只列出了部分操作,其余未列出了是其属性的访问和设置方法,例如setBookId( )、get BookId( )等。

三、系统静态建模–包图
注:深蓝色的字为说明

  • 包图:
    包图

四、系统的配置与实现–组件图
以Domain包为例,其中有Member-Cart-CartItem-Order-Book-Category-Comment-Admin类,其组件图如下(其它包中的组件类似):

  • 组件图:
    组件图

五、系统的配置与实现–部署图

  • 部署图主要用来说明系统的软件和硬件是如何分布的。在网上书店系统中,显然需要一台应用服务器保存和运行整个Web应用程序,同时需要一台数据库服务器进行数据管理。此外,还有很多客户端通过互联网与应用服务器相连,这样作为顾客用户的会员和访客可以通过网络访问应用服务器获取相应的服务。管理员客户端也可以通过互联网或局域网与应用服务器连接进行业务管理。应用服务器还可以与打印机或扫描仪等设备相连。
  • 部署图:
    部署图

网上书店_领域建模.mdl、网上书店_分析建模.mdl、网上书店_设计建模.mdl 的文件:
链接:https://pan.baidu.com/s/1G4LfCpFSJa2gXiRoMLsT4A
提取码:2nhd

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐