Разработка автоматизированной подсистемы кадрового учета с использованием CASE средств (BPWin и ERWin) для МОУ Лицей №17

Разработка функциональной и инфологической модели системы "Кадровый учет" с использованием индустриального проектирования CASE средств (BPWin и ERWin). Программная система позволяет упростить процесс проведения регистрации и учета сотрудников лицея.

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

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

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

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

2.3 Рекомендации относительно анализа пакетов прикладных программ

Отметим особенности ПО.

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

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

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

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

Выводы:

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

- прежде чем покупать пакет, необходимо иметь четкое представление об алгоритмах решения всех задач и используемой при этом информации в предметной области «Управление кадрами», а также о технологии функционирования системы в целом, так как в каждом готовом программном продукте реализованы определенные алгоритмы, рассчитанные на регламентированный качественный состав информации. Таким, образом, необходимо: 1) составить список задач, решения которых должны быть автоматизированы; 2) определить информационные потоки с учетом особенностей сетевой обработки на своем предприятии; 3) определить виды и формы существования информации; 4) выделить круг запросов, которые могут возникнуть в процессе работы; 5) оценить перспективы и направления развития предприятия в целом или кадровой службы, в частности. Если пакет не предусматривает подобных возможностей, то он может морально устареть быстрее, чем будет полностью задействован в текущей работе. Пользователь не всегда компетентен в этом вопросе. Поэтому, обращаясь в фирму, торгующую программным обеспечением, он рискует купить пакет, который по истечении очень короткого периода эксплуатации перестанет его устраивать по всем или отдельным ключевым параметрам;

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

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

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

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

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

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

- необходимо обращать внимание на то, кому пакет (или отдельное программное обеспечение для автоматизированного рабочего места - АРМ - в рамках пакета) предназначен - руководителю или рядовому сотруднику. В первом случае при выборе ППП должны учитываться особенности управленческой деятельности руководителей: они, как правило, не решают конкретных учетных и расчетных задач, а выполняют процедуры контроля, анализа и принятия решений. Поэтому информация, предоставляемая им, должна быть агрегирована по заданным показателям. В современных КСУ такие функция выполняют ситуационные центры, предоставляющие материал в наглядном (чаще всего в графическом) виде и в соответствии с актуальным состоянием экономики предприятия. В составе программного обеспечения для АРМ руководителя должны присутствовать средства, выполняющие функции информационно-поисковой или информационно-справочной системы как внутри подчиненного подразделения, так и по отношению ко всем смежным подразделениям. В число программ может быть также включена личная информационная система с такими элементами, как календарь, адресная и телефонная книги, блокнот для заметок, список предстоящих дел и др.;

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

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

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

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

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

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

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

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

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

- необходимо обращать внимание на:

1) правовое соответствие используемых в пакете документальных форм;

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

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

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

2.4 Выводы

В данном разделе проведено исследование принципов автоматизации управления кадрами учреждения МОУ Лицей № 17. Рассмотрены общие тенденции автоматизации управления кадрами и особенности существующего программного обеспечения.

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

Автоматизированная система управления, используемая в организации, морально устарела и её использование в существующем виде со временем усложнит модернизацию, изменение или усовершенствование всей системы.

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

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

3. ПРОЕКТ АВТОМАТИЗИРОВАННОЙ ПОДСИСТЕМЫ КАДРОВОГО УЧЕТА

3.1 Основные функции кадрового учета

Рассмотрим подробнее работу отдела кадров. Он состоит из начальника и двух специалистов.

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

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

Функции на диаграмме изображаются прямоугольниками, а данные и объекты - стрелками.

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

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

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

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

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

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

Рисунок 3.3 - Увольнение работника - контекстная диаграмма

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

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

Рисунок 3.4 - Увольнение работника - диаграмма декомпозиции

Диаграммы перемещения работников представлены на рисунках 3.5 и 3.

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

Рисунок 3.5 - перемещение работника - диаграмма декомпозиции

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

Рисунок 3.6 - Перемещение работника - диаграмма декомпозиции

На рисунках 3.7 и 3.8 представлены диаграммы оформления отпуска

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

Рисунок 3.7 - Оформление отпуска - контекстная диаграмма

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

Рисунок 3.8 - Оформление отпуска - диаграмма декомпозиции

На основании заявления работнику предоставляется отпуск. При фиксации приказа данные поступают в отпускную книжку работника, в соответствующую книгу регистрации и производится правка в «графике отпусков».

3.2 Разработка функциональной модели системы кадрового учета

Для построения модели данных использовался мощный и удобный инструмент - Erwin.

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

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

В проектируемой модели использовалась логико-физическая модель.

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

1. хранить информацию о персонале предприятия

2. хранить данные о вакансиях

3. хранить информацию о подразделениях (отделах) предприятия

4. хранить данные о назначениях

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

В данном проекте определены четыре сущности:

- сотрудник;

- документ;

- отдел;

- должность.

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

В данном проекте сущность Сотрудник характеризуют следующие атрибуты:

а) Код;

б) Фамилия, имя, отчество;

в) Паспорт;

г) ИНН;

д) Код отдела;

е) Код должности;

ж) Зарплата.

Сущность Документ характеризуют атрибуты:

- Код;

- Номер;

- Номер2;

- Дата;

- Код сотрудника;

- Код отдела;

- Код должности;

- Зарплата.

Сущность Отдел использует атрибуты Код и Наименование.

Сущность Должность использует атрибуты Код, Наименование, Типовая зарплата.

3.3 Определение зависимостей между сущностями

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

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

Для каждой сущности задано ключевое поле Код.

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

Сущность Документ связана с сущностью Сотрудник «многие ко многим», сущность Сотрудник связан с сущностями Отдел и Должность «один к одному».

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

Схема инфологической модели представлена в приложении А.

3.4 Обоснование разработки

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

Программа "Отдел Кадров" предназначена для облегчения условий труда сотрудников отдела кадров.

Наиболее рутинными и в то же время наиболее ответственными процессами являются:

- ввод метрики работника в его личную учетную карточку;

- ведение архива отдела кадров;

- подготовка различных отчетов по личным данным работников (стаж, зарплата, отгулы и так далее).

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

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

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

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

3.5 Описание логической структуры

С точки зрения пользователя (т.е. сотрудника отдела кадров) существует лишь запускаемая программа АРМ Отдел Кадров. Вся работа с карточками и архивом происходит в пределах разработанной программы без необходимости вызова каких-либо других программ.

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

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

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

3.6 Изучение предметной области

Выбор СУБД

Мощность и гибкость Delphi при работе с базами данных основана на низкоуровневом ядре - процессоре баз данных Borland Database Engine (BDE). Его интерфейс с прикладными программами называется Integrated Database Application Programming Interface (IDAPI). В принципе, сейчас не различают эти два названия (BDE и IDAPI) и считают их синонимами. BDE позволяет осуществлять доступ к данным как с использованием традиционного record-ориентированного (навигационного) подхода, так и с использованием set-ориентированного подхода, используемого в SQL-серверах баз данных. Кроме BDE, Delphi позволяет осуществлять доступ к базам данных, используя технологию (и, соответственно, драйверы) Open DataBase Connectivity (ODBC) фирмы Microsoft. Но, как показывает практика, производительность систем с использованием BDE гораздо выше, чем оных при использовании ODBC. ODBC драйвера работают через специальный “ODBC socket”, который позволяет встраивать их в BDE.

Все инструментальные средства баз данных Borland - Paradox, dBase, Database Desktop - используют BDE. Все особенности, имеющиеся в Paradox или dBase, “наследуются” BDE, и поэтому этими же особенностями обладает и Delphi.

Библиотека объектов содержит набор визуальных компонент, значительно упрощающих разработку приложений для СУБД с архитектурой клиент-сервер. Объекты инкапсулируют в себя нижний уровень - Borland Database Engine.

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

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

Таблицы сохраняются в базе данных. Некоторые СУБД сохраняют базу данных в виде нескольких отдельных файлов, представляющих собой таблицы (в основном, все локальные СУБД), в то время как другие состоят из одного файла, который содержит в себе все таблицы и индексы (InterBase). Например, таблицы dBase и Paradox всегда сохраняются в отдельных файлах на диске. Директорий, содержащий dBase .DBF файлы или Paradox .DB файлы, рассматривается как база данных. Другими словами, любой директорий, содержащий файлы в формате Paradox или dBase, рассматривается Delphi как единая база данных. Для переключения на другую базу данных нужно просто переключиться на другой директорий. InterBase сохраняет все таблицы в одном файле, имеющем расширение .GDB, поэтому этот файл и есть база данных InterBase.

Объекты БД в Delphi основаны на SQL и включают в себя полную мощь Borland Database Engine. В состав Delphi также включен Borland SQL Link, поэтому доступ к СУБД Oracle, Sybase, Informix и InterBase происходит с высокой эффективностью. Кроме того, Delphi включает в себя локальный сервер Interbase для того, чтобы можно было разработать расширяемые на любые внешние SQL-сервера приложения в онлайновом режиме. Разработчик в среде Delphi, проектирующий информационную систему для локальной машины (к примеру, небольшую систему учета медицинских карточек для одного компьютера), может использовать для хранения информации файлы формата .dbf (как в dBase или Clipper) или .db (Paradox). Если же он будет использовать локальный InterBase for Windows 4.0 (это локальный SQL-сервер, входящий в поставку), то его приложение безо всяких изменений будет работать и в составе большой системы с архитектурой клиент-сервер.

Масштабируемость на практике - одно и то же приложение можно использовать как для локального, так и для более серьезного клиент-серверного вариантов.

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

Разработка обобщенного алгоритма

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

Модули программы функционируют по схеме, описанной в Приложении В.

Используемые технические средства

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

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

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

Пакет Delphi - продолжение линии компиляторов языка Pascal корпорации Borland. Pascal как язык очень прост, а строгий контроль типов данных способствует раннему обнаружению ошибок и позволяет быстро создавать надежные и эффективные программы. Корпорация Borland постоянно обогащала язык. Когда-то в версию 4.0 были включены средства раздельной трансляции, позже, начиная с версии 5.5, появились объекты, а в состав шестой версии пакета вошла полноценная библиотека классов Turbo Vision, реализующая оконную систему в текстовом режиме работы видеоадаптера. Это был один из первых продуктов, содержавших интегрированную среду разработки программ.

В классе инструментальных средств для начинающих программистов продуктам компании Borland пришлось конкурировать со средой Visual Basic корпорации Microsoft, где вопросы интеграции и удобства работы были решены лучше. Когда в начале 70-х годов Н. Вирт опубликовал сообщение о Pascal, это был компактный, с небольшим количеством основных понятий и зарезервированных слов язык программирования, нацеленный на обучение студентов. Язык, на котором предстоит работать пользователю Delphi, отличается от исходного не только наличием множества новых понятий и конструкций, но и идейно: в нем вместо минимизации числа понятий и использования самых простых конструкций (что, безусловно, хорошо для обучения, но не всегда оправдано в практической работе), предпочтение отдается удобству работы профессионального пользователя. Как язык Turbo Pascal естественно сравнивать с его ближайшими конкурентами - многочисленными вариациями на тему языка Basic (в первую очередь с Visual Basic корпорации Microsoft) и с C++. Turbo Pascal существенно превосходит Basic за счет полноценного объектного подхода, включающего в себя развитые механизмы инкапсуляции, наследование и полиморфизм. Последняя версия языка, применяемая в Delphi, по своим возможностям приближается к C++. Из основных механизмов, присущих C++, отсутствует только множественное наследование. (Впрочем, этим красивым и мощным механизмом порождения новых классов пользуется лишь небольшая часть программистов, пишущих на С++.)

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

Среда программирования представляет собой несколько отдельных окон: меню и инструментальные панели, Object Inspector (в котором можно видеть свойства объекта и связанные с ним события), окна визуального построителя интерфейсов (Visual User Interface Builder), Object Browser (позволяющее изучать иерархию классов и просматривать списки их полей, методов и свойств), окна управления проектом (Project Manager) и редактора.

Delphi содержит полноценный текстовый редактор типа Brief, назначения клавиш в котором соответствуют принятым в Windows стандартам, а глубина иерархии операций Undo неограниченна. Как это стало уже обязательным, реализовано цветовое выделение различных лексических элементов программы. Процесс построения приложения достаточно прост. Нужно выбрать форму (в понятие формы входят обычные, диалоговые, родительские и дочерние окна MDI), задать ее свойства и включить в нее необходимые компоненты (видимые и, если понадобится, неотображаемые): меню, инструментальные панели, строку состояния и т. п., задать их свойства и далее написать (с помощью редактора исходного кода) обработчики событий. Object Browser Окна типа Object Browser стали неотъемлемой частью систем программирования на объектно-ориентированных языках. Работа с ними становится возможной сразу после того, как вы скомпилировали приложение.

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

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

Visual Component Library (VCL) Богатство палитры объектов для построения пользовательского интерфейса - один из ключевых факторов при выборе инструмента визуального программирования. При этом для пользователя имеет значение как число элементов, включенных непосредственно в среду, так и доступность элементов соответствующего формата на рынке.

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

Компиляторы языка Pascal компании Borland никогда не заставляли пользователя подолгу ждать результатов компиляции. Производители утверждают, что на сегодня данный компилятор - самый быстрый в мире. Компилятор, встроенный в Delphi позволяет обрабатывать до 390 тыс. строк исходного текста в минуту на машине Pentium-100. Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения (4GL) и в то же время обеспечивает качество кода, характерного для компилятора 3GL.

В смысле проектирования Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10-20 раз быстрее, чем тоже самое, сделанное при помощи интерпретатора. Кроме того, компилятор компилятору рознь, в Delphi компиляция производится непосредственно в родной машинный код, в то время как существуют компиляторы, превращающие программу в так называемый p-код, который затем интерпретируется виртуальной p-машиной. Это не может не сказаться на фактическом быстродействии готового приложения.

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

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

Мощный объектно-ориентированный язык

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

Объектно-ориентированный подход в новой версии языка получил значительное развитие. Перечислим основные новшества:

а) Введено понятие класса.

б) Реализованы методы классов, аналогичные статическим методам C++. Они оперируют не экземпляром класса, а самим классом.

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

г) Введена обработка исключительных ситуаций. В Delphi это устроено в стиле С++. Исключения представлены в виде объектов, содержащих специфическую информацию о соответствующей ошибке (тип и место- нахождение ошибки). Разработчик может оставить обработку ошибки, существовавшую по умолчанию, или написать свой собственный обработчик. Обработка исключений реализована в виде exception-handling blocks (также еще называется protected blocks), которые устанавливаются ключевыми словами try и end. Существуют два типа таких блоков: try...except и try...finally.

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

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

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

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

Язык программирования Delphi базируется на Borland Object Pascal. Кроме того, Delphi поддерживает такие низкоуровневые особенности, как подклассы элементов управления Windows, перекрытие цикла обработки сообщений Windows, использование встроенного ассемблера.

Объектно-ориентированная модель программных компонент

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

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

Благодаря такой возможности приложения, изготовленные при помощи Delphi, работают надежно и устойчиво. Delphi поддерживает использование уже существующих объектов, включая DLL, написанные на С и С++, OLE сервера, VBX, объекты, созданные при помощи Delphi. Из готовых компонент работающие приложения собираются очень быстро. Кроме того, поскольку Delphi имеет полностью объектную ориентацию, разработчики могут создавать свои повторно используемые объекты для того, чтобы уменьшить затараты на разработку.

Delphi предлагает разработчикам - как в составе команды, так и индивидуальным - открытую архитектуру, позволяющую добавлять компоненты, где бы они ни были изготовлены, и оперировать этими вновь введенными компонентами в визуальном построителе. Разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help'ы, доступные через меню Delphi.

3.7 Выводы

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

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

4. ПОСТАНОВКА ЗАДАЧИ ПРОЕКТИРОВАНИЯ

4.1 Выбор программного обеспечения

4.1.1 Библиотека визуальных компонент

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

Этот костяк называется Visual Component Library (VCL). В VCL есть такие стандартные элементы управления, как строки редактирования, статические элементы управления, строки редактирования со списками, списки объектов. Еще имеются такие компоненты, которые ранее были доступны только в библиотеках третьих фирм: табличные элементы управления, закладки, многостраничные записные книжки. Все объекты разбиты на страницы по своей функциональности и представленный в палитре компонент.

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

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

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

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

TMainMenu позволяет поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют невизуальным компонентом, поскольку они невидимы во время выполнения программы.

TPopupMenu позволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши на объекте, к которому привязано данное меню. У всех видимых объектов имеется свойство PopupMenu, где и указывается нужное меню. Создается PopupMenu аналогично главному меню.


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

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