Открытая коллекция знаний

OpenU.Ru

Справочник UML. Объектно-ориентированное проектирование.



stages of modeling (стадии моделирования)

Стадии разработки, которые проходит элемент или модель за время проектирования и построения системы.
CM. development process.

Обсуждение

Весь процесс разработки можно резделить на определенные виды деятельностей, во время которых внимание разработчика сконцентрировано на различных аспектах. Эти виды деятельности не следуют в определенноми порядке одна за другой; за время работы над проектом их выполняют по нескольку раз. Так, анализ служит для определения требований к системе, проектирование - для выработки подхода к решениюпроблем, связанных с ограничениями существующих структур данных, выбором алгоритмов и адаптации существующих частей системы. На стадии реализации разработчики должны найти приемлемое решение для конструирования системы при помощи языка программирования или программно-аппаратной среды. Во время развертывания это программное решение получает физическое воплощение в реальной среде. Разумеется, такое деление всего процесса на части несколько условно и не всегда ясно, где заканчивается одна часть и начинается другая. Лучше всего считать их своего рода ценными указаниями.
Впрочем, такие представления процесса не нужно отождествлять с последовательными фазами этого процесса. В традиционном методе водопада их действительно считали отдельными фазами. Однако в современном итеративном процессе разработки они уже не могут так восприниматься, поскольку в каждый конкретный момент разработка может проходить одновременно на разных уровнях. Лучше всего поэтому считать их различными задачами, которые нужно вополнить по отношению к каждому элементу системы, но не ко всей системе одновременно.
Представте себе несколько строящихся зданий - каждое из них состоит из фундамента, стен, и крыши, и все они должны быть достроены до конца. Как правило, каждое здание строится по частям, идущим друг за другом в определенном порядке. Иногда, впрочем, можно начать строить одну из крыш еще не завершив работу над всеми стенами. А случается, что и различие между стенами и крышей исчезает - представьте себе купол, стоящей на земле.
Некоторые элементы языка UML предназначены для использования на всех стадиях разработки. Другие же могут быть предназначены только для целей проектирования или программной реализации и появляется в системе только после того, как модель будет уже в достаточной степени проработана. Так, например, у атрибутов и операций видимость определения во время стадии проектирования. Во время аналитической стадии используются, как правило, только элементы с открытой видимостью.
Разработка методом водопада тоже делится на стадии, каждая из которых проводится сразу во всей системе. К этим стадиям традиционно относится анализ, проектирование, программная реализация и развертывание. При итеративном процессе разработка всей системы не может проходить в виде единого законченного шага. Разные элементы разрабатываются с различной скоростью. Конечно, все они должны пройти эти стадии разработки, однако не одновременно. Таким образом, невозможно определить, на какой стадии разработки находится система в целом.
У каждой стадии моделирования есть своя область применения. На ранних стадиях моделирования максимум внимания уделяется логическим и абстрактным свойствам системы. На поздних рассматриваются вопросы программной реализации и производительности. Область применения анализа представляет собой описание требований к системе и ее предметную область (или экспертный словарь понятий). Проектирование касается используемых алгоритмов и структур данных абстрактной реализацией, которая должна осуществляться при неких идеальных (но правдоподобных) условиях. Кроме этого, во время проектирования рассматриваются вопросы эффективности, сложности вычислений и прочие аспекты создания програмного приложения, необходимы для разработки приемлемой системы. Стадия программной реализации посвящена созданию операционного описания системы в реальных условиях, на реальном языке программировпания, принимая во внимание возможные недостатки этого языка, а так же разделению артефактов системы на части, которые можно разрабатывать и хронить по отдельности. Ко времени выполнения относятся вопросы параллелизма ресурсов, построения вычислитнльного окружения и настройки производительности в масштабе всей системы.
В языке UML имеется ряд конструкций, которые могут использоваться на различных стадиях разработки. Некоторые из них (например, ассоциация и состояние) могут присутствовать вообще во всех стадиях, другие (например, возможность навигации и видимость) имеют смысл во время проектирования, но на стадии анализа будут вносить ненужные в это время потребности относительно реализации системы. Впрочем, при необходимости эти подробности можно описать и на ранней стадии работы. И, наконец, существуют конструкции (например, синтаксис конкретного языка программирования), место - которых только на стадии реализации.
Если вы попытаетесь внести их и модель на более ранних стадиях, она будет испорчена.
Во время разработки модель меняется. На каждой стадии разработки она принимает определенный вид, в котором основное место занимают соответствующие этой стадии конструкции. При моделировании следует помнить, что есть конструкции, которые нельзя использовать на всех стадиях разработки.
См. статью development process, и которой описываются отношения, существующие между понятиями "стадия моделирования" и "фаза разработки".

Алфавитный указатель