Форум Сообщества Аналитиков

×


Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Galogen

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 »
4411
Ну что, на навигацию забили???
Фу как грубо.

Цитировать
Судя по Розе (а мне кажется она все же ближе к истине), либо мы рисуем агрегацию/композицию у класса А либо мы рисуем там стрелку.
Но во всех примерах в Интете есть два разделения:
1. Либо вообще навигации нет
2. Либо навигация расположена на другом конце от агрегации/композиции
Агрегация и композиция вообще указывает на то, что целое должна быть обязательна. Часть может быть и не обязательной, но хоть что-то должно туда входить :-)

Если моделировать БД - то это однозначно говрить о миграци первичного ключа целой части в каждую ее часть, такми образом прослеживаемость должна быть от части к целому. Часть должна знать к какому целому она принадлежит.

Если рассуждать как ты говоришь, то кажется это тоже имеет смысл. При задании класса целого мы включаем в него атрибуты указатели на его части. Такми образом с точки зрения реализации класса навигация от целого к части кажется более убедительной чем наоборот.

Из этого спича можно заключить навигация важна именно в момент реализации и сильно зависит от способа реализации. IMHO конечно

4412
С этой целью на базе корпоративной платформы в компании реализована система управления работами. Если в ходе тестирования обнаруживается ошибка или проблемы, в СУР размещается работа. Менеджер работы просматривает и распределяет по исполнителям. Автор работы, часто является и проверяющим.

4413
Спасибо A_K. Интересные изменения.

Правда, я бы доработал немного вот эту фразу : "Второй диспетчер обеспечивает взаимодействие с водителями, например распределением заказов между водителями." Так как она может неоднозначно трактоваться.

фраза: "Договор с водителем оформляет бухгалтерия", кажется мне несколько искуственной. Все-таки не дело это бухгалтерии принимать и оформлять договоры. Но пусть будет, для неувеличения сложности.

вот это: "По информации о длине маршрута система расчитывает стоимость проезда, которая сообщается водителю." это уже усложнение imho. Проще использовать счетчики.  Правда это не хуже фразы, что используется ГИС для оптимизации маршрута. Поскольку трактовать ее можно по-разному. ГИС - может быть совершенно независимым приложением, который использует диспетчер или водитель. Может существовать и явное взаимодействие разрабатываемой нами системы и ГИС через некий интерфейс, через который наша система передает отправную точку и пункт назначения, а получает некий оптимальный маршрут. Вообще я бы в данном случае ГИС бы выкинул, или оставил бы как некую ловушку усилив фразу типа: диспетчер использует ГИС города для расчета оптимального маршрута.

Но вот какая мысль пришла мне в голову. Зачем изменять формулировку? Может изменить вопрос?
Нарисовать диаграмму вариантов использования (use case diagram) системы автоматизации работы службы диспетчерской такси.
Как Вы думаете, в этом случае достаточно было бы старой формулировки?

Тут вопрос о границе очень важен. Смотрите, имеет ли смысл вносить бухгалтерию в службу такси? Если понимать под службой такси, именно, получение заказа и его выполнение? Не является в данном контексте бухгалтерия лишней и той ловушкой, по которой будут проверяться студенты?

Я задаюсь вопросом, поскольку формулировка задачи не МОЯ. Безусловно задача вырвана из контекста, в реальности вообще такой постановки как нарисовать ДВИ не было бы. Безусловно был бы анализ и создание модели вариантов использования.

Чтобы дискуссия продолжилась и в другом направлении, посмотрите, пожалуйста, вот в этом направлении, там я публиковал пример билета, которые я лично формулировал и предлагал студентам на экзамене:
http://www.uml2.ru/forum/index.php?topic=137.msg6537#msg6537 (тот что по ОООА)

Интересно услышать Ваш комментарий, лучше прямо в той теме где сам пример билета

4414
Ну почему, эта работа требует умения анализировать описание в свободном формате и выделять из него ВИ, понимания смысла и принципов построения ДВИ. Разве этого мало?
Да я тоже полагал так, когда публиковал задачу. Однако дискуссия подняла пласт проблем.
Цитировать
На факультетах иностранных языков даются задания на перевод текста с одного языка на другой - это тоже бессмысленная механическая работа?Да, но у меня для анализа и получения однозначного ответа все исходные данные присутствуют в условии задачи (максимум надо дополнительно пару значений из справочников). Ничего додумывать не надо.
Все-таки сравнение не корректно. В данном случае перевод - это и есть цель. Проверяется правильность и корректность перевода, правила перевода и т.п. При этом семантическая ценность обоих текстов по идее должна быть равнозначная. А при построении ДВИ такой равнозначности нет. Что получиться, если попытаться имея ДВИ написать постановку? Да мало чего, разве что общие рамки, участников и их задачи.

Хотя я, конечно, предполагал, что при построении ДВИ нужно учитывать только ту информацию, которая есть и которую можно вывести из описания. Но вероятно следует давать более жесткую формулировку задачи. Вот какую Вы сами могли бы предложить в таком случае? Можете написать?

4415
Реализация / Реализация ассоциаций
« : 08 Января 2008, 12:33:15 »
Опубликовал небольшой пост на тему реализации ассоциаций. Можно посмотреть здесь: http://galogenit.livejournal.com/1476.html

Комментировать можно как в журнале, так и здесь. Кому как покажется интереснее и проще

4416
Вполне нормальная схема. Теперь имеет смысл подготовить запросы в соответствии с Вашими потребностями и посмотреть насколько просто и эффективно все это будет работать

4417
  Спасибо за выдержку из книги, это ещё больше меня убеждает, что концептуальная модель отражает предметную область и её потребность. Физическая – как их реализовать, и совсем необязательно, что оно будет соответствовать концептуальной. Главное, чтобы требования были выполнены, а какими механизмами, двусторонней ассоциации или односторонней дело разработчика.
Трудно не согласиться. Концептуальная модель сосредотачивает внимание на том ЧТО, а не КАК. Это ясно. Кроме того концептуальная модель должна быть понятна, потому она ориентирована на понятия предметной области.
Она может быть не точной, она может быть избыточной - все это зависит от опыта, как мне думается.
Однако Вы же сами собственно начали свой первый пост именно с деталей реализации :)

Кстати направление ассоциации тоже может быть важным на уровне концептуализации, но скорее всего уже на других итерация, после более глубокого анализа.

4418
А что означает "как у людей".

Саша, предлагает Вам сформировать Видение или образ Вашей системы или концепцию.

Цель определяет развитие проекта, задает контекст, функционирование системы.

При создании проекта может двигаться разными путями. Эти пути как мне кажется определяются опытом, "лучшими практиками", теоретическими познаниями.

Александр предлагает достаточно общепринятый подход (так в кратце):
определить требования
проанализировать требования
разработать архитектуру системы
спроектировать систему.

На стадии анализа требований будут возникать какие-то артефакты.

В ходе анализа Вы будете формировать набор моделей: модель классов, модель взаимодействия, модель состояния.

Если подход основан на вариантах использования, то модель вариантов использования центральное место для определения других представлений.

Начните с описания бизнес-контекста. Каково предназначение Вашей бизнес-системы. Опишите какие процессы реализует Ваша бизнес - система. Из каких операций состоит каждый бизнес-процесс, что подается на вход такой операции, что на выходе.

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

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

4419
Эдуард, Rational Rose с Вами не согласен.
Может быть. Разные средства моделирования реализуют ассоциации по-разному. Я экспериментировал в Enterprise Architect. Тут все зависит еще и от того, как рисуешь связь, т.е. кто источник, а кто мишень.

Однако хотелось бы понять как правильно.

Читая книгу Рамбо и Блаха ""UML2.0 Объектно-ориентированная разработкаи и моделирования", обнаруживаю следующее:
односторонние ассоциации реализуются при помощи указателя (в логическом смысле). При реализации это может быть указатель, ссылка языка программирования или даже внешний ключ базы данных.
для двухсторонней ассоциации могут быть три подхода:
одностороння реализация - реализовать  в виде одностороннего указателя и выполнять поиск при прослеживании в обратном направлении. используется если частота прослеживания в одном направлении сильно отличается от другого направления.
двусторонняя реализация - с указателями в обоих направлениях.
реализация при помощи объекта.

Далее в книге есть указание на то, что использование агрегации и композиции следует ограничить при концептуальном моделировании, т.к. они относятся скорее к реализации.

Если рассматривать реализацию в виде БД, то тут мне кажется все достаточно определено. Первичный ключ родительской сущности помещается в виде внешнего ключа либо в область ключевых, либо в область неключевых атрибутов.

4420
Эльдар, простите, но я уже не могу понять чему поучиться? Это, конечно, мое и только мое мнение, но Вы производите впечатление того, кто знает что ему делать и как это делать. Я не улавливаю в чем Ваша конкретная проблема? На какие вопросы Вы хотели бы получить ответы? Может быть Вы их огласите?

4422
Не буду с Вами спорить по поводу семантических особенностей понятний концептуальная модель, ERD и т.п.

Я уже запутался в Ваших рассуждениях. От нас что нужно?

4423
ага, тем более среди нас много и студентов

4424
Не хочется вступать в философский спор, но
- при построении физической модели связь может стать однонаправленной, например при построении физической модели реляционной БД для удовлетворения требований концептуальной модели достаточно однонаправленной связи (размещение первичного ключа группы в сущность Студент, sql позволит выбрать быстро всех студентов группы)


Смотрите, поскольку связь 1-ко-многим, то независимо от навигации среди атрибутов класса Группа будет атрибут Студент типа Студент.
 
Поскольку стоит агрегация, то навигация ничего нового не дает, как бы вы ее не меняли задание классов остается тем же самым.

Однако если будет ассоциация, то тут уже гораздо интереснее ситуация
1. Группа (нет навигации) - Студент (нет навигации)
имеем
Public номер As int
Public курс As int
Public m_Студент As Студент
и
Public номер зачетки As char(5)
Public ФИО As char(100)

2. Группа (навигация) - Студент (нет навигации)
имеем
Public номер As int
Public курс As int
Public m_Студент As Студент
и
Public номер зачетки As char(5)
Public ФИО As char(100)
Public m_Группа As Группа

3. Группа(нет навигации) - Студент(есть навигация)
ситуация подобна пункту 1

4. Группа(навигация) - Студент(навигация)
ситуация 2 повторяется

4425
А у кого есть книга в электронном виде?

Страницы: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 »