• subscribe
October 24, 2001 12:00 AM

Metamodel for Scheduling System

SQL Server Pro
InstantDoc ID #22196

Figure 4 shows the last criterion—a place where the work gets done—as Workplace and its associated entities. Workplaces have an associated code value (WorkplaceCode), such as classroom BMC201, warehouse W10, or store K33. For clarity, you can record a long description of these workplace locations (WorkplaceLocation) and the size of the usable space (WorkplaceSize). You can also record each Workplace's special features (WorkplaceSpecialFeatures), such as whiteboards for classroom BMC201, three loading docks for warehouse W10, and in-store banking services for store K33.

If you schedule workplace use, you need to include the entity WorkplaceAvailability, which tells you available days and times for each workplace. WorkplaceAvailability is a detail entity; the association between Workplace and WorkplaceAvailability is 1:M. A workplace such as store K33 or warehouse W10 might be available all day, every day. If the workplace is a shared facility like classroom BMC201, it might be available only on certain days and at certain times. You can plan workplace-dependent WorkInstances by programmatically checking WorkplaceAvailability's available days and times and comparing that schedule with the EstimatedTime that you need to accomplish a WorkInstance. After you find a workplace that's available for the length of time you need it and at an appropriate location, you can reserve the workplace by creating an entry in Workplace_WorkInstance. The attributes ReserveDateTimeStart and ReserveDateTimeEnd show that you can reserve by date, by time, or both, depending on your needs. WorkInstance to Workplace is a M:N relationship because one Workplace might be able to host zero or more WorkInstances, whereas a WorkInstance needs at least one—and maybe more than one—Workplace in which the employees get the work done.

Figure 4, despite its complexity, still shows the four basic components that you need for any successful scheduling system: work to be done, someone to do the work, a time frame in which to do the work, and a place in which to do the work. The attribute sets for each entity in the metamodel can vary widely, depending on the details of each situation. However, the concept and the entities that represent the concept remain the same in most cases. The next time you have to struggle with scheduling work, use this metamodel to make your job a little easier.



ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here