This week’s main task was to come up with a scenario in which a database is needed to capture, organize and maintain data with a minimal of 6 significant entities. I wanted to do something that is relevant not only to my interest but also representative in real life usage. I spent enough time to think through the scenario as it is to be used through the rest of the course. My choice has come to an Apartment Rental Database used by apartment/condo management companies potentially in a SaaS model. With that in mind, I came up with the following significant entities:
1. Resident
2. Management Company
3. Building
4. Suite
5. Feature (Such as Bedroom 1, Bedroom 2, bathroom and kitchen that made up the layout of a suite)
6. Parking
7. Price Band (for parking and suite)
There are 7 significant entities identified. Of course, the number of entities can grow as business scales as more data is needed to be tracked and managed. At present, these 7 entities should suffice. Once normalized, linked tables will be introduced to link up many to many relationships and lookup tables will be added. I expect at least doubling the number of entities in 3NF as the first cut model.
As I mentioned before, database and normalization isn’t a new concept to me so I don’t have much trouble to get up and running. PostgreSQL on the other hand, is new to me and I still getting used to it. I have mostly used Oracle and MS SQL db clients in my career although I have used MySQL as well. The fundamental concept is very similar across the aforementioned platforms; however, sometime it is the trivialities that get you. For example, each dbms has their own perspective favor of additional data types that are named differently. All in all, it is fairly straight forward to transition from one to another give the grounded knowledge on DBMS. I look forward to the coming week to explore more on normalization.
Dickson
The Landing is a social site for Athabasca University staff, students and invited guests. It is a space where they can share, communicate and connect with anyone or everyone.
Unless you are logged in, you will only be able to see the fraction of posts on the site that have been made public. Right now you are not logged in.
If you have an Athabasca University login ID, use your standard username and password to access this site.
We welcome comments on public posts from members of the public. Please note, however, that all comments made on public posts must be moderated by their owners before they become visible on the site. The owner of the post (and no one else) has to do that.
If you want the full range of features and you have a login ID, log in using the links at the top of the page or at https://landing.athabascau.ca/login (logins are secure and encrypted)
Posts made here are the responsibility of their owners and may not reflect the views of Athabasca University.
Comments
I'm glad to hear that PostgreSQL is not too scary - I'm still learning the ropes myself. I think that, on balance, I prefer the management console to those available for Oracle and MySQL and I'm really appreciating the comprehensive help system.
I wonder what the attributes would be for Parking, Feature and Price Band? Would this system also handle the rentals themselves? If so, then I guess there's at least one more entity here (rental) and probably at least one entity relating to billing and payments. I think that might make it a bit more interesting!
Hi Professor Dron,
At the moment, I concern only with the inventory management and marketing information aspect of the system. Initially I thought the payment portion should be taken care of by other invoicing system, however, the system is still evolving so I would certainly consider that possibility.
Thanks for your comment!
Dickson