数据对象是必须由软件理解的复合信息表示。数据对象可能是外部实体、事物、偶发事件或事件、角色、组织单位、地点或结构等。例如,一个人或一部车可以被认为是数据对象,在某种意义上它们可以用一组
属性来定义。数据对象描述包括了数据对象及其所有属性。数据对象只
封装数据(没有对数据的操作)。
数据对象简介
在应用程序中引用的任何数据结构元素,如文件、数据、变量等都称为数据对象,简称为对象。它是使用编程语言允许的字符命名。在Fortran90或95中,数据对象是一种数据实体,它是一个常量、一个变量或常量的子对象。
FORTRAN语言处理的数据对象都有类型(显式或隐式地规定)、数据值和属性(对象的特征和被使用的方式)。子对象是某些有名对象的一部分,可由其他部分引用和独立地定义。子对象包括数组的部分(数组元素)、字符串的部分(子串)和结构的部分(成分)。
数据属性
数据属性定义了数据对象的性质,可以用来:①为数据对象的实例命名:②描述这个实例:③建立对另一个表中的另一个实例的引用。另外,必须把一个或多个属性定义为标识符。也就是说,当要找到数据对象的一个实例时,标识符属性成为一个“键”。在某些情况下,标识符的值是唯一的,但不是必需的。在数据对象“汽车”的例子中,标识号是一个合理的标识符。
通过对问题环境的理解,可以恰当地确定特定数据对象的一组属性。“汽车”的属性可以用于汽车运输部门的应用系统,而汽车制造公司需要制造中的控制软件。在后一种情况下,“汽车”的属性可能也包括标识号、车体类型和颜色,但为了使汽车在制造的控制环境下成为一个有用的对象,必须增加许多其他属性(如内部代码、驱动系统类型、车内包装设计师和传动类型等)。
数据对象联系
数据对象彼此之间相互连接的方式称为联系,也称为关系。二元联系即只有两个实体型参与的联系,可分为三种类型:
(1) 一对一联系
例如,一个部门有一个经理.而每个经理只在一个部门任职,则部门和经理这两个实体的联系是一对一的;一个人只能拥有一张有效的身份证,一张身份证也只对应一个法律意义上的人,个人和身份证这两个实体的联系是一对一的;一个班级有一位班长.一个班长只能在一个班级任职,班级和班长这两个实体的联系是一对一的。
从上面的例子,我们可以得出结论:如果对于实体集A中的每一个实体.实体集B中至多有一个实体与之联系,反之亦然.那么实体集A与实体集B具有一对一联系。
(2) 一对多联系
例如,一个班级有多个班干部,一个班干部只能在一个班级任职,班级和班干部这两个实体的联系是一对多的;一个班级有多名学生,一名学生只能在一个班级中,班级和学生这两个实体的联系是一对多的;一种商品类别包含多种商品。一种商品只属于一个商品类别,商品类别和商品这两个实体的联系是一对多的。
(3) 多对多联系
例如,一个出版社可以出版多种书.每一种书可以由多个出版社出版,出版社和书这两个实体的联系是多对多的;一个学生可以选修多门课,一门课可以有多个学生选修,学生和课程这两个实体之间的联系是多对多的。
辅助数据对象
辅助数据对象也是系统服务对象,主要任务是反映和记录系统中所使用的基础数据和常用不变的数据,根据实际需要可以增加必要的数据对象,下面列出几个常用的辅助数据对象。
(1)设施设备。设备对象是指与监理业务相关并且可用的设施设备实体,其属性有:设备编号、设备名称、功能说明、规格型号、库存数量、购置日期、设备单价、计量单位、备注说明等。
(2)往来单位。往来单位对象是指与建设工程、监理业务相关的实体,其属性有:单位编号、单位名称、单位地址、单位类型、联系人员、负责人、联系电话、备注说明等。
(3)往来单位类型。往来单位类型是动态反映往来单位特征和性质的延伸对象,服务于往来单位对象,其属性有:单位类别编号、单位类别名称、备注说明等。
另外,还有许多辅助数据对象,人员、工程级别等,根据系统需要,例如之前已介绍过的工程性质、系统用户和可随时增加所需要的辅助数据对象。