Компьютерные вирусы и способы борьбы с нимиРефераты >> Информатика >> Компьютерные вирусы и способы борьбы с ними
Помимо прямого отображения в языки программирования UML в силу своей вырази-тельности и однозначности позволяет непосредственно выполнять модели, имитиро-вать поведение системы и контролировать действующие системы.
UML как язык документирования
Организация, серьезно работающая на рынке программных средств, кроме непосредст-венного написания программного кода производит и некоторые другие артефакты, в том числе следующие:
требования к системе;
архитектуру;
проект;
исходный код;
проектные планы и сметы;
тесты;
прототипы;
версии и другие.
В зависимости от принятой методики разработки выполнение одних работ производится более формально, чем других. Перечисленные выше артефакты - это не просто постав-ляемые части проекта; они необходимы, прежде всего, для управления, для оценки ре-зультатов, а также как средство общения между членами коллектива во время работы над проектом и после его развертывания.
UML позволяет решить проблему документирования системной архитектуры и ее дета-лей, предлагает язык для формального определения требований к системе и определе-ния тестов и, наконец, предоставляет средства для моделирования работ на этапе пла-нирования проекта и управления версиями.
Язык UML предназначен, прежде всего, для разработки программных систем. Его ис-пользование особенно эффективно в следующих областях:
информационные системы масштаба предприятия;
банковские и финансовые услуги;
телекоммуникации;
транспорт;
оборонная промышленность, авиация, космонавтика;
торговые системы;
медицинская электроника;
наука;
распределенные Web-системы.
Сфера применения UML не ограничивается моделированием программного обеспече-ния. Его выразительность позволяет моделировать, например, документооборот в юри-дических системах, структуру и функционирование системы обслуживания пациентов в больницах, осуществлять проектирование аппаратных средств.
48. Основные стадии и характеристика стадий и этапов объектно-ориентированного проектирования программного обеспечения.
Основные принципы объектно-ориентированною анализе и проектирования программных систем
Основная идея объектно-ориентированного анализа и проектирования (object-oriented analysis and desfen) состоит в рассмотрении предметной области и логического решения задачи с точки зрения объектов (понятий и сущностей). В процессе объектно-ориентированного анализа основное внимание уделяется определению и описанию объектов (или понятий) в терминах предметной области. В процессе объектно-ориентированного проектирования определяются логические программные объекты, которые будут реализованы средствами объектно-ориентированного языка программирования Эти программные объекты включают в себя атрибуты и методы. И. наконец, в процессе конструирования (construction) или объектно-ориентированного программирования (object-oriented programming) обеспечивается реализация разработанных компонентов и классов.
Основные стадии объектно-ориентированного анализа и проектирования:
Шаг первый. Производится анализ требований (requirements analysis) во время которого выделяются основные процессы, происходящие в моделируемой системе и их формулировка в виде прецедентов. Прецедент (precedent)- это текстовое описание процессов, происходящих а предметной области.
Шаг второй. Объектно-ориентированный анализ предметной области (object-oriented domain analysis). Задача этого шага в определении видов деятельности участников процесса и составлении концептуальной модели (conceptual model), которая отражает различные категории элементов предметной области. Причем не только виды деятельности участников, но и все относящиеся к делу понятия.
Шаг третий. Разбираемся, кто, чем занимается. Эта деятельность и называется объектно-ориентированным проектированием (object- oriented design), при котором основное внимание сосредоточено на распределении обязанностей. Распределение обязанностей (responsbfity assignment) означает выделение задач и обязанностей различных программных объектов в приложении.
Наиболее важным моментом объектно-ориентированного анализа и проектирования является квалифицированное распределение обязанностей между компонентами программной системы. Он оказывает определяющее влияние на робастность, масштабируемость, расширяемость и возможность повторного использования компонентов. В языке UML обязанности объектов и их взаимодействия изображаются с использованием диаграмм классов (design class diagram) и диаграмм взаимодействий (colaboraflon diagram).
Этапы объектно-ориентированного подхода к разработке ПО:
Объектно-ориентированный анализ (analysis) – способ анализа, изучающий требования к системе с точки зрения будущих классов и объектов, основываясь на словаре предметной области.
Объектно-ориентированное проектирование (design) – способ проектирования, включающий в себя описание процесса объектно-ориентированной декомпозиции и объектно-ориентированную нотацию для описания различных моделей системы (логической и физической, статической и динамической).
Объектно-ориентированное программирование – это метод реализации, в основе которого лежит идея представления программной системы в виде набора взаимодействующих объектов, каждый из которых является экземпляром некоторого класса, а классы объединены в иерархию наследования.
Порядок их применения таков: сначала проводится объектно-ориентированный анализ, затем проектирование, а после этого – реализация (то есть программирование).
Кроме перечисленных этапов, принято еще выделять этап тестирования и отладки, следующий за реализацией и этап сопровождения, который в большинстве случаев является самым долговременным и дорогостоящим.
49 Совместное применение структурного и объектно-ориентированного проектирования программного обеспечения (использование структурного подхода как основы для объектно-ориентированного проектирования).
Сущность структурного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. При разработке системы "снизу-вверх" от отдельных задач ко всей системе целостность теряется, возникают проблемы при информационной стыковке отдельных компонентов.
Главный недостаток структурного проектирования заключается в следующем: процессы и данные существуют отдельно друг от друга, причем проектирование ведется от процессов к данным. Таким образом, помимо функциональной декомпозиции, существует также структура данных, находящаяся на втором плане.
Основная идея объектно-ориентированного анализа и проектирования (object-oriented analysis and design) состоит в рассмотрении предметной области и логического решения задачи с точки зрения объектов (понятий и сущностей). В процессе объектно-ориентированного анализа основное внимание уделяется определению и описанию объектов (или понятий) в терминах предметной области. В процессе объектно-ориентированного проектирования определяются логические программные объекты, которые будут реализованы средствами объектно-ориентированного языка программирования. Эти программные объекты включают в себя атрибуты и методы. И, наконец, в процессе конструирования (construction) или объектно-ориентированного программирования (object-oriented programming) обеспечивается реализация разработанных компонентов и классов.