From: 史上最全设计模式导学目录

设计模式,这是软件设计过程中的一个环节。

在这个环节之上,需要overview的事业,就是UML,一种通用的建模语言。

Ref: 软件设计之UML—UML的构成[上] 【uml部分详见此链接】

Ref: 在软件开发过程中,有哪些UML图是比较常用的?

1. UML

1.1 View: Diagrams

用户视图:Use Case Diagram                  // describe requiremnet

结构视图:Class Diagram, Object Diagram, Package Diagram, Composite Structure Diagram                                                                              // Static behavour

行为视图:State Diagram, Activity Diagram, SequenceDiagram, Communication Diagram, Timing Diagram, Interaction Overview Diagram       // Dynamic behavour

实现视图:Component Diagram                    // Logical file <--> Physical file

环境视图:Deployment Diagram                                             // Physical file <--> physical device

注释:BD-基本设计,DD-详细设计,FD-结构设计

  • 1.1.1 Use Case Diagram (Demand Analysis)

用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元。

关注用户的输入和系统的输出。

  参与者:关联,泛化

  用例:关联,包含,扩展

用况图说明表格:

  • 1.1.2 Class Diagram (System Analysis: 面向业务;System Design)  

  • 1.1.3 Timing Diagram (System Analysis: 面向过程;System Design)  

  • 1.1.4 Activity Diagram (System Analysis: 面向过程) 

  • 1.1.5 Object Diagram

  • 1.1.6 Component Diagram

  • 1.1.7 Deployment Diagram

  • 1.1.8 State Diagram

  • 1.1.9 Collaboration Diagram

1.2 软件开发如何使用UML

Ref: 软件工程各阶段的开发文档

Ref: 软件工程各阶段的UML图,配合StarUML2 全平台破解方法

1.3 交互流程图

Ref: 20个优秀的交互流程图欣赏

交互流程图在网站建立初期用于规划分析用户浏览网站时所出现的各种状况,它的初衷就是解决用户的问题。

一份优秀的流程图可以省去需求文档和交互设计文档中的许多文字描述,让技术人员一目了然地明白设计意图,便于组织程序的逻辑顺序。

[Arch] 01. Before Design Patterns - UML的更多相关文章

  1. [Design Patterns] 3. Software Pattern Overview

    When you're on the way which is unknown and dangerous, just follow your mind and steer the boat. 软件模 ...

  2. Design Patterns | 01 为什么要尽早掌握设计模式

    标题:Design Patterns | 01 为什么要尽早掌握设计模式 链接: 标签:设计模式 摘要:设计模式是前人经验的总结,教大家如何写出可扩展.可读.可维护的高质量代码.设计模式与日常工作中的 ...

  3. [Design Patterns] 1. Primary concept & term - UML

    It's time to review design patterns, especially when I reach the turning-point of my career. That's ...

  4. [Design Patterns] 4. Creation Pattern

    设计模式是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结,使用设计模式的目的是提高代码的可重用性,让代码更容易被他人理解,并保证代码可靠性.它是代码编制真正实现工程化. 四个关键元素 ...

  5. [Arch] 04. Software Architectural Patterns

    让我们一起 回忆: 原则 基本认识 S 应该仅有一个引起它变化的原因 O 在不被修改的前提下被扩展 L 尽量从抽象类继承 I 应该依赖于抽象 D 倾向瘦接口 让我们开始 新课: [Design Pat ...

  6. 图书-软件架构:《Design Patterns: Elements of Reusable Object-Oriented Software》(即后述《设计模式》一书)

    ylbtech-图书-软件架构:<Design Patterns: Elements of Reusable Object-Oriented Software>(即后述<设计模式&g ...

  7. Design Patterns in Android

    对日常在 Android 中实用设计模式进行一下梳理和总结,文中参考了一些网站和大佬的博客,如 MichaelX(xiong_it) .菜鸟教程.四月葡萄.IAM四十二等,在这里注明下~另外强烈推荐图 ...

  8. Design Patterns Simplified - Part 3 (Simple Factory)【设计模式简述--第三部分(简单工厂)】

    原文链接:http://www.c-sharpcorner.com/UploadFile/19b1bd/design-patterns-simplified-part3-factory/ Design ...

  9. Design Patterns Simplified - Part 2 (Singleton)【设计模式简述--第二部分(单例模式)】

    原文链接: http://www.c-sharpcorner.com/UploadFile/19b1bd/design-patterns-simplified-part-2-singleton/ De ...

随机推荐

  1. .net 定时启动任务

    .net winform程序,设置每天的零时启动,执行完后自动关闭. 系统计划启动: 如果要定时启动某个程序,可以通过“任务计划”来安排. 如果是XP系统,在开始 --> 所有程序 --> ...

  2. css table第一列 宽度

    table{table-layout:fixed;}table tr td:first-child,table tr td:first-child{width:120px;} 首行第一个td定宽同列的 ...

  3. WebSocket和Socket的区别

    前段时间写了两篇介绍HTTP和WebSocket的文章,回复中有人说希望了解下WebSocket和Socket的区别.这个问题之前也有想过,自己对此是有大概的答案,可是并不太确定,于是去搜集了些资料( ...

  4. $(window).height() 和 $(document).height()的区别

    $(window).height() 和 $(document).height()的区别 $(window).height()代表了当前可见区域的大小,$(document).height()则代表了 ...

  5. Zookeeper 快速理解

    转自:http://blog.csdn.net/colorant/article/details/8444283 == 是什么 == 目标Scope(解决什么问题) 为分布式系统提供高可靠性的协同工作 ...

  6. 摄像头驱动0V7725学习笔记连载(三):0V7725 SCCB时序的实现

    上一篇博客主要是讲解了关于需要配置的重要寄存器,那么接下来就是要通过SCCB接口实现对OV7725的配置.参考<OmniVision Serial Camera Control Bus (SCC ...

  7. 【转】【WPF】WPF MVVM 简单实例

    1 新建WPF 应用程序WPFMVVMExample 程序结构如下图所示. 2 Model实现 在Model文件夹下新建业务类StudentModel(类文件StudentModel.cs),类的详细 ...

  8. Java如何处理异常方法?

    在Java编程中,如何处理异常方法? 本例展示了如何使用System类的System.err.println()方法处理异常方法. package com.yiibai; public class E ...

  9. Java如何使用线程解决生产者消费者问题?

    在Java编程中,如何使用线程解决生产者消费者问题? 以下示例演示如何使用线程解决生产者消费者问题. package com.yiibai; public class ProducerConsumer ...

  10. python获取代码行号

    获取行号: def get_file(): print("文件名 :",__file__,sys._getframe().f_lineno) print("函数名: &q ...