zoukankan      html  css  js  c++  java
  • 5中视图法进行架构设计

    1.  逻辑架构

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

    No.

    考虑的方面

    产出物

    工具

    说明

    1

    系统功能划分为几个子系统与功能模块?

    系统功能树

    树型结构图

    2

    向什么用户提供什么样的功能?

    用例模型

    UML用例图

    体现用户和行为

    3

    每个功能都是怎样的操作流程与分支?

    用例描述

    用例描述表

    含输入输出、事件流分析;

    不要有界面描述

    UML活动图

    进行业务流程分析,包括泳道图

    4

    如何通过界面与用户交互?怎样交互?

    鲁棒分析

    鲁棒图

    通过对“用例描述表”进行原文分析法拣出名词和动词

    5

    应当设计哪些类与界面?怎样设计?

    领域模型

    UML类图

    6

    与哪些外部系统接口?怎样接口?

    接口描述

    UML类图

    2.  开发架构

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

    No.

    考虑的方面

    产出物

    工具

    说明

    1

    分层结构设计

    分层架构图(开发架构图)

    各种绘图工具

    好的分层结构支持自动化测试

    2

    开发技术选项

    开发语言

    开发框架

    开发工具

    考虑商用产品、开源框架、自研框架

    3

    模块划分

    源码工程;Project目录结构;

    分包(分库)

    4

    开发规范

    开发/编码规范文档;

    5

    软件质量属性

    分析和决策结果

    考虑运行期和开发期软件质量属性,并权衡利弊进行决策。

    3.  数据架构

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

    No.

    考虑的方面

    产出物

    工具

    说明

    1

    数据是集中还是分布存储的?如何考虑分布式存储?

    数据架构图

    2

    领域模型到数据库表的转换?表结构关系的设计?

    逻辑模型

    物理模型

    ER图

    Power Designer

    Visio

    3

    实体如何设计?充血模型和贫血模型?

    UML类图

    4

    使用什么数据库?关系型还是非关系型?

    选型结果

    关系型数据库

    非关系型数据库(NoSQL)

    Oracle(首次发行:1980年)

    MySQL(首次发行:1995)

    MS SQL Server(首次发行:1989)

    PostgreSQL(首次发行:1989)

    IBM DB2(首次发行:1983)

    Microsoft Access(首次发行:1992)

    Sybase ASE(首次发行:1987)

    SQLite(首次发行:2000)

    …… 

    MongoDB(首次发行:2009)

    Cassandra(首次发行:2008)

    Apache CouchDB

    Hbase

    Redis

    db4o

    BaseX

    …… 

    4.  运行架构

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

    No.

    考虑的方面

    产出物

    工具

    说明

    1

    运行:同步vs.异步;并发vs.串行

    考虑开发架构中代码的实现。

    2

    交互:对象间交互;状态转换

    考虑开发架构的合理性,到类、到接口、到代码。

    3

    质量:安全;可靠;可伸缩

    考虑开发架构的合理性

    4

    性能:响应时间;吞吐量

    估算:

    在线人数、并发人数;

    每秒事务量;

    响应时间。

    5.  物理架构

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

    考虑的方面

    产出物

    工具

    说明

    1

    网络方面:网络拓扑;网络设备;安全机制

    拓扑图

    安全规范

    2

    性能方面:可靠性、可伸缩性

    需要什么样设备性能

    3

    部署方面:集中式还是分布式;组件部署

    部署图

    实际在执行时有两种观念:一是五种视图按逻辑架构、开发架构、数据架构、运行架构、物理架构顺序进行;二是五种视图穿插进行设计,尤其是复杂系统,五种视图穿插进行思考更有利于思考的全局性和完整性。

  • 相关阅读:
    zabbix-钉钉报警媒介
    UltraISO做U盘启动盘教程
    Oracle中的Spool缓冲池技术可以实现Oracle导出txt格式文件
    将Oracle数据库导出为txt格式
    2016技术发展趋势
    SVN分支和映射总结和数据库初步使用
    netty -- helloword
    eclipse 操作
    ftp 文件上传 下载
    redis 集群+主从同步
  • 原文地址:https://www.cnblogs.com/doit8791/p/9434549.html
Copyright © 2011-2022 走看看