IDEF4
IDEF4或面向对象设计的集成定义是一种面向对象的设计建模语言,用于基于组件的客户/服务器系统的设计。它旨在支持从应用程序域和需求分析模型到设计和实际源代码生成的平稳过渡。它指定了具有足够详细信息的设计对像以启用源代码生成。
概述
IDEF4方法是用于设计面向对象软件系统的图形为导向的方法。面向对象的编程范式为开发人员提供了对其程序的抽象视图,该视图由一组维护对象组成,这些状态通过其交互协议来定义程序的行为。一个对象由定义属性的一组局部状态和一组方法(过程),这些方法(过程)定义了该特定对象的行为及其与组成系统的其他对象的关系。
IDEF4方法的多维方法用于对象的软件系统设计由以下项目组成:
历史
IDEF4的开发源于认识到,在传统的数据处理应用程序中可以实现由面向对象的编程范式产生的模块化,可维护性和代码可重复性。以对象为导向的编程范式支持大型复杂分布式系统中数据级集成的可靠能力也是传统数据处理社区对这项技术广泛兴趣的主要因素。
IDEF4是为使用面向对象的语言(例如Common Lisp对象系统,口味, SmallTalk , Objective-C , C ++等)的软件设计人员开发的设计工具。由于有效使用面向对象的范例需要与传统程序或数据库语言所使用不同的思考过程,因此标准方法(例如结构图,数据流程图和传统数据设计模型(层次,关系,关系和网络))是不够的。 IDEF4试图提供必要的设施来支持面向对象的设计决策过程。
IDEF4概念
IDEF4设计对象的尺寸
IDEF4使用面向对象的设计方法或过程,该方法与Rumbaugh的对象方法技术非常相似, Schlaer / Mellor的面向对象的分析和设计(OOA / OOD)技术。但是,存在一些关键差异:
- IDEF4专门设计为与其他IDEF方法兼容,
- IDEF4允许一个人通过过渡到设计规范的域对象的设计工件的状态,并且
- IDEF4包括一个设计的配电组件。
这些额外的维度如图所示。盒子的边缘显示了从头到尾的设计的进展,详细阐述了这些维度。
IDEF4设计活动
在IDEF4中,设计始于要求的分析,并将其作为输入域对象。这些域对像以等效的IDEF4形式编码,并标记为域对象。由于为这些对像开发了计算对象,因此它们被标记为“过渡”,最后是“完成”。 IDEF4设计的完成水平是通过基于设计中各个人工制品的状态,水平和模型维度设置度量来确定的。
一旦收集了“原材料”(域)对象,系统级设计就开始了。这开发了设计环境,确保与旧系统的连接,并确定必须构建的应用程序以满足要求。静态,动态,行为和理由模型是为系统级别的对象构建的。这些规格成为应用程序级别的要求 - 新的设计级别。应用级设计标识并指定了设计中所需的所有软件组件(分区)。静态模型,动态模型,行为模型和理由组件是为应用程序级别的对象构建的。这些规格成为下一个设计级别的要求 - 低级设计。静态模型,动态模型,行为模型和设计构造组件是为低级设计对象而建立的。可以在每一层内建造子层以降低复杂性。
IDEF4是涉及分区,分类/规格,组装,仿真和重新安排活动的迭代过程(见图)。首先,将设计分配到对像中,每个对像要么针对现有对象进行分类,要幺是开发出外部规范的对象。外部规范使对象的内部规范可以同时委派和执行。在分类/规范之后,对象之间的界面是在组装活动中指定的(即开发了对象之间相互作用的不同方面的汇编活动(即静态,动态和行为模型)。在开发模型的同时,重要的是要模拟对象之间使用方案或案例以发现设计缺陷。基于这些缺陷,设计师可以重新排列现有型号并模拟它们,直到满足设计师为止。
IDEF4面向对象的概念
IDEF4定义了一组面向对象的概念:
- 域:IDEF4项目在域中实现。一个域可以看作是正在开发系统的范围。在系统设计期间,该软件在三个域之间过渡:应用程序域,设计域和实现域。
- 功能,工件和物体
- 对象实例:对象可以是对象实例,对像类和对象分区。对象实例是应用程序域中遇到的单个事物。
- 类:类是关于对象的概括,用于通过利用对象实例中的相似性并将它们分组为类或类别来管理复杂性。
- 子类/超级类:一词子类捕获了将类的特定实例分组为更专业的班级的概念。
- 分区:一个分区对象包含对象和关系。
- 属性:属性是如何表示对象状态的实现选择。
- 对象状态:对象状态表示在设计中有意义的对象实例的情况或条件。
- 方法:一种方法是行为的实现(即,根据对象执行某些操作的一组指令)。
- 消息和多态性:对象通过彼此发送消息来通信。
- 事件:事件是通过方法在对像中指示某些条件的对像中生成的信号。
- 物体生命周期:在任何系统中,对像在循环循环不同状态时都会表现出行为模式。
- 客户端/服务器:如果对像是该消息的发件人,则对象相对于消息的角色。
- 关系和角色:对象与弧线连接。这些弧线称为关系,它们显示对象之间的关联。
- 继承:面向对象技术中使用的特定类型的关系是继承。
- 封装和信息隐藏:封装和信息隐藏是两个面向对象的概念,当对象之间的相互作用讨论时,最容易理解这些概念。
对像类标识
IDEF4方法假设已经通过面向对象的域分析来识别域对象。诸如IDEF1 , IDEF5 , IDEF3 , SA/SD之类的方法可用于执行域分析。但是,IDEF4从业人员应意识到如何识别对象,因为设计过程可能会揭示面向对象的分析中的缺陷。 IDEF4定义了五种类:
- 物理对象:在自然世界中发现和观察到的东西。
- 角色对象:角色可能与该人从事的其他活动有关(例如,医院中的患者,股东,客户,受托人,盗窃者或纳税人的嫌疑人)。
- 事件对象:事件或事件也可能被视为对象。事件作为对象的识别是高度主观的,并且将取决于要使用软件的域。
- 交互对象:交互对像是两个或多个对象之间的交互或交易的结果。
- 规范和过程对象:规范对象描述对象实例的可接受特征。过程对像是指其他对象实例可以交互的方式。
IDEF4构建块
IDEF4层
IDEF4用户在三个不同的层中设计:
- 系统设计,
- 应用程序设计,
- 低级设计。
这三个分层组织降低了设计的复杂性。系统设计层确保在设计环境中与其他系统的连接。应用层描述了正在设计的系统组件之间的接口。这些组件包括商业应用程序,以前设计和实施的应用程序以及要设计的应用程序。低级设计层代表系统的基础对象。
IDEF4工件状态
IDEF4区分了从应用程序域创建的新创建的IDEF4伪像,过渡到设计规范的工件以及已指定可以应用于创建设计规范的工件。 IDEF4中的任何设计工件都可以标记为域,过渡或完整。这使从业者和审阅者可以跟踪设计的进度。
IDEF4设计模型
IDEF4使用三种设计模型和一个设计的理由组件:
- 静态模型(SM)定义了对象之间的时间不变关系(例如,继承)。
- 动态模型(DM)指定对象与对象状态过渡之间的通信。
- 行为模型(BM)定义了对象的各个行为之间的关系。
设计的基本原理组件提供了系统的自上而下表示形式,从而涵盖了三种设计模型,并记录了主要设计发展的基本原理。
每个模型代表设计的另一个横截面。三个设计模型捕获了设计项目中代表的所有信息,设计的理由记录了设计背后的推理。每个模型都由图形语法支持,该语法突出了必须做出的设计决策及其对设计其他观点的影响。为了促进使用,图形语法在三个模型中是相同的。
设计特点
IDEF4提供了广泛的设计功能 - 从通用到特定。该范围可以通过允许设计师首先以一般术语捕获设计功能,然后再完善它们,从而实现延期决策。即使尚未详细探讨了这些设计概念,这也可以大大减轻设计师立即捕获具有IDEF4设计功能的新设计概念的负担。