UML Class Diagram Design
Budget: $10 – $30 USD
In this assignment, you are requested to create a software design for a chain of Floor Supply
Stores, an application for managing inventory whose requirements are listed below. To do so,
you should follow the same approach that we presented in class, that is, analyze the
requirements to identify and refine (1) classes, (2) attributes, (3) operations, and (4)
relationships in your design. Just to be completely clear, your task is to design the system,
not to implement it. Please note that not all requirements will necessarily affect your design in
a direct way. For example, you do not have to do anything about the GUI in your design. For
another example, the fact that a DB is mentioned does not mean that you have to actually
model a DB. Your design should be expressed using a UML class diagram.
Requirements
1. As a user of the system I want to be able to see each store's offering and the amount of
product in stock by square feet.
2. The application must allow employees to add new products to the system. As well as
delete and edit them.
3. The different categories of floors available are tile, stone, wood, laminate and vinyl
4. The application must contain a database (DB) of floors.
5. Users must be able to search for products by picking from a hierarchical list, where the
first level is the floor category, and the second level is the floor type.
6. Users must also be able to specify an item by typing its name (search functionality).
7. All floors regardless of their category have an associated color, size, brand, type and
price
8. Categories tile and stone have different materials they are made of, e.g. Tile - porcelain,
ceramic, resin; Stone - marble, pebble, slate
9. Wood floors have both a type (solid, engineered, bamboo, etc) and species (oak,
hickory, maple, etc.)
10. Laminate can be regular laminate or water resistant, whereas vinyl can be water
resistant or waterproof
11. The User Interface (UI) must be intuitive and responsive.
Stores, an application for managing inventory whose requirements are listed below. To do so,
you should follow the same approach that we presented in class, that is, analyze the
requirements to identify and refine (1) classes, (2) attributes, (3) operations, and (4)
relationships in your design. Just to be completely clear, your task is to design the system,
not to implement it. Please note that not all requirements will necessarily affect your design in
a direct way. For example, you do not have to do anything about the GUI in your design. For
another example, the fact that a DB is mentioned does not mean that you have to actually
model a DB. Your design should be expressed using a UML class diagram.
Requirements
1. As a user of the system I want to be able to see each store's offering and the amount of
product in stock by square feet.
2. The application must allow employees to add new products to the system. As well as
delete and edit them.
3. The different categories of floors available are tile, stone, wood, laminate and vinyl
4. The application must contain a database (DB) of floors.
5. Users must be able to search for products by picking from a hierarchical list, where the
first level is the floor category, and the second level is the floor type.
6. Users must also be able to specify an item by typing its name (search functionality).
7. All floors regardless of their category have an associated color, size, brand, type and
price
8. Categories tile and stone have different materials they are made of, e.g. Tile - porcelain,
ceramic, resin; Stone - marble, pebble, slate
9. Wood floors have both a type (solid, engineered, bamboo, etc) and species (oak,
hickory, maple, etc.)
10. Laminate can be regular laminate or water resistant, whereas vinyl can be water
resistant or waterproof
11. The User Interface (UI) must be intuitive and responsive.
Related categories:
UML Design