MetaData “Data about Data” College of Alameda pmcdermott@peralta.edu Copyright © 1999 Patrick...

Post on 17-Jan-2016

216 views 0 download

Tags:

transcript

MetaData“Data about Data”

College of Alameda

pmcdermott@peralta.edu

Copyright © 1999 Patrick McDermott

I never met a data

I didn’t like.—PMcD

“Data is, Data are.” In human language, “One word can mean more than one thing. This flexibility provides a deep well of nuance and beauty; it is a foundation of poetry. But it leads only to trouble when you are trying to build software.”—Scott Rosenberg, Dreaming in Code

One cannot givewhat one does not have

One cannot have

what one has no

place to keep

Nēmō dat qua nōn habet.

The Sour of Babel

Illustrates the Metadata obstacleto the Semantic Web:

We need to call the Same thingby the Same name,

Different thingsby Different names

Pietr Brueg(h)el (the Elder)The Tower of Babel, 1563

Camp Category Thing Connections Fact Behavior InheritanceCRC Cards Class N/A Collaboration (Attribute) Responsibility Superclass/SubclassERD Entity Type Entity Relationship Attribute N/A Supertype/SubtypeRelational Relation Tuple Foreign Key Attribute N/A N/ADatabase Table Row Database Key Column Service, Procedure 3 VariationsProgrammer Layout Record Pointer Variable Function Base/DerivedUML Class Object Association Property Method Generalization/Specialization

Etc., etc., etc…Type, Structure

Occurrence, Instance

Pairing Field, ItemMessage, Operation, Algorithm, Trigger, Routine

Parent/Child, Is-a, Root/Branch/Leaf, Extension

Attribute or Entity?

Attributes Don’t have Attributes

Attributes are “OF” a class

Jean TinguelySelf-Propelled Meta-Mechanical Machine

1954

Object

An object (business object) is a thing the business needs to know about. Classes are groups (classifications) of objects.

In most discussions, “class”, “object” and “entity” can be used interchangeably.

In addition to business objects, there areinfrastructure objects. During analysis, you should only discuss business (entity) objects.

Attribute

An attribute is a piece of information about an object needed in your business.

CRUD: Create, Read, Update, Delete

An attribute or variable is a fact about an object. It can hold only one value at a time. Attributes and relationships do not have attributes; if there is a fact to be kept, it is an object in its own right, not an attribute.

Attribute (Field) Properties IDentifier (Name and Primary Key) Data Type

– Min, Max or other range– Default Value or Algorithm– Validation Rule– Select Values (Lookup)

Format– Length– Decimal Places

Required or Optional?

Marcel MarienThat which Cannot be Found, 1937

Class in UML

CLASSCLASS

Attribute1Attribute2Attribute3

Method1()Method2()UML: Unified Modeling Language

Associated with “The Three Amigos”(Spanish: “Los Tres Buddies”) Grady Booch James Rumbaugh & Ivar Jacobson