Построение неизбыточного покрытия
Исходное множество функциональных зависимостей представлено на рисунке 2.3.
| sp, np -> Fam, Im, Otch, pol, dateborn, datevidachi, kemvidan, country, city, street, numstreet, numflat, dolgnost |
| Fam, Im, Otch, dateborn, country, city, street, numstreet, numflat -> sp, np |
| sp_pl, np_pl -> date, rost, ves, staff, number, status |
| date, staff, number, status -> sp_pl, np_pl |
| sp, np -> num_room |
| num_p -> square, naznachenie |
| num_room -> room |
| num_zal -> type_zal |
| num_zal -> num_p |
| code_obj -> kol, date, balance |
| code_inv -> firm_inv, model_inv |
| code_inv -> code_obj |
| code_tec -> firm_tec, model_tec |
| code_tec -> code_obj |
| code_meb -> firm_meb, dlina, width, height, color |
| code_meb -> code_obj |
| inv_number_INV -> code_inv |
| inv_number_TEC -> code_tec |
| inv_number_MEB -> code_meb |
| inv_number_INV_out -> inv_number_INV |
| inv_number_TEC_out -> inv_number_TEC |
| inv_number_MEB_out -> inv_number_MEB |
| inv_number_INV_out -> date_out_inv |
| inv_number_TEC_out -> date_out_tec |
| inv_number_MEB_out -> date_out_meb |
| inv_number_INV, date_IinZal -> num_zal |
| inv_number_TEC, date_TecInP -> num_р |
| inv_number_MEB, date_MebInP -> num_р |
| code_balls -> material |
| code_balls -> code_inv |
| code_gate -> height_gate, shirina, kind |
| code_gate -> code_inv |
| code_trenager -> type |
| code_trenager -> code_inv |
| code_TV -> diagonal, screen |
| code_TV -> code_tec |
| code_refreg -> height_ref, widht_ref, depht_ref, sum_sq_polok, com_volume, user_volume |
| code_refreg -> code_tec |
| code_vacuum -> moshnost_v |
| code_vacuum -> code_tec |
| code_bed -> type_bed |
| code_bed -> code_meb |
| code_table -> type_table, material_table |
| code_table -> code_meb |
| code_shkaf -> type_shkaf |
| code_shkaf -> code_meb |
Рисунок 2.3 - Исходное множество функционаьных зависимостей
В ходе построения неизбыточнго покрытия множество функциональных зависимостей не изменилось.
Построение леворедуцированного покрытия
В ходе построения леворедуцированного покрытия множество функциональных зависимостей не изменилось.
Построение праворедуцированного покрытия
В ходе построения праворедуцированного покрытия множество функциональных зависимостей не изменилось.
Построение классов эквивалентности
Этапы построения классов эквивалентности представлены на рисунке 2.8.
| 1. Ef(sp, np): |
| sp, np -> Fam, Im, Otch, pol, dateborn, datevidachi, kemvidan, country, city, street, numstreet, numflat, dolgnost |
| Fam, Im, Otch, dateborn, country, city, street, numstreet, numflat -> sp, np |
| sp, np -> num_room |
| 2. Ef(sp_pl, np_pl): |
| sp_pl, np_pl -> date, rost, ves, staff, number, status |
| date, staff, number, status -> sp_pl, np_pl |
| 3. Ef(num_p): |
| num_p -> square, naznachenie |
| 4. Ef(num_room): |
| num_room -> room |
| 5. Ef(num_zal): |
| num_zal -> type_zal |
| num_zal -> num_p |
| 6. Ef(code_obj): |
| code_obj -> kol, date, balance |
| 7. Ef(code_inv): |
| code_inv -> firm_inv, model_inv; code_inv -> code_obj |
| 8. Ef(code_tec): |
| code_tec -> firm_tec, model_tec; code_tec -> code_obj |
| 9. Ef(code_meb): |
| code_meb -> firm_meb, dlina, width, height, color; code_meb -> code_obj |
| 10. Ef(inv_number_INV): |
| inv_number_INV -> code_inv |
| 11. Ef(inv_number_TEC): |
| 15. Ef(inv_number_MEB_out): |
| inv_number_MEB_out -> inv_number_MEB |
| inv_number_MEB_out -> date_out_meb |
| 16. Ef(inv_number_INV, date_IinZal): |
| inv_number_INV, date_IinZal -> num_zal |
| 17. Ef(inv_number_TEC, date_TecInP): |
| inv_number_TEC, date_TecInP -> num_р |
| 18. Ef(inv_number_MEB, date_MebInP): |
| inv_number_MEB, date_MebInP -> num_р |
| 19. Ef(code_balls): |
| code_balls -> material |
| code_balls -> code_inv |
| 20. Ef(code_gate): |
| code_gate -> height_gate, shirina, kind |
| code_gate -> code_inv |
| 21. Ef(code_trenager): |
| code_trenager -> type |
| code_trenager -> code_inv |
| 22. Ef(code_TV): |
| code_TV -> diagonal, screen |
| code_TV -> code_tec |
| 23. Ef(code_refreg): |
| code_refreg -> height_ref, widht_ref, depht_ref, sum_sq_polok, com_volume, user_volume |
| code_refreg -> code_tec |
| 24. Ef(code_vacuum): |
| code_vacuum -> moshnost_v |
| code_vacuum -> code_tec |
| 25. Ef(code_bed): |
| code_bed -> type_bed |
| code_bed -> code_meb |
| 26. Ef(code_table): |
| code_table -> type_table, material_table |
| code_table -> code_meb |
| 27. Ef(code_shkaf): |
| code_shkaf -> type_shkaf |
| code_shkaf -> code_meb |
Рисунок 2.4 - Этапы построения классов эквивалентности






