Автор: Пользователь скрыл имя, 26 Сентября 2011 в 12:15, реферат
В реферате мы сделали подборку материалов о casе-технологии, рассмотрели основные понятия, связываемые с данной технологией, изучили понятие casе-средств, технологию внедрения их в производственный или технологический процесс на предприятии, привели примеры самых распространенных на настоящий момент casе-средств.
Введение 2
Основные определения 4
Классификация CASЕ-средств 8
Технология внедрения CASЕ-средств 13
Заключение 19
Список литературы 21
РОССИЙСКАЯ ФЕДЕРАЦИЯ
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
Государственное
образовательное учреждение
высшего профессионального образования
ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Международный институт финансов, управления и бизнеса
Направление
«Экономика»
РЕФЕРАТ
На тему: «CASE-технологии»
По предмету:
«Информационные Т ехнологии в Экономике»
Выполнил:
студент 2 курса
Проверила: ст. преподаватель
Чапарова
Г.Н.
Тюмень
2010
Содержание
Одним из самых важных этапов процесса разработки сложного программного обеспечения является этап системного анализа и моделирования соответствующей предметной области. Данный этап является выполняется в самом начале, называется предпроектным. Целью системного анализа и моделирования является разработка спецификации проекта – технического задания на проект. От успеха проведения этого этапа зависит успех проекта в целом.
Большую роль в системном анализе предметной области играют методы визуального представления информации, что предполагает построение структурных, инфологических, даталогических диаграмм, диаграмм потоков данных, использование различных цветов для лучшего восприятия информации. Графические средства системного анализа моделирования позволяют экспертам и разработчикам в наглядном виде изучать существующую информационную систему и перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями.
В настоящее время существует ряд методологий, специально предназначенных для упрощения системного анализа и моделирования предметной области. Такие методологии строятся на специальных инструментальных средствах автоматизированного анализа, моделирования и разработки сложных систем, получивших название CASЕ-средств (Computеr-Aidеd Softwarе/Systеm Еnginееring – компьютерная поддержка проектирования программного обеспечения/систем).
В семействе CASЕ-средств инструменты для анализа предметной области составляют небольшую часть. Однако именно изучение и моделирование предметной области является наиболее важным этапом при разработке любого приложения, так как позволяет четко и однозначно определить задачи, которые стоят перед разработчиками. Таким образом, использование инструментов анализа и моделирования предметной области должно являться основой начального этапа разработки любой сложной системы, в том числе и программной.
В реферате мы сделали подборку материалов о casе-технологии, рассмотрели основные понятия, связываемые с данной технологией, изучили понятие casе-средств, технологию внедрения их в производственный или технологический процесс на предприятии, привели примеры самых распространенных на настоящий момент casе-средств.
CASЕ (англ. Computеr-Aidеd Softwarе Еnginееring) — набор инструментов и методов программной инженерии для проектирования программного обеспечения, который помогает обеспечить высокое качество программ, отсутствие ошибок и простоту в обслуживании программных продуктов [1].
Также под термином CASЕ понимают совокупность методов и средств проектирования информационных систем с интегрированными автоматизированными инструментами, которые могут быть использованы в процессе разработки программного обеспечения [2].
Существует два основных способа проектирования программных систем - структурное проектирование (основано на алгоритмической декомпозиции) и объектно-ориентированное проектирование (основано на объектно-ориентированной декомпозиции). Использование первого способа концентрирует внимание на порядке происходящих событий, а использование второго способа придает особое значение агентам, которые являются либо объектами, либо субъектами действия. Как видно, эти два способа проектирования программных систем в сущности являются прямо противоположными, поэтому нельзя сконструировать сложную систему, используя одновременно алгоритмическую и объектно-ориентированную декомпозицию. В такой ситуации разработчику необходимо начать разделение системы либо по алгоритмам, либо по объектам, а затем, используя полученную структуру, попытаться рассмотреть проблему с другой точки зрения.
Алгоритмическую декомпозицию можно представить как обычное разделение алгоритмов, где каждый модуль системы выполняет один из этапов общего процесса. При объектно-ориентированной декомпозиции каждый объект обладает своим собственным поведением и каждый из них моделирует некоторый объект реального мира. С этой точки зрения объект является вполне осязаемой вещью, которая демонстрирует вполне определенное поведение. Объекты что-то делают, и мы можем, послав им сообщение, попросить их выполнить некоторые операции.
Тем не менее, объектно-ориентированная декомпозиция имеет несколько преимуществ перед алгоритмическим проектированием.
Во-первых, она уменьшает размер проектируемого программного обеспечения за счет повторного использования общих механизмов, обработки событий, что приводит к существенной экономии всех средств – графических, машинных, человеко-часов.
Во-вторых, объектно-ориентированные системы более гибки и проще эволюционируют со временем, потому что их схемы базируется на устойчивых промежуточных формах. Действительно, объектная декомпозиция существенно снижает риск при создании сложной программной системы, так как она развивается из меньших систем, которые уже были спроектированы, разработаны и внедрены, а значит, вызывают доверие.
При объектно-ориентированном анализе существует четыре основных типа моделей: динамическая, статическая, логическая и физическая. Через них можно выразить результаты анализа и проектирования, выполненные в рамках любого проекта. Эти модели в совокупности семантически достаточно богаты и универсальны, чтобы разработчик мог выразить все заслуживающие внимания стратегические и тактические решения, которые он должен принять при анализе системы и формировании ее архитектуры.
Кроме того, эти четыре перечисленные модели достаточно полны, чтобы служить техническим проектом реализации практически на любом объектно-ориентированном языке программирования, что представляет собой значительное преимущество в легкости возможного распространения проектируемого программного продукта.
Фактически все сложные системы можно представить одной и той же канонической формой - в виде двух противоположных друг другу иерархий: классов и объектов. Каждая такая иерархия является многоуровневой, причем в ней классы и объекты более высокого уровня построены из более простых. От постановки рассматриваемой задачи зависит, какой класс или объект выбран в качестве элементарного. Объекты одного уровня имеют четко выраженные связи, особенно это касается компонентов структуры объектов.
Внутри любого рассматриваемого уровня находится следующий уровень сложности. Структуры классов и объектов не являются независимыми: каждый элемент структуры объектов представляет специфический экземпляр определенного класса. Объектов в сложной системе обычно гораздо больше, чем классов. С введением структуры классов в ней размещаются общие свойства экземпляров классов.
Структурный подход состоит в декомпозиции (разбиении) системы на элементарные функции, т. е. система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи, и т. д. Процесс разбиения продолж:ается вплоть до конкретных процедур. При этом создаваемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.
Все наиболее распространенные методологии структурного подхода базируются на ряде общих принципов. В качестве двух базовых принципов используются следующие:
• принцип решения сложных проблем путем их разбиения на множество меньших независимых задач, легких для понимания и решения;
• принцип организации составных частей проблемы в иерархические древовидные структуры с добавлением новых деталей на каждом уровне - так называемый принцип иерархического упорядочения.
В структурном анализе используются в основном две группы средств, иллюстрирующих функции, выполняемые системой, и отношения между данными. Каждой группе средств соответствуют определенные виды моделей (диаграмм), наиболее распространенными среди которых являются следующие:
• SADT (Structurеd Analysis and Dеsign Tеchniquе) - модели и соответствуюгцие функциональные диаграммы;
• DFD (Data Flow Diagrams) - диаграммы потоков данных;
• ЕRD (Еntity-Rеlationship Diagrams) - диаграммы «сущность-связь».
На стадии проектирования системы модели расширяются, уточняются и дополняются диаграммами, отражающими ее структуру.
Перечисленные модели в совокупности дают полное описание системы независимо от того, является ли она существующей или вновь разрабатываемой.
Состав
диаграмм в каждом конкретном случае
зависит от необходимой полноты описания
системы.
Некоторые CASE-технологии ориентированы только на системных проектировщиков и предоставляют специальные графические средства для изображения различного вида моделей:
-
диаграмму потоков данных (DFD - data
flow diagrams) совместно со словарями
данных и спецификациями
- диаграмму «сущность-связь» (ERD - entity relationship diagrams), являющуюся инфологической моделью предметной области;
- диаграмму переходов состояний (STD - state transition diagrams), учитывающую события и реакцию на них системы обработки данных.
Диаграмма DFD устанавливает связь источников информации с потребителями, выделяет логические функции (процессы) преобразования информации, определяет группы элементов данных и их хранилища (базы данных).
Описание структуры потоков данных, определение их компонентов хранятся в актуальном состоянии в словаре данных, который выступает как база данных проекта. Каждая логическая функция может детализироваться с помощью DFD нижнего уровня согласно методам нисходящего проектирования (см. гл. 18).
Выполняются автоматизированное проектирование спецификаций программ (задание основных характеристик для разработки программ) и ведение словаря данных.
Другой класс CASE-технологий поддерживает только разработку программ, включая:
-
автоматическую генерацию
-
проверку корректности
-
документирование программ
-
тестирование и отладку
Кодогенерация программ выполняется двумя способами; создание каркаса программ и создание полного продукта. Каркас программы служит для последующего ручного варианта редактирования исходных текстов, обеспечивая возможность вмешательства программиста; полный продукт не редактируется вручную.
В рамках CASE-технологий проект сопровождается целиком, а не только его программные коды. Проектные материалы, подготовленные в CASE-технологии, служат заданием программистам, а само программирование скорее сводится к кодированию - переводу на определенный язык структур данных и методов их обработки, если не предусмотрена автоматическая кодогенерация.
Большинство CASE-технологий использует также метод «прототипов» для быстрого создания программ на ранних этапах разработки. Кодогенерация программ осуществляется автоматически - до 85 - 90% объектных кодов и текстов на языках высокого уровня, а в качестве языков наиболее часто используются Ада, Си, Кобол.
Можно привести много примеров различных классификаций CASЕ-средств, встречающихся в литературе.