Background
Conceptual data modeling is a key first step in creating a database. Lakshmi knows that. She knows that she needs to understand information objects that are important for her project activity tracking system she has been asked to build. So she starts with a requirements workshop followed by individual interviews of the experts and potential users in order to understand the data that will need to be stored.
Requirements
Here are some of her notes from these workshops and interviews.
- each project is managed by a project manager like Tom Francis and Vivek Patel
- Tom also manages another project
- project activities are not tracked right now and it’s causing problems with billing; project budgets are not adhered to and there’s no visibility why projects are over budget
- Vivek needs to know who is doing which activities, how long an activity actually takes versus what is estimated, and who else is working on an activity besides the person responsible for it
- some activities appear to fall through the cracks as they are not assigned to anyone; all activities should have someone responsible for them
- the activities have to be better prioritized and should appear in order of importance in the backlog for better sprint planning
- Janice uses RACI a lot so she knows who does what on some task
- tasks and activities are the same although Vivek thinks they are different: tasks are bigger; he thinks that we should think of tasks as being composed of activities – tasks are assigned to several resources but activities should only be done by one person
- tasks don’t have start and end dates and are assigned to a sprint; sprints have end dates though
- sprint planning is generally only one or two sprints ahead but could be more
Demonstration
Before looking at the demonstration, try to do this yourself first. Start by identifying entities, their attributes, and the relationships between the entities from Lakshmi’s notes. Visualize the ontology in an entity relationship diagram using the Crow’s Foot (IE) notation. You can draw the diagram by hand or you can use a tool such as LucidChart. Of course, you may use any other tool of your choosing.
Follow this demonstration and chalk-talk by Dr. Schedlbauer of Khoury Boston. Consider creating an ER Diagram in a tool of your choice to practice. Think about how you could have applied these techniques in some project you have done in the past.
Errata
None collected yet. Let us know.