移动电影售票系统案例分析

智能手机及移动互联网的普及,手机购票成为网络购物常见的应用形式之一。本项目名称为:本项目名称为:XX 票务(可以是电影票、演出票…)销售系统,系统目标是实现在线票务发布,销售,验票等一站式票务服务,要求支持手机在线购票验票功能。

用例图

运用StarUML/EA(Enterprise Architect ),完成不少于5个用例的用例图,并为每个用例添加用例描述.

第一步:给系统取个名称:移动电影售票系统。
第二步:确定 移动电影售票系统的参与者,包括:潜在会员,会员,商户
第三步:分别确定不同参与者的用例,并用老板测试、基本业务流程测试、规模测试判断用例是否有效。最后画出用例图详:


移动电影售票系统案例分析_第1张图片
这里写图片描述

第四步:用例描述。根据用例描述的原则:1、找到用例的参与者 2、总原则:各个参与者平衡,来进行用例描述:
UC001:注册会员
用例名: 注册会员 用例编号 UC001
参与者 潜在会员
用例描述 潜在会员注册成为会员。
前置条件 潜在会员访问系统
后置条件 系统记录注册会员信息,等待审核开放账户
基本流程 1. 潜在会员请求注册。

  1. 系统显示注册界面。
  2. 潜在会员提供注册会员信息。
  3. 系统检查信息是否完整。
  4. 系统保存会员信息。
  5. 系统显示“注册成功,等待审核开放账户”信息。
    替代流程 4a. 潜在会员提供的信息不正确。
    4a1. 系统提示输入正确信息
    企业规则 1. 会员信息包括:姓名、身份证号、电话、传真、Email,以及若干个联系
    地址。
  6. 一个会员可以有多个联系地址,其中一个为首选联系地址。联系地址包含以下信息:
    州、城市、街道、邮编。
  7. 会员订单的送货地址可以从会员联系地址中获取。
    议题与其他

UC002:查询电影票
用例名: 查询电影票 用例编号 UC002
参与者 潜在会员,会员
用例描述 参与者根据电影的名称、导演、以及演员,检索出所需电影的详细信息和
价格。
前置条件 参与者访问系统
后置条件 参与者查询到所需的电影
基本流程 1. 参与者请求查询电影

  1. 参与者提交电影的名称、导演、以及演员等查询条件
  2. 系统按查询条件查询电影信息和价格信息
  3. 系统显示查询到电影详细信息
  4. 参与者选中某个电影
  5. 系统显示该电影的详细信息
    替代流程 3a. 系统没有检索到所需电影
    3a1. 系统显示“没有找到适合条件的电影”
    企业规则 1. 电影详细信息包括:名称、导演、演员以及类别
  6. 支持模糊查询
    议题与其他 1. 查询条件有待进步明确

UC003:预订电影票
用例名: 预定电影票 用例编号 UC003
参与者 会员
用例描述 会员预定一部或多部电影
前置条件 会员已经登录
后置条件 预定的电影票生成订单
基本流程 1. 会员查询电影

  1. 会员选择预定的电影,输入预定数量
  2. 系统显示会员订单列表
  3. 会员输入预定数量,选择以下动作:
    添加到新订单
    添加到已有订单
  4. 系统显示当前订单
    替代流程 3a. 系统没有检索到所需电影
    3a1. 系统显示“没有找到适合条件的电影”
    企业规则 a. 会员将所选购电影添加到新订单
    4a1. 会员输入手机号码
    4a2. 系统生成新订单,并加入新的订单项
    4b. 会员将所选购电影添加到已有订单
    4b1. 会员选中订单,添加订单项
    4b2. 系统添加订单项
    议题与其他

UC004:支付货款
用例名: 支付货款 用例编号 UC004
参与者 会员
用例描述 支付订单的货款,完成一次与电影院的交易
前置条件 订单已生成
后置条件 生成发货信息,并通知发货
基本流程 1. 会员请求结账

  1. 系统检查账户是否处于打开状态
  2. 系统检查剩余座位是否满足
  3. 系统检查会员提交的信息是否充分
  4. 系统合计订单总价
  5. 系统显示收费明细
  6. 会员确认
  7. 系统保存订单信息,通知发货,减少相应座位数量。
    替代流程 2a. 账户未打开
    2a1.系统显示“账户未打开,不能结账”信息
    3a. 剩余座位不能满足
    3a1. 系统显示座位不足的订单项
    3a2. 会员修改订单项数量
    4a. 会员提交信息不充分
    4a1. 系统告知会员需要补充的信息
    4a2.管理订单
    7a. 会员修改订单
    7a1.管理订单
    企业规则 订单总价=所有订单项价钱合计+服务费
    议题与其他

UC005 评价留言
用例名: 评价留言 用例编号 UC005
参与者 会员
用例描述 会员预定电影后,对预定的电影进行评价留言
前置条件 订单状态为会员已观看电影
后置条件 生成评价留言信息
基本流程 1. 会员请求评价留言

  1. 会员选择已观看的电影
  2. 会员输入评价信息内容
  3. 系统保存评价信息
    替代流程 3a.会员输入的评价信息不完整
    3a1.系统提示会员输入完整的评价信息
    企业规则 1. 评价信息包括:等级,评价内容
  4. 评价是对订单明细中的电影进行评价
    议题与其他 1. 等级如何划分

UC006 发布票务信息
用例名: 发布票务信息 用例编号 UC006
参与者 商户
用例描述 商户发布待销售的电影信息
前置条件 商户已登录
后置条件 系统保存电影信息
基本流程 1. 商户请求发布电影信息

  1. 系统显示发布电影信息界面
  2. 商户输入电影信息
  3. 系统检查输入的电影信息
  4. 系统保存电影信息
    替代流程 3a.商户输入电影信息不完整
    3a1.系统提示商户输入完整的电影信息
    企业规则 1. 电影信息包括:名称、导演、演员、类别、观影时间、价格、座位量
  5. 已存在的电影信息不需要重新输入,但商户可以更改座位量、价格等信

    议题与其他

域模型类图

运用关键抽象技术完成系统候选关键抽象表格

  • 找到现实世界对象
    • 重用现有的模型
    • 关键抽象 找名称 对名称根据 问题域(筛选条件: 不单纯的名词/冗余/没关联/不含有多个属性/没有多个实例) 进行筛选为 域模型
移动电影售票系统案例分析_第2张图片
这里写图片描述

定义并画出系统相关的类,确定类之间的关联或组合关系。

关联关系:实例间的关系
为类添加属性,添加属性需要考察系统的用例描述,以保证属性能够实现用例的目标。


移动电影售票系统案例分析_第3张图片
这里写图片描述

顺序图

为每个用例的画出系统鲁棒图(BCE模式)的顺序图。

  • 系统顺序图:引导从用例过渡到系统的功能

  • BCE模式顺序图: 鲁棒性分析方法( 边界对象 控制对象 实体对象 )

  • UC001:注册会员


    移动电影售票系统案例分析_第4张图片
    这里写图片描述

    UC002:查询手机


    移动电影售票系统案例分析_第5张图片
    这里写图片描述

    UC003: 预定电影票
    移动电影售票系统案例分析_第6张图片
    这里写图片描述

用例之间的关系

//(次要)4. 建立用例之间的关系,并修改用例描述
// 包含/扩展

移动电影售票系统案例分析_第7张图片
这里写图片描述

设计类图

关系属性,方法 依赖关系(单向) 继承 实现 设计模式/设计原则 体现域模型 基于BCE模型 依赖终止于接口,不能依赖于具体类


移动电影售票系统案例分析_第8张图片
这里写图片描述

面向对象

什么是面向对象的分析?

面向对象的分析(Object Oriented Analysis,OOA)强调的是在问题域内发现和描述对象(或概念)。如,在图书馆信息系统中,包含书籍、书库、借阅者等概念。

什么是面向对象的设计?

面向对象的设计( Object Oriented Design ,OOD)强调的是定义软件对象以它们是如何协作以实现需求。在图书馆信息系统中,“书”这个软件对象,可以有“title”属性和“getChapter”方法。

什么是面向对象设计原则?

  • LSP:Liskov替换原则
    The Liskov Substitution Principle
  • OCP:开放-封闭原则
    The Open-Close Principle
  • SRP:单一职责原则
    The Single Responsibility Principle
  • ISP:接口隔离原则
    The Interface Segregation Principle
  • DIP:依赖倒置原则
    The Dependency Inversion Principle

面向对象设计原则有什么意义?

  • 是指导面向对象设计的基本指导思想
  • 是评价面向对象设计的价值观体系
  • 是设计模式的出发点和归宿

设计质量:好的设计 坏的设计

什么是好的设计?

  • 容易理解
  • 容易修改和扩展
  • 容易复用
  • 容易实现与应用
  • 简单、紧凑、经济适用

什么是坏的设计?

  • 僵化性(Rigidity):刚性,难以修改,牵一发而动全身
  • 脆弱性(Fragility):易碎,牵一发而肝胆俱裂
  • 牢固性(Immobility):无法分解成可移植的组件
  • 粘滞性(Viscosity),修改设计代价高昂
  • 不必要的复杂性(Needless Complexity),预测需求,处理潜在变化代码
  • 不必要的重复( Needless Repetition )
  • 晦涩性(Opacity):不透明,很难看清设计者的真实意图

设计模式

  • Creational Patterns (创建型)
    involve object instantiation and all provide a way to decouple a
    client from the objects it needs to instantiate.
  • 工厂模式(Factory)
  • 单实例类模式(Singleton)
  • Structural Patterns (结构型)
    let you compose classes or objects into larger structures.
  • 适配器模式(Adapter)
  • 组合模式(Composite)
  • 外观模式(Facade)
  • Behavioral Patterns (行为型)
    concerned with how classes and objects interact and distribute
    responsibility.
  • 策略模式(Strategy)
  • 观察者模式(Observer)


    移动电影售票系统案例分析_第9张图片
    这里写图片描述

你可能感兴趣的:(移动电影售票系统案例分析)