Среда структурно-визуального программирования на основе готовых компонент
Разработка среды структурно-визуального программирования с возможностью решения пользовательских задач в операционной системе по средствам использования готовых компонент. Организация упрощенного проектирования на основе алгоритмических примитивов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 12.04.2012 |
Размер файла | 2,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
- Введение
- 1. Анализ технического задания
- 1.1 Технологический процесс
- 1.1.1 Функциональное назначение
- 1.2 Требования к программному продукту
- 2. Существующие способы реализации системы структурно-визуального программирования
- 2.1 Связь компонент с использованием графического объединения линиями
- 2.2 Связь компонент структурно-визуальной генерации промежуточного кода
- 2.3 Вывод
- 3. Общая модель системы и описание ее компонентов
- 3.1 Пользовательский интерфейс системы
- 3.2 Разработка приложений в среде программирования
- 3.2 Компоненты
- 3.3 Инструменты разработки
- 3.3.1 Мастера генерации промежуточного кода
- 3.4 Дерево действий
- 3.4.1 Программный код
- 3.5 Класс экспорта
- 3.6 Интерпретатор
- 3.6.1 Построение и решение графа выражения
- 3.7 Компилятор
- 4. Экономическая часть дипломного проекта
- 4.1 Смета затрат на выполнение работы
- 4.2 План выполнения работ
- 4.3 Расходы на оплату труда
- 4.3.1 Расчет основной заработной платы
- 4.3.2 Расчет дополнительной заработной платы
- 4.4 Материальные затраты
- 4.4.1 Стоимость материалов и покупных изделий
- 4.4.2 Стоимость расходуемой технологической электроэнергии
- 4.4.3 Затраты по использованию прикладных программ
- 4.5 Расчет амортизации оборудования
- 4.6 Прочие расходы
- 4.6.1 Расчет единого социального налога
- 4.6.2 Выплаты на социальное страхование от несчастного случая
- 4.6.3 Затраты по использованию INTERNET
- 4.6.4 Расходы на управление и хозяйственное обслуживание
- 4.7 Заключение
- 5. Безопасность и экологичность проекта
- 5.1 Безопасность программного продукта
- 5.1.1 Идентификация опасностей на рабочих местах
- 5.1.2 Анализ опасных и вредных производственных факторов
- 5.1.3 Техническая безопасность оборудования
- 5.2 Методы и принципы обеспечения безопасности труда
- 5.2.1 Безопасность исходных материалов
- 5.2.2 Обеспечение благоприятного светового климата
- 5.2.3 Обеспечение благоприятных микроклиматических условий
- 5.2.4 Защита от шума и вибрации
- 5.2.5 Электробезопасность
- 5.2.6 Техническая эстетика и эргономика
- 5.2.7 Режим труда и отдыха
- 5.2.8 Требования безопасности к профессиональному отбору операторов
- 5.2.9 Требования безопасности к транспортированию и хранению объекта разработки
- 5.2.10 Средства индивидуальной защиты
- 5.2.11 Сертификат безопасности на разработанную продукцию
- 5.3 Санитарно-бытовое обеспечение
- 5.4 Пожарная безопасность
- 5.5 Безопасность в чрезвычайных ситуациях
- 5.6 Экологическая безопасность программного продукта
- 5.6.1 Экологическая безопасность исходных материалов, использованных в проектировании объекта
- 5.6.2 Экологическая безопасность материалов и веществ, обращающихся в технологических процесах
- 5.6.3 Выводы
- Заключение
- Список используемых источников
Введение
Во время разработки программного обеспечения не всегда необходима вся полнота функциональности, которая позволяет проектировать приложения высокой сложности и большой гибкости. Часто, достаточно упрощенных обобщающих средств разработки, предоставляющих готовые функции в простом виде. Это сильно упрощает и ускоряет процесс разработки.
Также, подобный подход является удачным для применения в образовательных процессах, при обучении программированию. Т.к. позволяет обучать учащихся с использованием заинтересованности, вызываемой быстрым получением результата поставленной задачи. Делает освоение материала очень наглядным.
На данный момент существует системы, позволяющих упростить процесс разработки специализированных приложений для конкретных задач. Например, пакет Microsoft Access предоставляет упрощенную модель организации приложения для работы с базой данных. Однако применение Access для решения более общих задач становится неудобным или вовсе невозможным. Например, типичных пользовательских действий в операционной системе, таких как копирование файлов, доступ в интернет, запуск приложений, выключения компьютера и т.д.
Разрабатываемая система должна предоставлять широкий набор инструментальных средств, обеспечивающих создание программ на основе сборки из готовых компонент. Компоненты должны в совокупности предоставлять возможность решения основных пользовательских задач в операционной системе
В соответствии с этим, целью дипломного проекта является разработка среды структурно-визуального программирования обеспечивающей возможность решения основных пользовательских задач в операционной системе по средствам использования готовых компонент.
Исходя из поставленных целей, решаются задачи:
- Создание средств, позволяющих пользователю собирать программы, с помощью готовых компонент;
- Обеспечение интерфейса взаимодействия компонент со средой структурно-визуального программирования;
- Организация упрощенного проектирования на основе алгоритмических примитивов, таких как циклы, условия, массивы данных.
1. Анализ технического задания
Разработать набор инструментальных средств, обеспечивающих создание программ на основе сборки из готовых компонент.
1.1 Технологический процесс
Процесс работы среды структурно-визуального программирования включает в себя следующие действия:
- разработка пользователем графического интерфейса программы;
- объединение компонент по средствам структурно-визуальной генерации промежуточного кода;
- отладка программы, с использованием контрольных точек и пошагового выполнения;
- компиляция проекта в готовое приложение.
1.1.1 Функциональное назначение
Среда структурно-визуального программирования должна предоставлять следующие возможности:
- Создание программ на основе готовых компонент;
- Обучение принципам программирования на алгоритмических примитивах.
1.2 Требования к программному продукту
Среда структурно-визуального программирования должна:
работать с проектами любых размеров;
компилировать проекты в исполняемый файл;
иметь инструменты отладки программ;
предоставлять алгоритмические примитивы для связи компонент;
обеспечить интерфейс для создания новых компонент;
иметь собственный формат хранения проекта.
2. Существующие способы реализации системы структурно-визуального программирования
На сегодня, сформировались несколько схем, по которым может быть реализовано взаимодействие компонент, в среде структурно-визуального программирования. Каждый способ имеет свои достоинства и свои недостатки, влияющие, в конечном счете, на простоту работы в среде и набор предоставляемых пользователю функций.
2.1 Связь компонент с использованием графического объединения линиями
Примером программ с использованием графического объединения компонент линиями связи могут служить программы A-Flow (www.aflow-designer.com), HiAsm (www.hiasm.com). Пример последней среды приведен на Рис.1.
Рис.1. Пример создания блокнота в среде HiAsm
Построение алгоритма программы осуществляется путем соединения программных элементов линиями-связями. Каждая линия связывает событие, вызванное одним объектом с действием над другим компонентом. Например, проведя связь от выхода, обозначающего клик мышки по компоненту, до входа вызывающего показ формы, можно реализовать вызов окна программы.
Данная архитектура имеет следующие преимущества:
- Процесс создания программ наглядный;
- Логика программирования является интуитивно понятной;
- Расширение возможностей программы можно легко проводить увеличением компонент.
Однако данный подход порождает также некоторые проблемы:
- Создание большой программы сильно запутывает графическую схему;
- Сложные математические операции довольно трудно реализуются;
- На экране монитора помещается только простые программы. Более большие разработки могут иметь очень большие размеры;
- Из-за ограниченности размеров компонент при графическом объединении линиями связей, невозможно наделить компонент хорошей управляемостью.
2.2 Связь компонент структурно-визуальной генерации промежуточного кода
Суть этого подхода состоит в том, что компоненты связываются с помощью специальных инструментов. Инструменты являются программными средствами, позволяющими легко настраивать нужное взаимодействие между компонентами. В результате получается некий блок кода на промежуточном языке, который и является логической частью разрабатываемой программы. Примерами подобных сред разработки являются DevelStudio (www.develstudio.ru), GameMaker (www.gamemaker. nl). Пример последней среды приведен на Рис.2.
Рис.2. Пример создания игры в среде GameMaker
Разработка происходит следующим образом. Для компонентов, путем простого выбора из списка, создаются обработчики событий (Events), таких как клик, нажатие клавиши, столкновение с другими объектами и т.д.
На каждое событие создаются действия (Actions) по средствам специального инструмента. Он предоставляет набор заготовленных шаблонных операций, таких как перемещение объекта, изменения его свойств и т.д. Эти действия настраиваются в процессе создания через предоставляемые инструментальные средства. Например, задается расстояние, на которое необходимо переместить объект.
Достоинства метода:
- Простота создания за счет проработанных инструментов;
- Большая гибкость программной логики;
- Есть некий программный код, который можно редактировать вручную;
- Сложность программ менее ограничена.
Недостатки:
- Программа создается чуть менее наглядно;
- Сложная расширяемость логики из-за необходимости изменений инструментов программы.
структурное визуальное программирование алгоритмический
2.3 Вывод
В связи с приведенными аргументами, был выбран подход, с использованием структурно-визуальной генерации кода. Этот подход позволяет создавать более сложные продукты, при этом процесс разработки остается простым для понимания.
Данных способ также очень приближен к логике программирования, что позволяет выработать необходимые навыки учащимися в образовательных процессах, при обучении программированию. Делает освоение материала очень наглядным.
Отличительными особенностями разрабатываемой системы структурно-визуального программирования являются использование собственных инструментальных средств генерации промежуточного кода, рассчитанных на широкий спектр задач, а не только на разработку, например, игр или баз данных. Логика разработки в среде приближена к логике программирования. Применение проработанных компонент предоставляющих большие возможности при небольшом наборе операций настройки и программирования. Все это делает разработку среды структурно-визуального программирования целесообразной и отличной от существующих систем разработки.
3. Общая модель системы и описание ее компонентов
Среда структурно-визуального программирования - это набор инструментальных средств, обеспечивающих создание программ на основе сборки из готовых компонент. Разрабатываемая система, должна включать в себя следующие необходимые для работы части: интерфейс пользователя, компоненты, инструментальные средства для связи компонент, отладчик, компилятор.
Обобщенная структура среды разработки приведена на Рис.1.
Рис.3. Обобщенная структура системы структурно-визуального программирования
Описание элементов системы:
- компоненты, структурные блоки, на основе которых строится программа;
- инструменты разработки - средства позволяющие связывать компоненты в единую программу, посредствам алгоритмических примитивов;
- дерево действий, в котором хранится разрабатываемая пользователем программа;
- проект, представляющий собой объектное представление в среде программы, которую проектирует пользователь;
- класс экспорта, позволяющий сохранять проект в другие форматы представления данных, например в исполняемое приложение.
Рассмотрим подробнее все элементы системы структурно-визуального программирования.
3.1 Пользовательский интерфейс системы
Для реализации обобщенной структуры системы структурно-визуального программирования, был разработан пользовательский интерфейс, обеспечивающий доступ ко всем возможностям среды разработки (Рис.2).
Рис.4. Главное окно среды разработки
Элементы главного окна среды разработки:
1. Панель объектов содержит перечень всех компонент, доступных для использования в разрабатываемом приложении;
2. В разделе окон разрабатывается графическое оформление создаваемой программы, путем расположения на окне программы компонент и задания их размеров и расположения;
3. Раздел свойств предоставляет инструмент просмотра и изменения свойств компонент в режиме проектирования;
4. В дереве действий происходит отображение программного кода, созданного для обработчиков событий компонентов. Предоставляются инструменты для редактирования элементов дерева, а также отображения процесса отладки и трассировки программы.
5. Раздел событий. События позволяют компоненту уведомлять проект о возникновении каких-либо ситуаций или действий пользователя над компонентом (клик, движение курсора, нажатие клавиш). Раздел событий позволяет создавать компонентам обработчики событий, в которых будут размещаться программные выражения, описывающие реакцию программы на событие
6. Раздел действий позволяет создавать программные команды управления программой. Процесс создания происходит через специальный инструмент, где необходимо выбрать компонент, затем его свойство, а после значение, на которое на которое это свойство требуется изменить (Рис.3). Спроектированные действия размещаются в обработчике событий, созданном в разделе событий.
Рис.5. Инструмент создания программных команд
7. Раздел условий предназначен для создания условных конструкций, позволяющих организовать разветвленную логику в программе. Пример создания условия проверки, является ли ширина компонента Кнопка большим, чем 100 точек, приведен на Рис.4.
Рис.6. Инструмент создания условных конструкций
8. Раздел циклов предназначен для создания циклических конструкций, позволяющих организовать повторяющийся перебор одних и тех же действий. Пример создания цикла, выполняющегося пока текст компонента Кнопка меньше либо равен 10, приведен на Рис.4.
Рис.7. Инструмент создания циклических конструкций
9. Раздел комментариев используется для создания текстовых заметок в программном коде, предназначенных для пояснения участков кода, и не несущих функциональной значимости.
3.2 Разработка приложений в среде программирования
Процесс разработки приложений в среде структурно визуального программирования происходит следующим образом:
1. Размещение необходимых визуальных компонент в области проектирования (Рис.8). Каждый компонент размещается на форме и может перемещаться по ней с помощью мыши. В проекте может участвовать неограниченное количество форм и компонентов.
Рис.8. Размещение компонент в области проектирования
2. Настройка визуальных и внутренних свойств каждого добавленного компонента в области настроек (Рис.17). Каждое свойство сопровождается краткой информацией о нем.
Рис.9. Область настройки компонент
3. Определение реакции компонент на события программы. Для этого необходимо добавить обработчики на события, в разделе событий (Рис 18).
Рис.10. Область настройки компонент
4. На каждое событие можно задать соответствующую реакцию компонент, посредствам инструмента генерации действий. Пример создания действия, изменяющего текст компонента "Кнопка1" на "Привет мир!" приведен на рисунке 11.
Рис.11. Инструмент генерации действий
5. Если требуется организовать разветвленную структуру программы, то необходимо использовать другие инструменты, например инструмент генерации условий (Рис.12)
Рис.12. Область настройки компонент
6. Функциональность инструментов, в т. ч. и инструмента генерации условий, расширяется с помощью, т. н. мастера сложных действий (МСД). Он вызывается кликом по кнопке с волшебной палочкой. На рисунке 13 приведен пример использования МСД для генерации условия, имеет ли Кнопка1 текст "Привет мир!"
Рис.13. Мастер сложных действий
7. После создания условия, внутри него можно размещать действия. Именно они будут выполняться, если условие будет верным. Реализация, например, программного кода для закрытия программы, если текст кнопки равен "Привет мир!", приведена на рисунке 14
Рис.14. Мастер сложных действий
8. Разработанное приложение можно запустить в режиме интерпретатора, скомпилировать в exe-файл или экспортировать в VB.net-проект. Пример работы приложения, разработанного в среде структурно-визуального программирования, представлено на рисунке 15.
Рис.15. Работа приложения, разработанного в среде структурно-визуального программирования
3.2 Компоненты
Компоненты представляют собой составные блоки, из которых собирается программа.
Это кнопки, окна, надписи, объекты, представляющие файловую систему, реестр и т.д. Задача среды разработки предоставить инструментальные средства для связи компонент в единую программу, которая сможет решать поставленные задачи.
Внешний вид компонент в среде разработки представлен на Рис.16
Рис.16. Внешний вид компоненты в среде разработки
3.3 Инструменты разработки
Инструменты разработки являются средствами, позволяющими связывать компоненты в единую программу, посредствам алгоритмических примитивов и других логических связей.
В среде разработки реализованы следующие инструменты:
- Настройка компонентов в среде разработки
- Создание перехватчиков событий компонент
- Мастера генерации промежуточного кода
Компоненты настраиваются через инструмент настройки, который позволяет изменять все доступные свойства компонентов.
Для обеспечения обработки событий компонентов, в разрабатываемой пользователем программе, используется соответствующий инструмент, задающий, какие события будут отлавливаться.
3.3.1 Мастера генерации промежуточного кода
Создание функционального программного кода в среде структурно-визуального программирования происходит с помощью специальных инструментов. Инструмент - программное средство, представленное в виде набора настроек, облегчающее разработку.
Создание кода алгоритмических примитивов, таких как условия и циклы, а также генерация кода для изменения свойств компонент производится в трех инструментах:
- Инструмент изменения свойств компонент
- Инструмент создания условий
- Инструмент создания циклов
На рисунке 17 показана общая структура инструментов генерации функционального кода.
Рис.17. Структура инструментов генерации кода
Все инструменты расширяют свою функциональность за счет мастера сложных действий. В нем можно генерировать программный код на основе свойств компонент с применением математический операций и функций
Код, сгенерированный мастером сложных действий, всегда возвращает, какие-либо данные, а не выполняет методы. Пример нахождения среднего арифметического чисел, содержащихся в компонентах Текст1 и Кнопка1 приведен в рисунке 18.
Рис.18. Пример использования мастера сложных действий
3.4 Дерево действий
Визуализация программного кода происходит в специальном разделе среды разработки, называемом деревом действий. Также в нём отображаются компоненты, содержащие код и их события. На рисунке 19 представлен вид дерева действий.
Рис. 19. Вид дерева действий
На приведенном рисунке представлен пример обработчика события клик мыши по кнопке, с именем "КнопкаРавно".
События визуализируются в виде ветвей дерева, вложенных в представление компонента. Каждое событие содержит набор выражений определяющих реакцию программы на действие пользователя.
Ветви дерева, являющиеся условными или циклическими конструкциями, содержат в себе выражения, которые будут выполняться в случае истинности указанного условия.
Еще одной задачей дерева действий является визуализация процесса отладки разрабатываемого пользователем приложения, путем расстановки контрольных точек на ветках дерева и отображения трассировки.
Таким образом, дерево действий решает следующие задачи:
- Перечисление набора использованных компонент в программе;
- Отображения обработчиков событий;
- Визуализации выражений программного кода
- Предоставление услуг отображения процесса отладки
3.4.1 Программный код
Программный код представляет собой набор операторов, связанных алгоритмическими примитивами, такими как условия, циклы.
Общая семантика программного кода в среде структурно - визуального программирования в формате РБНФ представлена в Листинге 1:
Программный код = { Выражение }
Выражение = Терм [“=" Терм { (“+”|”-”|”&”) Терм }]
Терм = [Дополнительная функция] строка |
Свойство компонента [" (“ Терм {“," Терм } ”) ”]
Свойство компонента = "Кнопка. Текст" | "Окно. Ширина" | …
Дополнительная функция = "Корень" | "Синус" | …
Листинг 1. Семантика программного кода в РБНФ
Программный код является набором выражений, которые описывают поведение компонентов во время работы разрабатываемого пользователем приложения. Каждое выражение может либо вызвать метод компонента, либо изменить его свойство, на основании свойств других компонент.
Программный код каждого компонента хранится во внутренних полях и передается в среду через специальный интерфейс.
3.5 Класс экспорта
Класс экспорта предоставляет возможности сохранения разрабатываемого проекта в различные форматы данных. Система имеет следующие возможности экспорта:
- Внутренний формат файла для хранения проекта
- В исполняемый файл
- В код Visual basic.net
3.6 Интерпретатор
Для предоставления пользователям возможностей отладки и трассировки создаваемых программ был реализован интерпретатор, осуществляющий пооператорную обработку и выполнение исходной программы.
Задачи интерпретатора:
- Исполнение программы, разработанной в среде разработки;
- Поведение исполняемой программы должно точно повторять поведение приложения, скомпилированного на основании одного и того же исходного кода;
- Предоставление возможностей приостановки исполняемой программы;
- Возвращение результата выполнения выражения по запросу среды во время приостановки программы.
Для решения поставленных задач необходимо, чтобы интерпретатор работал в выделенном потоке, что позволит ему выполнять программу независимо от среды разработки.
Для реализации многопоточности используется стандартный класс System. Threading. Thread. Его конструктору передается один параметр типа делегата System. Threading. ThreadStart (процедура без параметров). Метод, на который указывает этот делегат, начинает выполняться в отдельном потоке при вызове метода Start () объекта потока. Когда метод, запущенный в потоке, возвращается, выполнение потока завершается. Повторное использование того же объекта класса Thread невозможно, его нужно создавать заново. При использовании многопоточности следует принимать ряд мер предосторожности для обеспечения безопасного доступа к общим данным. Например, присваивание значений переменным, используемым несколькими потоками, по возможности следует производить с помощью метода Interlocked. Exchange, который гарантирует атомарность операции, то есть то, что ее выполнение не будет прервано до полного завершения для передачи управления другому потоку. Также обращаться к методам и свойствам элементов графического интерфейса пользователя напрямую можно только из того же потока, в котором они были созданы. Если необходимо воздействовать на графический интерфейс пользователя из других потоков, то это следует делать в потокобезопасном методе, вызываемом с помощью делегата System. Windows. Forms. MethodInvoker.
Алгоритм работы метода Start () потока интерпретатора представлен на рисунке 20.
При создании потока происходит инициализация всех компонент, т.е. создание всех необходимых объектов, задание их свойств и назначение обработчиков событий. После этого момента программа запущена и начинает работу. Задача метода потока теперь является управление запущенной программой из среды разработки посредствам реакции на изменение переменных потока.
При инициализации компонент их создание происходит с указанием режима отладки. Это означает, что все перехваченные события объектов будут отправляться в унифицированный обработчик событий интерпретатора UnificedEvent. В нем все действия, созданные для переданного события, будут пооператорно исполняться интерпретатором.
Рис. 20. Алгоритм работы метода потока интерпретатора
3.6.1 Построение и решение графа выражения
Для выполнения программного кода с соблюдением приоритетов выражений со скобками, в интерпретаторе реализован механизм построения графа выражения.
Пример его реализации для выражения "a+ (b* (c-d))" приведен на рисунке 21.
Рис.21. Граф выражения a+ (b* (c-d))
После построения графа выражения, его листья содержат атомарные операции, решение которых сильно упрощается. Таким образом, полное решение графа происходит следующим образом:
1. Вычисляются выражения в листьях графа;
2. Записываются в родительский элемент листа графа вычисленные значения;
3. Удаляются все листы графа;
4. Если граф не решен, переход к пункту 1.
Таким образом, для интерпретации выражений, достаточно интерпретировать простые операции, например сложение значений двух свойств.
3.7 Компилятор
Компилятор необходим для преобразования проекта в исполняемый exe-файл. Задачами компилятора являются:
- Синтаксический анализ
- Генерация кода для создания экземпляров компонент
- Трансляция программного кода проекта в объектный код
На уровне синтаксического анализ происходит изучение программного кода разработанного приложения, и производятся следующие простейшие проверки:
- Существуют ли объекты, имена которых используются в программе;
- Совпадает ли количество открывающихся и закрывающихся скобок;
- Совпадает ли количество открывающихся и закрывающихся двойных кавычек.
На основе получения отчетов о компиляциях пользователей программы, было определено, что данных проверок достаточно, для обнаружения большинства ошибок компиляции.
В качестве объектного языка компилятора был выбран Visual Basic.net. Выбор был обусловлен следующими особенностями языка:
- Близкий синтаксис исходного языка к VB.net;
- Автоматическое приведение типов переменных и экземпляров классов;
- Возможность использования аргументов при обращении к свойствам.
Самым удобной особенностью языка, является автоматическое приведение типов переменных и экземпляров классов, осуществляемое за счет механизма позднего связывания (LateBinding). Объявив, например, переменную типа Object (базовый класс абсолютно всех классов), можно обращаться ко всем свойствам экземпляра класса, предположительно хранимого в ней, без явного приведения данной переменной к типу этого класса:
Button. BehaviorObject. ButtonStyle = “Обычный”
Тот же код на C#:
( (ButtonBehavior) Button. BehaviorObject). ButtonStyle = “Обычный”
Таким образом, трансляция исходного кода на языке среды структуно-визуального программирования в VB.net код заметно упрощается. Пример трансляции приведен на рисунке 14 и 15.
Рис.14. Исходный код из среды разработки
Рис.15. Объектный код на языке VB.net
После получения объектного кода программы он компилируется компилятором vbc. exe, свободно распространяемым вместе с FrameWork.net. Компилятор командной строки Visual Basic поддерживает полный набор параметров для управления входными и выходными файлами, сборками, а также параметрами отладки и препроцессора.
Пример строки компиляции проекта среды разработки:
C: \Windows\Microsoft.net\Framework\v2.0.50727\vbc. exe /reference: "Interop. MSScriptControl. dll", "Kennedy. ManagedHooks. dll", System. dll, System. Drawing. dll, System. Data. dll, System. XML. dll, System. Windows. Forms. dll /imports: Microsoft. VisualBasic, Microsoft. Win32, System,System. Collections, System. Drawing, System.runtime. InteropServices, System. Text,System. Windows. Forms /nowarn /target: winexe /main: MainClass /out: "D: \Проект1. exe" "D: \Compiltest\*. vb"
Полученный exe-файл является готовым приложением, созданным в среде структурно-визуального программирования.
4. Экономическая часть дипломного проекта
Переход к информационному обществу предполагает информатизацию всех сфер общественной жизни. В настоящее время на дорожную отрасль России выделяются средства, достаточные для проведения автоматизации многих процессов, связанных с эксплуатацией дорожного хозяйства.
Дипломный проект заключается в создании аппаратно-программного комплекса паспортизации и диагностики автомобильных дорог, позволяющего автоматизировать процесс сбора и первоначальной структуризации дорожной информации.
4.1 Смета затрат на выполнение работы
В смету затрат включаются все затраты, связанные с выполнением проекта, независимо от источника финансирования. Структура затрат будет иметь следующий вид:
1. Расходы на оплату труда
- основная заработная плата;
- дополнительная заработная плата
2. Материальные затраты
- стоимость материалов и покупных изделий;
- стоимость расходуемой электроэнергии;
- затраты по использованию прикладных программ.
- затраты по оплате услуг, работ сторонних организаций.
3. Амортизация оборудования
- амортизация оборудования;
4. Прочие расходы
- единый социальный налог;
- выплаты на социальное страхование от несчастного случая;
- затраты по использованию INTERNET;
- расходы на управление и хозяйственное обслуживание.
4.2 План выполнения работ
Таблица 1 - план выполнения работ
Вид работ |
Категория работника |
Время разработки, чел/час |
Затраты машинного времени, маш/час |
|
1. Сбор информации по существующим аналогам |
Инженер-программист |
40 |
40 |
|
2. Изучение документации, поиск и установка компонентов, настройка среды разработки |
Инженер-программист |
100 |
100 |
|
3. Разработка архитектуры, структуры системы |
Инженер-программист |
120 |
60 |
|
4. Разработка алгоритма работы. Написание программной части |
Инженер-программист |
600 |
600 |
|
5. Отладка |
Инженер-программист |
100 |
100 |
|
6. Написание технической документации по проекту |
Инженер-программист |
50 |
50 |
Получаем: время разработки суммарное равно 1010 часов, суммарное машинное время равно 950 часов.
4.3 Расходы на оплату труда
4.3.1 Расчет основной заработной платы
На статью "Основная заработная плата" относятся выплаты по заработной плате, вычисленные по должностным окладам и тарифным ставкам сотрудников, специалистов, служащих, рабочих предприятия, которые непосредственно занимались выполнением данной работы, премии за основные результаты научно-исследовательской деятельности, выплаты, обусловленные районным регулированием оплаты труда, премии за непрерывный стаж работы.
Размер основной заработной платы устанавливается исходя из численности различных категорий исполнителей, трудоемкости работы, времени, затрачиваемого на выполнение данной работы. Исходными данными для расчета основной заработной платы возьмем трудоемкость работ, стоимость одного человеко-часа работы для разных категорий служащих.
Должностные оклады сотрудников устанавливаются на основе тарифной сетки по оплате труда работников предприятия ООО "Индор-Енисей".
Рассчитаем размер основной заработной платы для всех работников, принимавших участие в разработке проекта. Должностной месячный оклад инженера-программиста организации ООО "Индор-Енисей" составляет 6 000 руб. (Дмес. окл). Ежемесячная премия составляет 2 125 руб. (Пмес). Северная надбавка составляет 30% от ежемесячных постоянных начислений (Нс). Районный коэффициент составляет так же 30% от ежемесячных постоянных начислений (Нр). Размер основной заработной платы работника предприятия на должности инженера-программиста рассчитывается по формуле
ЗПосн = Дмес. окл. + Пмес + Нс + Нр
Размер ежемесячных выплат на зарплату инженера-программиста получается
ЗПосн = 6000 + 2 125 + 2 437,5 + 2 437,5 = 13 000 руб.
Рассчитаем стоимость часа работы над проектом инженера-программиста:
Сч = ЗПосн/ Чмес
где, Сч - стоимость часа работы инженера-программиста, руб.;
ЗПосн - размер основной заработной платы, руб.;
Чмес - среднее количество рабочих часов в месяце, час. Значение данного параметра примем как 168 часов;
Таким образом, стоимость часа работы программиста получается:
Сч = 13 000/168 = 77,38 руб.
Суммарная заработная плата инженера-программиста составляет:
ЗПосн У = 77,38 * 1010 = 78153,8 руб.
4.3.2 Расчет дополнительной заработной платы
На статью “Дополнительная заработная плата" на предприятии ООО "Индор-Енисей" приходится 12% от годового фонда заработной платы:
Таким образом, дополнительная заработная плата на двух инженеров-программистов составит:
ЗПдп= 78 153,8 * 0,12 = 9378,45 руб.
4.4 Материальные затраты
4.4.1 Стоимость материалов и покупных изделий
Стоимость материалов включает в себя:
стоимость тонера для принтера: 180 руб.
бумага для печати (1 пачка=500л.): 100 руб.
Подсчитаем общую стоимость расходуемых материалов Страсх.:
Страсх. = 180 + 100 = 280 руб.
4.4.2 Стоимость расходуемой технологической электроэнергии
Необходимо подсчитать количество расходуемой энергии, исходя из установленной мощности оборудования, каждого вида и суммарную мощность потребляемую оборудованием по формуле (5):
Nсум= Nj (5),
Где: Nсум - суммарная мощность оборудования;
Nj - установленная мощность j-го вида оборудования.
N1=монитор - 264 Вт/ч;
N2=системный блок - 500 Вт/ч;
N3=периферийные устройства до 100 Вт/ч.
Количество расходуемой энергии компьютером составит:
Nсум=264+500+100=864 Вт/ч, Nфакт=Ni*tфакт (6)
Где: tфакт - фактические затраты времени на работы (машино-часы)
Nфакт = 864*950 = 820800 Вт = 820,8 кВт
Стоимость потреблённой энергии определяется по формуле (7)
Сэ=Nфакт*Цэ, (7)
где: Цэ - тариф на энергию (1кВт=163 коп. без НДС)
Сэ=820,8 * 163=133790,4 коп = 1337,9 руб.
4.4.3 Затраты по использованию прикладных программ
Данные затраты рассчитываются по формуле (8):
Страсх=Ст\Тэф* tфакт, (8)
где: Ст - стоимость прикладных программ, руб.;
Тэф - время эффективного использования, час.; (3 года - 5974)
Tфакт - количество часов использования ПО, маш\час;
Расчет для программного продукта Microsoft Windows 7 Professional:
Страсх = (8 000 /5974) *1 776=2 452 руб.
Расчет для программного продукта Visual Studio 2008 Standard:
Страсх = (10 500 /5974) *850=1493,97 руб.
Расчет для программного продукта Microsoft Office Professional:
Страсх = (12 000 /5974) *90= 180,78 руб.
Стоимость прикладных программ складывается из стоимости отдельных программных продуктов необходимых для работы системы:
Таблица 3 - расчет затрат по использованию прикладных программ
Программный продукт |
Стоимость |
Маш\час |
Затраты на ПО |
|
Microsoft Windows 7 Professional |
8 000 руб. |
950 |
2 452 руб. |
|
Visual Studio 2008 Standard |
10 500 руб. |
850 |
1493,97 руб. |
|
Microsoft Office Professional |
12 000 руб. |
90 |
180,78 руб. |
Остальные программные продуктами являются бесплатными и свободно распространяются.
В итоге получили сумму расходов на программное обеспечение: 4126,75 руб.
4.5 Расчет амортизации оборудования
Срок полезного использования оборудования установлен равным 3 годам. Для расчета амортизационных отчислений используется линейный метод, следовательно, норма амортизационных отчислений составит 33,3% в год. Сумма амортизационных отчислений вычисляется по формуле (9):
Ам.акт.= (Стакт. * Нам.отч./ 100) (9)
где: Ам. акт. - годовые амортизационные отчисления по оборудованию, руб;
Тфакт - количество часов использования ПО, маш\час.
Стакт. - стоимость оборудования, руб;
Нам. отч. - норма амортизационных отчислений, в процентах.
Нам. отч. =100/ 3 =33,3
Оборудование - ПК следующей конфигурации:
Intel Core2 Duo E4600 (2.4 GHz/800 MHz/2MB L2), Socket LGA775/ DDR2 SDRAM, DIMM 2 Gb, 240 pin, PC2-5300 (DDR2 667) Kingston/ASUS P5KPL-VM/Sapphire Radeon HD 3450, DDR2 256MB/HDD 160 GB SATA Seagate Barracuda 7200/19"Wide ViewSonic VA1926w
Стоимость оборудования равна 25500 рублям.
Исходя из этого подсчитаем Ам. акт. по формуле (9):
Ам. акт. = 2* (25500 * 33,3/ 100) = 16 983 рубля в год.
Соответственно норма амортизационных отчислений для данной работы составит:
Ам. отч= Ам. акт /Tгод* Тфакт
где Tгод - число рабочих часов в году;
Tфакт - количество часов использования оборудования, маш\час.
Ам. отч = 16 983/1993 * 950 = 8 095,25 рубля.
4.6 Прочие расходы
4.6.1 Расчет единого социального налога
“Единый социальный налог”, далее (ЕСН) учитывает следующие обязательные отчисления по установленным законодательным нормам:
фонд социального страхования (2,9%);
пенсионный фонд (20%);
фонд медицинского страхования (3,1%);
Размер отчислений определяется по формуле (10):
ЕСН= (ЗПосн+ЗПдп) * (Пф+Мс+Сс) /100, (10)
где: ЕСН - единый социальный налог;
ЗПосн - основная заработная плата сотрудника, руб.;
ЗПдп - дополнительная заработная плата сотрудника, руб.;
Пф - размер отчислений в пенсионный фонд;
Мс - размер отчислений на медицинское страхование, в процентах;
Сс - размер отчислений на социальное страхование.
Итого сумма отчислений на ЕСН составит:
ЕСН = (78 153,8 + 9 378,45) * (20 + 2,9+ 3,1) / 100 = 20 413,77 руб.
4.6.2 Выплаты на социальное страхование от несчастного случая
Выплаты на социальное страхование от несчастного случая (далее Нн. с)
Нн. с = (ЗПосн + ЗПдп) * Нн. с, (11)
Где: Нн. с - ставка по выплатам на социальное страхование от несчастного случая, которая берётся 1,2 %.
Итого сумма отчислений на Нн. с составит:
Нн. с= (78 153,8 + 9 378,45) *0,2/100=175,06 руб.
4.6.3 Затраты по использованию INTERNET
Затраты составляют 500 рублей.
4.6.4 Расходы на управление и хозяйственное обслуживание
В данную статью затрат входят: отчисления во внебюджетные фонды аппарата управления и хозяйственных служб; затраты на содержание, ремонт зданий, сооружений, оборудования и инвентаря; расходы по охране труда, научно-технической информации; транспортные расходы; командировочные; отчисления в дорожные фонды.
Величина нормативов расходов определяется в расчетно-финансовой группе. Накладные расходы вычисляются по формуле (12):
Нрасх = ЗПосн * Нн. р / 100, (12)
где: Нрасх - величина накладного расхода, руб.;
ЗПосн - основная заработная плата;
Нн. р - норматив накладных расходов, в процентах (80%).
В итоге получим:
Нрасх= 78 153,8 *80/100=62 523,04руб.
4.7 Заключение
На основании полученных данных составляется смета затрат на выполнение работ.
Таблица 4 - смета затрат на выполнение проекта
Наименование статей затрат |
Сумма, руб |
|
Основная заработная плата |
78 153,8 |
|
Дополнительная заработная плата |
9 378,45 |
|
Стоимость материалов и покупных изделий |
280 |
|
Отчисления на социальные нужды ЕСН |
20 413,77 |
|
Затраты на электроэнергию |
1 337,9 |
|
Использование прикладных программ |
4 126,75 |
|
Выплаты на социальное страхование от несчастного случая |
175,06 |
|
Затраты на использование INTERNET |
500 |
|
Расходы по управлению и хозяйственное обслуживание |
62 523,04 |
|
Амортизация оборудования |
8 095,25 |
Итого общая стоимость выполнения проекта составляет: 184 983,30 рубля.
5. Безопасность и экологичность проекта
5.1 Безопасность программного продукта
В соответствии с требованиями ГОСТ 12.0.001 /1/, ГОСТ 12.0.003 /2/ и ГОСТ 12.2.003 /3/ безопасность оборудования и производственных процессов на предприятиях обеспечивают:
1) выбором применяемых технологических процессов, а также приёмов, режимов работы и порядка обслуживания производственного оборудования;
2) выбором производственных помещений и площадок;
3) выбором исходных материалов и производственного оборудования;
4) размещением оборудования и организацией рабочих мест;
5) выбором способа хранения и транспортирования исходных материалов и готовой продукции;
6) выполнением эргономических и эстетических требований;
7) профессиональным отбором и обучением персонала;
8) включением требований безопасности в нормативно-техническую и технологическую документацию;
9) контролем за соблюдением требований безопасности, правил эксплуатации и трудового законодательства по охране труда работающих.
5.1.1 Идентификация опасностей на рабочих местах
Работа пользователя персонального компьютера в основном заключается в работе с графическими изображениями, от него требуется отслеживание и анализ информации на экране дисплея.
Монитор является источником широкого спектра физически и психофизически вредных и опасных факторов, уровни которых устанавливаются санитарно-гигиеническими нормами и правилами. Их вредное влияние приводит к снижению трудоспособности и в целом к ухудшению состояния здоровья оператора. Некоторые из этих факторов по своему воздействию имеют разовый характер (пожаробезопасность и т.д.), другие постоянно воздействуют на пользователей (электромагнитное излучение, электростатические поля и т.д.). Пользователь ПК подвержен влиянию большому числу вредных (ВПФ) и опасных производственных факторов (ОПФ):
? блики;
? видимое излучение;
? мерцание экрана;
? монотонность работы;
? низкочастотные электромагнитные поля;
? повышенная или пониженная температура воздуха рабочей зоны;
? повышенная яркость света;
? повышенное содержание положительных ионов в воздухе помещений;
? умственное перенапряжение;
? повышенный уровень шума;
? освещенность рабочей зоны;
? электростатическое поле;
? электрическое напряжение.
Кроме того, большую часть своего рабочего времени оператор находиться в положении сидя, что может вызвать усталость мышц спины и шеи при неправильной или неудобной выбранной позе.
Опасные и вредные производственные факторы характеризуются видом воздействия на человека, а так же периодом воздействия.
5.1.2 Анализ опасных и вредных производственных факторов
Синдром компьютерного стресса. Признаки его появления:
головные боли;
воспаление слизистой глаз;
повышенная раздражительность;
вялость;
депрессия.
И более 20 других недомоганий, включенных в 4 группы:
1. Общие недомогания (сонливость, утомляемость);
2. Заболевания глаз (быстрая утомляемость, чувство острой боли, зуд);
3. Нарушение визуального аппарата (пелена, неясность зрения, головные боли, косоглазие, очки становятся "слабыми");
4. Ухудшение сосредоточенности и работоспособности.
Электромагнитные поля около компьютера. Негативно действуют на центральную нервную систему. В результате: кожные заболевания, угри, прыщи, розовый лишай, сердечно-сосудистые заболевания, диарея, опухоли, поражение кровяных телец.
При работе с клавиатурой. Из-за эргономических недоработок клавиатуры развивается тендевит - воспаление сухожилий, кисти, запястий, плеча; травматический эпикондевит - воспаление сухожилий, соединительной мышцы предплечья и локтевого сустава; болезнь де Кервина - разновидность тендевита; тендосиновит - воспаление сухожилий основания кисти и запястий; туннельный синдром запястья.
5.1.3 Техническая безопасность оборудования
Для снижения травматизма и во избежание несчастных случаев все используемое оборудование должно иметь сертификат безопасности. При выборе технических средств следует учитывать требования стандартов ГОСТ 12.2.049 /19/, ГОСТ 12.2.064 /5/, ГОСТ 12.2.061 /6/, также к оборудованию должен прилагаться сертификат качества в соответствии с законом РФ "О сертификации продукции и услуг" /7/.
5.2 Методы и принципы обеспечения безопасности труда
Для обеспечения условий безопасности труда пользователя ПК следует использовать следующие методы:
? защита расстоянием;
? приведение параметров окружающей среды в нормативное состояние;
? использование средств индивидуальной защиты.
Основным источником ОПФ и ВПФ является дисплей монитора, так как характер работ над проектом связан с отслеживание и анализом информации на дисплее. При использовании первого метода обеспечения безопасности не полностью исключается вредное воздействие дисплея, поэтому следует уделить особое внимание приведению параметров окружающей среды в нормативное состояние. Средства защиты, которые на современном этапе своего развития достигли весьма высокого уровня, также способны значительно снизить уровень ОПФ и ВПФ.
5.2.1 Безопасность исходных материалов
Исходными материалами являются бумажные изделия (к ним относятся техническое задание на разработку системы, справочная литература), пластмассовые изделия (носители информации в виде компакт дисков). В соответствии с ГОСТ 12.1.007 /8/ данные материалы является относительно безопасными.
5.2.2 Обеспечение благоприятного светового климата
Нормирование светового климата производится в соответствии с ГОСТ Р 50923 /9/, СНиП 23-05 /10/ и зависит от характера производимых работ. Согласно этим нормам работа оператора относится к высокой и средней точности - 3 - 4 разряда. Оптимальная освещенность в этом случае, согласно /9/, должна быть 300 - 500 лк. Исходя из условий зрительной работы, в соответствии с /10/ оптимальным будет общее равномерное искусственное освещение и естественное освещение. Применение одного местного освещения недопустимо.
Для обеспечения благоприятного светового климата необходимо руководствоваться действующими санитарными нормами:
а) помещения с ПК должны иметь естественное и искусственное освещение;
б) рабочие места пользователей ПК по отношению к световым проемам должны располагаться так, чтобы естественный свет падал сбоку, преимущественно слева;
в) искусственное освещение в помещениях эксплуатации ПК должно осуществляться системой общего равномерного освещения. Допускается применение системы комбинированного освещения;
г) показатель ослепленности для источников общего искусственного освещения в производственных помещениях должен быть не более 20;
д) в качестве источников света при искусственном освещении должны применяться преимущественно люминесцентные лампы типа ЛБ мощностью 40, 65 и 80 Вт. Допускается применение ламп накаливания в светильниках местного освещения;
е) для освещения помещений с ПК следует применять светильники серии ЛП036 с зеркализованными решетками, укомплектованные высокочастотными пускорегулирующими аппаратами (ВЧПРА). Применение светильников без рассеивателей, и экранирующих решеток не допускается;
ж) для обеспечения нормируемых значений освещенности в помещениях использования ПК следует проводить чистку стекол оконных рам и светильников не реже двух раз в год и проводить своевременную замену перегоревших ламп;
з) для обеспечения надежного считывания информации при соответствующей степени комфортности ее восприятия должны быть определены, соответствии с ГОСТ Р 50948-01 /12/, диапазоны визуальных эргономических параметров:
? яркость знака от 35 до 120 кд/м2,внешняя освещенность экрана от 100 до 250 лк.
5.2.3 Обеспечение благоприятных микроклиматических условий
Работа оператора ПК характеризуем как 1-ю категорию работ легкую. Оптимальные и допустимые нормы микроклимата для работ категории "легкая 1а" и "легкая 1б" указаны в СанПиН 2.2.4.548 /32/.
Для обеспечения нормальных условий труда все параметры микроклимата нормируются в соответствии с ГОСТ 12.1.005 /13/, СанПин 2.2.4.548 /14/ и учетом /11/. Эти нормы устанавливают оптимальные и допустимые величины температуры, влажности и скорости движения воздуха для рабочей зоны с учетом избытков явного тепла, тяжести выполняемых работ и сезонов года.
Подобные документы
Разработка интерфейса программы, обеспечивающего доступ ко всем возможностям среды структурно-визуального программирования. Реализация инструментальных средств, позволяющих связывать компоненты в единое приложение. Создание иерархии классов представления.
дипломная работа [2,3 M], добавлен 11.04.2012Расчет трансформатора питания. Численное решение нелинейных уравнений с заданной точностью и дифференциальных уравнений первого порядка. Разработка программы с использованием средств визуального программирования на алгоритмическом языке программирования.
курсовая работа [1,2 M], добавлен 17.08.2013Разработка справочной системы по визуальным компонентам языка программирования Delphi. Возможность сохранения измененных свойств компонент в файле с возможностью их загрузки в будущем. Логика работы приложения и разработка программного обеспечения.
курсовая работа [602,4 K], добавлен 22.01.2015Специфика визуального подхода к программированию, языки и среды программирования, которые поддерживают его возможности. Классификация языков визуального программирования. Объектная модель (иерархия классов VBA), используемая в MS Word и в MS Excel.
контрольная работа [965,6 K], добавлен 27.04.2013Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент. Основные типы данных, используемые в программе MD 5 Calc. Однонаправленные хэш-функции. Процесс хэширования MD5, возможности его применения.
курсовая работа [433,1 K], добавлен 28.08.2012Методы, подходы, принципы, интерфейс Lazarus и Delphi. Технические различия, ход установки и коммерческий доступ к продуктам среды визуального программирования. Установление дополнительных компонент программы, их совместимость с операционными системами.
курсовая работа [4,1 M], добавлен 14.03.2012Разработка прикладной программы для операций создания и уничтожения объектов в системе визуального объектно-ориентированного программирования C++Builder. Алгоритм работы программы, набор функций и операторов, компонент и модулей, кнопки событий.
дипломная работа [672,5 K], добавлен 16.08.2012Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.
контрольная работа [703,8 K], добавлен 24.09.2012Методы грамматического разбора. Разработка структуры учебного транслятора на базовом языке программирования Object Pascal в среде объектно-ориентированного визуального программирования Borland DELPHI 6.0 с использованием операционной системы Windows XP.
курсовая работа [493,8 K], добавлен 12.05.2013Язык разработки, среда реализации, инструменты разработки. Особенности виртуальной среды реализации программ и их учет в разработке программного продукта. Системные макросы и их применение в текстах разработки. Средства визуального программирования.
учебное пособие [1,7 M], добавлен 26.10.2013