`

Thinking inUML摘录(三)-建模基础

    博客分类:
  • UML
uml 
阅读更多

建模

 UML是统一建模语言,那什么是建模呢?建模包括两个问题,一个是怎么建?另一个是模是什么?

 怎么键- 具体来说,做需求的时候,首要目标不是弄清楚业务是如何一步一步完成的,而是要弄清楚有多少业务的参与者,每个参与者的目标是什么、参与者的目标就是抽象角度。与分析一个复杂的业务流程相比,单独分析参与者的一个个目的要简单得多。实际上,这就是用例!这就是为什么用例会成为业务建模的方法的原因之一。

什么是模-模是什么?模就是 人,事,物,规则。

 

问题领域=抽象角度*n

抽象角度=问题领域边界之外的参与者的业务目标=业务用例

业务用例=特定场景*n

特定场景=静态的事物+特定的条件+特定的动作 或者  

特定的事=特定的事物+特定的规则+特定的人的行为

无论是业务建模,分析建模,设计建模都遵从同样的公式,无非是公式中的变量更换了马甲。

 

抽象层次

抽象层次是面向对象方法中及其重要,但是又非常难以掌握的技巧。学会站在不同的抽象层次考虑问题是建立好模型的基础。

在软件开发中,主体上应当采用自顶向下的方法,用少量的概念覆盖系统需求,再逐步降低抽象层次,知道代码编写。同时应当辅以自底向上的方法,通过总结在较低抽象层次的实践经验来该井较高层次的概念以提高软件质量。

 

 

分享到:
评论

相关推荐

    Algorithmic Thinking: a problem-based introduction

    - **算法基础知识**:首先,本书介绍了算法的基本概念,包括算法定义、特点以及评价标准等。 - **问题分类**:接着,作者详细阐述了如何根据问题的特点将其归类到不同的算法模型中去,如贪心算法、动态规划、图论等...

    thinking in java2-3

    《Thinking in Java》是Bruce Eckel的经典之作,它深入浅出地介绍了Java编程语言的核心概念和技术。本压缩包文件的标题“thinking in java2-3”表明内容涵盖了该书的第二部分,通常包括面向对象编程的深入探讨,可能...

    thinking in java3-3

    "Thinking in Java 3-3"很可能指的是该书的第三版的第三部分,通常该书会按照主题分为多个部分进行讲解。 在学习Java之初,掌握基础是非常重要的。Java是一种面向对象的语言,这意味着你需要理解类、对象、封装、...

    重温 Thinking in Java 5 - The Class object

    《Thinking in Java》是Bruce Eckel的经典之作,第五版(The Class object)主要探讨的是类对象(Class object)这一核心概念。在Java编程语言中,类对象是与类相关的特殊对象,它提供了对类信息的访问,包括类的元...

    Data Structure and Algorithmic Thinking with Python -- 2016.pdf

    #### 三、数据结构基础 - **数组**:数组是最基本的数据结构之一,它通过连续的内存位置存储元素,提供快速的随机访问。 - **链表**:链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点...

    Thinking in C++习题答案

    通过阅读和实践《Thinking in C++》的习题答案,开发者可以深入理解C++语言的语法和编程技巧,为后续学习第二卷以及更高级的C++编程打下坚实基础。同时,了解并遵守版权法规也是每个程序员应有的职业素养。

    thinking in java1-3

    从提供的信息来看,你可能已经下载了《Thinking in Java》的中文版,该版本可能是第三版。 首先,我们来了解一下Java编程的基础知识点: 1. **Java简介**:Java是一种面向对象的编程语言,由Sun Microsystems(现...

    thinking-in-cpp-2.zip

    本压缩包文件"thinking-in-cpp-2.zip"包含了第二卷的内容,为学习C++的开发者提供了宝贵的资源。 第一卷主要涵盖了C++的基础知识,包括基本语法、数据类型、控制结构、函数、类和对象等主题。其中,"thinking"这一...

    Thinking Architecturally.docx

    Thinking Architecturally Thinking Architecturally是一本由Nathaniel Schutta所著的关于软件架构的书籍,该书籍旨在帮助架构师和开发者更好地思考架构设计,并作出明智的技术决策。以下是对该书籍的详细摘要: ...

    Thinking in Java4-课程代码code

    1. **面向对象编程基础**:Java是一种面向对象的语言,代码中将展示类的定义、对象的创建与使用、封装、继承和多态等概念。通过实例,你可以看到如何设计类以及如何通过对象来操作数据。 2. **封装**:封装是将数据...

    Thinking-in-Java-4th-Edition习题答案

    总的来说,这份“Thinking-in-Java-4th-Edition习题答案”涵盖了Java编程的广泛领域,从基本语法到高级特性,从理论到实践,是提高Java技能的宝贵资源。通过解决这些习题,你不仅可以巩固所学知识,还能锻炼解决问题...

    Write Great Code- thinking low-level & writing High-Level

    Write Great Code- thinking low-level & writing High-Level, the best practice in programming.

    Thinking in num 随书建模示例.zip

    《Thinking in num 随书建模示例》是一个与软件建模相关的资源包,它包含了一个使用ROSE工具创建的建模示例,主要用于帮助读者理解和应用软件建模技术,特别是针对图书馆管理系统的建模过程。ROSE是一款强大的统一...

    Thinking-in-Patterns-with-Java.zip_in

    《Thinking in Patterns with Java》是一本深度探讨Java编程思想与设计模式的经典著作,旨在帮助开发者理解和运用各种设计模式,从而提升软件开发的效率和质量。这本书深入浅出地讲解了如何在Java环境中实现和应用...

    C++编程思想-Thinking in C++ 11

    C++编程思想-Thinking in C++

    thinking-in-java

    ### 《Thinking in Java》核心知识点解析 #### 一、书籍概述 《Thinking in Java》是一本被广泛赞誉为优秀的Java编程入门与进阶指南。本书由Bruce Eckel撰写,MindView, Inc.总裁,拥有丰富的编程经验和教学经验。...

    thinking-in-java-侯捷翻译版

    《Thinking in Java》是由Bruce Eckel编著,侯捷翻译的Java编程经典教程。这本书深入浅出地介绍了Java语言的核心概念和技术,对于学习和理解Java编程有着极高的价值。在这个侯捷翻译的版本中,作者以清晰易懂的语言...

    Thinking In Java-Java 编程思想(中英文版 第四版)

    Thinking In Java-Java 编程思想(中英文版 第四版) Thinking In Java-Java 编程思想(中英文版 第四版)

Global site tag (gtag.js) - Google Analytics