Home | Client | Class Page | Teacher's Home | CS Dept. | WSU |
On Monday March 29, 1999 we presented our design to our peers, development team of YESH.
Group lead Faisal, started out with handing out the ER and class diagrams, and a list of important definitions that could be referenced during the presentation. Then he gave a brief description of client requirements, followed by an introduction to the system design. He explained the two options that were explored and the reasons for choosing the Database based design.
Alexey, our database expert explained the database design. He started out with explaining the different jobs that the database has to perform. He concluded that since these are two totally different functions that the database has to perform therefore it is best to split the database into two subDataBase.
Cindy followed with the detailed description of the entities and relationships. She explained the attributes that each entity is comprised of. Then she explained the relationships that exist between entities.
Jimmy explained the many classes that are needed to build the interface and functionality. Furthermore he explained the structure of the classes and the relationship of classes with each other and the database.
Lily explained a few of the functions from a couple of classes. She explained the interface among the classes and the flow of information. She also demonstrated, with the use of ValidID() function from the Video class, the interface between classes and tables.
Even though no problems were found with the design, there were some good questions raised, specially about the database design.
The Family and Customer entities can not be merged into one because the client requires a primary account entity and an individual account entity. The client wants to control the number and the highest rating of movie that can be rented by an individual, and the total number of movies that can be rented by a primary account. Even though this requirement adds some complexity to the design but helps get rid of some of the redundacy and duplication of data, such as phone number and address, which needs to be stored only once for all members of same household. We are certain the client didn't think about this added benefit when coming up with the requirements.
The abstractions used by Hurrah are very real life. That is, a family or household can have many members, e.g. a head, and potentially many family members. Therefore an individual family member, known as Customer in Hurrah, belongs to one and only one household, known as Family, that's why the cardinality of 1:1. On the other hand, a Family can have many members but no less than one i.e. every household has at least one member who is the head of household as well. Therefore the relation BelongsTo has cardinality of 1:N on Customer.
The reservation information is not stored permanently, i.e. it is deleted as soon as the Customer picks up the Movie, or the reservation time expires. Therefore there is no need to store the information about the employee who helped reserve the movie(s).
The Reserve is a one-to-many relation because at a given time one Video can be reserved by a maximum of one Customer, but one Customer can reserve more than one Videos.
Home Page | Client Page | Class Page | Teacher's Home | CS Dept. | WSU |
---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |