Implementing an effective Data Model
2 Tasks
45 mins
Scenario
The Delivery Service team is currently in the design phase of their project. Their initial task is to evaluate the existing set of enterprise-level data classes created by the MDC Center of Excellence (COE) team to determine which data classes they can incorporate into their design. During this review, the team might identify data classes that the MDC COE team has not yet defined.
When encountering such undefined data classes, the Delivery Service team must decide whether to establish the classes at the enterprise level or manage them internally. This decision must consider the scope of the data class, the potential for reuse across the organization, and the effort that is necessary for its definition and upkeep.
If a data class is considered significant at the enterprise level, the Delivery Service team must collaborate with the MDC COE team to formally define the class and incorporate it into the enterprise Data Model. Conversely, if a data class is specific to the Delivery Service team's project, they must manage the class and include it in the Data Model of their project.
Ultimately, the Delivery Service team's review of the MDC COE team's enterprise-level data classes is crucial for ensuring that their project aligns with the broader enterprise Data Model and that data management is consistent throughout the organization.
The following table provides the credentials you need to complete the challenge:
Role | User name | Password |
---|---|---|
Administrator | Admin@MDC | rules |
Detailed Tasks
1 Analyze the MDC enterprise Data Model
The following diagram shows the MDC enterprise Data Model, which details the relationships between shipment categories, truck vendors, and related entities:
- A business partner has a contact, addresses, and an invoice.
- A truck vendor has a contact, address, service, and truck.
- A delivery request has a pickup, delivery address, and an invoice.
- A truck request has an invoice.
- An invoice has a contact associated with it.
The following table outlines the various classes in the system, along with their descriptions and roles in managing contacts, addresses, business partners, invoices, and truck-related data:
Class | Description | |
---|---|---|
MDC-Data-Contact | Contact of Business partner and Vendor. | |
MDC-Data-Address | Address of Business partner, Vendor, Pickup, and delivery addresses. | |
|
Holds the business partner data. | |
MDC-Data-Invoice | All the invoices paid and received. | |
MDC-Data-TruckVendor | Holds Truck Vendor data. | |
MDC-Data-TruckService | For each city, defines how many trucks are supplied for a given city where MDC operates, the type of contract, minimum trucks. | |
MDC-Data-Truck | Truck and its associated VIN and size. | |
MDC-Data-LinkDeliveryTruck | A Delivery request can involve more than one truck, and a given truck can have delivery requests associated with it from various business partners. There is a many-to-many relation between a Truck request and a Delivery request. |
The following diagram shows the relationships between shipment categories, truck vendors, and related entities:
The following table presents various Cases and their associated data objects, along with comments that describe the purpose and context of each Case:
Case | Associated data object | Comments |
---|---|---|
Partner |
|
Case for Registration of partner with MDC. |
Vendor enrollment |
|
Case for enrollment of Vendor with MDC. |
Truck service approval |
|
Child Case to vendor enrollment for parallel approvals from city managers. |
Delivery request |
|
Case for Delivery request by business partner. |
Truck request |
|
Case to track the delivery of the shipping orders from pickup to delivery address in the given city. |
Invoice |
|
Invoice to handle credits and debits. |
2 Complete the assignments
The definition of the Data Model includes the Data Model for each Case Type, not just Data- class-extending data types.
For each Data Model class, you must show:
- The full class name and what class is extended.
- Whether the class is abstract or concrete.
- If concrete, the class shows the schema in which instances are persisted.
- Properties used for data relationships.
- Use embedded, or if it is a reference, add Ref to the property name.
- Use list if an item is a list.
- Critical scalar properties.
Confirm your work
Available in the following mission:
Want to help us improve this content?