ВВЕДЕНИЕ
При создании ПО, как и при создании любого другого вида продукции, предназначенного для решения поставленных задач, разработчику необходимы определенные инструменты. Технологии программирования предоставляют инструментарий для разработки приложений. Иными словами, технология программирования – это различные технологии разработки программ для компьютеров, которые будут использоваться людьми для решения различных задач на компьютерах. Технологии программирования включают себя как сами языки программирования, так и средства для их разработки.
База данных — представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ).
Многие специалисты указывают на распространённую ошибку, состоящую в некорректном использовании термина «база данных» вместо термина «система управления базами данных», и указывают на необходимость различения этих понятий.
ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ
В технологии программирования основное внимание уделяется изучению процессов разработки ПС (технологических процессов) и порядку их прохождения: методы и инструменты разработки ПС участвуют в этих процессах, их применении и формировании технологических процессов. В разработке программного обеспечения различные методы и инструменты для разработки ПС изучаются с точки зрения достижения определенных целей. Эти методы могут использоваться в различных технологических процессах [1].
Рассмотрим несколько аспектов развития технологии программирования:
«Стихийное» программирование — это отсутствие четко сформулированных технологий программирования. Этот период охватывает 60-е годы XX века. Разработка технологии должна изменить язык компьютера ассемблерами, а затем алгоритмическими языками. Также была заменена повторное использование подпрограмм. Разработка «снизу в верх» использовалась спонтанно, подход, в котором были разработаны и внедрены первоначально относительно простые подпрограммы, из которых они позже пытались построить сложную программу. За это время начался кризис программирования. Это было выражено в том, что фирмы превысили все предельные сроки завершения программных проектов и их стоимость. В результате многие проекты еще не завершены.
Структурный подход к программированию. Этот период охватывает 60-70-е годы XX века. Структурный подход был набором технологических методов. Этот подход основан на принципе разложения сложных частей с целью их последующей реализации в виде отдельных подпрограмм. Структурный подход представляется в виде иерархии подзадач простейшей структуры. Алгоритм представлялся «сверху вниз» и подразумевал реализацию общей идеи, обеспечивающей разработку интерфейсов подпрограмм. Были введены ограничения на разработку алгоритмов, рекомендованы формальные модели для их описания, а также специальный метод разработки алгоритмов - метод пошаговой детализации. Поддержка принципов структурного программирования была заложена в основу языков процедурного программирования (PL / 1, Algol-68, Pascal, C).
Объектный подход. Сформирован с середины 80-х и до конца 90-х годов XX века. Объектно-ориентированное программирование или ООП определяется технологией создания сложного программного обеспечения на основе представления программы в виде объектов, каждый из которых является экземпляром определенного класса. Классы, в свою очередь, образуют иерархию с наследованием свойств. Основным преимуществом ООП по сравнению со структурным подходом является более естественное разложение программного обеспечения, что значительно упрощает разработку программы.
Компонентный подход и CASE-технологии (с середины 90-х годов 20-го века до нашего времени). Этот подход включает в себя создание программного обеспечения из отдельных компонентов - физически отдельных частей программного обеспечения, которые взаимодействуют друг с другом посредством стандартизованных двоичных интерфейсов. В отличие от обычных объектов объекты компонента могут быть собраны в динамически называемые библиотеки или исполняемые файлы, распределенные в двоичной форме (без исходного кода) и используемые на любом языке программирования, который поддерживает соответствующую технологию. В настоящее время рынок компонентов поддерживается в Интернете, массовой рекламе и публикациях. Принципы компонентного подхода были разработаны Microsoft, начиная с технологии OLE (Object Linking and Embedding), которая использовалась в более ранних версиях Windows для создания составных документов. Его разработкой стало появление COM-технологии (Component Object Model), а затем ее распределенной версии (DCOM), на основе которой были разработаны различные технологии [2].
Инструментарий по технологиям программирования обеспечивают процесс разработки программы и включают специализированное программное обеспечение, которое является средством разработки. Программное обеспечение этого процесса находится на всех технологических этапах процесса проектирования, программирования, отладки и тестирования. Пользователи этого класса программного обеспечения являются системными и прикладными программами.
Выделяют две группы программных продуктов:
Инструменты для создания приложений.
Средства для создания информационных систем (CASE-технологии).
Средства для создания приложений
Средства для создания приложений делятся на локальные и интегрированные средства, рисунок 1.
Рисунок 1. Инструментарий технологии программирования
Локальные инструменты делятся на языки и системы программирования, а также на среду инструментов пользователя.
Язык программирования - формализованный язык для описания алгоритма решения проблемы на компьютере. Они делятся на классы [1]:
машинные языки - языки программирования, воспринимаемые аппаратным обеспечением компьютера (машинные коды);
машинно-ориентированные языки - языки программирования, которые отражают структуру конкретного типа компьютера (сборщиков);
алгоритмические языки - компьютерно-независимые языки программирования для отражения структуры алгоритма (Pascal, BASIC, FORTRAN);
процессно-ориентированные языки - языки программирования, где есть возможность описать программу как набор процедур (подпрограмм);
проблемно-ориентированные языки - предназначены для решения задач определенного класса (Lisp, Simula);
интегрированные системы программирования.
Под системой программирования понимается набор языков программирования и виртуальная машина, которая обеспечивает выполнение программ, написанных на этом языке [1].
Система программирования, помимо переводчика, включает в себя текстовый редактор, компоновщик, стандартную библиотеку программ, отладчик, средства визуальной автоматизации для программирования. Примерами таких систем являются Delphi, Visual Basic, Visual C ++, Visual FoxPro [3]. Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими как:
библиотека функций, процедур, объектов и методов обработки;
макрокоманды;
клавишные и языковые макросы;
программные модули-вставки;
конструкторы экранных форм и отчетов;
генераторы приложений;
языки запросов высокого уровня;
конструкторы меню и многое другое.
Средства для создания информационных систем (CASE-технологии)
CASE (Computer Aided Software/System Engineering) — в дословном переводе – разработка программного обеспечения информационных систем с помощью компьютера.
CASE-технология — программный комплекс, автоматизирующий весь технологический процесс анализа, проектирования, разработки и сопровождения сложных программных систем.
Средства CASE-технологии делятся на две группы:
встроенные в систему реализации — все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);
независимые от системы реализации — все решения по проектированию ориентированы на унификацию (приведение к единообразию, к единой форме или системе) начальных этапов жизненного цикла и средств их документирования, обеспечивают большую гибкость в выборе средств реализации.
Основное достоинство CASE-технологии — поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом [2].
Информационная система – взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации в интересах достижения поставленной цели.
2. РАЗРАБОТКА КОНЦЕПТУАЛЬНОЙ МОДЕЛИ БАЗЫ ДАННЫХ
База данных предназначена для хранения информации о классификации инструментария технологии программирования, который делится на две основные группы: средства для разработки приложений и CASE-технологии. Как уже известно (рисунок 1) средства для разработки приложений делятся на локальные средства и интегрированные среды. Локальные средства, в текущей базе данных, будут включать в себя языки программирования и инструментальную среду пользователя. Так как инструментальная среда по своей сути является интегрированной средой программирования, учитывать её в модели текущей базы данных не будем.
CASE-технологии являются автоматизированными средами разработки различных приложений. Само проектирование баз данных можно отнести к одной из функций CASE-технологий. Данный раздел разделим на две группы: название программного обеспечения и язык программирования, который позволяет взаимодействовать с данной средой.
Построим ER диаграмму, описывающую нашу модель базы данных (рисунок 2).
3. ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
Для разработки заданной базы данных выбрана СУБД Microsoft Access 2016.
С учетом типов данных и ограничений, принятых в MS Access, опишем требования к таблицам (таблица 1-3).
Таблица 1 – Требования к таблице “Язык программирования
Имя поля |
Тип данных |
Ограничения |
Название |
Короткий текст |
совпадения не допускаются, ключевое поле |
Тип |
Короткий текст |
совпадения не допускаются |
Таблица 2 – Требования к таблице “Среда разработки”
Имя поля |
Тип данных |
Ограничения |
Название |
Короткий текст |
совпадения не допускаются, ключевое поле |
Язык программирования |
Короткий текст |
Таблица 3 – Требования к таблице “CASE-технологии”
Имя поля |
Тип данных |
Ограничения |
Название |
Короткий текст |
совпадения не допускаются, ключевое поле |
Тип |
Короткий текст |
|
Часть IDE |
Короткий текст |
Преобразуем разработанную ER-диаграмму в логическую схему базы данных (рисунок 3).
Текущая модель базы данных находится в третьей нормальной форме, поэтому дальнейшая нормализация не требуется.
Разработка таблиц
В режиме конструктора создадим таблицы, которые мы спроектировали на этапе логического проектирования (рисунки 4-6).
CASE-технологии (рисунок 4)
Рисунок 4 - Создание таблицы “CASE-технологии”
Среда разработки (рисунок 5)
Рисунок 5 - Создание таблицы “Среда разработки”
Языки программирования (рисунок 6)
Рисунок 6 - Создание таблицы “ Языки программирования
Создание схемы данных
Между таблицами Среда разработки-CASE-технологии и Языки программирования – Среда разработки связи типа один-ко-многим. При создании каждой связи выбираем свойства: Обеспечение целостности данных, Каскадное обновление связанных полей, каскадное удаление связанных полей. Полученная схема данных представлена на рисунке 7.
Рисунок 7 - Схема базы данных
4.3 Создание форм
Формы помогают представить информацию в удобном и понятном пользователю виде. Чаще всего формы основаны на табличных данных. MS Access позволяет создавать формы, которые можно использовать для ввода, управления, просмотра и печати данных.
СУБД MS Access позволяет выводить с помощью форм рисунки, узоры, кнопки, таблицы и так далее. Существует возможность разработки форм, наиболее удобных для работы пользователя, включающих записи различных связанных таблиц базы данных. Формы разрабатываются для интерактивной работы с данными, например, ввода новых данных, изменения имеющихся, удаления данных. Можно также создать форму для выполнения поисковых процедур по получению данных, отвечающих интересующим вас критериям.
К каждой таблице, с помощью мастера форм, создаем форму (рисунки 8-11).
Рисунок 8 - Форма “CASE-технологии”
Рисунок 9 - Форма “Среда разработки”
Рисунок 10 - Форма “Среда разработки”
Рисунок 11 - Форма “Языки программирования”
Создадим главную кнопочную форму, которая будет открываться при загрузке базы данных и позволяет осуществлять переход к другим формам, а также выйти из приложения (рисунок 12).
Рисунок 12 - Главная кнопочная форма
4.4 Создание запросов
Запрос - это инструмент, позволяющий делать выборки данных по определённым условиям из таблиц базы данных. Настройка запроса в самом простом случае делается с помощью конструктора запросов. С помощью запроса можно выполнять действия с данными таблиц и обобщать данные таблицы. Запросы можно использовать как источники информации для форм и отчетов. Тогда в запросе используются данные из нескольких таблиц. MS Access выполняет запрос каждый раз, когда открывается форма или отчет.
СУБД MS Accessпозволяет создавать запросы следующих типов:
запрос-выборка (предназначен для отбора данных, хранящихся в таблицах, и не изменяющий эти данные);
запрос-изменение (предназначен для изменения или перемещения данных; к этому типу запросов относятся: запрос на добавление записей, запрос на удаление записей, запрос на создание таблицы, запрос на обновление);
запрос с параметром (позволяет определить одно или несколько условий отбора во время выполнения запроса).
Наиболее часто используемым типом запроса является запрос на выборку.
Результатом выполнения любого запроса является таблица с временным набором данных (динамический набор). Записи динамического набора могут включать поля из одной или нескольких таблиц базы данных.
В режиме конструктора создаем следующие запросы (рисунок 13-29):
Запрос: название всех CASE-технологий (рисунок 13-14).
Рисунок 13 - Создание запроса “CASE-технологии”
Рисунок 14 - Результат запроса “CASE-технологии
Запрос: CASE-технология по типу языка программирования (рисунок 15-16).
Рисунок 15 - Создание запроса “ CASE-технология по типу языка программирования”
Рисунок 16 - Результат запроса “CASE-технология по типу языка программирования”
Запрос поиска повторений среди типов языков программирования (рисунок 16-17)
Рисунок 17 - Создание запроса поиска повторений среди типов языков программирования
Рисунок 18 - Результат запроса
Запрос: процедурные и мультипарадигменные языки в CASE-технологиях (рисунок 19).
Рисунок 19 - Создание запроса процедурные и мультипарадигменные языки в CASE-технологиях
Запрос: среда разработки по названию языка (рисунок 20-21).
Рисунок 20 - Создание запроса: “среда разработки по названию языка программирования”
Рисунок 21 - Результат запроса среда разработки по названию языка
CASE-технологии с мультипарадигменными языками программирования (рисунок 22-23)
Рисунок 22 - Создание запроса: CASE-технологии с мультипарадигменными языками программирования
Рисунок 23 - Результат запроса CASE-технологии с мультипарадигменными языками
Тип CASE-технологии по языку программирования (рисунок 24-25).
Рисунок 24 - Создание запроса Тип CASE-технологии по языку программирования
Рисунок 25 - Результат запроса Тип CASE-технологии по языку программирования
Запрос на обновление. Так как объектно-ориентированные языки, по своей сути, являются и мультипарадигменными, сделаем запрос на обновление: обозначим объектно-ориентированные языки, как мультипарадигменные (рисунок 26).
Рисунок 26 - Создание запроса на обновление
Запрос на удаление (рисунок 27).
Рисунок 27 - Создание запроса на удаление
Перекрестный запрос по CASE-технологиям и средам программирования (рисунок 28-29).
Рисунок 28 - Создание перекрестного запроса
Рисунок 29 - Результат перекрестного запроса
Создание отчётов
Отчет – это форматированное представление данных, которое выводится на экран, в печать или файл. Они позволяют извлечь из базы нужные сведения и представить их в виде, удобном для восприятия, а также предоставляют широкие возможности для обобщения и анализа данных.
Отчеты дают возможность распечатать данные на бумаге или сгруппировать их в виде, удобном для анализа. Это более статичная категория представления данных.
Каждый пользователь, работающий с СУБД Access, имеет возможность использования специальных средств построения отчетов для вывода данных. Используя специальные средства создания отчетов, пользователь получает следующие дополнительные возможности вывода данных:
включать в отчет выборочную информацию из таблиц базы данных;
добавлять информацию, не содержащуюся в базе данных;
при необходимости выводить итоговые данные на основе информации базы данных;
располагать выводимую в отчете информацию в любом, удобном для пользователя виде (вертикальное или горизонтальное расположение полей);
включать в отчет информацию из разных связанных таблиц базы данных.
На основе запросов с помощью мастера отчетов создаем отчеты:
CASE-технологии (рисунок 30).
Рисунок 30 - Отчёт CASE-технологии
CASE-технологии по типу языка (рисунок 31).
Рисунок 31 - Отчёт CASE-технологии по типу языка
Поиск повторений для Языки программирования (рисунок 32).
Рисунок 32 - Отчёт поиска повторений для Языки программирования
Языки программирования (рисунок 33).
Рисунок 33 - Отчёт языки программирования
Создание макросов
Макрос — это инструмент, который позволяет автоматизировать задачи и добавлять различные функциональные возможности в формы, отчеты и элементы управления. Например, если кнопку «Добавить в форму» связать с событием «OnClick» для макроса и макрос содержит команды, которые выполняются каждый раз при нажатии кнопки.
Создадим макрос, открывающий запрос “Тип CASE-технологии и тип ЯП” на изменение, а затем переходящий к существующим формам (рисунок 34-35).
Рисунок 34 - Создание макроса.
Рисунок 35 - Результат работы макроса.
ЗАКЛЮЧЕНИЕ
СУБД Microsoft Access – хорошее решение для предприятий, стремящихся оптимизировать работу бизнеса в условиях постоянно изменяющегося рынка. По большей части это относится к предприятиям малого и среднего бизнеса, которых большинство среди компаний разных отраслей. Миллионы специалистов мира в области проектирования и разработки приложений используют СУБД Microsoft Access в своих решениях.
Применение возможностей СУБД Microsoft Access позволило создать базу данных, имеющую удобный пользовательский интерфейс, простую в использовании и не требующую больших затрат ресурсов.
Все данные хранятся в таблицах. Созданные связи между таблицами обеспечивают целостность данных. Наличие форм обеспечивает простоту в работе с данными. Просмотр, изменение, добавление данных может проводиться не в режиме таблицы, а в режиме форм [5]. Созданные запросы позволяют организовать поиск необходимой информации в базе данных. Отчеты позволяют представить и распечатать информацию в удобном для пользователя виде. Кроме того, возможности Microsoft Access позволяют производить усовершенствование базы данных, гибко реагируя на возникающие потребности.
В данной пояснительной записке к курсовой работе показан полный путь создания базы данных, начиная с анализа предметной области и заканчивая практической реализацией поставленной задачи средствами СУБД Microsoft Access, результатом которой является создание базы данных «Инструментарий технологии программирования».
СПИСОК ЛИТЕРАТУРЫ
Инструментарий технологии программирования [Электронный ресурс] http://life-prog.ru/1_14876_instrumentariy-tehnologii-programmirovaniya.html
Современные методы и средства проектирования информационных систем [Электронный ресурс] http://bourabai.ru/is/case/
Инструментарий технологии программирования [Электронный ресурс] http://www.maksakov-sa.ru/ProgrProd/klasProgProd/InstrProgrObes/index.html
Состав и назначение инструментария технологии программирования. Основные программные продукты для создания приложений [Электронный ресурс] http://studopedia.org/6-17902.html
Быкова В. В. Искусство создания базы данных в Microsoft Office Access 2014 [Электронный ресурс]: учеб. пособие / В. В. Быкова. - Красноярск: Сиб. федер. ун-т, 2011. - 260 с.
Чертовский В.Д. Базы и банки данных. [Электронный ресурс] http://www.hi-edu.ru/e-books/xbook099/01/index.html?part-002.htm
Кузнецов С.Д. Основы современных баз данных. [Электронный ресурс] http://citforum.ru/database/osbd/contents.shtml
Кузнецов С.Д. Введение в реляционные БД. [Электронный ресурс] http://www.intuit.ru/department/database/rdbintro/
Учебник по БД. [Электронный ресурс] http://licey102.k26.ru/mo/toch/Chern/Access/index.html