Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
О.Н. Половикова. Методическое пособие по UML.doc
Скачиваний:
35
Добавлен:
18.03.2016
Размер:
764.42 Кб
Скачать

Тема 1. Основные принципы объектно-ориентированного проектирования. История развития языка uml. Программный продуктRationRose. Процедурно-ориентированная методология

Практически сразу, как только стали появляться первых ЭВМ (или компьютеры) стали развиваться новые направления в технике вычислений. Со временем увеличивается сложность задач, возрастают требования к программам. Разработка больших программ превратилась в серьезную проблему и потребовала их разбиения на более мелкие блоки. Базой для такого разбиения стала процедурная декомпозиция. Отдельные части программы (логические блоки) представлялись совокупностью процедур. Каждая процедура решала одну или несколько конкретных задач. Совокупность принципов разработки программ на основе процедурной декомпозиции легли в основу процедурно-ориентированной методологии.

Объектно-ориентированная методология

Процедурно-ориентированная методология со временем перестала перекрывать весь объём задач, которые ставили перед программистами. Вычислительные и расчетно-алгоритмические задачи стали второстепенными, на первый план выступили задачи обработки и манипулирования данными. Стало очевидным, что традиционные методы процедурного программирования не способны справиться ни с растущей сложностью программ, ни с необходимостью их быстрой модернизации. В конце 80-х в начале 90-х годов была разработана методология объектно-ориентированного программирования (ООП), которая позволила по-новому взглянуть на процесс разработки программ и найти решение для целого комплекса проблем.

Базовыми понятиями ООП являются понятия класса и объекта. Класс - некоторая совокупность объектов (может быть абстрактная), которые имеют общий набор свойств и обладают одинаковым поведением. Объект - это экземпляр (представитель, элемент) соответствующего класса. Основными принципами ООП являются наследование, инкапсуляция и полиморфизм.

Развитие методологии ООП позволило акцентировать внимание разработчиков программных продуктов на необходимости проектирования структуры программы. Процесс проектирования структуры программы стал рассматриваться как самостоятельный этап в создании программы. Перед тем как начать программировать классы необходимо определить их сущность и взаимосвязи между ними, а также свойства и методы необходимые для придания классам требуемого поведения. Данная совокупность задач не связана с написанием программного кода. Эти обстоятельства привели к появлению специальной методологии - методологии объектно-ориентированного анализа и проектирования (ООАП)

Этапы разработки ПО на основе объектно-ориентированного подхода:

  • объектно-ориентированный анализ,

  • объектно-ориентированное проектирование,

  • объектно-ориентированное программирование,

  • тестирование.

Унифицированный язык моделирования(Unified Modelling Language) позволяет провести объектно-ориентированный анализ предметной области и объектно-ориентированное проектирование решаемой задачи.

Особенности унифицированного языка моделирования (uml)

Почему возникает потребность в предварительном анализе и проектировании задач, прежде чем приступить к процессу программирования? Для ответа на этот вопрос следует выделить следующие тенденции в развитии программных продуктов:

  1. тенденция к повышению многофункциональности программных систем (взаимодействие с другими системами, предварительная обработка данных, анализ выходных данных и т.д.);

  2. тенденция к созданию программных систем с "человеческим лицом" - максимальное соответствие программы (главным образом её интерфейса) нуждам и запросам потенциальных клиентов.

Обе тенденции требуют привлечения специалистов разных областей к созданию программ (аналитики, психологи и т.д.) и клиентов, для которых эти программы разрабатываются. Все требования по разработке невозможно удержать в голове. Необходим наглядный план (визуальное представление) будущей программы, который был бы понятен каждому участнику. И только после анализа всех требований клиента и аналитиков утверждается проект будущей программы, и программисты приступают к своей работе. Даже если изменится группа программистов (её состав или количество участников), каждый участник процесса разработки будет иметь перед собой план решения своей конкретной задачи, и наглядно представлять свою роль в решении общей задачи.

UML обеспечивает возможность участвовать в процессе проектирования программного продукта всем заинтересованным лицам (будущим пользователям этого продукта, аналитикам, программистам и другим специалистам), каждый способен "увидеть" и оценить будущую программу. Язык UML позволяет описать то, что должна делать система, а не то как она будет реализована.

Авторами языка UML являются: Г. Буч (Grady Booch), Д. Рамбо (James Rumbaugh) и А. Джекобсон (Ivar Jacobson).

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