Download - HAHA Complete Project to Be Done
-
8/2/2019 HAHA Complete Project to Be Done
1/19
Logical Database Development
Hallam Accommodation and Housing
Agency
(A CASE STUDY)
-
8/2/2019 HAHA Complete Project to Be Done
2/19
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 casestudy.
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 groupsof 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.
-
8/2/2019 HAHA Complete Project to Be Done
3/19
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 identifyappropriate 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:
-
8/2/2019 HAHA Complete Project to Be Done
4/19
Visual Paradigm for UML 8.3 Enterprise Edition (VP-UML):
Property Listing
Belong
s to
Address
Owners Id
Postal
codes
Size
Bed
Rooms
Rent
State
City
Bath
Rooms
Kitchen
HAS
Owners ID
Descriptio
n
Owns
Property Photo
Photo ID
Reception
Rooms
Property type
Property
features
Owner details
Name
Addres
s
Phone
number
-
8/2/2019 HAHA Complete Project to Be Done
5/19
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.
-
8/2/2019 HAHA Complete Project to Be Done
6/19
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
-
8/2/2019 HAHA Complete Project to Be Done
7/19
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, andthe other class in the relationship is somehow part of that whole.
-
8/2/2019 HAHA Complete Project to Be Done
8/19
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,
-
8/2/2019 HAHA Complete Project to Be Done
9/19
phone_number attributes and possess operations like buys a property and rents a
property.
Use Case Diagram:
It isdefined 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 entityfrom 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 (orsub) 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 whatpurpose (goal),without dealing with system internals. A complete setof 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.
-
8/2/2019 HAHA Complete Project to Be Done
10/19
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
-
8/2/2019 HAHA Complete Project to Be Done
11/19
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 theproperties 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.
-
8/2/2019 HAHA Complete Project to Be Done
12/19
Oracle Database Express Edition(XE) 10g for Microsoft Windows:
Oracle Database 10g was released in 2003 and it allows grid (the gin 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 10gadditionally decreases the time, price, and difficulty of databasemanaging by introducing self-managing features. One significant input to OracleDatabase 10gs value in grid calculating is the capacity to stipulation CPUs plus data. InOracle Database express edition, we utilize the Database Start Page to manage thedatabase; construct tables, views and other diagram objects; bring in, export, and seetable 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. Italso includes the client component of Oracle Database XE, so that you canconnect to the database from the same computer on which you installed the server component.
Oracle Database XE Client:Oracle Database Client provides drivers, networkingcomponents, and tools that enable you to remotely administer the database
and to develop Java, .NET, PHP, and Oracle Application Express applications.We used this tool to producerelational table definitions for the ER-diagram of the HAHA case study.
-
8/2/2019 HAHA Complete Project to Be Done
13/19
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),
-
8/2/2019 HAHA Complete Project to Be Done
14/19
sitesize number(10), Bedrooms number(5), Bathroom number(5),
kitchen varchar2(20) ,descrition varchar2(100));
OWNERSID NOT NULL VARCHAR2(25)
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)
--->property_type table:-
create table property_type (ownersid varchar2(25) references propertylisting(ownersid),
propertyfeatures varchar2(250));
OWNERSID VARCHAR2(25)
PROPERTYFEATURES VARCHAR2(250)
-
8/2/2019 HAHA Complete Project to Be Done
15/19
--->owners_details table:-
create table owners_details (name varchar2(20),address varchar2(100),phoneno
number(10));
NAME VARCHAR2(20)
ADDRESS VARCHAR2(100)
PHONENO 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;
-
8/2/2019 HAHA Complete Project to Be Done
16/19
Name Null? Type
----------------------------------------- -------- ----------------------------
OWNERSID NOT NULL VARCHAR2(25)
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)
SQL> desc property_type;
Name Null? Type
----------------------------------------- -------- ----------------------------
OWNERSID VARCHAR2(25)
PROPERTYFEATURES VARCHAR2(250)
SQL> desc owners_details;
Name Null? Type
-
8/2/2019 HAHA Complete Project to Be Done
17/19
----------------------------------------- -------- ----------------------------
NAME VARCHAR2(20)
ADDRESS VARCHAR2(100)
PHONENO 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 ofpeer 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:
-
8/2/2019 HAHA Complete Project to Be Done
18/19
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-13-
77129-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).
http://www.hpl.hp.com/fusion/news/apr98.ppthttp://www.hpl.hp.com/fusion/news/apr98.ppt -
8/2/2019 HAHA Complete Project to Be Done
19/19
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.visual-
paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.
pdf.
http://media.visual-
paradigm.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
http://media.wiley.com/product_data/excerpt/97/07821418/0782141897.pdfhttp://media.wiley.com/product_data/excerpt/97/07821418/0782141897.pdfhttp://www.foundationcoalition.org/http://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://images.visual-paradigm.com/quickstart/vpuml71_quickstart_20100201.pdfhttp://images.visual-paradigm.com/quickstart/vpuml71_quickstart_20100201.pdfhttp://www.visual-paradigm.com/product/vpuml/tutorials/erd.jsphttp://docs.oracle.com/cd/B25329_01/doc/install.102/b25143.pdfhttp://docs.oracle.com/cd/B25329_01/doc/install.102/b25143.pdfhttp://software.ucv.ro/~cstoica/DD/lab1%20DD.pdfhttp://software.ucv.ro/~cstoica/DD/lab1%20DD.pdfhttp://oreilly.com/catalog/oressentials3/chapter/ch01.pdfhttp://oreilly.com/catalog/oressentials3/chapter/ch01.pdfhttp://media.wiley.com/product_data/excerpt/97/07821418/0782141897.pdfhttp://www.foundationcoalition.org/http://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter1.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://media.visual-paradigm.com/media/documents/dbva40dg/pdf/dbva_designer_guide_chapter3.pdfhttp://images.visual-paradigm.com/quickstart/vpuml71_quickstart_20100201.pdfhttp://www.visual-paradigm.com/product/vpuml/tutorials/erd.jsphttp://docs.oracle.com/cd/B25329_01/doc/install.102/b25143.pdfhttp://software.ucv.ro/~cstoica/DD/lab1%20DD.pdfhttp://oreilly.com/catalog/oressentials3/chapter/ch01.pdf