《系统架构设计师教程(第2版)》第13章-层次式架构设计理论与实践-07-层次式架构案例分析

1. PetShop

1.1 概述

  • 概念
    • 微软用来展示.Net企业系统开发能力的一个范例项目
    • 基于ASP.NET 开发
    • 是一个B/S系统

在这里插入图片描述

1.2 PetShop的发展

1.2.1 PetShop 2.0

  • 没有采用标准的三层式结构
    在这里插入图片描述
  • 特点:没有数据访问层设计
    • 优势:提高了数据访问(随着硬件系统性能的提高,该优势消失)
    • 缺陷:业务逻辑层与数据访问职责混乱,一旦所支持数据库发生变化,或者需要修改数据访问的逻辑,则会导致项目做大的修改。

1.2.2 PetShop 3.0

  • 特点:
  • 纠正了层次不明的问题,将数据访问层独立出来。

在这里插入图片描述

1.2.3 PetShop 4.0

  • 特点:
    • 在3.0的基础上,引入了缓存和异步处理机制
    • 充分利用了ASP.Net 2.0的新功能 MemberShip

    ASP.NET 2.0中的新功能Membership主要用于管理网站的用户身份验证和权限

在这里插入图片描述

1.3 数据访问层结构

3.0和4.0的数据访问层核心一致

在这里插入图片描述

  • IDAL
    • 概念:
      • Interface Data Access Layer
      • 抽象出数据访问逻辑
    • 实现:
      • SQL Server DAL :访问Sql Server 数据库
      • Oracle DAL
    • 意义:
      • 完全采用了“面向接口编程”思想
      • 抽象出来的IDAL模块脱离了与具体数据库的依赖,有利于数据库迁移
      • 和业务层解耦
  • DAL Factory:
    • 概念:数据访问层的对象的工厂模块
    • 作用:管理 DAL对象的创建,业务逻辑层访问
  • Model 模块:包含了数据实体对象

1.4 业务逻辑层结构

教材原文都是层结构的老生常谈,这里不再赘述
在这里插入图片描述

  • 异步处理机制:插入订单的策略可以分为同步和异步
  • IBLL Strategy模块
    • 概念:
      • IBLL:Interface Business Logic Layer
      • “业务逻辑接口策略”模块
    • 解决的问题:插入订单接口是相同的,但是插入订单确有异步同步两种策略。
  • BLL模块
    • 所有的业务逻辑都放在里边
    • 具体实现和抽象没有严格分开,导致表示层和业务逻辑层的耦合度较高

2. 基于物联网架构的电子小票服务系统

2.1 电子小票物联网架构

符合3层物联网体系架构模型

在这里插入图片描述

2.2.1 感知层

小票智能硬件能够取代传统的小票打印机,在不改变商家原有收银系统的前提下,采集收银机待打印的购物小票信息,通过WiFi/GPRS传输将其存储到电子小票云平台。

2.2.2 网络层

  • 作用:
    • 支持感知层电子小票信息的传输、处理、存储
    • 为顾客和线下商家的应用提供服务支撑
  • 具体功能:
    • 数据传输与处理
    • 数据存储
    • 智能硬件设备管理、商家管理、会员管理和商品管理等

2.2.3 应用层

  • 作用:是电子小票服务系统与顾客、商家的接口
  • 具体功能:
    • 云平台小票服务:

      基于微信公众平台向顾客提供电子小票实时推送、历史小票查询和会员积分查询等服务

    • 云平台数据服务:

      向线下零售商家提供可视化经营数据管理、用户精准推荐和区域畅销品排名等服务

2.2 电子小票服务系统架构

2.2.1 构成:

  • 小票智能硬件
    • STM32 控制器

    • TFTLCD屏

      薄膜晶体管液晶显示屏 (Thin Film Transistor Liquid Crystal Display)

    • 字模存储Flash

    • 无线模块

  • 商家收银机
  • 电子小票云平台
  • 微信公众平台
  • 消费者智能手机
  • 商家P C终端

2.2.2 过程

  • 商家收银机安装小票智能硬件的驱动程序,将其当做一台打印机
  • 小票智能硬件接收待打印的购物小票数据和打印命令
  • 经过数据完整性判断后通过串行外设接口总线,读取数据的字模信息

串行外设接口(SPI):Serial Peripheral Interface

  • 用通用输入/输出接口 将数据在 TFTLCD屏中显示

通用输入/输出(GPIO):General Purpose Input /Output

  • 同时将购物小票数据通过无线模块 (Wi-Fi或GPRS) 上传至电子小票云平台
  • 通过微信公众平台将电子小票实时推送到消费者微信应用中

在这里插入图片描述


在这里插入图片描述

  • 17
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玄德公笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值