Проектирование

Дальнейшая работа над проектом связана с конкретной СУБД, поэтому, предварительно учитывая требования заказчика и намеченную архитектуру ИС, выбирают СУБД. Мы рассмотрим эту часть на примере СУБД MS Access (разработка Microsoft).

СУБД Access является системой управления базами данных реляционного типа. Всю базу данных по умолчанию Access хранит на диске в виде одного файла с расширением *.mdb, а вообще Access поддерживает ряд стандартов БД (dbase, Paradox и др). Данные хранятся в виде таблиц, строки которых состоят из наборов полей определенных типов. С каждой таблицей могут быть связаны индексы (ключи), задающие нужные пользователю порядки на множестве строк. Таблицы могут иметь однотипные поля (столбцы), и это позволяет устанавливать между ними связи, выполнять операции реляционной алгебры.

Типичными операциями над базами данных являются:

· работа с таблицами (создание, модификация, удаление таблиц, создание и модификация схем взаимосвязи существующих таблиц);

· ввод данных в таблицы непосредственно или с помощью формы, проверку вводимых данных;

· поиск данных в таблицах по определенным критериям (выполнение запросов);

· создание отчетов о содержимом базы данных.

Таблицы. Работа в Access начинается с определения реляционных таблиц и их полей, которые будут содержать данные, т.е. создания макета таблицы. Вид рабочего окна Access представлен на рис 4.15. Открытие окна сопровождается записью на диске файла базы данных. Затем в рабочем окне Access появляется окно вновь созданной базы данных. Изучая окно базы данных, заметим, что все основные объекты Access (таблицы, запросы, отчеты, формы) могут создаваться в режиме конструктора и в режиме мастера.

Рис. 4.15. Вид рабочего окна MSAccess

 

Рис 4.16. Создание таблиц в режиме конструктора

Создание таблиц предпочтительней в режиме конструктора (рис. 4.16.). Здесь задаются имена полей и свойства, ниже находится редактор свойств полей, где указываются свойства (если поле текстовое – его длина, числовое – тип целый или вещественный). Редактор свойств полей имеет скрытые элементы управления. Например, щелчок по полю ввода «размер поля» приведет к появлению элемента списка, в результате нажатия на который появляется раскрывающийся список выбора свойств. В завершение создания таблицы при записи задается имя таблицы. Схема отношения может быть отредактирована путем повторного открытия ее в режиме конструктора.

Далее определяются реляционные связи между таблицами, для чего открывается окно «Схема данных» нажатием кнопки в окне Access. В окне «Добавление таблицы» выбираем таблицы, которые следует связать. Затем методом перетаскивания указываем связываемые поля, после чего появляется окно «Изменение связей» (рис.4.17.), в котором указываем тип обеспечения целостности. Завершается этот этап нажатием кнопки «Создать».

Рис 4.17. Окно «Изменение связей»

.

Формы. Формы – одно из основных средств работы с базами данных в Access - используются для ввода новых записей, просмотра и редактирования уже имеющихся данных, задания параметров запросов и вывода ответов на них и др. Формы представляют собой окна с размещенными в них элементами управления. Существует возможность динамического создания форм при исполнении программы, однако естественным режимом их создания является режим визуального конструирования. Выбор команды «Форма» в меню «Вставка» выводит на экран окно «Новая Форма», позволяющее задать таблицу или запрос, для которых создается новая форма, и указать режим ее создания. Создания формы можно автоматизировать, используя «Мастер форм».

Для создания формы с помощью Мастера форм предполагается следующая последовательность действий: меню Формы / Создать. На экране появится окно диалога «Новая форма», в котором необходимо выбрать метод построения формы и исходный объект для построения формы. В качестве такого объекта могут быть выбраны таблица или запрос.

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

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

Запросы. При разумном подходе к проектированию баз данных пользователи не получают прямой доступ к базовым таблицам, а делают это посредством запросов. Запрос может предоставлять пользователю выборку из полей одной таблицы или из полей разных таблиц. Создать запрос можно в режиме мастера или в режиме конструктора. Создадим запрос в режиме конструктора, для чего в окне базы данных следует щелкнуть на кнопках «Запрос» и «Конструктор». Прежде всего, откроется окно «Добавление таблицы», в котором выберем таблицы, на основе которых строится запрос (допустим ВУЗ и СТУДЕНТ). В результате откроется окно (см. рис. 4.18.), называемое бланком запроса по образцу, где в верхней части указанные таблицы предстанут вместе со схемой данных. Двойным щелчком укажем на те поля, которые будут участвовать в запросе. Пусть это будут поля из таблицы СТУДЕНТ (Фамилия, Факультет) и из таблицы ВУЗ (Название вуза). Указанные поля появятся в нижней части бланка запроса по образцу. Таким образом, нами был создан простейший запрос, который называется запрос на выборку на языке запросов по образцу (QBE – Query By Example). При его активизации кнопкой будет построена таблица с указанием фамилии, факультета и ВУЗа, в котором обучается студент. Закрытие запроса сопровождается присвоением ему имени. Заметим, что запрос на выборку создает не физическую таблицу на диске, а виртуальную в оперативной памяти, которая существует, пока мы пользуемся запросом.

Запрос на выборку может создавать большие таблицы, работать с которыми не удобно, поэтому более целесообразно результаты запроса сортировать. Сортировки возможны по возрастанию и по убыванию. Направление это указывается в строке сортировка бланка запроса по образцу. Если сортировка указана по нескольким полям, то сначала будет произведена сортировка по первому полю, при обнаружении повторяющихся записей, сортировка будет по второму полю и т.д.

Рис. 4.18. Бланк запроса.

 

Бланк запроса по образцу допускает отбор данных по условию. Для этого в строке «Условие отбора» можно поставить, например, в поле «Фамилия» = Иванов, и будут отобраны все студенты с фамилией Иванов.

Возможности языка QBE весьма широки, но все же ограничены. Если требуется нечто большее, то меню окна ЗАПРОС►ВИД►РЕЖИМ SQL позволяет построить запрос на языке SQL, более универсальном, но требующем специальных знаний.

 

Отчеты. Отчет похож на запрос, но служит для форматированного вывода данных на бумагу. Для создания отчетов рационально воспользоваться мастером (база данных СОЗДАТЬ►НОВЫЙ ОТЧЕТ), который похож на мастера форм. Выполняется отчет за ряд шагов, в процессе которых:

- выясняются таблицы и запросы, на основе которых строится отчет,

- поля, по которым производится сортировка, фильтрация

- стиль оформления, печатного документа.

Редактировать отчет, созданный мастером, можно с помощью конструктора.

 

4.4.5. CASE – системы для разработки ИС

 

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

В начале 70-х гг. в США был отмечен кризис программирования (software crisis). Это выражалось в том, что большие проекты стали выполняться с отставанием от графика или с превышением сметы расходов, разработанный продукт не обладал требуемыми функциональными возможностями, производительность его была низка, качество получаемого программного обеспечения не устраивало потребителей.

Аналитические исследования и обзоры, выполняемые в течение ряда лет ведущими зарубежными аналитиками, показывали, что только немногим более 16% проектов завершались в срок, не превысили запланированный бюджет и реализовали все требуемые функции и возможности, остальные превысили бюджет или запоздали в сроках, а свыше 30% проектов были аннулированы до завершения.

Потребность контролировать процесс разработки ПО, прогнозировать и гарантировать стоимость разработки, сроки и качество результатов привела в конце 70-х гг. к необходимости перехода от кустарных к индустриальным способам создания ПО и появлению совокупности инженерных методов и средств создания ПО, объединенных общим названием "программная инженерия" (software engineering). Впервые этот термин был использован как тема конференции, проводившейся под эгидой NATO в 1968 г. В основе программной инженерии лежит одна фундаментальная идея: проектирование ПО является формальным процессом, который можно изучать и совершенствовать. Освоение и правильное применение методов и средств создания ПО позволят повысить качество ИС, обеспечить управляемость процесса проектирования ИС и увеличить срок ее жизни.

Тенденции развития современных информационных технологий определяют постоянное возрастание сложности ПО ИС, что породило потребность в программно-технологических средствах специального класса - CASE-средствах, реализующих CASE-технологию создания и сопровождения ИС. Термин CASE (Computer Aided Software Engineering) имеет весьма широкое толкование. Первоначально значение термина CASE ограничивалось вопросами автоматизации разработки только лишь программного обеспечения, а в настоящее время оно приобрело новый смысл и охватывает процесс разработки сложных ИС в целом.

Таким образом, к концу 80-х гг. назрела необходимость в CASE-технологиях и CASE-средствах и возникли предпосылки для их появления: было проведено много исследований в области программирования (разработка и внедрение языков высокого уровня, методов структурного и модульного программирования, языков проектирования и средств их поддержки, формальных и неформальных языков описания системных требований и спецификаций и т. д.).

CASE-технология представляет собой совокупность методов проектирования ИС, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех стадиях разработки и сопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей. Большинство существующих CASE-средств основано на методах структурного или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектуры программных средств.

Были созданы CASE системы:

- ориентированные на этапы жизненного цикла ПО, Design/IDEF (Meta Sotfware), BPWin(LopicWorks)};

- функционально полные, т.е. используемые на всех этапах жизненного цикла Designer (Oracle) Developer/2000 (Oracle);

- независимые от СУБД ODBC Sdesigner(SPD), ERWin (LogicWorks), ), Silverrun (Silverrun Technologies).