Разработка ЭИС управления проектами для ЗАО "Диакон"

Разработка системы управления проектами для компании ЗАО "Диакон". Экономические параметры разработки и внедрения электронной информационной системы. Технология разработки программного обеспечения. Выбор типа графического интерфейса, его составляющие.

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

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

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

Число

Внешний ключ

Тип проекта

Код типа

Число

Первичный ключ

Имя типа

Строка

Проектная команда

Код проектной команды

Число

Первичный ключ

Плановая стоимость чел-час

Число

Фактическая стоимость чел-час

Число

Код проекта

Число

Внешний ключ

Код персонала

Число

Внешний ключ

Код работы

Число

Внешний ключ

Персонал

Код персонала

Число

Первичный ключ

Имя

Строка

Фамилия

Строка

Отчество

Строка

Электронная почта

Строка

Телефон

Число

Логин

Строка

Пароль

Строка

Возможность добавления

Логическ.

Возможность изменения

Логическ.

Возможность удаления

Логическ.

Состояние проекта

Код состояния

Число

Первичный ключ

Имя состояния

Строка

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

К входной информации относятся:

· информация о потребности в проекте;

· информация о сроках;

· информация о затратах.

К результатной информации относится:

· план-график проекта;

· приказ о создании проектной команды и установления тарифа оплаты;

· отчет о сроках;

· отчет о затратах;

· отчет об отклонениях;

· отчет о текущем состоянии проекта;

· отчет о проектах компании.

К нормативно справочной информации можно отнести:

· свод правил;

· информация о работниках;

· информация о доступных средствах;

· календарный план;

· опыт предыдущих проектов.

2.2.7 Лингвистическое обеспечение

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

Языковые средства, включенные в подсистему лингвистического обеспечения, делятся на две группы: традиционные языки и языки, предназначенные для диалога с ЭВМ. К первой группе относятся:

· естественные языки;

· математические языки;

· алгоритмические языки;

· языки моделирования.

Ко второй группе относятся:

· информационно-поисковые языки;

· языки СУБД;

· языки операционных сред;

· входные языки пакетов прикладных программ.

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

2.2.8 Технологическое обеспечение

Подсистема технологического обеспечения соответствует разделению ЭИС на подсистемы по технологическим этапам обработки различных видов информации:

· первичной и результатной информации (этапы технологического процесса сбора, передачи, накопления, хранения, обработки первичной информации, получения и выдачи результатной информации);

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

· технологической документации и чертежей (этапы ввода в систему и актуализации шаблонов изделий, ввода исходных данных и формирования проектной документации для новых видов изделий, выдачи на плоттер чертежей, актуализации банка ГОСТов, ОСТов, технических условий, нормативных данных, подготовки и выдачи технологической документации по новым видам изделий);

· баз данных и знаний (этапы формирования баз данных и знаний, ввода и обработки запросов на поиск решения, выдачи варианта решения и объяснения к нему);

· научно-технической информации, ГОСТов и технических условий, правовых документов и дел (этапы формирования поисковых образов документов, формирования информационного фонда, ведения тезауруса справочника ключевых слов и их кодов, кодирования запроса на поиск, выполнения поиска и выдачи документа или адреса хранения документа).

2.3 Экономические параметры разработки и внедрения ЭИС

2.3.1 Планирование выполнения работ

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

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

На всех стадиях в разработке ЭИС принимают участие 3 специалиста:

· руководитель проекта;

· эксперт;

· программист.

На Рисунке 2.8 представлены этапы работы по созданию системы, их длительность и требующиеся ресурсы.

Для наглядного отображения процесса разработки ЭИС на Рисунке 2.9 показана диаграмма Ганта.

Она представляет собой линейный график календарного планирования разработки ЭИС. Диаграмма Ганта является одним из методов планирования проектов и используется в приложениях по управлению проектами. Она отображает привязку основных работ к календарным срокам.

В качестве даты начала проекта выбрано 13 мая 2014 года. Дата окончания проекта Общие сроки разработки системы составляют 39 дней.

2.3.2 Расчет себестоимости разработки и внедрения ЭИС

На диаграмме Ганта (Рисунок 2.9) видно, что не на всех этапах разработки задействованы все специалисты. Поэтому целесообразно использовать повременный способ оплаты труда на основании фактического количества отработанных часов.

Необходимые для разработки системы ресурсы представлены в Таблице 2.2.

Таблица 2.2 - Перечень необходимых ресурсов

Название ресурса

Ставка

Руководитель

150 руб. /ч.

Эксперт

120 руб. /ч.

Программист

140 руб. /ч.

На основании полученных при календарном планировании данных затраты на заработную плату составят 50 224 рубля. Распределение затрат на заработную плату по месяцам представлено на Рисунке 2.10.

Смета расходов, связанных с разработкой ЭИС включает в себя следующие статьи:

· заработная плата исполнителей;

· стоимость материалов;

· стоимость машинного времени;

· страховые взносы;

· накладные расходы.

Стоимость материалов в среднем составляет 5% от затрат на основную зарплату. Данную величину можно рассчитать по формуле:

где Ї суммарная заработная плата;

Ї коэффициент стоимости материалов.

Страховые взносы () составляют 30% от затрат на основную зарплату, без учета машинного времени, и их можно рассчитать по формуле:

,

где Ї суммарная заработная плата;

Ї коэффициент социальных отчислений.

Накладные расходы составляют в среднем 20% от затрат на основную зарплату и рассчитываются по формуле:

где Ї суммарная заработная плата;

Ї коэффициент накладных расходов.

На основании полученных данных по отдельным статьям затрат можно рассчитать общую смету затрат. Смета затрат представлена в Таблице 2.3.

Таблица 2.3 - Сметная калькуляция затрат на разработку ЭИС

Статья расходов

Процент

Сумма

Основная заработная плата, руб.

50 224

Стоимость материалов, руб.

5%

2 511

Страховые взносы, руб.

30%

15 067

Накладные расходы, руб.

20%

10 045

Итого, руб.

77 847

Таким образом, общие затраты к моменту эксплуатации ЭИС составят: = 77 847 рублей.

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

2.3.3Обоснование целесообразности разработки и внедрения ЭИС

Для обоснования целесообразности разработки и внедрения ЭИС необходимо сравнить затраты на разработку собственными силами и затраты на приобретение готового программного продукта. Для сравнения аналогом разрабатываемой информационной системы выбрана программа MicrosoftProjectProfessional. Цена одной версии продукта составляет 35 000 рублей. Затраты на приобретение на пять рабочих мест составят 175 000 рублей. Программа представлена в коробочном варианте и не требует дополнительных затрат на внедрение и настройку. Затраты на приобретение готового продукта: Затраты на разрабатываемую ЭИС: Таким образом, экономия от создания ЭИС собственными силами составит:

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

2.3.4 Экономический эффект от внедрения ЭИС

Затраты на частично автоматизированный ввод и обработку данных составят 3700 чел-час.

Номинальное количество дней на частично автоматизированную обработку информации определяется по формуле:

где - номинальное количество дней на частично автоматизированную обработку информации, чел-дней; - трудоемкость частично автоматизированной обработки данных, чел-час; - юридическая продолжительность рабочего дня, (tРД = 8 часов). Таким образом,

Действительное количество рабочих дней на частично автоматизированную обработку информации определяется по формуле:

где - действительное число рабочих дней на частично

автоматизированную обработку информации;

- коэффициент интенсивности загрузки рабочего дня (КИЗ = 1,15-1,17;

принимаем КИЗ = 1,16);

- коэффициент, учитывающий необходимость резерва времени (КРВ = 1,05-1,6; принимаем КРВ = 1,05).

Тогда,

Количество человек для частично автоматизированной обработки данных определяется по формуле:

где - годовой фонд рабочего времени (ФГОД. ДН. = 252 дня).

Тогда,

Принимаем количество человек равное двум.

Затраты на основную заработную плату рассчитываются по формуле:

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

. - средняя заработная плата работников данной квалификации на

данном предприятии, руб. ( = 15 000 руб.).

Тогда,

На основании исходной информации определяется сметная калькуляция расходов по обработке данных (Таблица 2.4).

Таблица 2.4 Ї Затраты, связанные с частично автоматизированной обработкой данных

Статья расходов

Интервал

Выбрано

Расчет

Основная з/п, руб.

30 000

Страховые взносы, руб.

30%

30%

9 000

Собственные накладные расходы, руб.

10-20%

15 %

4 500

Общие накладные расходы руб.

15-40%

20%

6 000

Прочие затраты, руб.

5-30%

10%

3 000

Итого за месяц, руб.

52 500

Таким образом, затраты, связанные с частично автоматизированной обработкой данных составят за месяц 52 500 руб.

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

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

Таблица 2.5 Ї Расчет трудоемкости частично автоматизированной и автоматизированной обработки данных

Операция

Трудоемкость частично

автоматизированной

обработки, чел-час

Интервал

Выбрано

Расчет

Запись

1200

0,75-1,0

0,8

960

Сложение и вычитание

600

0,15-0,1

0,1

60

Умножение

500

0,2-0,15

0,2

100

Деление

500

0,25-0,15

0,2

100

Сортировка

600

0,3-0,2

0,3

180

Графические работы

300

0,25-0,1

0,25

75

Итого

3700

1475

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

Номинальное количество дней на автоматизированную обработку информации определяется по формуле:

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

Таким образом,

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

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

Количество человек для автоматизированной обработки данных определяется по формуле:

Тогда,

Таким образом, в расчет закладывается 1 человек.

Коэффициент снижения расчетных затрат определяется по формуле:

Тогда,

Затраты на основную заработную плату при автоматизированной обработке данных рассчитываются по формуле:

где - коэффициент, учитывающий профессиональную сложность (КПС =1,1-1,8; принимаем КПС = 1,6).

Тогда,

На основании исходной информации в Таблице 2.6 определяется сметная калькуляция расходов по автоматизированной обработке данных.

Таблица 2.6 Ї Затраты, связанные с автоматизированной обработкой данных (за месяц)

Статья расходов

Интервал

Выбрано

Расчет

Основная з/п, руб.

12 632

Страховые взносы, руб.

30%

30%

3 790

Собственные накладные расходы, руб.

10-20%

15%

1 895

Общие накладные расходы, руб.

15-40%

20%

2 526

Прочие затраты, руб.

5-30%

10%

1 263

Итого за месяц, руб.

22 106

Таким образом затраты, связанные с автоматизированной обработкой данных составят за месяц 22 106 руб.

Достигаемый при этом размер ежегодной экономии () от эксплуатации системы составит:

Период окупаемости системы (в годах) определяется по формуле:

Согласно существующим нормам жизненный цикл системы определяется как: разработка и внедрение - 1,95 мес.; эксплуатация системы - 12 мес.; поддержание системы в эффективном состоянии - 24 мес.; в том числе эксплуатация системы при рассчитанной эффективности - 12 мес.; прекращение эксплуатации - 6 мес. Итого: 43,95 мес. или 3,66 года.

В Таблице 2.7 приведены сводные данные технико-экономических показателей.

Таблица 2.7 Ї Сводная таблица технико-экономических показателей

Показатель

Значение

Расчетный срок разработки системы, годы

0,16

Номинальное время на разработку, дни

39

Общий срок разработки и внедрения, месяцы

1,95

Стоимость разработки

Показатель

Значение, руб.

Основная зарплата

50 224

Начисления на заработную плату

15 067

Стоимость материалов

2 511

Накладные расходы

10 045

Итого

77 847

Общие данные

Показатели

Частично автоматизированная обработка данных

Автоматизированная обработка данных

Трудоемкость обработки данных, чел-час.

3 700

1470

Номинальное количество дней на обработку информации

463

184

Действительное количество дней на обработку информации

564

224

Расчетное количество занятых обработкой информации

2,4

0,9

Стоимость ЭИС, руб.

Итого

77 847

3. Технологический раздел

3.1 Технология разработки БД ЭИС

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

СУБД SQL Server появилась в 1989 году и с тех пор значительно изменилась. Огромные изменения претерпели масштабируемость продукта, его целостность, удобство администрирования, производительность и функциональные возможности.

Система SQL Server может быть реализована либо как клиент-серверная система, либо как автономная "настольная" система. Тип проектируемой системы зависит от количества пользователей, которые должны одновременно осуществлять доступ к базе данных, и от характера работ, которые должны выполняться.

Клиент-серверная система SQL Server может иметь двухзвенную установку (two-tiersetup) либо трехзвенную установку (three-tiersetup). Независимо от варианта установки, программное обеспечение и базы данных SQL Server размещаются на центральном компьютере, который называется сервер базы данных (databaseserver). Пользователи работают на отдельных компьютерах, которые называются клиенты (clients). В двухзвенных системах доступ пользователей к серверу базы данных производится при помощи приложений с их компьютеров-клиентов. В трехзвенных системах - при помощи приложений, выполняющихся на специально предназначенном для этой цели компьютере, который называется сервер приложений (applicationserver).

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

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

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

SQL Server может использоваться также и как автономный (stand-alone) сервер базы данных, работающий на настольном или на портативном компьютере. Такие конфигурации называют настольными системами (desktopsystem). В них клиентские приложения исполняются на том же компьютере, на котором хранится программное обеспечение, реализующее механизм работы SQL Server и базы данных. В данной системе применяется только один компьютер, поэтому не устанавливаются никакие сетевые соединения от клиента к серверу - клиент устанавливает локальное соединение со своей локальной установкой SQL Server.

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

3.1.1 Обоснования выбора СУБД ЭИС

Решение Microsoft SQL Server представляет собой высокопроизводительную платформу обработки и анализа данных для бизнеса любого размера, которая отвечает всем современным требованиям по работе с данными любых типов и поддержке удобной и быстрой разработки приложений. Продукт реализует концепцию комплексной обработки данных и позволяет преобразовывать ценную информацию в знания и решения на основе анализа собранных данных. В базах данных SQL Server можно хранить любую структурированную, полуструктурированную или неструктурированную информацию, такую например, как изображения и мультимедиа из самых разнородных источников данных. Продукт предлагает большой набор интегрированных служб, расширяющих возможности обработки, который позволяет составлять запросы, выполнять поиск, проводить синхронизацию, формировать отчеты и анализировать данные. SQL Server обеспечивает обращение к данным из любого приложения, разработанного с применением технологий Microsoft.net и VisualStudio, в том числе - с помощью MicrosoftBizTalkServer - из приложений, построенных на базе сервис-ориентированной архитектуры (SOA) и корпоративных бизнес-приложений других разработчиков. Сотрудники, отвечающие за сбор и анализ информации, могут работать с данными, пользуясь привычными приложениями, например программами MicrosoftOffice.

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

Преимущества SQL Server:

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

· управляемость. Интуитивно понятные средства управления и автоматизированного администрирования помогают эффективно управлять бизнес-приложениями;

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

3.1.2 Технология организации доступа к БД

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

Доступ к данным является важнейшим требованием при разработке современных бизнес-приложений. Технология ODBC обеспечивает доступ к реляционным базам данных и это первый шаг на пути решения проблемы. Однако, когда разработчики хотят включить в свои проекты нереляционные источники данных или работать в средах, подобных Интернет, они сталкиваются с дилеммой - либо разрабатывать собственные парадигмы доступа к данным, либо работать на уровне API, что несовместимо с новыми средами. ActiveX объекты доступа к данным (ADO) решают эту дилемму и обеспечивают единую модель, которая работает со всеми источниками данных в различных средах. Таким образом, ADO обеспечивает последовательный, высокопроизводительный доступ к данным, с которыми можно создавать клиентские программы для работы с БД или бизнес-объекты среднего уровня, использующие приложения, инструментарий, язык. ADO - это интерфейс доступа к данным, который необходим для создания одноуровневых и многоуровневых приложений архитектуры клиент/сервер и Web-ориентированных информационных систем.

Технология ADO была впервые применена в MicrosoftInternetInformationServer как интерфейс доступа к БД. Использование ADO позволяет минимизировать сетевой траффик в ключевых Internet-сценариях и уменьшить количество промежуточных уровней между клиентским приложением и источником данных. ADO легко использовать, так как данная технология применяет привычную систему вызовов - интерфейс Автоматизации OLE, доступный в большинстве средств разработки приложений. Технология ADO легка в применении и изучении и во многом подобна RDO и DAO. Например, она использует те же соглашения языка. Технология ADO также поддерживает аналогичную семантику и поэтому может быть легко освоена разработчиками ПО.

ADO является интерфейсом программного уровня к OLE DB, парадигме доступа к данным от MS. OLE DB обеспечивает высокопроизводительный доступ ко многим источникам данных. ADO и OLE DB вместе представляют собой основу стратегии Универсального доступа к данным (UniversalDataAccess). OLE DB дает возможность универсального доступа ко многим данным и предоставляет разработчикам возможность сделать это достаточно легко. Так как ADO находится на вершине OLE DB, то применение ADO имеет все преимущества Универсального доступа к данным, которое обеспечивает OLE DB.

3.1.3 Разработка физической модели БД

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

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

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

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

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

На Рисунке 3.1 представлена физическая структура разработанной базы данных.

3.2 Технология разработки программного обеспечения ЭИС

3.2.1 Обоснование выбора средств разработки клиентского приложения

Delphi - императивный, структурированный, объектно-ориентированный язык программирования, диалект ObjectPascal. Начиная со среды разработки Delphi 7.0, в официальных документах Borland стала использовать название Delphi для обозначения языка ObjectPascal. Начиная с 2007 года уже язык Delphi (производный от ObjectPascal) начал жить своей самостоятельной жизнью и претерпевал различные изменения, связанные с современными тенденциями.

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

В сочетании с BorlandKylix, программисты Delphi могут создавать из одного исходного текста приложения и для Windows и для Linux, и это открывает новые возможности и увеличивает потенциальную отдачу от усилий, вложенных в изучение Delphi. В Delphi используется кросс-платформенная библиотека компонентов CLX и визуальные дизайнеры для создания высокопроизводительных приложений для Windows, которые повторной компиляцией можно легко превратить в приложения для Linux.

Delphi Ї это продукт для быстрого создания приложений (RAD).

Delphi позволяет создавать приложения интерактивным выбором необходимых компонентов из ComponentPalette и перетягиванием их на форму. Основное же достоинство этого метода заключается в том, что Delphi при этом самостоятельно создает необходимый код. Это напоминает по своим возможностям VisualBasic и другие подобные языки программирования. Однако в случае Delphi можно получить настоящий объектно-ориентированный код и все возможности этого подхода, включая расширение функциональных возможностей компонентов Delphi до уровня, удовлетворяющего поставленным запросам. Можно использовать компоненты Delphi, можно наследовать их и добавлять собственные методы, а кроме того, можно использовать управляющие элементы Active X.

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

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

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

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

Основным преимуществом Delphi является его среда программирования с визуальным конструктором программ. Эта среда (вместе с объектной библиотекой VCL) позволяет эффективно программировать под MS Windows, не отвлекаясь на выяснение всех деталей Win API, а работать над логикой программы.

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

Еще одно преимущество Delphi в том, что он позволяет создавать большие программы, которые неудобно размещать в одном файле. Основной частью программы является проект. Проектами могут быть файлы с исходным текстом модулей (расширение. pas), формы, являющиеся графическим представлением приложения (расширение. dfm), и сами файлы проектов (расширение. dpr). Следует отметить тот факт, что каждому файлу формы обязательно соответствует файл с исходным текстом модуля, но файл с исходным текстом модуля не обязательно должен иметь соответствующую ему форму.

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

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

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

Для каждого проекта содержимое файла может выглядеть следующим образом:

programProjectl;

uses Forms, Unitl in 'Unit1. pas' {Forml};

{$R *. RES}

begin

Application. Initialize;

Application. CreateForm (TForml, Forml);

Application.run;

end.

Использование модуля Forms обязательно для всех программ, создаваемых в среде Delphi, так как в этом модуле содержится описание класса TApplication, который лежит в основе всех Delphi-приложений. В приведенном примере первая строка содержит имя проекта. Это же имя используется в качестве имени приложения, если не задано другое. Оператор uses сообщает компилятору, что программа использует модуль с исходным кодом формы Unit1. pas, который описывает главную форму, включенную в данное приложение. Название формы (ее идентификатор) приводится в фигурных скобках. Следует иметь ввиду, что имя формы должно быть отлично от имени модуля, описывающего эту форму. Директива in указывает на то, что модуль является обязательной частью проекта, а не просто файлом, используемом в проекте. Директива $R подключает к проекту все необходимые ресурсы (файлы с расширением. res). Само изображение формы хранится в виде Windows-ресурса и имеет расширение. dfm.

Далее начинается главный блок программы, в котором создается форма и содержится команда запуска основного цикла приложения. Вызов метода Application. Initialize приводит к инициализации самого приложения, представленного экземпляром класса TApplication. Метод Application. Create-Form загружает и инициализирует форму, a Application.run начинает выполнение приложения и загружает главную форму. При добавлении к проекту новой формы или нового модуля. Delphi автоматически добавляет соответствующий оператор uses в файл проекта. Аналогично добавляются методы Application. CreateForm, для загрузки и инициализации дополнительных форм, используемых в данном приложении.

Во избежание потери целостности приложения, как правило, не вносятся изменения в файлы проектов, так как среда Delphi автоматически управляет этими файлами.

Если несколько проектов объединены в группу, то для управления взаимосвязанными проектами используется файл группы проектов. Файлы групп проектов имеют расширение. bpg.

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

3.2.2 Сценарий диалога ЭИС

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

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

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

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

Способ описания сценария диалога зависит от степени его сложности. Методы описания сценариев делятся на две группы: неформальные и формальные методы.

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

Сценарий диалога пользователя представлен на Рисунке 3.2.

3.2.3 Описание функций ЭИС

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

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

К основным функциям ИС, как правило, относятся функции сбора и регистрации информационных ресурсов, их хранение, обработка, актуализация, а так же обработка запросов пользователя.

К основным функциям разрабатываемой системы можно отнести:

· планирование проекта;

· контроль проекта;

· расчет плановых и фактических затрат на проект;

· расчет материальных и трудовых затрат;

· ведение справочной информации;

· генерация отчетов;

· формирование печатных форм.

К служебным функциям относятся:

· связь с базой данных;

· идентификация пользователя;

· разграничение полномочий.

На Рисунке 3.3 представлено дерево функций системы.

Ниже представлен программный код некоторых функций системы.

Листинг 3.1 - Создание новой роли

procedure TfrmAddNewRole. FormActivate (Sender: TObject);

begin

NewRoleID: =dtmConnection. qurJobs. RecordCount + 1;

dtmConnection. dtsJobs. DataSet. Insert;

end;

procedure TfrmAddNewRole. cmbOkRoleClick (Sender: TObject);

begin

dtmConnection. dtsJobs. DataSet. FieldByName ('ID'). Value: =NewRoleID;

dtmConnection. dtsJobs. DataSet. Post;

dtmConnection. qurJobs. Refresh;

frmAddNewRole. Close;

end;

Листинг 3.2 - Добавление нового персонала

procedure TfrmPersonel. FormActivate (Sender: TObject);

varNewPersonelID: integer;

begin

if frmMain. AddNewPersonel=True then

begin

dtmConnection. dtsPersonal. DataSet. Insert;

NewPersonelID: =dtmConnection. qurPersonal. RecordCount + 1;

dtmConnection. dtsPersonal. DataSet. FieldByName ('ID'). Value: =NewPersonelID;

end;

end;

procedure TfrmPersonel. cmbOkPersonelClick (Sender: TObject);

begin

if frmMain. AddNewPersonel=True then

begin

dtmConnection. dtsPersonal. DataSet. Post;

frmPersonel. Close;

end;

end;

Листинг 3.3 - Назначение на проект

procedure TfrmProjectTeam. cmbOkProjectTeamClick (Sender: TObject);

varNewEntry: integer;

begin

dtmConnection. qurProjectTeam. Post;

cmbJob. DataSource: =frmProjectDetails. dtsProjectTeam;

cmbPersonel. DataSource: =frmProjectDetails. dtsProjectTeam;

frmProjectDetails. qurProjectTeam. Active: =False;

frmProjectDetails. qurProjectTeam. Active: =True;

dtmConnection. qurProjectTeam. Active: =False;

dtmConnection. qurProjectTeam. Active: =True;

frmProjectTeam. Close;

end;

procedure TfrmProjectTeam. FormActivate (Sender: TObject);

varNewEntry: integer;

begin

NewEntry: =dtmConnection. qurProjectTeam. RecordCount;

NewEntry: =NewEntry+12;

cmbJob. DataSource: =dtmConnection. dtsProjectTeam;

cmbPersonel. DataSource: =dtmConnection. dtsProjectTeam;

if frmProjectDetails. AddNewProjectTeam=True then

with dtmConnection do

begin

dtsProjectTeam. Dataset. Insert;

dtsProjectTeam. DataSet. FieldByName ('ID'). Value: =NewEntry;

dtsProjectTeam. DataSet. FieldByName ('ProjectID'). Value: =frmProjectDetails. ProjectID;

end;

Листинг 3.4 - Добавление стадии или проекта

procedure TfrmProjectDetails. cmbAddNewEntryClick (Sender: TObject);

begin

ckbIsFixated. DataSource: =dtmConnection. dtsProject;

txtPlanBeginDate. DataSource: =dtmConnection. dtsProject;

txtPlanEndDate. DataSource: =dtmConnection. dtsProject;

txtPlanManHour. DataSource: =dtmConnection. dtsProject;

txtFactBeginDate. DataSource: =dtmConnection. dtsProject;

txtFactEndDate. DataSource: =dtmConnection. dtsProject;

txtFactManHour. DataSource: =dtmConnection. dtsProject;

txtNameProject. DataSource: =dtmConnection. dtsProject;

cmbStatusProject. DataSource: =dtmConnection. dtsProject;

cmbTypeProject. DataSource: =dtmConnection. dtsProject;

dtmConnection. dtsProject. DataSet. Insert;

end;

procedure TfrmProjectDetails. cmbCancelEntryClick (Sender: TObject);

begin

dtmConnection. dtsProject. DataSet. Cancel;

ckbIsFixated. DataSource: =dtsProjectDetails;

txtPlanBeginDate. DataSource: =dtsProjectDetails;

txtPlanEndDate. DataSource: =dtsProjectDetails;

txtPlanManHour. DataSource: =dtsProjectDetails;

txtFactBeginDate. DataSource: =dtsProjectDetails;

txtFactEndDate. DataSource: =dtsProjectDetails;

txtFactManHour. DataSource: =dtsProjectDetails;

txtNameProject. DataSource: =dtsProjectDetails;

cmbStatusProject. DataSource: =dtsProjectDetails;

cmbTypeProject. DataSource: =dtsProjectDetails;

Label10. Visible: =False;

cmbTypeEntry. Visible: =False;

end;

procedure TfrmProjectDetails. cmbApplyEntryClick (Sender: TObject);

varNewEntryID,ParentProject, ParentStage: integer;

begin

if cmbTypeEntry. Text='' then

begin

ShowMessage ('Не выбран тип новой записи');

cmbTypeEntry. SetFocus;

Exit;

end;

dtmConnection. dtsProject. DataSet. FieldByName ('ID'). Value: =NewEntry;

dtmConnection. dtsProject. DataSet. FieldByName ('ParentProjectID'). Value: =ProjectID;

if cmbTypeEntry. Text='Новаястадия' then

begin

dtmConnection. dtsProject. DataSet. FieldByName ('ParentStageID'). Value: =NewEntry;

dtmConnection. dtsProject. DataSet. FieldByName ('ParentWorkID'). Value: =0;

end;

if cmbTypeEntry. Text='Новаяработа' then

begin

dtmConnection. dtsProject. DataSet. FieldByName ('ParentStageID'). Value: =dtsProjectDetails. DataSet. FieldValues ['ID'];

dtmConnection. dtsProject. DataSet. FieldByName ('ParentWorkID'). Value: =NewEntry;

end;

dtmConnection. dtsProject. DataSet. Post;

ckbIsFixated. DataSource: =dtsProjectDetails;

txtPlanBeginDate. DataSource: =dtsProjectDetails;

txtPlanEndDate. DataSource: =dtsProjectDetails;

txtPlanManHour. DataSource: =dtsProjectDetails;

txtFactBeginDate. DataSource: =dtsProjectDetails;

txtFactEndDate. DataSource: =dtsProjectDetails;

txtFactManHour. DataSource: =dtsProjectDetails;

txtNameProject. DataSource: =dtsProjectDetails;

cmbStatusProject. DataSource: =dtsProjectDetails;

cmbTypeProject. DataSource: =dtsProjectDetails;

qurProjectDetails. Active: =False;

qurProjectDetails. Active: =True;

cmbTypeEntry. Visible: =True;

Label10. Visible: =True;

dbgProjectDetails. Group (4);

dbgProjectDetails. SubGroup (5);

end;

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

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

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

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

В Таблице 3.1 представлена структурная схема программы.

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

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

В таблице приведено описание модулей.

Таблица 3.1 - Структурная схема программы

Идентификатор модуля

Описание функций

Project

База данных

U_Data

Модуль подключения к БД и хранилище всех справочников

U_Login

Модуль авторизации

U_Role *

Модуль справочника "Роли"

U_Main

Модуль главной формы

U_Personal *

Модуль справочника персонала

U_ProjectDet

Модуль формы детализации проекта

U_ProjectDev *

Модуль отклонений проекта

U_Resources *

Модуль ресурсов проекта

U_ProjectManHour *

Модуль времени проекта

U_ProjectTeam *

Модуль команды проекта

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

Взаимосвязь модулей программы представлена на Рисунке 3.4

3.3 Технология разработки пользовательского интерфейса ЭИС

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

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

3.3.1 Выбор типа графического интерфейса, его составляющие

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

В настоящее время существует несколько типов интерфейсов пользователя:

· пакетный;

· текстовый командный;

· текстовый оконный;

· графический командный;

· графический оконный.

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

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

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

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

Графический командный интерфейс объединяет в себе текстовый командный интерфейс и возможность вывода графической информации. Этот тип мало распространен из-за появления графического оконного интерфейса.

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

На Рисунках 3.5-3.7 представлены вкладки главной формы разработанной системы.

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

Первая основная вкладка - проекты. Она отображает все проекты, содержащиеся в системе, их статус, плановую дату начала и окончания, а также фактическую дату начала и окончания.

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

Справочник персонала представляет собой список работников, в нем указаны их фамилия, имя, отчество, адрес электронной почты и телефон.

Справочник "Роли" представляет собой список должностей с их названием и описанием.

В левом верхнем углу есть кнопка печати.

Кнопка “Edit" в правом верхнем углу вкладки "Проекты" открывает форму деталей проектов, с которой пользователь может продолжить работу.


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

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