专栏首页一枝花算不算浪漫的专栏电商设计V1(一):软件工程设计

电商设计V1(一):软件工程设计

软件工程设计的方式方法

多视图法:

  • 全面分析软件方方面面的问题
  • 尽早地发现和排除项目风险与不确定因素
  • 从不同角度去展现要设计的软件系统
  • 为项目进行不同的干系人提供指导:
  1. 逻辑架构描述系统功能,并指导系统测试
  2. 开发架构规范软甲你的层次及代码风格
  3. 数据架构指导数据库设计
  4. 运行架构指导数据库的设计
  5. 物理架构明确软件如何部署与实施

概要设计:

  • 逻辑架构图:根据需求,画出逻辑架构图,系统要长成什么样子
  • 运行架构图:时序图、活动图、状态图
  • 物理架构图:组件图、配置图

五视图设计步骤

观念

设计步骤

观念一

顺序进行:逻辑架构、开发架构、数据架构、运行架构、物理架构

观念二

5个视图是穿插进行设计

逻辑架构

逻辑架构的重点是考虑软件功能性需求

开发架构

开发架构重点关注的是开发编码实现方面的问题

数据架构

数据架构不仅仅要考虑开发中涉及到的数据库,实体模型,也要考虑物理架构中数据存储的设计

运行架构

运行架构关注的不再是全局而是局部,着重关注那些关键点与难点,常常需要技术攻关与预研。主要考虑控制流、通讯机制、资源争用、锁机制、同步已发、并发、串行,同时也要考虑质量属性。

物理架构

物理架构主要考虑硬件选择和拓扑结构,软件到硬件的映射,软硬件的互相影响

软件工程常见图形

  1. 功能结构图模型
  1. 用例图模型
  1. 用例事件的泳道图模型
  1. 领域类图模型 领域类图,一般就是从系统的调用和流转,使用的核心数据类 订单类,就是一个典型的领域类。这边可以将一个较为复杂的领域类图拆分为多个领域类,比如订单主信息,订单项信息,订单优惠券信息
  1. 时序图模板
  1. 组件图模板
  1. 配置图模板
  1. 物理逻辑图模板
  1. 网络图模型
  1. 甘特图模型
  1. 资源配置表模板

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【一起学源码-微服务】Nexflix Eureka 源码九:服务续约源码分析

    上一讲 我们讲解了服务发现的相关逻辑,所谓服务发现 其实就是注册表抓取,服务实例默认每隔30s去注册中心抓取一下注册表增量数据,然后合并本地注册表数据,最后有个...

    一枝花算不算浪漫
  • GuavaCache学习笔记二:Java四大引用类型回顾

    上一篇已经讲了,如何自己实现一个LRU算法。但是那种只是最基本的实现了LRU的剔除策略,并不能在生产中去使用。因为Guava Cache中使用的是SoftRef...

    一枝花算不算浪漫
  • 【一起学源码-微服务】Feign 源码二:Feign动态代理构造过程

    上一讲主要看了@EnableFeignClients中的registerBeanDefinitions()方法,这里面主要是 将EnableFeignClie...

    一枝花算不算浪漫
  • 如何解决架构与业务发展冲突?讯飞输入法Android架构演进

    IT大咖说
  • 架构漫谈(一):什么是架构?

    架构漫谈是由资深架构师王概凯Kevin执笔的系列专栏,专栏将会以Kevin的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好程序等问...

    Java高级架构
  • 跳出“误区”,学着如何打造“最好的架构”。

    “架构”是我们这行业种一个很常见的词,表明其必然也是经历了很长的岁月打磨所形成的一个词。架构的这个词出现的意义是什么?为了解决什么问题?只有把这2个问题想明白了...

    Java架构技术
  • 【转】架构漫谈(一):什么是架构?

    架构漫谈是由资深架构师王概凯 Kevin 执笔的系列专栏,专栏将会以 Kevin 的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好...

    YG
  • 工作多年,我对架构的一些理解

    每一个程序员都听过架构这个词,每一个程序员都有自己对此的理解和看法,本文分享我对架构的理解。

    Frank909
  • 《互联网架构 》来自一位大牛的分享

    对于大部分程序员来说架构师这条路还很远。但是掌握现阶段Java的主流技术无疑提升了自身的竞争力。

    用户1518699
  • 架构随聊

      “架构”是我们这行业种一个很常见的词,表明其必然也是经历了很长的岁月打磨所形成的一个词。架构的这个词出现的意义是什么?为了解决什么问题?只有把这2个问题想明...

    Zachary_ZF

扫码关注云+社区

领取腾讯云代金券