You are on page 1of 19

Logical Database Development

Hallam Accommodation and Housing

Agency
(A CASE STUDY)

Abstract: This is a case study which deals with the Hallam Accommodation and Housing Agency (HAHA). In this study we included a brief introduction to HAHA case study followed by the introduction to Entity Relationship Diagrams (ERDs), Class diagrams and Use Case diagrams and the designs of them related to the HAHA case study. It also includes a brief and understandable discussion of above mentioned diagrams and a series of relational table definitions related to ERD which followed by the discussion of how any identified potential problems in the model have been handled and how the hierarchies modeled in class diagram could be handled in the relational implementation. It also includes a brief description of peer assessment and finally concluding the case study.

Introduction: This project is about the Hallam Accommodation and Housing Agency (HAHA) which presently hire out a range of various varieties of conjugal lodging (flats and houses) to customers. It is said that the primary customers are the students or groups of students who hires for 1 year contract, but it changed rapidly from the last 1 and a half year by several specialized and on leave public moving towards the organization looking for leases for everything from 1 week to 2 years. This project on HAHA includes introduction to Entity Relationship Diagrams (ERDs), Class diagrams and Use Case diagrams and their implementations related to the HAHA case study with a brief description. It includes relational table definitions related to the description of the ERD followed by a discussion of the implementation of hierarchies in the class diagram in relational model. It also includes a brief introduction of peer assessment.

Entity Relationship Diagram (ERD): It is a graphical description of the information for a specified database which means a graphical data representation and it corresponds to the information at a top intensity of pensiveness. ERD is a method used to give a pictorial explanation of some specified features of the information required for a database Reingruber & Gregory (1994). Every ERD must have an entities, attributes and relationships:

Entity: It is defined as Every differentiated thing which is to be shown in a database. For each entity type, definite attributes are accumulated CJ Date (1986).

Attributes: Attributes are mostly the qualities. Usually it is simple to calculate these features like height, weight, name and others.

Relationship: It is a technique of relating kinds of entities collectively. Every kind of entity will have single or more relationships with the others. In an ERD, it is treated as one is related with the other, when there is a link present in between the two. One is treated as the parent and the other as a child James Martin (1989)

Rumbaugh et al (1991 p152-3, repeated in Blaha & Rumbaugh 2005 p 185 -6) provides some guidance as to how to identify appropriate entity types. He suggests that you consider the following issues: Redundant entity types Two entity types may express the same information (i.e. two names for the same concept, or synonyms). In addition the information we plan to collect is specifically concerned with prescribing. . Irrelevant entity types If an entity type has little or nothing to do with the problem, it should possibly be left out. Vague entity types In a narrative description, often words are used indiscriminately. Entity types that are really attributes Often an initial entity type is an attribute. Multiple roles become entity types "The name of a entity type should reflect its intrinsic nature and not a role that it plays. (Blaha & Rumbaugh 2005 p 186).

Rough Entity Relationship Diagram (ERD) for HAHA:

Owners Id Postal codes Rent State City Address

Owners ID

Property type

Belong s to

HAS

Property features

Property Listing
Size

Bed Rooms Bath Rooms Reception Rooms Property Photo Kitchen Owns

Owner details

Name

Addres s Phone number

Descriptio n

Photo ID

Visual Paradigm for UML 8.3 Enterprise Edition (VP-UML):

The designs of ERD, Class diagram and the Use case diagram of this case study are drawn by using this tool. In this VP-UML tool, we will see fields like the Menu bar, Toolbar, Diagram Navigator, Property pane, Message Pane and Diagram Pane.

The main parts of this tool are as follows:


1. Menu bar: It allows us to choose and do different types of actions in VP-UML. 2. Toolbar: It is at the bottom of the menu bar which is an addition to the menu bar.

Every button is obtainable in group of icons that are willingly accessible.


3.

Diagram Navigator: In this field diagrams are scheduled and clustered based on their type of which we can access obtainable diagrams and can create new diagrams.

4. Properties Pane: In this field possessions of the outline at present chosen are

shown.

5. Message Pane: In this field it will display messages or warnings of the system, if

generated.
6. Diagram Pane: It is a field in which the diagrams are displayed.

Entity Relationship Diagram (ERD) for HAHA:

The ER-diagram above deals explains the HAHA case study clearly by using entities and attributes given in the case study. Here we produced entities like property listings, property type, property photo, Address, owner details. The property listings entity include many attributes like owner id, postal codes, rent details like weekly, monthly or longer lets, state, city, size in meters or feet, number of bedrooms, bathrooms, reception rooms, kitchen with list of appliances and a brief description of the properties included. Coming to property type entity, it includes the details of types like

flat, detached house, terraced house and others. The property photo includes the photos of the properties with id which are kept for sale. Address specifies the area of the property located which can be searched by using postal codes/ district of the areas. The owner details include the name, address and phone number of the owners of properties. There are some other details which are not included in the diagram like Furnished / Unfurnished: a further detail of the furnishing is about to keep and the details customers who are buying the properties or hiring rooms. The rooms also possess heating equipments like radiators, fire and others.

Class Diagram: The need of a class diagram is to represent the classes in a form or model. In an object oriented application, classes possess attributes (member variables), operations (member functions) and relationships with others. A class is represented by a rectangle separated into three partitions:

The topmost partition contains the class name. The middle section contains a group of attributes. The last partition contains a group of operations (Grady Booch, Jim Rumbaugh and Ivar Jacobson, 1997).

Composition Relationships Each instance of type Circle seems to contain an instance of type Point. This is a relationship known as composition. It can be depicted in UML using a class relationship. Figure 3 shows the composition relationship. Inheritance The inheritance relationship in UML is depicted by a peculiar triangular arrowhead. This arrowhead, that looks rather like a slice of pizza, points to the base class. One or more lines proceed from the base of the arrowhead connecting it to the derived classes. Aggregation / Association The weak form of aggregation is denoted with an open diamond. This relationship denotes that the aggregate class (the class with the white diamond touching it) is in some way the whole, and the other class in the relationship is somehow part of that whole.

Class Diagram for HAHA:

The Class diagram for this case study includes classes like Property_Listings, Property_type, Property_photo, Address, Owner_details, Customer. In the Property_Listings class, we have attributes like owner_id, postal_codes, address, rent, state, city, size, Bed_rooms, bathrooms, Reception_rooms, kitchen and description and we have operations like helps customer to buy and helps owner to sell. In Property_type class we have owner_id and property_features attributes and operation like show types of properties. In property_photo class we have photo_id attribute, in Address class we have postal_codes attribute and operation like find address. In owner_details we have name, address and phone_number attributes along with place a property for sale and sell a property operations and in customer we have name, cus_id, address,

phone_number attributes and possess operations like buys a property and rents a property.

Use Case Diagram: It is defined as a group of connections among external actors and the system at our concern. It consists of actors and use cases. Actor: An actor is an entity from outside the system who communicates with the system An actor may possibly be a group of users, roles users can play, or other systems. Booch. G, I. Jacobson and J. Rumbaugh (1999) provides three relationships which may be used to build use cases. They are generalization, include and extends relationships.

Include: This relationship among two use cases represents that a series of actions expressed in the included (or sub) use case is incorporated in the series of the base (including) use case.

Extends: This relationship presents a mode of confining an alternative to the use case (Coleman, 1998). Generalization: This relationship among use cases means, the child use case includes the entire attributes, series of behavior, and expansion tips defined in the parent use case, and participates in all relationships of the parent use case (Booch. G, I. Jacobson and J. Rumbaugh, 1999).

use cases capture who (actor) does what (interaction) with the system, for what purpose (goal),without dealing with system internals. A complete set of use cases specifies all the different ways to use the system, and therefore defines all behavior required of the system, bounding the scope of the system. Generally, use case steps are written in an easy-to-understand structured narrative using the vocabulary of the domain. This is engaging for users who can easily follow and validate the use cases, and the accessibility encourages users to be actively involved in defining the requirements. Creation of use cases: The following provides an outline of a process for creating use cases: Identify all the different users of the system Create a user profile for each category of user, including all the roles the users play that are relevant to the system. For each role, identify all the significant goals the users have that the system will support. A statement of the systems value proposition is useful in identifying significant goals ( Booch, G., I. Jacobson and J. Rumbaugh, 1999). Create a use case for each goal, following the use case template. Maintain the same level of abstraction throughout the use case. Steps in higher-level use cases may be treated as goals for lower level (i.e., more detailed), sub-use cases. Structure the use cases. Avoid over-structuring, as this can make the use cases harder to follow. Review and validate with users.

Use Case Diagram for HAHA: The Use Case diagram for the HAHA case study is very simple diagram in which we have two actors and six use cases. The actors are Owner and customer. The owner performs two operations like entering information using insert property details and sells or leases rooms using sell/lease properties. The Customer actor performs four operations like search the properties using search listings, view the property using view property details, can add desired property to the online cart to buy the property using add listings and can delete the not interested property from the online cart using delete listing use case. The owner and the customer are connected through the Hallam Accommodation and Housing Agency (HAHA) website and there is no direct contact between them.

Relational Databases: All firms need data to be composed, handled and examined and a relational database satisfies these needs. In addition to the requirement of the strong aspects of a

relational database, we need to expand and maintain it. According to Kroenke .D (1999) the relational database model contains three interior mechanisms:
Gathering of objects / relations. Operators which perform operations on objects / relations. Data reliability techniques.

The hierarchical database is like a file system in nature with an origin or parent node and single or more leaf nodes indicating the parent. It brings in the quickest route for data-access, however with the cons of less flexibility, is short of ad-hoc query capacity, and elevated application protection Kroenke .D (1999).

Set of Relational Table Definitions for the ER-Diagram of HAHA: The ER-diagram above deals explains the HAHA case study clearly by using entities and attributes given in the case study. Here we produced entities like property listings, property type, property photo, Address, owner details. The property listings entity include many attributes like owner id, postal codes, rent details like weekly, monthly or longer lets, state, city, size in meters or feet, number of bedrooms, bathrooms, reception rooms, kitchen with list of appliances and a brief description of the properties included. Coming to property type entity, it includes the details of types like flat, detached house, terraced house and others. The property photo includes the photos of the properties with id which are kept for sale. Address specifies the area of the property located which can be searched by using postal codes/ district of the areas. The owner details include the name, address and phone number of the owners of properties. There are some other details which are not included in the diagram like Furnished / Unfurnished: a further detail of the furnishing is about to keep and the details customers who are buying the properties or hiring rooms. The rooms also possess heating equipments like radiators, fire and others. This ERD can be represented in the form of a set relational table definitions using ORACLE Database Express Edition 10g.

Oracle Database Express Edition(XE) 10g for Microsoft Windows: Oracle Database 10g was released in 2003 and it allows grid (the g in 10g) computing. Grid refers to a group of systems which offers required resources for requests. The objective is to offer computing resources which clearly balance to the client group. Oracle Database 10g additionally decreases the time, price, and difficulty of database managing by introducing self-managing features. One significant input to Oracle Database 10gs value in grid calculating is the capacity to stipulation CPUs plus data. In Oracle Database express edition, we utilize the Database Start Page to manage the database; construct tables, views and other diagram objects; bring in, export, and see table information; execute queries as well as SQL scripts; and produce reports.
Oracle Database XE has the following components: Oracle Database XE Server: The Oracle Database XE Server component provides both an Oracle database and tools for managing this database. It also includes the client component of Oracle Database XE, so that you can connect to the database from the same computer on which you installed the server component. Oracle Database XE Client: Oracle Database Client provides drivers, networking components, and tools that enable you to remotely administer the database

We used this tool to produce relational table definitions for the ER-diagram of the HAHA case study.
and to develop Java, .NET, PHP, and Oracle Application Express applications.

Creation of Table Definitions:


---> Property_listing table: create table Property_listing (ownersid varchar2(25) primary key, postcodes number(10), rent number(10),state varchar2(25),city varchar2(25),

sitesize number(10), Bedrooms number(5), Bathroom number(5), kitchen varchar2(20) ,descrition varchar2(100));

OWNERSID POSTCODES RENT STATE CITY SITESIZE BEDROOMS BATHROOM KITCHEN DESCRITION

NOT NULL VARCHAR2(25) NUMBER(10) NUMBER(10) VARCHAR2(25) VARCHAR2(25) NUMBER(10) NUMBER(5) NUMBER(5) VARCHAR2(20) VARCHAR2(100)

--->property_type table: create table property_type (ownersid varchar2(25) references propertylisting(ownersid), propertyfeatures varchar2(250));

OWNERSID PROPERTYFEATURES

VARCHAR2(25) VARCHAR2(250)

---> owners_details table: create table owners_details number(10)); (name varchar2(20),address varchar2(100),phoneno

NAME ADDRESS PHONENO

VARCHAR2(20) VARCHAR2(100) NUMBER(10)

---> property_listing_ownerdetails table: create table property_listing_ownerdetails (property_listing_owners_id number(10));

PROPERTY_LISTING_OWNERS_ID

NUMBER(10)

Generated output for tables created: SQL> select * from property_listing; no rows selected SQL> desc property_listing;

Name

Null?

Type

----------------------------------------- -------- ---------------------------OWNERSID POSTCODES RENT STATE CITY SITESIZE BEDROOMS BATHROOM KITCHEN DESCRITION NOT NULL VARCHAR2(25) NUMBER(10) NUMBER(10) VARCHAR2(25) VARCHAR2(25) NUMBER(10) NUMBER(5) NUMBER(5) VARCHAR2(20) VARCHAR2(100)

SQL> desc property_type; Name Null? Type

----------------------------------------- -------- ---------------------------OWNERSID PROPERTYFEATURES VARCHAR2(25) VARCHAR2(250)

SQL> desc owners_details; Name Null? Type

----------------------------------------- -------- ---------------------------NAME ADDRESS PHONENO VARCHAR2(20) VARCHAR2(100) NUMBER(10)

SQL> desc property_listing_ownerdetails Name Null? Type

----------------------------------------- -------- ---------------------------PROPERTY_LISTING_OWNERS_ID NUMBER(10)

SQL> spool off.

Peer assessment: A team is a little group of persons possessing corresponding talent, dedicated for a general use, acting for an attain, and their move for which they are in grasp of themselves to be jointly accountable Kaufman, D.B., Felder, R.M., and Fuller, H. (2000). The learner teams need not gratify with all the necessities of the explanation, in the level which they resolve their efficiency. Though resolving personal levels of efforts put forward by a team is a difficult job. With the help of peer assessment, all personal levels can be resolved. It permits all the team associates to review others including themselves. Team work done for the peer assessment gives information which can be used in conveying the personal grades.

Conclusion:

This is a case study is about the Hallam Accommodation and Housing Agency (HAHA) which starts with a brief introduction about the organization followed by explanation of the terms Entity Relationship Diagrams (ERDs), Class diagrams and Use Case diagrams. We then dealt with the designs of the above mentioned diagrams related to the HAHA case study. We also included a description of all the designs followed by the relational table definitions of ERD. We also discussed that how the class hierarchies can be implemented using the relational model. We also suggest that this case study is good enough in describing the organization, but it will be very good if it provides much more information as it lags in some aspects like not including that how the data related customers is implemented in ERD and in the tables and some other details related to owners and properties.

References:

Booch, G., I. Jacobson and J. Rumbaugh, The Unified Modeling Language User Guide. Addison-Wesley, 1999, pp.219-241. Coleman, Derek, A Use Case Template: Draft for discussion, Fusion Newsletter, April 1998. Available at http://www.hpl.hp.com/fusion/news/apr98.ppt.

Date C J. 1995 (6th ed.) An introduction to database systems. Addison-Wesley.


Martin James 1981. An end users guide to data base. Prentice Hall [ISBN 0-1377129-2] Reingruber Michael C. Gregory William W 1994 The Data Modelling Handbook John Wiley & Sons Chichester. Object Oriented Analysis and Design, Grady Booch, Benjamin Cummings, (1994). Object Oriented Modeling and Design, James Rumbaugh, et. al., Prentice Hall, (1991). Object Oriented Software Engineering, Ivar Jacobson, et. al., Addison Wesley, (1992).

Kroenke

.D.

(1999).

Database

processing:

Fundamentals,

Design

and

Implementation. (7th edition) Pearson Publications. Kaufman, D.B., Felder, R.M., and Fuller, H. (2000), Accounting for Individual Effort in Cooperative Learning Teams, Journal of Engineering Education, 89(2), 133140.

http://media.wiley.com/product_data/excerpt/97/07821418/0782141897.pdf http://www.foundationcoalition.org http://media.visualparadigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1. pdf.

http://media.visualparadigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3. pdf.

http://images.visual-paradigm.com/quickstart/vpuml71_quickstart_20100201.pdf. http://www.visual-paradigm.com/product/vpuml/tutorials/erd.jsp http://docs.oracle.com/cd/B25329_01/doc/install.102/b25143.pdf http://software.ucv.ro/~cstoica/DD/lab1%20DD.pdf http://oreilly.com/catalog/oressentials3/chapter/ch01.pdf

You might also like