
- •Информационные технологии
- •1 Информационная технология как составная часть информатики. Классификация информационных технологий
- •1.1 Понятие и способы получения информации. Прагматический, семантический и синтаксический аспекты информации. Классификация информации
- •1.2 Информация в процессе управления
- •1.3 Информационный ресурс. Компоненты информационного ресурса
- •1.4 Определение и задачи информационной технологии. Уровни информационных технологий
- •1.5 Понятие и виды базовых информационных процессов. Классификация и средства реализации информационных технологий
- •2 Характеристика и модели базовых информационных процессов
- •2.1 Извлечение информации. Методы исследования данных предметной области. Декомпозиция предметной области на базе объектно-ориентированного подхода. Характеристика методов обогащения информации
- •2.2 Транспортировка информации. Эталонная семиуровневая модель процесса транспортировки. Протоколы передачи данных в сетях
- •2.3 Обработка информации. Виды обработки информации. Характеристика основных операций обработки информации
- •2.4 Хранение и накопление информации. Характеристика уровней и моделей представления данных предметной области при хранении
- •2.5 Представление информации. Основные типы человеко-машинных интерфейсов
- •3 Базовые и прикладные информационные технологии
- •3.1 Характерные особенности мультимедиа-технологий. Компоненты мультимедиа-среды. Основные направления использования мультимедиа-технологий
- •3.2 Объектно-ориентированные среды для автоматизированного проектирования и разработки программного обеспечения (case-средства)
- •3.3 Характеристика унифицированного языка моделирования uml. Диаграмма вариантов использования – концептуальная модель программной системы
- •3.4 Виды информационных технологий организационного управления. Понятие об Интранет-технологии
- •3.5 Информационные технологии в промышленности
- •3.6 Информационные технологии в образовании. Аспекты информатизации образования. Факторы, влияющие на эффективность использования информационных ресурсов в образовательном процессе
- •3.7 Направления использования информационных технологий в обучении
- •4 Стандартизация в области информационных технологий
- •4.1 Классификация стандартов в области информационных технологий
- •4.2 Характеристика стандартов разработки программных и информационных систем
- •4.3 Характеристика стандартов проектирования бизнес-процессов и пользовательского интерфейса
- •5 Оценка качества программных систем
- •5.1 Дефектологические свойства программных систем
- •5.2 Классификация и характеристика критериев качества программных систем
3.2 Объектно-ориентированные среды для автоматизированного проектирования и разработки программного обеспечения (case-средства)
На данный момент в технологии разработки программного обеспечения существуют два основных подхода к разработке программных систем, отличающиеся критериями декомпозиции: функционально-модульный (структурный) и объектно-ориентированный.
Функционально-модульный подход основан на принципе алгоритмической декомпозиции с выделением функциональных элементов и установлением строгого порядка выполняемых действий.
Объектно-ориентированный подход основан на объектной декомпозиции с описанием поведения системы в терминах взаимодействия объектов.
Главным недостатком функционально-модульного подхода является однонаправленность информационных потоков и недостаточная обратная связь. В случае изменения требований к системе это приводит к полному перепроектированию, поэтому ошибки, заложенные на ранних этапах, сильно сказываются на продолжительности и стоимости разработки. Другой важной проблемой является неоднородность информационных ресурсов, используемых в большинстве информационных систем. В силу этих причин в настоящее время наибольшее распространение получил объектно-ориентированный подход.
Под CASE-технологией будем понимать комплекс программных средств, поддерживающих процессы создания и сопровождения программного обеспечения, включая анализ и формулировку требований, проектирование, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом (CASE-средство может обеспечивать поддержку только в заданных функциональных областях или в широком диапазоне функциональных областей).
В связи с наличием двух подходов к проектированию программного обеспечения существуют CASE-технологии ориентированные на структурный подход, объектно-ориентированный подход, а также комбинированные. Однако сейчас наблюдается тенденция переориентации инструментальных средств, созданных для структурных методов разработки, на объектно-ориентированные методы, что объясняется следующими причинами:
• возможностью сборки программной системы из готовых компонентов, которые можно использовать повторно;
• возможностью накопления проектных решений в виде библиотек классов на основе механизмов наследования;
• простотой внесения изменений в проекты за счет инкапсуляции данных;
• быстрой адаптацией приложений к изменяющимся условиям за счет использования свойств наследования и полиморфизма;
• возможностью организации параллельной работы аналитиков, проектировщиков и программистов.
Существует несколько объектно-ориентированных методов. В настоящее время наблюдается процесс сближения объектно-ориентированных методов. В частности, разработан унифицированный метод UML (Unified Modeling Language – унифицированный язык моделирования).
Классическая постановка задачи разработки программной системы (инжиниринг) представляет собой спиральный цикл итерационного чередования этапов объектно-ориентированного анализа, проектирования и реализации (программирования).
В реальной практике в большинстве случаев имеется предыстория в виде совокупности разработанных и внедренных программ, которые целесообразно использовать при разработке новой системы. Процесс проектирования в таком случае основан на реинжиниринге программных кодов, при котором путем анализа текстов программ восстанавливается исходная модель программной системы.
Современные CASE-средства поддерживают процессы инжиниринга и автоматизированного реинжиниринга.
Идеальное объектно-ориентированное CASE-средство (рисунок) должно содержать четыре основных блока: анализ, проектирование, реализация и инфраструктура.
Анализ |
Проектирование |
Реализация |
|
Возможность добавлять пояснительные надписи к диаграммам и в документацию |
Возможность создавать различные представления и скрывать ненужные в данный момент слои системы |
Возможность просматривать и выбирать элементы и бизнес-объекты для использования в системе |
Возможность генерировать заготовки программного кода на нескольких объектно-ориентированных языках |
Среда для создания диаграмм разнообразных моделей |
Возможность создания пользовательского интерфейса (поддержка OLE, ActiveX, OpenDoc, HTML) |
Возможность проверки программного кода на синтаксическую корректность |
|
Поддержка различных нотаций |
Возможность динамического моделирования событий в системе |
Возможности определения бизнес-модели и бизнес-правил |
Возможность генерировать код для 4GL и клиент-серверных продуктов |
Возможность генерации документации для печати |
Возможность динамической коррекции одной диаграммы из другой |
Возможность связи с объектно-ориентированными базами данных и распределенными модулями (поддержка CORBA, DCOM, HTML) |
|
Инфраструктура |
|||
Контроль версий. Блокирование и согласование частей системы при групповой разработке |
Репозиторий |
Возможность реинжиниринга программного кода, 4GL, клиент-серверных систем в диаграммы моделей |
Рисунок – Идеальное объектно-ориентированное CASE-средство
Основные требования к блоку анализа:
• возможность выбора выводимой на экран информации из всей совокупности данных, описывающих модели;
• согласованность диаграмм при хранении их в репозитории;
• внесение комментариев в диаграммы и соответствующую документацию для фиксации проектных решений;
• возможность динамического моделирования в терминах событий;
Основные требования к блоку проектирования:
• поддержка всего процесса проектирования программной системы;
• возможность работы с библиотеками, средствами поиска и выбора;
• возможность разработки пользовательского интерфейса;
• поддержка стандартов OLE, ActiveX и доступ к библиотекам HTML или Java;
• поддержка разработки распределенных или двух- и трехзвенных клиент-серверных систем (работа с CORBA, DCOM).
Основные требования к блоку реализации:
• генерация кода полностью из диаграмм;
• возможность доработки приложений в клиент-серверных CASE-средствах;
• реинжиниринг кодов и внесение соответствующих изменений в модель системы;
• наличие средств контроля, которые позволяют выявлять несоответствие между диаграммами и генерируемыми кодами и обнаруживать ошибки как на стадии проектирования, так и на стадии реализации.
Основные требования к блоку инфраструктуры:
• наличие репозитория на основе базы данных, отвечающего за генерацию кода, реинжиниринг, отображение кода на диаграммах, а также обеспечивающего соответствие между моделями и программными кодами;
• обеспечение командной работы (многопользовательской работы и управление версиями) и реинжиниринга.
Выделим основные критерии оценки и выбора CASE-средств:
1) функциональные характеристики:
• среда функционирования: проектная среда, программное обеспечение/технические средства;
• функции, ориентированные на фазы жизненного цикла: моделирование, реализация, тестирование;
• общие функции: документирование, управление конфигурацией, управление проектом.
2) надежность;
3) простота использования;
4) эффективность;
5) сопровождаемость;
6) переносимость;
7) общие критерии (стоимость, затраты, эффект внедрения, характеристики поставщика).