系统建模就是建立系统抽象模型的过程。其中每一个模型表示系统的一个不同的视角或观点。系统建模现在通常意味着在UML中的图类型基础上使用某种图形化的表示法表示系统。
在需求工程过程中使用建模,是为了帮助得到详细的系统需求,在设计过程中使用建模,是为了向实现系统的工程师描述系统,在实现系统之后还要使用建模,是为了描述系统的结构和运行。
现有系统的模型在需求工程过程中使用,这些模型帮助阐明现有系统做什么。新系统的模型在需求工程过程中使用,帮助解释对其他系统利益相关者所提出的需求。工程师使用这些模型来讨论设计方案并描述系统以用于实现。
系统模型并不是系统的一个完备表示,系统模型有意去掉一些细节以使模型更容易理解。模型是所研究系统的一种抽象,而不是系统的另一种表示。
可以从不同的视角表示系统:
1.外部视角,会对系统的上下文或环境进行建模。
2、交互视角,会对系统及其环境或者系统的组件之间的交互进行建模。
3、结构化视角,会对系统的组织或者系统所处理的数据结构进行建模。
4、行为视角,会对系统的动态行为以及系统如何响应事件进行建模。
模型可以推动关于现有或所设想的系统的讨论以及使讨论聚焦,可以文档化现有系统,可以用于生成系统实现的详细系统描述。
UML有五种图形:活动图、用例图、顺序图、类图、状态图。
上下文模型:在系统规格说明的早期阶段,你应当确定系统的边界,也就是说确定哪些属于或不属于开发的系统。
交互模型:所有系统都包含某种类型的交互。可以是用户交互,也可以是与其他系统的交互,或者软件内部不同组件的交互。用户交互建模可以帮助识别用户需求。交互建模的方法包括用例图和顺序图。
结构模型:按照构成系统的组件以及他们之间的关系显式系统的组织。结构模型可以描述系统设计组织的静态模型,也可以描述系统执行时的组织的动态模型。结构建模的方法包括类图、泛化、聚集。
行为模型是关于系统在运行时的动态行为的模型。当数据或事件发生时,系统会发生什么行为。
模型驱动的工程是一种软件开发方法,其中一个系统被表示为一组可以被自动转换为可执行代码的模型。
前文回顾:
相关系列: