Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Спецификации проектов программных систем




Инструментальные средства концептуального проектирования

 

CASE-системы

 

В современных информационных технологиях важное место отводится инструментальным средствам и средам разработки АС, в частности, систе­мам разработки и сопровождения их ПО. Эти технологии и среды образуют системы, называемые CASE-системами.

Используется двоякое толкование аббревиатуры CASE, соответствую­щее двум направлениям использования CASE-систем. Первое из них — Computer Aided System Engineering — подчеркивает направленность на под­держку концептуального проектирования сложных систем, преимущественно слабоструктурированных. Далее CASE-системы этого направления будем на­зывать системами CASE для концептуального проектирования. Второе на­правление было рассмотрено выше, его название Computer Aided Software Engineering переводится, как автоматизированное проектирование программ­ного обеспечения, соответствующие CASE-системы называют инструмен­тальными CASE или инструментальными средами разработки ПО (одно из близких к этому названий — RAD — Rapid Application Development).

Среди систем CASE для концептуального проектирования различают системы функционального, информационного или поведенческого проек­тирования. Наиболее известной методикой функционального проектирова­ния сложных систем является методика SADT (Structured Analysis and De­sign Technique), предложенная в 1973 г. Р. Россом и впоследствии ставшая основой международного стандарта IDEFO (Integrated DEFinition 0).

Системы информационного проектирования реализуют методики инфологического проектирования БД. Широко используются язык и методика создания информационных моделей приложений, закрепленные в между­народном стандарте IDEF1X. Кроме того, развитые коммерческие СУБД, как правило, имеют в своем составе совокупность CASE-средств проекти­рования приложений.

Основные положения стандартов IDEFO и IDEF1X использованы также при создании комплекса стандартов ISO 10303, лежащих в основе техноло­гии STEP для представления в компьютерных средах информации, относя­щейся к проектированию и производству в промышленности.

Поведенческое моделирование сложных систем используют для опреде­ления динамики функционирования сложных систем. В его основе лежат мо­дели и методы имитационного моделирования систем массового обслужива­ния, сети Петри, возможно применение конечно-автоматных моделей, описывающих поведение системы, как последовательности смены состояний.

Применение инструментальных CASE-систем ведет к сокращению за­трат на разработку ПО благодаря уменьшению числа итераций и числа оши­бок, к улучшению качества продукта в результате лучшего взаимопонимания разработчика и заказчика, к облегчению сопровождения готового ПО.

Среди инструментальных CASE-систем различают интегрированные комплексы инструментальных средств для автоматизации всех этапов жиз­ненного цикла ПО (такие системы называют Workbench) и специализиро­ванные инструментальные средства для выполнения отдельных функций (Tools). Средства CASE по своему функциональному назначению принад­лежат к одной из следующих групп:

1) средства программирования;

2) средства управления программным проектом;

3) средства верификации (анализа) программ;

4) средства документирования.

К первой группе относятся компиляторы с алгоритмических языков; по­строители диаграмм потоков данных; планировщики для построения высоко­уровневых спецификаций и планов ПО (возможно, на основе баз знаний, реа­лизованных в экспертных системах); интерпретаторы языков спецификаций и языков четвертого поколения; прототайпер для разработки внешних интер­фейсов — экранов, форм выходных документов, сценариев диалога; гене­раторы программ определенных классов (например, конверторы заданных языков, драйверы устройств программного управления, постпроцессоры); кросс-средства; отладчики программ. При этом под языками спецификаций понимают средства укрупненного описания разрабатываемых алгоритмов и программ, к языкам 4GL относят языки для компиляции программ из набо­ра готовых модулей, реализующих типовые функции достаточно общих приложений (чаще всего это функции технико-экономических систем).

Основой средств управления программным проектом является репозиторий — БД проекта. Именно в репозитории отражена история развития программного проекта, содержатся все созданные версии (исходный про­граммный код, исполняемые программы, библиотеки, сопроводительная документация и т. п.) с помощью репозитория осуществляется контроль и отслеживание вносимых изменений.

Средства верификации служат для оценки эффективности исполнения разрабатываемых программ и определения наличия в них ошибок и проти­воречий. Различают статические и динамические анализаторы. В статиче­ских анализаторах ПО исследуется на наличие неопределенных данных, бесконечных циклов, недопустимых передач управления и т. п. Динамиче­ский анализатор функционирует в процессе исполнения проверяемой про­граммы; при этом исследуются трассы, измеряются частоты обращений к модулям и т. п. Используемый математический аппарат — сети Петри, тео­рия массового обслуживания.

В последнюю из перечисленных групп входят документаторы для оформления программной документации, например, отчетов по данным ре­позитория; различные редакторы для объединения, разделения, замены, поиска фрагментов программы и других операций редактирования.

Проектирование ПО с помощью CASE-систем включает в себя не­сколько этапов:

Начальный этап — предварительное изучение проблемы. Результат представляют в виде исходной диаграммы потоков данных и со­гласуют с заказчиком.

На следующем этапе выполняют детализацию огра­ничений и функций программной системы, и полученную логическую мо­дель вновь согласуют с заказчиком.

Далее разрабатывают физическую модель, т. е. определяют модульную структуру программы, выполняют инфологическое проектирование БД, детализируют граф-схемы программной системы и ее модулей.

Спецификации проектов программных систем

 

Важное значение в процессе разработки ПО имеют средства специфи­кации проектов ПО. Средства спецификации в значительной мере опреде­ляют суть методов CASE.

Способы и средства спецификации классифицируют по базовой мето­дологии, используемой для декомпозиции ПО как сложной системы, и по аспектам моделирования ПО.

Различают два подхода к декомпозиции ПО. Первый способ называют функциональным или структурным. Он основан на выделении функций и потоков данных. Второй способ — объектный, выражает идеи объектно-ориентированного проектирования и программирования. Проектирование ПО из готовых компонентов, рассмотренное в предыдущей главе, есть вы­ражение объектного подхода.

Аспектами моделирования приложений являются функциональное, по­веденческое и информационное описания.

Практически все способы функциональных спецификаций имеют сле­дующие общие черты:

• модель имеет иерархическую структуру, представляемую в виде диаграмм нескольких уровней;

• элементарной частью диаграммы каждого уровня является конст­рукция вход-функция-выход;

• необходимая дополнительная информация содержится в файлах поясняющего текста.

В большинстве случаев функциональные диаграммы являются диа­граммами потоков данных (DFD — Data Flow Diagram). В DFD блоки (пря­моугольники) соответствуют функциям, дуги — входным и выходным по­токам данных. Поясняющий текст представлен в виде «словарей данных», в которых указаны компонентный состав потоков данных, число повторений циклов и т. п. Для описания структуры информационных потоков можно использовать нотацию Бэкуса-Наура.

Одна из нотаций для DFD предложена Е. Йорданом. В ней описывают процессы (функции), потоки данных, хранилища и внешние сущности, их условные обозначения показаны на рис. 1.

Рис. 1. Изображения элементов в нотации Е. Йордана

 

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

Для описания информационных моделей наибольшее распространение получили диаграммы сущность-связь (ERD — Entity-Relation Diagrams), в которых предусмотрены средства для описания сущностей, атрибутов и от­ношений. Спецификации хранилищ данных в CASE, как правило, даются с помощью диаграмм сущность-связь. Стандартной методикой построения таких диаграмм является IDEF1X.

Поведенческие модели описывают процессы обработки информации. В инструментальных CASE-системах их представляют в виде граф-схем, диа­грамм перехода состояний, таблиц решений, псевдокодов (языков специ­фикаций), процедурных языков программирования, в том числе языков четвертого поколения.

В граф-схемах блоки, как и в DFD, используют для задания процессов обработки, но дуги имеют иной смысл — они описывают последователь­ность передач управления (вместе с специальными блоками управления).

В диаграммах перехода состояний узлы соответствуют состояниям мо­делируемой системы, дуги — переходам из состояния в состояние, атрибу­ты дуг — условиям перехода и инициируемым при их выполнении дейст­виям. Очевидно, что, как и в других конечно-автоматных моделях, кроме графической формы представления диаграмм перехода состояний, можно использовать также табличные формы. Так, при изоморфном представлении с помощью таблиц перехода состояний каждому переходу соответствует строка таблицы, в которой указываются исходное состояние, условие пере­хода, инициируемое при этом действие и новое состояние после перехода.

Близкий по своему характеру способ описания процессов основан на таблицах (или деревьях) решений. Каждый столбец таблицы решений соот­ветствует определенному сочетанию условий, при выполнении которых осу­ществляются действия, указанные в нижерасположенных клетках столбца.

Таблицы решений удобны при описании процессов с многократными ветвлениями. В этих случаях помогают также визуальные языки програм­мирования, в которых для описания процессов используют графические элементы, подобные приведенным на рис.2.

Рис. 2. Примеры описания операторов в визуальных языках программирования

В псевдокодах алгоритмы записываются с помощью как средств некото­рого языка программирования (преимущественно для управляющих операто­ров), так и естественного языка (для выражения содержания вычислительных блоков). Используются конструкции (операторы) следования, условные, цик­ла. Служебные слова из базового языка программирования или из DFD запи­сываются заглавными буквами, фразы естественного языка — строчными.

Языки четвертого поколения предназначены для описания программ как совокупностей заранее разработанных программных модулей. Поэтому одна команда языка четвертого поколения может соответствовать значи­тельному фрагменту программы на языке 3GL. Примерами языков 4GL мо­гут служить Informix-4GL, JAM, NewEra, XAL.

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

Объектный подход представлен компонентно-ориентированными тех­нологиями разработки ПО. При объектном подходе ПО формируется из компонентов, объединяющих в себе алгоритмы и данные и взаимодейст­вующих путем обмена сообщениями. Для поддержки объектного подхода разработан стандартный язык моделирования приложений UML.





Поделиться с друзьями:


Дата добавления: 2016-12-31; Мы поможем в написании ваших работ!; просмотров: 802 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Жизнь - это то, что с тобой происходит, пока ты строишь планы. © Джон Леннон
==> читать все изречения...

4403 - | 4166 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.007 с.