М. Фаулер, К. Скотт - UML Основы, страница 5
Описание файла
DJVU-файл из архива "М. Фаулер, К. Скотт - UML Основы", который расположен в категории "". Всё это находится в предмете "практика расчётов на пэвм" из 3 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 5 - страница
(Немедленно убедитесь, что вы все еще сидите1) Средства языка ()МЬ разрабатывались в некоторой степени для того, чтобы помочь людям выполнять качественные объектно-ориентированные проекты, однако разные средства обладают различными достоинствами. ° Одним из наилучших способов изучения объектно-ориентированных методов являются СВС-карточки (см. врезку в главе 5).
Они не являются составной частью языка ПМЬ, хотя могут и должны использоваться вместе с ним. СВС-карточки были созданы главным образом для обучения людей работе с объектами. Именно поэтому они намеренно отличаются от традиционных методов проектирования. Запись на этих карточках ответственности класса и отсутствие сложной нотации делает их особенно важным средством. ° Диаграммы взаимодействия (см.
главу 5) оказываются очень полезными„поскольку позволяют наглядно представить структуру сообщения и тем самым выявить излишне централизованные проекты, в которых один объект выполняет всю работу. ° Диаграммы классов (см. главы 4 и 6), используемые для иллюстрации моделей классов, одновременно как хороши, так и плохи для изучения объектов. Модели классов столь же удобны, как и модели данных„многие принципы построения хорошей модели данных также пригодны для построения хорошей модели классов. Основная проблема в использовании диаграмм классов состоит в том, что можно легко разработать модель классов, которая ориентирована на данные, а не на ответственность. ° Концепция образцов (см.
врезку в главе 2) стала жизненно необходимой при изучении объектно-ориентированных методов, поскольку предоставляет возможность использовать результаты хорошо выполненных объектно-ориентированных проектов и обучаться на их примерах. После того как вы освоили некоторые базовые методы моделирования, такие как простые диаграммы классов и диаграм- 26 Глава 1. Введение мы взаимодействия, самое время приступить к рассмотрению образцов.
° Еще одним важным методом является итеративная разработка (см. главу 2). Этот метод не поможет вам в изучении объектно-ориентированного подхода непосредственно, однако он даст ключ к его эффективному использованию. Если вы применяете итеративную разработку с самого начала, то сможете правильно уяснить для себя характер процесса и начнете понимать, почему проектировщики предлагают делать некоторые вещи именно так, а не иначе. Применяя определенный метод, старайтесь пользоваться данной книгой. Я рекомендую начинать с простых нотаций, в частности с диаграмм классов. Затем можно перейти к изучению более сложных понятий, которые представляются вам необходимыми. Возможно, вы придете к выводу, что соответствующий метод следует расширить. Общение с экспертами предметной области Одно из важнейших требований при разработке заключается в построении иравильяой системы, то есть такой системы, которая удовлетворяет потребности пользователей за разумную стоимость.
Добиться этого весьма трудно, поскольку мы, с нашим жаргоном, должны общаться с пользователями, которые имеют собственный, еще более непонятный жаргон. (Я довольно продолжительное время работал в области медицины, где жаргон имеет весьма мало общего с английским языком1) Установление хороших контактов с пользователями наряду с хорошим пониманием их мира является ключом к разработке качественного программного обеспечения.
Очевидным методом, который следует применять для этого, являются варианты использования (см. главу 3). Вариант использования представляет собой некий моментальный снимок одного из аспектов вашей системы. Совокупность всех вариантов использования образует внешнее представление вашей системы, которому предстоит пройти долгий путь, объясняя, что эта система будет делать. Хороший набор вариантов применения — это главное для понимания потребностей ваших пользователей.
Варианты использования также представляют собой хорошее средство для планирования проекта, поскольку они позволяют управлять итеративной разработкой. Последняя сама является важным методом, так как обеспечивает регулярную обратную связь с пользователями и тем самым позволяет отслеживать текущее состояние разработки программного обеспечения. Хотя варианты использования и помогают установить взаимопонимание в отношении внешнего представления системы, исключительно важно рассмотреть также и более глубокие аспекты.
Имеется в виду изучение того, как эксперты в вашей предметной области понимают свой мир. 27 Где найти дополнительную информацию В данной ситуации весьма важными могут оказаться диаграммы классов (см. главы 4 и 6), пока вы рассматриваете их с концептуальной точки зрения. Другими словами, каждый класс следует трактовать как некоторое понятие из области мышления пользователя. Построенные в этом случае диаграммы классов не являются диаграммами данных или классов, а представляют собой, скорее, диаграммы языка ваших пользователей. В тех случаях, когда важной частью предметной области пользователей являются потоки работ, я считаю весьма полезным использовать диаграммы деятельности (см.
главу 9). Поскольку диаграммы деятельностей поддерживают параллельные процессы, они позволяют избавиться от тех из них, выполнение которых не является необходимо последовательным. Характерной особенностью этих диаграмм является преуменьшение роли их связей с классами, что может повлечь за собой проблемы на более поздних стадиях проектирования, но на концептуальном этапе процесса разработки создает определенные преимущества.
Где найти дополнительную информацию Эта книга вовсе не является полным и окончательным справочным руководством по языку ПМ1., не говоря уже об объектно-ориентированном анализе и проектировании. Существует много такого, о чем здесь не говорится, и много полезного, что следует дополнительно прочесть. В ходе рассмотрения отдельных тем будут упоминаться и другие книги, к которым следует обратиться для получения более подробной информации о языке 1)МЬ и объектно-ориентированном анализе, а также о проектировании в целом. Без сомнения, после прочтения данного справочного руководства необходимо обратиться к книгам по языку 1)М1н написанным «тремя друзьями»: ° Гряди Буч возглавил работу по написанию руководства пользователя (Буч„Рамбо и Джекобсон, 1999 [61).
Эта книга является учебником, содержащим описание практических аспектов использования языка ПМЬ для решения различных задач проектирования. ° Джим Рамбо возглавил деятельность по написанию справочного руководства (Рамбо, Джекобсон и Буч, 1999 137)). Я часто обращаюсь за помощью к этому детальному справочнику по языку 1)М1.. ° Айвар Джекобсон возглавил работу над книгой по описанию процесса, в ходе которого используется язык 11М1. (Джекобсон, Буч и Рамбо, 1999 123]).
Более подробно об этом процессе говорится в главе 2. Конечно, чтобы хорошо изучить объектно-ориентированный анализ и проектирование, далеко не достаточно прочесть только эти книги Глава 1. Введение «троих друзей». Мой список рекомендуемой литературы часто изменяется; самую последнюю информацию можно получить на моей домашней странице в Интернете. Если вы новичок в объектном подходе, то обратитесь к моему фавориту среди имеющихся справочников и руководств для начинающих— книге Лармана, 1998 1281. Ее достоинством является то, что автор следует строго управляемому ответственностью подходу к проектированию.
Для тех, кто хочет больше знать об объектах с концептуальной точки зрения, теперь в серии книг по языку УМ1 есть работа Мартина и Оделла, 1998 129). Разработчикам-практикам следует обратиться также к книге Дугласа (Воиа1авв), 1998 Г17]. Для расширения вашего кругозора также рекомендую прочитать книги по образцам. Сейчас, когда война методов уже закончилась, я думаю, что именно образцы окажутся среди наиболее интересных материалов по анализу и проектированию. Поскольку разработчики непременно будут создавать новые методы анализа и проектирования, то, вероятно, со временем они объяснят, как эти методы могут использоваться вместе с языком ПМ1.