35. Принципы представления системы в языке uml.
При моделировании системы с различных точек зрения мы фактически конструируем ее сразу в нескольких измерениях. Правильный выбор совокупности видов или представлений позволит задать нужные вопросы, касающиеся системы и выявить риск, который необходимо учесть. Если же виды выбраны плохо или мы сосредоточились только на одном из них в ущерб остальным, то возрастает опасность не заметить или отложить на будущее такие вопросы, пренебрежение которыми рано или поздно поставит под угрозу весь проект.
Моделирование системы с использованием различных представлений осуществляется следующим образом:
· Решите, какие именно виды лучше всего отражают архитектуру системы и возможный технический риск, связанный с проектом.
· В отношении каждого из выбранных видов определите, какие артефакты необходимо создать для отражения его наиболее существенных деталей. Эти артефакты по большей части будут состоять из различных диаграмм UML.
· В ходе планирования процесса решите, какие из диаграмм удобнее всего превратить в инструмент контроля, формального или неформального, за разработкой системы. Эти диаграммы вы будете периодически корректировать и сохранять в составе проектной документации.
· Сохраняйте даже забракованные диаграммы. Они могут пригодиться при анализе результатов ваших действий и для экспериментов по изменению каких-либо рабочих параметров.
Если моделируется простое приложение, выполняемое на одном компьютере, могут потребоваться только перечисленные диаграммы:
· вид с точки зрения вариантов использования - диаграммы прецедентов;
· вид с точки зрения проектирования - диаграммы классов для структурного моделирования и диаграммы взаимодействия для моделирования поведения;
Если же разрабатываемая система относится к управлению рабочим процессом, то для моделирования ее поведения понадобятся диаграммы состояний и действий.
Если система построена на архитектуре "клиент/сервер", то стоит включить в работу диаграммы компонентов и развертывания для моделирования конкретных физических деталей реализации.
При моделировании сложной распределенной системы используются все имеющиеся в UML диаграммы, Они позволяют выразить ее архитектуру и связанный с проектом технический риск. При этом потребуется следующее:
· вид с точки зрения прецедентов - диаграммы прецедентов и диаграммы действий (для моделирования поведения);
· вид с точки зрения проектирования - диаграммы классов (структурное моделирование), диаграммы взаимодействия и диаграммы состояний (моделирование поведения);
· вид с точки зрения процессов - снова диаграммы классов (структурное моделирование) и диаграммы взаимодействия (моделирование поведения);
· вид с точки зрения реализации - диаграммы компонентов;
· вид с точки зрения развертывания - диаграммы развертывания.
То, что одном уровне абстракции выглядит как система, на другом, более высоком, представляется подсистемой. Аналогичным образом, то что на одном уровне является подсистемой, вполне может рассматриваться как полноценная система группой проекта, ответственной за ее создание.
Такая иерархия наблюдается во всех сложных системах. По мере возрастания сложности систем встает необходимость ее декомпозиции на более простые подсистемы, каждую из которых можно разрабатывать отдельно, а затем постепенно объединять их. Разработка подсистем выглядит в точности так же, как и разработка всей системы.
Моделирование системы или подсистемы осуществляется следующим образом:
· Идентифицируйте основные функциональные составляющие системы, которые можно разрабатывать, выпускать и развертывать до некоторой степени независимо. На результаты этого разбиения системы часто влияют технические, юридические и организационные факторы;
· Для каждой подсистемы специфицируйте ее контекст, так же как это делается для системы в целом при этом число актеров, окружающих систему включаются все соседние подсистемы, поэтому необходимо проектировать их совместную работу;
· Смоделируйте архитектуру каждой подсистемы так же, как это делается для всей системы.
Важно выбрать правильное множество моделей для визуализации, специфицирования, конструирования и документирования системы. Хорошо структурированная модель:
дает упрощенное представление реальности с одной относительно независимой точки зрения,
самодостаточна, то есть не требует для понимания ее семантики никакой дополнительной информации,
слабо связана с другими моделями
посредством отношений трассировки, коллективно, совместно с другими моделями, дает полное представление обо всех артефактах системы.
Важно представить сложную систему в виде декомпозиции хорошо структурированных подсистем. Хорошо структурированная система функционально, логически и физически связана, может быть разложена на почти независимые подсистемы, которые сами являются системами на более низком уровне абстракции, может быть визуализирована, специфицирована, сконструирована и документирована в виде набора взаимосвязанных, неперекрывающихся моделей.
Для моделей в UML не предусмотрено специального графического представления за исключением диаграмм стереотипных пакетов, хотя инструментальные средства обычно изображают их в виде пакетов, каждому из которых соответствует разбиение системы с определенной точки зрения. При изображении системы в UML используйте каждую из них как начальную точку для всех артефактов, ассоциированных с ней, показывайте только основные виды агрегирования между системой и ее подсистемами, выносите детали связей между ними на диаграммы более низкого уровня абстракции.
Yandex.RTB R-A-252273-3- Разработка и стандартизация программных систем
- 1. Три типа жизненных циклов программных систем.
- Водопадная (каскадная, последовательная) модель
- Итерационная модель
- Спиральная модель
- 3. Стандарт iso серии 9000 при разработке программных систем.
- Iso 9000 — серия международных стандартов, описывающих требования к системе менеджмента качества организаций и предприятий.
- 4. Стандарты Единой системы программной документации (еспд)
- Классификация:
- 5. Стандарты рф (гост р) на документирование пс
- 6. Организация группы проекта при разработке программных систем.
- 7. Три способа определения требований к программной системе.
- 8. Спецификация требований к программной системе.
- 9. Методы контроля спецификации требований.
- 10. Спецификация качества программных систем.
- 11. Функциональная спецификация программных систем.
- 12. Архитектура программных систем
- 13. Основные классы архитектур программных систем.
- 14. Основные модели при разработке программных систем.
- (См. Вопрос 1!)
- 15. Принципы объектно-ориентированного анализа и проектирования пс
- 16. Принципы компонентной архитектуры информационных систем.
- 17. Стандарты семейства idef
- 18. Принципы построения модели idef0
- 19. Принципы разработки моделей as-is и то-ве
- 20. Диаграммы в стандарте idef0
- 21. Понятие работы в стандарте idef0
- 22. Описание взаимодействия работ в стандарте idef0
- 23. Типы связей работ в стандарте idef0
- 24. Стандарт idef1x
- 26. Диаграммы потоков данных.
- 27. Архитектурные виды программной системы.
- 28. Фазы, итерации и циклы разработки программных систем - руп.
- 29. Рабочие процессы создания программных систем - руп.
- 30. Основные артефакты при разработке программных систем.
- 31. Концепция языка uml
- 32. Язык uml как система визуализации, специфицирования, конструирования, документирования
- 33. Понятия модели и системы в языке uml
- 34. Принципы моделирования системной архитектуры в языке uml.
- 35. Принципы представления системы в языке uml.
- 36. Понятие сущностей в языке uml
- 37. Структурные сущности предметной области.
- 38. Отношения в языке uml
- 39. Диаграммы в языке uml
- 40. Правила языка uml.
- 41. Общие механизмы языка uml
- 42. Прецедент как спецификация поведения программных систем.
- 43. Организация прецедентов в языке uml.
- 44. Приемы анализа прецедентов в языке uml
- 45. Диаграммы прецедентов.
- 46. Моделирование требований к системе с помощью диаграмм прецедентов.
- 47. Критерии сравнения инструментальных систем разработки программных систем.
- 48. Технико-экономические показатели разработки программных средств
- 49. Сертификация программных средств
- 50. R-технология программирования