Выбор средств разработки - Разработка автоматизированной информационной системы для устранения различий в структурах баз данных разработчиков, при работе над общим проектом с использованием системы контроля версий
Для написания АИС использовались следующие языки программирования, программные средства и библиотеки:
- - Язык программирования PHP 5.4; - Модернизированный и усовершенствованный вариант командной оболочки для Unix систем - Bash; - Пакетные файлы (batch file); - Расширение SimpleXML в PHP; - СУБД MySQL 5.6; - Библиотека MySQLi в PHP для расширения функциональности при работе с MySQL; - Система контроля версий Mercurial HG; - Программа для работы и управления базой данных HeidiSQL; - Инструмент слияния и сравнения для Windows - WinMerge.
Язык PHP.
PHP (англ. PHP: Hypertext Preprocessor "PHP: гипертекста препроцессор"; изначально Personal Home Page Tools -- "Инструменты для создания персональных web-страниц") -- скриптовый язык программирования общего назначения, повсеместно применяемый для разработки и поддержки web-приложений. В настоящее время поддерживается практически каждым хостинг-провайдером и является одним из лидеров среди языков программирования, используемых для создания динамических web-сайтов.
При написании данного дипломного проекта я использовал язык PHP, потому как он является одним из самых распространенных языков, используемых в web-разработке, по нему есть огромное количество документации, доступной, в том числе на русском языке, создано большое количество различных библиотек. Кроме того, согласно штатному расписанию компании заказчика, 7 из 11 сотрудников владеют данным языком программирования, что особенно важно для поддержки и дальнейшего развития разработанной АИС.
К недостаткам PHP можно отнести производительность. В среднем при обращении к скрипту PHP использует приблизительно 2 Мб оперативной памяти, т. е. при одновременном обращении к серверу 1800 запросов одновременно сервер может "упасть". Однако такая ситуация в принципе невозможна, т. к. разрабатываемая АИС будет запускаться на локальных серверах сотрудников и на сервере компании, а число пользователей АИС равно числу программистов ООО "БРеалИТ".
База данных MySQL
MySQL - свободная реляционная система управления базами данных. MySQL является наилучшим решением для малых и средних проектов, использующих СУБД. Поддерживает большое количество типов таблиц, в том числе MyISAM, с поддержкой полнотекстового поиска, InnoDB, с поддержкой транзакций на уровне отдельных записей, типа Merge, позволяющей разбить большую таблицу на несколько небольших, за счет чего увеличивается скорость работы, типа Federated, позволяет "связать" серверы MySQL таким образом, что получилась одна логическая база данных.
Для получения данных в MySQL используется язык запросов SQL. Версия базы данных 5.6 использует модификацию стандарта SQL - 2003.
Достоинства MySQL:
- - Компактная. - Если продукт не продается - бесплатная. - Имеет application programming interface (API), по средствам которого может очень быстро взаимодействовать с приложением. - Имеет встроенный сервер.
Недостатки:
- - Надежность таблицы типа MyISAM. При достижении размера в 10 Гб может "упасть"; - Таблицы InnoDB поддерживают до 1 ТБ, однако они гораздо медленнее MyISAM; - MyISAM таблицы поддерживают полнотекстовый поиск, но не поддерживают транзакции, а таблицы InnoDB поддерживают транзакции, но не поддерживают полнотекстовый поиск.
Интерфейс командной строки.
Интерфейс командной строки (англ. Command line interface, CLI) -- разновидность текстового интерфейса между человеком и компьютером, в котором инструкции компьютеру даются путем ввода с клавиатуры текстовых строк (команд). Также распространено название консоль.
Достоинства командной строки:
- - Естественное расширение интерфейса командной строки -- пакетный интерфейс. Означает, что в обычный текстовый файл, в определенном формате записывается последовательность команд, после чего этот файл можно выполнить в программе. Получится такой же эффект, как если бы эти команды были по очереди введены в командную строку. Например, shell - скрипты в Unix - системах, .bat - файлы в Windows. - Значительно меньший расход памяти в сравнении с системой меню. - Можно работать на выделенном сервере, т. е на операционных системах, не имеющих графического интерфейса. - Есть возможность просмотра сообщений об ошибках работы программы или сообщений программы, путем пролистывания консоли. - Для просмотра ранее введенных команд и их повторного выполнения можно пользоваться кнопками "^" и "v". - Можно пользоваться удаленным компьютером с любого устройства подключаемого к Интернету или локальной сети (ПК, ноутбук, сотовый телефон, портативная игровая консоль) без особых затрат трафика (единицы килобайт за сеанс). - Отсутствие графических деталей интерфейса (панели пуска и меню, оконные рамки и т. д.) позволяет вместить увеличить объем выводимой полезной информации.
Недостатки командной строки:
- - Данный вид интерфейса нельзя назвать "дружелюбным" для пользователей. - Необходимо запоминать сокращения и учить команды. - Отсутствие автоматического дополнения делает ввод длинных команд и специальных символов затруднительным.
XML.
XML (англ. eXtensible Markup Language - расширяемый язык разметки). Средство для описания документа. К достоинствам данной разметки можно отнести то, что:
- - Позволяет стандартизировать внешний вид хранения данных визуально наиболее понятных для человека; - Поддерживает Юникод; - Возможность описать имена и структуру полей; - Рекомендован Консорциумом Всемирной паутины (W3C); - Абсолютно свободен в части требований по расположению атрибутов в элементах; - Реализованы парсеры для практически всех языков программирования; - Поддержка на низком программном уровне.
Из недостатков можно выделить следующие:
- - Избыточный синтаксис; - Размер документа получается больше, нежели в альтернативных форматах передачи текстовых данных; - Нет поддержки типов данных.
Система управления версиями Mercurial.
Mercurial (c англ. -- "ртутный, подвижный"), помимо этого названия известен как Hg -- кроссплатформенная распределенная система управления версиями, была разработана в 2005 году для работы с проектами, имеющими большие репозитории кода. В основном Hg является программой работающей через консоль, но для облегчения использования можно использовать графический интерфейс TortoiseHg (Рис. 8).

Рис. 8 -- Внешний вид диалогового окна программы TortoiseHg
Работа Hg организована следующим образом: на локальном сервере разработчика создается новый репозиторий (создать можно с помощью клонирования уже существующего, инициализации нового или при скачивании изменений с сервера на котором уже установлен репозиторий). В текущей директории редактируются, создаются, удаляются папки и файлы и при необходимости делается фиксаций изменений на локальном компьютере разработчика. Таким образом, создается история изменений рабочего проекта. При необходимости синхронизировать работу с другими разработчиками, все проделанные фиксации работы загружаются на сервер.
Программа для работы и управления базой данных HeidiSQL.
HeidiSQL является бесплатной графической (Рис. 9) оболочкой для управления базами данных MSSQL и MySQL. Позволяет создавать, редактировать, удалять таблицы, триггеры, процедуры, представления. Поддерживает подключение к нескольким серверам одновременно (Рис. 10) позволяет экспортировать выбранные в таблице строки в различные форматы: CSV, XML, SQL, HTML и массивы PHP. В данной дипломной работе HeidiSQL применялась для удобства тестирования и проверки корректности работы разрабатываемой АИС.

Рис. 9 -- Внешний вид графической оболочки HeidiSQL

Рис. 10 -- Пример подключения HeidiSQL к нескольким серверам одновременно
Инструмент слияния и сравнения для Windows - WinMerge.
WinMerge является инструментом, предназначенным для сравнения файлов в ОС Windows. Имеет прекрасный графический интерфейс (Рис. 11) и обладает широкими возможностями при сравнении файлов:
Ѕ имеет визуальную подсветку при наличии различий в файлах;
Ѕ обнаруживает перемещенные строки;
Ѕ позволяет создавать фалы с патчами в различных форматах;
Ѕ имеет готовое HTML -- руководство.
Программа WinMerge, также как и HeidiSQL использовалась при тестировании разрабатываемой АИС.
Рис. 11 -- Пример работы программы WinMerge 2.0.14
Похожие статьи
-
В связи с увеличением числа сотрудников, работающих в компании, а также с расширением рабочего проекта, возникла проблема, связанная с версионностью...
-
В рамках выпускной квалификационной работы была разработана автоматизированная информационная система, предназначенная как для автоматического, так и для...
-
Алгоритм работы. В результате работы АИС генерируются три xml документа - два со структурой сравниваемых баз данных и один с результатами сравнения. В...
-
SimpleXML. В PHP версии 5.0 и выше появилось расширение для работы с xml структурой. Библитека SimpleXML содержит большое количество методов для работы с...
-
Для работы с базами данных созданы системы управлением базами данных. Существует довольно большое количество СУБД, особенно предназначенных для работы с...
-
Выбор средств реализации информационной системы Названные в параграфе 1.4. настоящей работы задачи могут быть решены тремя типами средств автоматизации:...
-
Завершив выбор схемы работы системы и общего принципа работы ее частей и выбрав тип базы данных, следует перейти к выбору языка программирования....
-
Обоснование выбора средств разработки проекта Для реализации корпоративной информационной системы "Бюджетное планирование и отчетность" в исследуемой...
-
Для того чтобы оценить экономическую выгоду от внедрения АИС необходимо вычислить трудозатраты компании направленные непосредственно на реализацию...
-
Использование парадигмы ООП. Разрабатываемая АИС является системой с открытым исходным кодом и значит должна являться масштабируемой сторонними...
-
При работе над проектом разрабатывались два основных компонента системы: база данных (далее - БД) и интерфейс клиентского приложения. Затем необходимо...
-
Выбранные датчики, исполнительные механизмы и их месторасположение, а также структурная схема АСУ ТП производства сухого молока позволяют составить схему...
-
Наиболее распространенная форма - ЭВМ. Раньше чаще использовались вычислительные центры (ВЦ). Вычислительный центр - организуется и специализируется на...
-
Учебный процесс в ННГАСУ сопровождается значительной информационной базой, развитием компьютерного парка и внедрением в образовательный процесс...
-
Следующим этапом, когда документация найдена, источники изучены, а другие решения проанализированы, является реализация автоматизированной системы...
-
При разработке практически всех инструментальных средств за основу принимается методология автоматизации проектирования на базе использования прототипов....
-
Microsoft Access База данных разработана в среде Microsoft Access. Microsoft Access - реляционная СУБД корпорации Microsoft. Имеет широкий спектр...
-
Обоснование выбора средств для разработки В качестве платформы была взята платформа NET, потому что платформа NET на текущий момент самая передовая и...
-
Инструментарий технологии программирования - программные продукты поддержки (обеспечения) технологии программирования. В рамках этого направления...
-
Назначение разрабатываемой системы Целью дипломной работы является разработка системы учета Посещаемости детей в детском саду на основе объектно -...
-
Для программирования агентов могут применяться: универсальные языки (Java, C++ , Visual Basic и др.), языки представления знаний (SL, KIF), языки...
-
Постановление Правительства Российской Федерации №1119 "Об утверждении требований к защите персональных данных при их обработке в информационных системах...
-
Для реализации ИИС контроля расхода энергоресурсов проведем анализ характеристик существующих беспроводных технологий передачи данных. Наиболее...
-
Информационно - измерительные системы: структура и состав Постоянное совершенствование и развитие средств измерений необходимо для промышленного...
-
Наиболее распространенная форма - ЭВМ. Раньше чаще использовались вычислительные центры (ВЦ). Вычислительный центр - организуется и специализируется на...
-
Прогнозируемая оценка проекта после реализации единой шины данных как прослойки между всеми компонентами ИТ-ландшафта компании выполняется по методу...
-
Помимо концепции будущей системы бюджетирования, в рамках решения задачи разработки проекта "Бюджетное планирование и отчетность" должен быть разработан...
-
Прогноз погоды - научно обоснованное предположение о будущем состоянии погоды в определенном пункте или регионе на определенный период. Составляется...
-
Типы данных и команды SQL - Разработка информационной системы "Магазин компьютерных товаров"
Microsoft SQL Server поддерживает большинство типов данных SQL 2003. Также SQL Server поддерживает дополнительные типы данных, используемые для...
-
Математическое и программное обеспечение (МО, ПО)- совокупность математических методов, моделей, алгоритмов и программ для реализации целей и задач...
-
Ubuntu Mate является операционной системой [11], основанной на Debian GNU/Linux. Установка операционной системы заключается в записи на карту памяти...
-
Физическая модель базы данных определяет способ размещения данных в среде хранения и способ доступа к этим данным, которые поддерживаются на физическом...
-
1. Изучение теоретических аспектов использования: MS Word, MS Excel, MS Access, Paint и Photoshop... (ППО) Часть 1 : Руководство по выполнению...
-
Определение методов реинжиниринга информационных систем Основные задачи, которые стоят перед проектировщиком, занимающимся реинжинирингом информационных...
-
"WWWSQLDesigner" позиционируется как абсолютно бесплатный, доступный для пользователей, универсальный веб-редактор, значительно упрощающий процесс...
-
Предлагаемая библиотека хранит все данные в отдельных таблицах, таким образом он не обязан использовать ту же СУБД, что и основное приложение. В качестве...
-
ПО развивается исходя из требований других подсистем. ПО при обработке данных является связующим звеном между комплексом технических средств и другими...
-
Процесс перезагрузки может быть достигнут путем прекращения работы системы, выключения питания и включения снова. Более простой способ - это указать...
-
Можно выделить три основных метода разработки программного обеспечения: 1. Конструкторы программ (Аlgoritm2, Devel Studio, MnCreator, Game Maker и др.)....
-
В организации ООО "Дружба" имеется различное оборудование. Оно подразделяется на офисную оргтехнику и профессиональное оборудование в цехе. Офис оснащен...
Выбор средств разработки - Разработка автоматизированной информационной системы для устранения различий в структурах баз данных разработчиков, при работе над общим проектом с использованием системы контроля версий