Facts for a Musicians in a Band
The FACTS define the Business Rules ...
1. What are the 'Things of Interest' in the Scope to be modelled ...
- Person (Persons_id, Person_name, Person_address, Person_phone)
- Instrument (Instrument_id, Instrument_name, Instrument_type)
- Proficiency (Persons_proficiency, Person_id, Instrument_id)
- Band (Band_id, Band_name, Band_contact_peson_id)
- Band_Member (Band_id, Person_id)
2. How are these 'Things of Interest' related ? ...
- An Instrument is always of one and only Type.
- A Person can play one or many Instruments, if the Contact Person always plays an Instrument.
- A Person can play zero or many Instruments, if the Contact Person could be a member who does not play an Instrument,
such as a Band Manager or Agent.
- A Person always has a specified Profiency Level in an Instrument.
- A Person can be in zero or many Bands.
- A Person has a specified Role in a Band, such as Contact Person, or Band Member.
3. What do we know about the 'Things of Interest' ? ...
In the Data Model, an 'id' field, such as person_id, is a generated integer,
without any meaning in itself, and is used as a surrogate key.
A 'code' field is an abbrevation of a name or description, and used because
the volumes of data are smaller, and do not need to be generated dynamically.
- A Band has :-
- A Band Code
- A Band Name
- The Date Started, if known.
- The Date Disbanded, which will usually be in the future, and unspecified.
- An Instrument has :-
- An Instrument Code
- An Instrument Name
- A Person has :-
- An ID.
- A Name
- An Address
- A Phone.
- A Role is Reference data ans has :-
- A Role Code,(e.g. 'CONTACT')
- A Description