Нотация структурированного классификатора для изображения композитной агрегации(Прочитано 21500 раз)
В некоторых случаях (см. далее пример) хочется использовать нотацию структурированного классификатора для изображения композитной агрегации, как наиболее выразительную и компактную. Примеров на эту тему немного и они слишком просты (если я ошибаюсь - поправьте и направьте).

Рассмотрим пример.
Период - интервал времени (с, по) с точностью до дня. Периоды классифицируются по типам: год, месяц, рабочая неделя, учебная четверть, ... Периоды одного типа: 1) либо следуют один за другим (год, месяц), т.е. следующий начинается сразу по окончании предыдущего, такой тип периода назовем "без промежутков"; 2) либо нет (рабочая неделя, учебная четверть - прерываются на выходные, каникулы), такой тип периода назовем "с промежутками". Примеры периодов: "январь 2010 года" - начинается 01.01.2010, заканчивается 31.01.2010, "1 четверть 2010/2011 учебного года" - начинается 01.09.2010, заканчивается 05.11.2010. Периоды "с промежутками" описываются датами начала и конца. Периоды "без промежутков" можно описать только датой конца, а дату начала определять по дате конца предыдущего периода того же типа. Для самого первого периода, у которого нет предыдущего, дата начала определяется за счет того, что в описание типа периода входит дата начала.

Во вложении - что получилось. Так можно? нужно? нельзя?



Очень интересную вы затронули тему. Однако.

1. Почему Период является частью композита Тип периода. Как-то не очень сопоставимо. Сравните: Род - Семейство - Вид - Подвид. Но означает ли, что удаляя РОД мы таким образом удаляем все что входит в него по иерархии?

2. чем отличается понятие Период от Понятие ТипПериода?



Не знаю как тут может помочь структурированный классификатор.
Должно получиться что-то такое.



2 Денис Иванов

Состав типов периодов (и периодов, конечно) должен управляться пользователем: год, месяц, четверть и неделя - только примеры.



Цитировать
1. Почему Период является частью композита Тип периода. Как-то не очень сопоставимо. Сравните: Род - Семейство - Вид - Подвид. Но означает ли, что удаляя РОД мы таким образом удаляем все что входит в него по иерархии?

2. чем отличается понятие Период от Понятие ТипПериода?

1. По Арлоу-Нейштадт почти любая ассоциация должна стать агрегацией или композицией, а не только отношения типа "часть-целое". Структурная модель отвечает какие условия выполняются. А как происходит удаление (и другие действия), причем чтобы не нарушить условия структурной модели, определяет модель поведения.

2. Пример: тип периода - месяц, периоды - декабрь 2009, январь 2010.



2 Денис Иванов

Состав типов периодов (и периодов, конечно) должен управляться пользователем: год, месяц, четверть и неделя - только примеры.

Главное то, что они известны заранее. Ведь так?



Нет, не известны.



Тогда должна быть описана универсальная структура для описания любых возможных периодов. И где она?



Цитировать
Тогда должна быть описана универсальная структура для описания любых возможных периодов. И где она?

В сообщении
Цитировать
Период - интервал времени (с, по) с точностью до дня. Периоды классифицируются по типам: год, месяц, рабочая неделя, учебная четверть, ... Периоды одного типа: 1) либо следуют один за другим (год, месяц), т.е. следующий начинается сразу по окончании предыдущего, такой тип периода назовем "без промежутков"; 2) либо нет (рабочая неделя, учебная четверть - прерываются на выходные, каникулы), такой тип периода назовем "с промежутками". Примеры периодов: "январь 2010 года" - начинается 01.01.2010, заканчивается 31.01.2010, "1 четверть 2010/2011 учебного года" - начинается 01.09.2010, заканчивается 05.11.2010. Периоды "с промежутками" описываются датами начала и конца. Периоды "без промежутков" можно описать только датой конца, а дату начала определять по дате конца предыдущего периода того же типа. Для самого первого периода, у которого нет предыдущего, дата начала определяется за счет того, что в описание типа периода входит дата начала.
И формализованное представление - там же во вложении.



Нарисуйте диаграмму объектов, на которой изобразите для примера "январь 2010 года", "1 четверть 2010/2011 учебного года"



Диаграмма объектов во вложении.



значения атрибутов забыли



Атрибуты:
ПерваяЧетверть2010/2011 - начало=01.09.2010; конец=05.11.2011
Месяц - начало=01.12.2009
Декабрь2009 - конец=31.12.2009
Январь2010 - конец=31.01.2010

Понимаю, что лучше бы на диаграмме, но не владею ЕА для диаграммы объектов.



Ошибка! Вместо 05.11.2011 надо 05.11.2010



Я не из праздного любопытства спрашиваю...

Хотел понять практическую ценность такого представления (и честно говоря не понял) и поэтому попросил нарисовать диаграмму объектов.




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19