ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

database terminology

Updated on April 28, 2013

Like any other part of computing, database management is full of buzz words, Here we are going to review and explain them. My intention here is to demystify buzz words, so that they can become part of a DBA’s (database administrator’s) toolkit rather than just part of the vocabulary. The references to glossary terms are tongue-in-cheek.

UML

Let’s start with Unified Modeling Language (UML) for Object-Oriented Database Architecture. These just the recently fashionable terms for things that have been around for quite a while. UML isn’t even a language – it’s a charting mechanism (glossary term 1). Many of us have used basic flow chart methodology to do more than flowcharts (which diagram programming projects) – we’ve used them to chart processes, data flow, people flow…you name it. The UML is simply a method chosen by the OMG (Object Management Group) as a standard – much like HTML is a standard for the World Wide Web. OMG claims that this will be a better communication medium between business-minded clients and technically-minded programmers. Well, folks – a layman can understand a basic flow chart – you need training not only to use UML but to understand it! Nonetheless it’s a handy buzz word for resumes and job interviews, so we will look into it.

Formal UML has nine basic modeling diagrams. Glossary term 2 – “modeling” = designing or blueprinting. And actually, these modeling methodologies can be applied not only to programming, but to bank activity flow, building houses, systems analysis, needs analysis, just about any project. We will look ever so slightly into 6 of these diagrams.

Use case diagrams

Borland describes Use Case as a diagram that describes what a system does from the standpoint of an external visitor, defining what a system does rather than how. ‘Actors’ (glossary term 3) ‘communicate’ (glossary term 4) with a ‘use case’ (glossary term 5), or a system or use of a system. Since we are going into database management systems, we will concentrate on examples in the software development business. Let’s say you are working on a system for a restaurant. You need to identify all the systems and users involved to see the relationships between people, computers, manual and automated processes. In diagram form:

Source

Actor is usually a stick figure

Line is the communication association

Oval = use case

In this simplified form it seems worthless. But if you look at all related use cases, you ended up with a Use Case Diagram:

ACTOR
USE CASE
ACTOR
patron
order food
waiter
patron
eat food
 
patron
pay for food
cashier - accept payment
waiter
order to/from chef
chef - prepare food
a partial analysis of the use case diagram above

As you see, the Use Case may be a program, a person, a situation or an object. Use case diagrams are helpful for determining requirements (needs analysis), reviewing with a client the situations that require an application to be developed, and for generating test cases.

The Use Case diagram has a good place in development - if it's used properly, and thoroughly. First, it's a way to verify that your analysis of the client's situation is correct, because it's simple enough for the client to understand yet complete enough for the developer to get a grip on the data flow, what can be done, where manual procedures can be replaced by automated systems, and how redundancies can be eliminated. So it's a great sales tool. I like to show the prospective client before and after diagrams – to show how much manual effort can be converted to automated work.

Class Diagrams

A class (glossary term 6) is, per Borland, an overview of a system by showing its classes and relationships between classes. This describes which classes interact, but does not actually show the consequences of interaction. A class is diagramed as a rectangle split into three sections. The top section is the name of the class; the middle section is the attributes that class possesses, and the bottom section is the operations that class can perform.

Let’s say we are going to develop an MIS for a camera store. The class diagram of the store would be :

There are 3 kinds of relationships possible in a class diagram:

  1. association – an existing relationship between two classes – a line linking two classes
  2. aggregation – one class belongs to a collection – designated by a line with a diamond at the collection end
  3. generalization – one class is a subclass of another – denoted with a line with a triangle at the superclass (parent) end

(glossary terms 7,8 and 9)

Interaction diagrams

Interaction diagrams show the effect one class has on another. Interaction diagrams come in two types:

  1. sequence diagrams – these show how operations are carried out, along a time line. If you’ve ever seen a Gantt chart for a project, you have seen a type of sequence diagram.
  2. collaboration diagrams – these are similar to sequence diagrams but they focus on the roles of the classes rather than the time line.

(glossary terms 10, 11 and 12)

State diagram

these focus on the changes of a class’ state as other classes affect it. (glossary term 13)

Activity diagrams

These focus on the activities involved in a single process. This is what you think of when you do a flow chart of a particular module. (glossary term 14)

I am currently qualifying a network. The original templates for diagramming the network were done for a small site, by a Visio specialist who had no technical knowledge. The result was a stringent template with no practical use at all. I have now, after a year of wrangling, gotten them to revamp the template to make it of use in redlining and troubleshooting.

Why am I numbering the ‘glossary terms’? Because I think some people get so involved in names and structures that they forget the practical usage of the thing. Glossary terms are just buzz words that might come in handy and are generally accepted.

Object-Oriented Database Architecture

Again, this gets to the point of absurdity. The concept was first introduced as Object Oriented Programming Structure – better known to many of us as OOPS, and well-named. Again it is an attempt to redefine the wheel – the thing still goes around, no matter what you call it. The advantage of OO (Object Orientation) is for the use of CASE stations – many people can work on the development of a single application at once, guided by the diagrams of the objects. The other advantage is in database management, simply because DBMSs (Database Management Systems) now use these terms on an almost universal scale, so if you are working with one, you can understand the references. I got involved with OO when studying AI (Artificial Intelligence) because the AI languages (such as ADA) use the class (object) system in their architecture. Each object has inheritance – the ability to ‘inherit’ characteristics from a super class. For instance you may have a class called DOG, which has the attributes 4-legged, tail, 2 ears, fur. Then you create a ‘child’ class called DALMATIAN, which inherits all the dog attributes plus the attribute black-spots-on-white, short hair, and large-size.

Object-Oriented database architecture involves:

  • Object-Oriented technology:
  • Encapsulation
  • Attributes
  • Methods
  • Inheritance
  • Polymorphism
  • Transcience
  • Persistence
Object/relational databases Object/oriented languages SQL3 Object data management group (ODMG)

A quick overview of the object-oriented glossary:

table - A database is like a file cabinet. The drawers of the cabinet would be the tables – collections of records in file folders. Each record is made up of field of various data types – these would correlate with the headings you might put on a spreadsheet. Each table can have one key field, whose entries cannot be blank or duplicated in that field. Each table can also have one or more indexed fields, for quick reference. Any time two tables have the same field, a relationship can be built between the tables at that field.

If you have an indexed field and you do a search on that field, the database does not load up the entire record to find the correct record; it only loads up the indexed field(s); when the entry is found, the database loads up the rest of the record. This saves time – unless you index a lot of fields in one table.

Oracle works on a similar basis, but each field is its own table, plus an index. When it searches a field (table) and finds what it’s seeking, Oracle then loads up only the tables (fields) requested that correlate with the index.

Query – an object which combines and selects information from table objects

Form – an object which displays data from table or query objects

Report – a printable object display of data; can be dynamic or static

Macro – an object which collects a series of objects and executes them in a chronological order

Comments

    0 of 8192 characters used
    Post Comment

    No comments yet.

    working

    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, hubpages.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://hubpages.com/privacy-policy#gdpr

    Show Details
    Necessary
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Features
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Marketing
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Statistics
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)