Разработка клиентского приложения для работы с базой данных автомобильного предприятия

Принципы построения информационной системы и ее реализация. Разработка программы доступа к данным автомобильного предприятия города на объектно-ориентированном языке программирования C Sharp. Расчет эффективности разрабатываемого програмного продукта.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 15.05.2012
Размер файла 4,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Оглавление

Введение

1. Постановка задачи и технико-экономическое обоснование

1.1 Постановка задачи

1.2 Анализ и оценка существующих аналогов

1.3 Формирование задач и требований к разрабатываемой ИС

1.4 Обоснование принятия решения о необходимости разработки ИС

2. Выбор средств разработки

2.1 Понятие и характеристики информационной системы

2.2 Общие принципы построения информационной системы

2.3 Выбор средств разработки

2.4 Серверная и клиентская часть информационной системы

3. Разработка и реализация ИС

3.1 Разработка серверной части ИС

3.2 Разработка клиентской части ИС

3.3 Администрирование информационной системы

4. Разработка технической документации к разрабатываемой ИС

4.1 Описание применения

4.2 Руководство системного администратор

4.3 Руководство пользователя

5. Программа, методика и результаты испытаний разрабатываемой ИС

5.1 Объект испытаний

5.2 Цели испытаний

5.3 Средства и порядок испытаний

5.4 Проведение программы испытаний

5.5 Анализ результатов испытаний

6. Экономическая часть

6.1 План выполнения темы. Ленточный график

6.2 Расчет затрат на разработку продукта

6.2.1 Составление сметы затрат на разработку модуля

6.2.2 Расчет цены для НИР

6.3 Расчет и выводы по эффективности предложений

7. Безопасность и экологичность проекта

7.1 Организация рабочего места пользователя ПЭВМ

7.2 Анализ опасных и вредных факторов при работе с ПЭВМ

7.2.1 Влияние электрического тока

7.2.2 Параметры микроклимата

7.2.3 Уровень шума на рабочем месте

7.2.4 Пожарная опасность

7.2.5 Освещенность рабочего места

7.3 Расчет общего искусственного освещения в помещении с ПЭВМ

7.4 Эргономизация рабочего места с ПЭВМ

7.5 Экологичность проекта

Заключение

Список использованных источников

Приложение А - Листинги разработанных программных модулей

  • Приложение Б - Графический материал

Введение

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

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

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

Создание и использование информационной системы для любой организации нацелены на решение следующих задач:

1) Структура информационной системы, ее функциональное назначение должны соответствовать целям, стоящим перед организацией. Например, в коммерческой фирме - эффективный бизнес; в государственном предприятии - решение социальных и экономических задач.

2) Информационная система должна контролироваться людьми, ими пониматься использоваться в соответствии с основными социальными и этическими принципами.

3) Производство достоверной, надежной, своевременной и систематизированной информации.

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

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

Цель информационной технологии - производство информации для ее анализа человеком и принятия на его основе решения по выполнению какого-либо действия. В условиях развития современного общества информационные технологии глубоко проникают жизнь людей. Они являются стимулом для развития, как мировой экономики, так и других сфер человеческой деятельности. Сейчас затруднительно найти сферу деятельности, в которой не применяются информационные технологии. Без них современное общество в нынешнем виде не сможет существовать.[6]

1. Постановка задачи и технико-экономическое обоснование задания

1.1 Постановка задачи

В рамках дипломной работы передо мной была поставлена задача по разработке программы доступа к данным автомобильного предприятия города.

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

1. обеспечивать получение общих и/или детализированных отчетов по итогам работы;

2. позволять легко определять тенденции изменения важнейших показателей;

3. обеспечивать получение информации, критической по времени, без существенных задержек;

4. выполнять точный и полный анализ данных.

Целью данной работы проекта является разработка информационной системы с клиент-серверной архитектурой для хранения информации в предметной области «Автомобильные предприятия города» и приложения для работы с данной системой. Разработанная информационная система будет обеспечивать хранение информации о водителях, их зарплатах, отпусках, о закреплённых за водителями автомобилях, о ремонте автомобилей, транспортных перевозках, маршрутах перевозок. При работе с данной информацией пользователь может её редактировать, просматривать, добавлять и осуществлять поиск по записям в таблицах базы данных. Реляционная алгебра -- это коллекция операций, которые принимают отношения в качестве операндов и возвращают отношение в качестве результата. Первая версия этой алгебры была определена Коддом.

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

Основу манипуляционной части реляционной модели составляют два базовых механизма манипулирования реляционными данными - основанная на теории множеств реляционная алгебра и базирующееся на математической логике (точнее, на исчислении предикатов первого порядка) реляционное исчисление. Реляционная алгебра предоставляет набор операторов, использующих отношения в качестве операндов и возвращающих отношения в качестве результата. Эдгаром Коддом была предложена «начальная» алгебра («алгебра Кодда»), состоящая из восьми операторов, условно разделенных на две группы:

- Традиционные операции над множествами, модифицированные с позиции использования отношений в качестве операндов:

1) Объединение. Операция возвращает отношение, содержащее все кортежи, которые принадлежат либо одному из двух заданных отношений, либо им обоим;

2) Пересечение. Операция возвращает отношение, содержащее все кортежи, которые принадлежат одновременно двум заданным отношениям;

3) Разность. Операция возвращает отношение, содержащее все кортежи, которые принадлежат первому из двух заданных отношений и не принадлежат второму;

4) Расширенное декартово произведение. Операция возвращает отношение, содержащее все возможные кортежи, которые являются сочетанием двух кортежей, принадлежащих соответственно двум заданным отношениям.

- Специальные реляционные операции:

5) Выборка (Ограничение). Операция возвращает отношение, содержащее все кортежи из заданного отношения, которые удовлетворяют заданным условиям;

6) Проекция. Операция возвращает отношение, содержащее все кортежи (подкортежи) из заданного отношения, которые остались в этом отношении после исключения из него некоторых атрибутов;

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

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

Хотя в основе теоретико-множественной части реляционной алгебры лежит классическая теория множеств, соответствующие операции реляционной алгебры обладают некоторыми особенностями.

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

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

Пусть имеются два отношения R1{a1, a2, …, an} и R2{b1, b2, …, bm}. Тогда результатом операции R1 TIMES R2 является отношение R{a1, a2, …, an, b1, b2, …, bm}, тело которого является множеством кортежей вида {ra1, ra2, …, ran, rb1, rb2, …, rbm} таких, что {ra1, ra2, …, ran} входит в тело R1, а {rb1, rb2, …, rbm} входит в тело R2.

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

По поводу теоретико-множественных операций реляционной алгебры следует еще заметить, что все четыре операции являются ассоциативными коммутативными (кроме операции вычитания). То есть, если обозначить через OP любую из четырех операций, то (A OP B) OP C = A (B OP C), и следовательно, без введения двусмысленности можно писать A OP B OP C (A, B и C - отношения, обладающие свойствами, требуемыми для корректного выполнения соответствующей операции). Все операции, кроме взятия разности, являются коммутативными, т.е. A OP B = B OP A.

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

В зависимости от того, что является областью определения переменной, различаются исчисление кортежей и исчисление доменов. В исчислении кортежей областями определения переменных являются отношения базы данных, т.е. допустимым значением каждой переменной является кортеж некоторого отношения. В исчислении доменов областями определения переменных являются домены, на которых определены атрибуты отношений базы данных, т.е. допустимым значением каждой переменной является значение некоторого домена. Основным формальным отличием исчисления доменов от исчисления кортежей является наличие дополнительного набора предикатов, позволяющих выражать так называемые условия членства. Если R - это n-арное отношение с атрибутами a1, a2,..., an, то условие членства имеет вид:

R (ai1:vi1, ai2:vi2,...,aim:vim) (m <= n),

где vij - это либо литерально задаваемая константа, либо имя кортежной переменной. Условие членства принимает значение true в том и только в том случае, если в отношении R существует кортеж, содержащий указанные значения указанных атрибутов. Если vij - константа, то на атрибут aij задается жесткое условие, не зависящее от текущих значений доменных переменных; если же vij - имя доменной переменной, то условие членства может принимать разные значения при разных значениях этой переменной.

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

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

Поэтому Крисом Дейтом и Хью Дарвеном была предложена новая «минимальная» Алгебра А, базисом которой являются операции реляционного отрицания (дополнения), реляционной конъюнкции (или дизъюнкции) и проекции (удаления атрибута). Реляционные аналоги логических операций определяются в терминах отношений на основе обычных теоретико-множественных операций и позволяют выражать напрямую операции пересечения, декартова произведения, естественного соединения, объединения отношений и т. д. Путем комбинирования базовых операций выражаются операции переименования атрибутов, соединения общего вида, взятия разности отношений. Алгебра A позволяет лучше осознать логические основы реляционной модели, хотя, безусловно, является в меньшей степени ориентированной на практическое применение, чем алгебра Кодда.[8]

1.2 Анализ и оценка существующих аналогов

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

- загроможденный интерфейс;

- отсутствие кнопок для часто используемых функций;

- обилие полей для малоиспользуемых функций;

- ошибки в работе ИС;

Таблица 1 - Анализ существующих аналогов

Название ПО

Разработчик

Функции

Цена

Недостатки

Обслуживание/ обучение

Обновление

Рарус:Автотранспорт

Рарус

Учет ремонта и расхода топлива

Начисление заработной платы водителям

Расчет стоимости услуг автотранспортного предприятия. Планирование использования парка автомобилей Анализ результатов хозяйственной деятельности.

5900

Загроможденный интерфейс; большое количество редко используемых полей,

большое количество бесполезных функций.

Гарантийное обслуживание 1 год

Неизвестно

АвтоПредприятие

АвтоСофт

Планирование перевозок

Учет парка автомобилей

Полный учёт операций ремонта транспорта;

Учёт оказанных услуг (зарплата, прибыль, трудозатраты);

рабочего времени;

Самостоятельное управление настройками и модификация отчетов

Бесплатно

Загроможденный интерфейс; большое количество редко используемых полей

Обучение по сопровождаемой ПО инструкцией к применению

Раз в год

АвтоПрокат

Psoft

Организация и планирование перевозок сотрудников

Возможность перевода интерфейса программы на любой язык

Учет ремонтов, ТО

3000

Загроможденный интерфейс, отсутствие кнопок для часто используемых функций, неработоспособность некоторых функций

Не предоставляется

3 раза в год

Автопарк

Неизвестно

Учет работы и взаиморасчеты с водителями

Учет ТО ремонтов, ДТП

Организация перевозок

Широкий набор функций для работы с персоналом

Бухгалтерский учет

Неизвестно

большое количество ошибок (исходя из истории обновлений)

большое количество редко используемых полей

Не предоставляется

Неизвестно

1.3 Формирование задач и требований к разрабатываемой ИС

Разрабатываемая ИС должна выполнять следующие задачи:

- осуществлять вход пользователя в систему после корректно введенных данных входа;

- выполнять операции по изменению строк таблиц БД (добавление, изменение, удаление);

- выполнять поиск по критериям, предусмотренными системой.

Требования к разрабатываемой ИС:

- понятный и удобный интерфейс;

- безошибочная работа после отладки;

- разработка средствами, указанными в задании на ДП.

1.4 Обоснование принятия решения о необходимости разработки ИС

Проведя анализ существующих информационных систем, и, исходя из существующих недостатков, было принято решение о написании своей информационной системы. Такая система должна иметь следующие функции:

- хранить информацию об автомобилях, маршрутах, водителях и другом различном контенте, связанном с выбранной тематикой;

- добавлять, изменять и удалять записи, относящиеся к выбранной для разработки информационной системе;

- выполнять поиск данных;

2 Выбор средств разработки

2.1 Понятие и характеристики информационной системы

Информационные технологии - весьма широкое определение, под которое попадает ряд отдельных технических средств и приемов работы с информацией. Но, как правило, в процессе работы с информацией люди имеют дело со вполне определенной связанной последовательностью взаимодействий с различными средствами. В зависимости от шкалы времени (от оперативных до долгосрочно-стратегических задач) и масштаба действий (от одного рабочего места до целой компании) могут обнаруживаться разные связи и последовательности, и для управления ими нужны разные методы. Методы варьируются также по степени алгоритмизации и рационализации. Наиболее рационально алгоритмизированная совокупность методов и средств работы с информацией - информационная система. Информационная система - взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации. Информационные системы бывают разного назначения и масштаба. Также информационные системы отличаются по степени охвата сфер деятельности предприятия (учитывают ли они только бухгалтерию или также и склад, финансы, производство и т.д.). Однако все информационные системы обладают рядом свойств, которые являются для них общими:

· ИС предназначены для сбора, хранения и обработки информации. Таким образом, в основе любой информационной системы лежат средства хранения и доступа к данным;

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

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

· Настольные;

· Сетевые;

· ИС масштаба предприятия.

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

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

· ИС автоматизирует применение математических методов к решению управленческих задач;

· ИС по крайней мере частично освобождает сотрудников от рутинного труда;

· ИС минимизирует вероятность появления ошибки в ходе передачи либо обработки информации;

· ИС снижает объем документов на бумаге;

· ИС совершенствует документооборот;

· ИС снижает затраты на производство товаров и услуг.[6]

2.2 Общие принципы построения информационной системы

Еще в 60-е годы прошлого столетия были сформулированы шесть основополагающих принципов, на которые необходимо опираться в процессе создания ИС: новых задач; системного подхода; первого руководителя; разумной типизации проектных решений; непрерывного развития системы; минимизации ввода-вывода информации. Развитие технической основы создания компьютеров и ИТ привело к переформулированию этих принципов и в ГОСТ РД 50-680-88 к ним отнесены следующие: системность, развитие (открытость), совместимость, стандартизация (унификация) и эффективность.

Принцип системности.

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

Пример: отбор персонала на вакантные рабочие места. Ее решение должно осуществляться с учетом следующих моментов:

— использования результатов периодически проводимого профессионального и психофизиологического тестирования работников;

— анализа результатов периодически проводимой аттестации рабочих мест;

— анализа показателен трудовой дисциплины персонала;

— разработки общих и дополнительных критериев отбора (при наличии нескольких претендентов на одно рабочее место);

— использования банка данных претендентов, сформированного ранее;

— индивидуального собеседования;

— анализа анкетных данных и резюме (если претендент не является членом трудового коллектива).

Принцип развития (открытости)

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

Принцип современности

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

1. дополнительных ужесточенных мер по защите информации;

2. знания и соблюдения различного рода протоколов, регламентирующих все пилы информационных обменов: знание сетевого этикета, предусматривающего такие правила, как:

— регулярная проверка своей электронной почты;

— периодическая чистка своего почтового ящика;

— корректность в составлении сообщений;

— указание координат для обратной связи и т.п.

Принцип стандартизации (унификации)

При создании системы должны быть рационально использованы типовые, унифицированные и стандартизованные элементы, проектные решения, пакеты прикладных программ, комплексы, компоненты. Задачи необходимо разрабатывать таким образом, чтобы они подходили к возможно более широкому кругу объектов. Игнорирование именно этого принципа привело в свое время к тому, что подсистема УК, несмотря на традиционный перечень задач и алгоритмов их решения, разрабатывалась на каждом предприятии самостоятельно, что привело к совершенно неоправданному расходу трудовых, материальных, финансовых и временных ресурсов. В современных разработках пакетов прикладных программ (ППП) рассматриваемый принцип задействован. Однако при знакомстве с конкретным ППП необходимо обращать внимание на сущность реализации типовых решений, поскольку каждый разработчик по-своему "видит" такие решения. Например, во многих пакетах по управлению кадрами присутствует задача "Отбор кадров". Однако в пакете фирмы Infin она реализована достаточно оригинально. Решение ее заключается в следующем. Экран разделен на две половины. Слева выводится достаточно большой список мужских и женских имен, по которому перемещается курсор. Если интересующее имя отмечено, то для него с правой стороны экрана приводится текст, и котором сообщается о том, кого обозначает имя и какими чертами характера обладает человек, имеющий его. Относиться к подобному подходу можно по-разному. Но можно сказать определенно -такого рода информации явно недостаточно для решения задачи и ограничиваться только ею нельзя.

Принцип эффективности

Предусматривает достижение рационального соотношения между затратами на создание системы и целевыми эффектами, включая конечные результаты, отражающиеся на прибыльности и получаемые по окончании внедрения автоматизации в управленческие процессы. Перечень рассмотренных принципов создания корпоративных систем взят из ГОСТ. Однако к их числу с полным правом можно отнести еще один из тех, которые были сформулированы в 60-е годы и по сей день не потеряли своей актуальности. Это - Принцип первого руководителя. Чрезвычайно важный принцип, распространяющийся на все сферы управленческой деятельности. Уровень компетентности руководителя любого уровня в производственных, административных, психологических и других вопросах определяет общие тенденции развития фирмы или се подразделении и социально-психологический климат в коллективе. Известно, что устойчивое бесконфликтное взаимопонимание среди персонала способствует росту творческих начал и эффективной повседневной деятельности. И именно руководитель и первую очередь должен обеспечивать все элементы стабильности. Сформировать такой коллектив достаточно сложно и далеко не каждый руководитель способен это сделать. Напротив, негативное отношение руководителя к каким-либо нововведениям является тормозом в развитии творческой и профессиональной инициативы работников всех категорий.[5]

2.3 Выбор средств разработки

Выбор СУБД

Существуют десятки СУБД, написанных для самых разных платформ, такие как Oracle, IBM DB2, SQL Server, Teradata, Sybase, Ingres, Informix, Empress, MySQL, mSQL, PostgreSQL, LEAP RDBMS, FirstBase, Ocelot, Progress, Typhoon, SQL/DS, Daffodil DB, Cloudscape, Compad Non-Stop SQL MX и SQL/MP, Linter RDBMS SQL, Interbase, Universe, GNU SQL Server.

Выбор конкретной СУБД часто является субъективным и зависит от многих параметров, среди которых не малое место занимает и ее стоимость. Язык описания данных (ЯОД) - Средства описания данных в БД и связей между ними. Средствами этого языка описывается структура БД, форматы записей, пароли, защищающие данные. Язык манипулирования данными (ЯМД) - язык для выполнения операций над данными, позволяющий менять их строение.

Для различных СУБД реализация этих уровней языков может быть различной. В одних случаях ЯОД и ЯМД требует составления пользователем программы полностью “вручную”, в других (что отражает современную тенденцию) в СУБД присутствует средства визуальной (зримой, наглядной) разработки программ. Для этого в современных СУБД имеются редакторы экранных форм, отчетов. “Кирпичиками” (инструментами) таких редакторов являются поля различных видов (поля ввода, поля вывода, вычисляемые поля), процедуры обработки различных типов (формы ввода, таблицы, отчеты, запросы). На основании созданных пользователем объектов программы - генераторы формируют программный код на языке конкретной машины или на промежуточном языке.

Рассмотри в качестве примера 3 СУБД, среди которых есть и платные и свободно распространяемые: MS SQL Server, MySQL, Oracle. Дадим краткую характеристику каждой из трех систем.

MS SQL Server

Исходный код MS SQL Server (до версии 7.0) основывался на коде Sybase SQL Server, и это позволило Microsoft выйти на рынок баз данных для предприятий, где конкурировали Oracle, IBM, и, позже, сама Sybase. Microsoft, Sybase и Ashton-Tate первоначально объединились для создания и выпуска на рынок первой версии программы, получившей название SQL Server 1.0 для OS/2 (около 1989 года), которая фактически была эквивалентом Sybase SQL Server 3.0 для Unix, VMS и др. Microsoft SQL Server 4.2 был выпущен в 1992 году и входил в состав операционной системы Microsoft OS/2 версии 1.3. Официальный релиз Microsoft SQL Server версии 4.21 для ОС Windows NT состоялся одновременно с релизом самой Windows NT (версии 3.1). Microsoft SQL Server 6.0 был первой версией SQL Server, созданной исключительно для архитектуры NT и без участия в процессе разработки Sybase.

Сервер баз данных Microsoft SQL Server в качестве языка запросов использует версию языка SQL, получившую название Transact-SQL (сокращённо T-SQL). Язык T-SQL является реализацией SQL-92 (стандарт ISO для языка SQL) с множественными расширениями. T-SQL позволяет использовать дополнительный синтаксис для хранимых процедур и обеспечивает поддержку транзакций (взаимодействие базы данных с управляющим приложением).

При взаимодействии с сетью Microsoft SQL Server и Sybase ASE используют протокол уровня приложения под названием Tabular Data Stream (TDS, протокол передачи табличных данных). Протокол TDS также был реализован в проекте FreeTDS с целью обеспечить различным приложениям возможность взаимодействия с базами данных Microsoft SQL Server и Sybase.

Для обеспечения доступа к данным Microsoft SQL Server поддерживает Open Database Connectivity (ODBC) -- интерфейс взаимодействия приложений с СУБД. Версия SQL Server 2005 обеспечивает возможность подключения пользователей через веб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам, не предназначенным для Windows, кроссплатформенно соединяться с SQL Server. Компания Microsoft также выпустила сертифицированный драйвер JDBC, позволяющий приложениям под управлением Java (таким как BEA и IBM WebSphere) соединяться с Microsoft SQL Server 2000 и 2005.

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

SQL Server поддерживает избыточное дублирование данных по трем сценариям:

- Снимок: Производится «снимок» базы данных, который сервер отправляет получателям.

- История изменений: Все изменения базы данных непрерывно передаются пользователям.

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

В SQL Server 2005 встроена поддержка.NET Framework. Благодаря этому хранимые процедуры БД могут быть написаны на любом языке платформы.NET, используя полный набор библиотек, доступных для.NET Framework, включая Common Type System (система обращения с типами данных в Microsoft.NET Framework). Однако, в отличие от других процессов,.NET Framework, будучи базисной системой для SQL Server 2005, выделяет дополнительную память и выстраивает средства управления SQL Server вместо того, чтобы использовать встроенные средства Windows. Это повышает производительность в сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server.

MYSQL

MySQL возникла как попытка применить mSQL к собственным разработкам компании: таблицам, для которых использовались ISAM -- подпрограммы низкого уровня. В результате был выработан новый SQL-интерфейс, но API-интерфейс остался в наследство от mSQL.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

26 февраля 2008 года Sun Microsystems приобрела MySQL AB за 1 миллиард долларов.

27 января 2010 года Oracle Corporation приобрела Sun Microsystems и включила MySQL в свою линейку СУБД.

Сообществом разработчиков MySQL созданы различные ответвления кода, такие как Drizzle, OurDelta, Percona Server, и MariaDB. Все эти ответвления уже существовали на момент поглощения компаний Sun и MySQL AB корпорацией Oracle.

Современные версии MYSQL обладают следующими возможностями:

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

- Изменено поведение ряда операторов, для обеспечения большей совместимости со стандартом SQL2003.

- Построчная репликация (англ. row-based replication), при которой в бинарный лог будет записываться только информация о реально измененных строках таблицы вместо оригинального (и, возможно, медленного) текста запроса. Построчную репликацию можно использовать только для определенных типов sql-запросов, в терминах MySQL -- смешанная репликация (англ. mixed replication).

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

- Дополнительный набор функций для обработки XML, реализация поддержки XPath.

- Новые средства диагностики проблем и утилиты для анализа производительности. Расширены возможности по управлению содержимым лог-файлов, логи теперь могут быть сохранены и в таблицах general_log и slow_log. Утилита mysqlslap позволяет провести нагрузочное тестирование БД с записью времени реакции на каждый запрос.

- Для упрощения операции обновления подготовлена утилита mysql_upgrade, которая выполнит проверку всех существующих таблиц на предмет совместимости с новой версией, и при необходимости выполнит надлежащие корректировки.

- MySQL Cluster отныне выпущен как отдельный продукт, базирующийся на MySQL 5.1 и хранилище NDBCLUSTER.

- Значительные изменения в работе MySQL Cluster, такие, как, например, возможность хранения табличных данных на диске.

- Возврат к использованию встроенной библиотеки libmysqld, отсутствовавшей в MySQL 5.0.

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

- Реализация парсера полнотекстового поиска в виде plug-in.[1]

Oracle

СУБД Oracle - ветеран рынка реляционных СУБД. Разработка этой системы была начата практически в то же время, что и IBM DB2 и по настоящее время эти системы остаются основными конкурентами.

Oracle занимает лидирующие позиции на рынке СУБД и, что особенно важно, лидирует на платформах Unix и Windows. В России также обозначилось лидерство Oracle, особенно в области крупномасштабных информационных систем. Фактически в нашей стране СУБД Oracle стала стандартом государственных информационных систем.

Причина широкой распространенности Oracle заключается, прежде всего, в высоких эксплуатационных характеристиках СУБД, большом количестве подготовленных отечественных специалистов по Oracle, наличию поддерживающей инфраструктуры - учебных центров, широкой сети партнеров Oracle, большому числу технических курсов по Oracle в высших учебных заведениях и т.д. Так, только в Москве имеется более десятка учебных центров, предоставляющих широкий спектр технических курсов практически по всем линиям программных продуктов Oracle. Партнерская сеть по всей стране насчитывает более 160 организаций, что гарантирует поддержку ПО Oracle практически в любой точке страны. На русском языке уже издано достаточно много качественных книг по СУБД Oracle.

Служба технической поддержки Oracle построена на профессиональной основе. Служба технической поддержки в России сертифицирована по стандарту ISO 9000.

Кроме того, ведущие компании - партнеры Oracle, такие как FORS, RDTex имеют собственные центры технической поддержки.

Важным является и то, что наряду с СУБД, компания Oracle поставляет центральный инфраструктурный продукт - Internet Application Server, сервер приложений, функционирующих в среде Internet/Intranet, а также CASE-средства, средства быстрой разработки приложений, средства построения хранилищ данных, оперативного анализа данных, выявления сложных зависимостей в данных (Data Mining), что позволяет поставлять не отдельные продукты, но комплексные технологические решения для заказчиков.

С технической точки зрения важно то, что Oracle функционирует практически на всех существующих компьютерных платформах, в том числе и на больших ЭВМ (OS/390) и на еще сохраняющих популярность системах Vax VMS, не говоря уже о Windows NT и различных разновидностях Unix, в том числе Solaris, HP-UX, AIX, Linux, SCO Unix и т.д.

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

Ядром СУБД Oracle является сервер базы данных, который поставляется в одном из четырех вариантов в зависимости от масштаба информационной системы, в рамках которой предполагается его применение. Для систем масштаба крупной организации предлагается продукт Oracle Database Enterprise Edition (корпоративная редакция), для которого имеется целый набор опций, архитектурно и функционально расширяющих возможности сервера. Именно Oracle Database Enterprise Edition устанавливается на кластерах (с опцией Parallel Server, по версию 8i включительно или RAC - Real Application Cluster, начиная с версии 9i и старше), позволяя создавать системы высокой готовности. Продукт Oracle Database Standard Edition (стандартная редакция) ориентирован на организации среднего масштаба или подразделения в составе крупной организации. Для персонального использования предназначен продукт Oracle Database Personal Edition (персональная редакция).

Важнейшим преимуществом Oracle перед конкурентами (и, прежде всего, перед DB2) является идентичность кода различных версий сервера баз данных Oracle для всех платформ, гарантирующая идентичность и предсказуемость работы Oracle на всех типах компьютеров, какие бы не входили в ее состав. Все варианты сервера Oracle имеют в своей основе один и тот же исходный программный код и функционально идентичны, за исключением некоторых опций, которые, например, могут быть добавлены к Oracle Database Enterprise Edition и не могут - к Oracle Database Standard Edition.

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

Жесткая технологическая схема разработки Oracle, опирающаяся на принципы идентичности исходного программного кода для различных версий и платформ, контрастирует со схемами других компаний. Так, СУБД DB/2 представляет собой семейство продуктов, но не единый продукт. Функционально версия DB2 для IBM S/390 столь существенно отличается от DB2 для платформ UNIX и NT, что позволяет говорить вообще о разных продуктах.

СУБД Oracle скрывает детали реализации механизмов управления данным на каждой из платформ, что дает основание говорить о практически полной унификации базового программного обеспечения. Дополнительно к этому, архитектура Oracle позволяет переносить прикладные системы, реализованные на одной платформе, на другие платформы без изменений, как в структурах баз данных, так и кодов приложений. При этом, основным критерием, определяющим возможность переноса тех или иных программных компонентов между платформами является полное исключение их них машинно-зависимого кода.[19]

Проанализировав все вышерассмотренные СУБД, в данной дипломной работе будем использовать СУБД MS SQL Server.

Выбор языка программирования и среды разработки

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

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

Для разработки программы, использующей обращение к СУБД, может быть использовано множество языков программирования. Рассмотрим некоторые из них, такие как Java, PHP, C/С++, Object Pascal.

Java

Программы на Java транслируются в байт-код, выполняемый виртуальной машиной Java (JVM) -- программой, обрабатывающей байтовый код и передающей инструкции оборудованию как интерпретатор. Трансляция в байтовый код увеличивает скорость выполнения и уменьшает размер Java программ.

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

Часто к недостаткам концепции виртуальной машины относят то, что исполнение байт-кода виртуальной машиной может снижать производительность программ и алгоритмов, реализованных на языке Java. Данное утверждение было справедливо для первых версий виртуальной машины Java, однако в последнее время оно практически потеряло актуальность. Этому способствовал ряд усовершенствований:

- применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT-технология) с возможностью сохранения версий класса в машинном коде;

- широкое использование платформенно-ориентированного кода (native-код) в стандартных библиотеках;

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

По данным сайта shootout.alioth.debian.org, для семи разных задач время выполнения на Java составляет в среднем в полтора-два раза больше, чем для C/C++, в некоторых случаях Java быстрее, а в отдельных случаях в 7 раз медленнее. С другой стороны, для большинства из них потребление памяти Java-машиной было в 10-30 раз больше, чем программой на C/C++.

Идеи, заложенные в концепцию и различные реализации среды виртуальной машины Java, вдохновили множество энтузиастов на расширение перечня языков, которые могли бы быть использованы для создания программ, исполняемых на виртуальной машине. Эти идеи нашли также выражение в спецификации общеязыковой инфраструктуры CLI, заложенной в основу платформы.NET компанией Microsoft.

СУБД Oracle включает JVM как свою составную часть, обеспечивающую возможность непосредственного программирования СУБД на языке Java, включая, например, хранимые процедуры.

Основные возможности языка Java:

- автоматическое управление памятью;

- расширенные возможности обработки исключительных ситуаций;

- богатый набор средств фильтрации ввода/вывода;

- набор стандартных коллекций, таких как массив, список, стек и т. п.;

- наличие простых средств создания сетевых приложений (в том числе с использованием протокола RMI);

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

- встроенные в язык средства создания многопоточных приложений;

- унифицированный доступ к базам данных:

- на уровне отдельных SQL-запросов -- на основе JDBC, SQLJ;

- на уровне концепции объектов, обладающих способностью к хранению в базе данных -- на основе Java Data Objects и Java Persistence API;


Подобные документы

  • Разработка информационной системы административного управления. Выбор языка и среды программирования. Структура взаимодействия информации. Требования к программно-аппаратному окружению. Создание программы в Delphi и связывание ее с базой данных.

    курсовая работа [1010,9 K], добавлен 08.10.2015

  • Разработка приложения для работы с базой данных с использованием объектно-ориентированного и визуального программирования. Обзор языка элементов языка программирования Delphi. Проектирование базы данных автозаправки. Клиентская система приложения.

    курсовая работа [2,3 M], добавлен 31.01.2016

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

    курсовая работа [1,5 M], добавлен 31.01.2016

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

    курсовая работа [2,7 M], добавлен 28.08.2012

  • Разработка программы для работы с базой данных "Библиотека" в среде Borland C++Builder 6 на языке программирования C++ с использованием визуальных средств. Структура информации, подключение к ней и ее отображение. Описание пользовательского интерфейса.

    курсовая работа [1,5 M], добавлен 19.05.2014

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

    дипломная работа [2,0 M], добавлен 22.11.2015

  • Назначение создания информационной системы "Электронный журнал" для автоматизации контроля учебного процесса. Построение логической и реляционной моделей данных. Разработка клиент-серверного приложения для работы с базой данных; программная реализация.

    дипломная работа [5,9 M], добавлен 19.01.2017

  • 1С: Предприятие как специализированная объектно-ориентированная система управления базами данных, ее назначение и использования в организациях, среда разработки и порядок работы с информационной базой. Объектно-ориентированные методы программирования.

    методичка [47,3 K], добавлен 06.07.2009

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

    курсовая работа [953,3 K], добавлен 01.09.2016

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

    курсовая работа [720,7 K], добавлен 09.04.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.