Загрузил Игорь Шарель

Otchyot Gritsuk Dmitriy 25-PO

реклама
1
СТРУКТУРА
ПРЕДПРИЯТИЯ.
ХАРАКТЕРИСТИКА
ОСНОВНЫХ ВИДОВ ДЕЯТЕЛЬНОСТИ
Технологическая практика проходила в ООО «РБИ-софт». Предметом
деятельности ООО «РБИ-софт» является разработка специализированного
программного обеспечения для энергосистем и промышленных предприятий, а
также, разработка программного обеспечения и сайтов на заказ.
Организация имеет возможность выполнять следующие виды работ:
1)
разработка специализированного программного обеспечения для
энергосистем и промышленных предприятий;
2)
разработка специфического программного обеспечения на заказ;
3)
разработка сайтов на заказ.
Создания программного обеспечения в ООО «РБИ-софт» включают в
себя процессы постановки задачи, разработки и сопровождения программного
обеспечения в течении всего жизненного цикла. Схема структуры организации
изображена на рисунке 1.
Рисунок 1 – Схема структуры организации ООО «РБИ-софт»
ООО «РБИ-софт.» состоит из следующих отделов:
3
1)
коммерческий отдел – занимается созданием определённой системы
мероприятий, направленной на регулирование процессов куплипродажи, удовлетворение спроса и получения прибыли;
2)
отдел разработки – занимается разработкой и сопровождением
программного обеспечения для энергосистем промышленных
предприятий и других структур.
Кроме основных программных пакетов, разрабатываемых ООО «РБИсофт»,
организация
выполняет
заказы
на
разработку
специфического
программного обеспечения, включая аналоги западных программных пакетов.
4
ОПИСАНИЕ СТРУКТУРЫ ОТДЕЛА, ГДЕ ПРОХОДИЛА
2
ПРАКТИКА
ООО «РБИ-софт» состоит из двух отделов: коммерческий и разработки
программного обеспечения.
Технологическая практика проходила в отделе разработки программного
обеспечения.
Отдел разработки осуществляет следующие задачи:
1)
анализ требований к проекту;
2)
проектирование;
3)
разработка прототипов;
4)
разработка программного обеспечения;
5)
тестирование продукта;
6)
внедрение и поддержка.
Диаграмма потоков данных отображена на рисунке 2.
Рисунок 2 – DFD модель
5
В отделе разработки осуществляют работу 2 компьютера, соединенные
между собой в одну сеть. Компьютеры отдела разработки имеют следующие
характеристики:
1)
процессор: Intel Core i5;
2)
объём оперативной памяти: 6 Gb;
3)
видеокарта выносная на 1 Gb;
4)
жесткий диск на 1 Tb;
5)
монитор Asus 19";
6)
дисковый привод CD-RW.
Схема подключения компьютеров по локальной сети, отображена на
рисунке 3.
Рисунок 3 – Схема подключения компьютеров по локальной сети
На данных компьютерах установлена операционная система Windows 10.
Также, на данных ЭВМ установлено следующее программное обеспечение:
1)
«Microsoft Office 2016». Программное обеспечение для работы с
различными
типами
документов:
текстами,
электронными
таблицами, базами данных;
2)
«Visual Studio Code». Кроссплатформенный редактор исходного
кода, поддерживающий базовые возможности интегрированной
среды разработки, созданный в Microsoft;
6
3)
«FileZilla».
Один
предназначенный
из
лучших,
бесплатный
для
загрузки
и
FTP-менеджер,
скачивания
файлов
с
разнообразных FTP-серверов;
4)
«Visual
studio».
Линейка
продуктов
компании
Microsoft,
включающих интегрированную среду разработки программного
обеспечения и ряд других инструментальных средств;
5)
«Google Chrome», «Mozila Firefox». Прикладное программное
обеспечение
для
просмотра
веб-страниц,
содержания
веб-
документов, компьютерных файлов и их каталогов;
6)
«Photoshop CS6». Многофункциональный графический редактор;
7)
«PHPMyAdmin». Веб-приложение с открытым кодом, написанное на
языке
PHP
и
представляющее
собой
веб-интерфейс
для
администрирования СУБД MySQL.
В результате, структура отдела «разработка программного обеспечения»
в ООО «РБИ-софт» была полностью изучена.
7
ДОЛЖНОСТНЫЕ
3
ОБЯЗАННОСТИ
СТАРШЕГО
И
МЛАДШЕГО ПРОГРАММИСТА
В ООО «РБИ-софт», в техническом отделе, имеются две должности:
старший и младший программист.
Старший программист – человек ответственный за качество и
своевременность работ по разработке информационно-программных систем,
основанных на применении новейших программных технологий. Обладает
глубокими, структурированными знаниями. В его обязанности входит:
1)
детальное проектирование и создание спецификаций проектов;
2)
полностью
контролирует
и
самостоятельно
выполняет
проектирование мелких проектов и внутренних под-проектов
(модулей),
программирование и базовое тестирование компонентов.
3)
Младший программист – выполняет задачи по написанию и базовому
тестированию порученных ему компонентов системы, работает разработчик по
внешним спецификациям. Занимается как архитектурой проектов, так и
модульной
реализацией,
производит
реализацию
работоспособности
прототипов, постоянно занимается самообразованием, понимает алгоритмы,
Software Engineering Process, обладает знаниями в следующих областях: языки
разметки, понимание технологии web-серверов и серверов приложений, знанием
клиентских и серверных технологий, работы браузера, СУБД, операционных
систем,
офисных
пакетов,
сред
разработки,
профильных
языков
программирования, технического английского.
8
4
ПЕРЕЧЕНЬ СТАДИЙ, ЭТАПОВ И СРОКОВ РАЗРАБОТКИ
ПРОГРАММЫ И САЙТА
Основные этапы разработки программного обеспечения:
1)
разработка алгоритма;
2)
кодирование;
3)
отладка;
4)
тестирование;
5)
создание справочной системы.
На первом этапе, происходит подробное описание исходных данных,
осуществляется
формулировка
требований
к
получаемому
результату,
рассматриваются всевозможные поведения программы при возникновении
особых случаев, происходит разработка диалоговых окон, которые обеспечат
взаимодействие пользователя и самой программы.
На
втором
этапе
программист
определяет
последовательность
необходимых действий, которые впоследствии нужно выполнить для получения
желаемого результата.
На третьим этапе, после проведения спецификации и составления
алгоритма решения, используемый алгоритм в итоге будет записан на
необходимом языке программирования (Pascal, Delphi, C++ или Java).
Результатом этапа кодирования является готовая программа.
На этапе «Отладка», программист занимается отладкой программы, то
есть поиском и устранением ошибок. Последние делятся на две группы:
алгоритмические и синтаксические (ошибки в тексте исходной программы). Из
этих двух групп ошибок наиболее легко устранить синтаксические ошибки,
тогда как алгоритмические ошибки определить достаточно трудно.
На последнем этапе, выполняется тестирование программы. Очень
важный этап, поскольку в большинстве случаев программисты создают
программы не для личного применения, а чтоб их программой пользовались
другие. На этапе тестирования разработчик проверяет поведение программы при
9
большом числе наборов входных данных, как верных, так и специа Если
программист разрабатывает программу, чтоб ею впоследствии пользовались
другие, то программисту необходимо разработать справочную систему и
установить для пользователя легкий быстрый доступ к этой справочной системе
при работе с программой. Современные программы обладают справочной
информацией, имеющей форму CHM- или HLP-файлов неверных.
Основные этапы создания веб-сайта:
1)
определение целей веб-сайта и его позиционирование;
2)
создание Технического Задания (ТЗ) на разработку веб-сайта;
3)
создание дизайн-макета веб-сайта;
4)
верстка сайта;
5)
программирование сайта;
6)
наполнение сайта информацией;
7)
тестирование сайта.
На первом этапе необходимо определить, для чего нужен сайт, т.е. какие
задачи он должен решать: предоставить общее представление о компании или
многосторонне осветить какую-либо сторону человеческой деятельности,
увеличить продажи по традиционным каналам или организовать веб-торговлю,
провести рекламную или маркетинговую кампанию.
Следующим
этапом,
разрабатывается
техническое
задание.
В
техническом задании необходимо как можно более подробно описать:
1)
цели создания сайта и его целевую аудиторию;
2)
структуру веб-сайта и количество страниц в каждом разделе;
3)
работу динамических модулей;
4)
пожелания по дизайну (цвета, использоание фирменного стиля,
соотношение графика/текст);
5)
используемые технологии;
6)
порядок предоставления, обработки или создания графической и
текстовой информации;
7)
технические требования к сайту.
10
ТЗ является основным документом, на основе которого осуществляются
все последующие этапы разработки веб-сайта.
Третьим этапом, дизайнер в специальной графической программе создает
дизайн страниц будущего веб-сайта с прорисовкой всех графических (банеров,
кнопок, фотографий) и текстовых элементов. Дизайнер создает дизайн вебстраниц с учетом пожеланий заказчика и задания, прописанного в техническом
задании.
После того, как заказчик утвердил дизайн-макет (в письменном виде или
по электронной почте) за работу принимается верстальщик – это тот человек,
который
переводит
дизайн-макет
на
язык,
понятный
компьютеру
с
использованием языка HTML.
Пятым этапом, происходит программирование веб-сайта. Очень часто
этап программирования и верстки объединяют в один. На мелких и средних
проектах оба действия в состоянии выполнить один человек. На крупных
проектах в силу специфики работ эти этапы разделяют. На этапе
программирования происходит создание всех страниц сайта, определяется
порядок работы меню, расставляются гипер-ссылки, создается динамика на
сайте, программируются такие составляющие, как гостевая книга, форум,
новостная лента.
Наполнение
сайта
информацией.
На
этом
этапе
информация,
предоставленная заказчиком, размещается на сайте, т.е. путем перевода в
специальный формат текст и графика располагаются на сайте на определенных
страницах, и эта информация становится доступной для просмотра.
На последнем этапе, происходит тестирование сайта. Его можно
осуществить как до, так и после размещения сайта по его «родному» адресу. На
этом этапе выявляются все ошибки и недочеты в программировании и написании
текстов. Срок тестирования зависит от сложности проекта, но, как правило, не
превышает 1 месяца.
11
5
ТЕХНИЧЕСКОЕ
ЗАДАНИЕ
НА
РАЗРАБОТКУ
ПРОГРАММНОГО ДОКУМЕНТА
5.1
Введение
Анализ проблем управления большими и сложными системами
осуществляется, как правило, с позиции системного подхода. Системный подход
позволяет упорядочить исходную информацию о сложной системе: понизить
уровень сложности, осуществить решение задач проектирования и управления
сложными по отношению к интеллектуальным возможностям человека
объектам.
Техническое
задание
составлено
для
разработки
«Веб-сервис
автоматизированное рабочее место менеджера сервисного центра по ремонту и
обслуживанию компьютеров». Анализ проблем управления большими и
сложными системами осуществляется, как правило, с позиции системного
подхода. Системный подход позволяет упорядочить исходную информацию о
сложной системе: понизить уровень сложности, осуществить решение задач
проектирования и управления сложными по отношению к интеллектуальным
возможностям человека объектам.
Требования к разработке:
1)
пользовательский интерфейс должен быть прост, удобен и доступен
даже неподготовленному пользователю;
2)
необходимо обеспечивать безопасность специалиста и выполнение
всех эргономических требований (комфортность, цветовую и
звуковую
гамму,
соответствующие
удобство
расположения
наилучшему восприятию,
информации
и
доступность
всех
необходимых для работы средств, единый стиль выполнения
операций и т.д.);
12
3)
пользователь АРМ должен выполнять все действия, не выходя из
системы, поэтому требуется оснащенность всеми необходимыми
операциями;
4)
обеспечение бесперебойности работы АРМ должно гарантировать
пользователю своевременное выполнение задач, в соответствии с
графиком работы. Сбои в производстве недопустимы;
5)
рациональная организация труда специалиста создает комфортные
условия для работы и повышает производительность труда
специалиста.
5.2
Основание для разработки
Основанием для разработки веб-сервиса «Автоматизированное рабочее
место менеджера сервисного центра по ремонту и обслуживанию компьютеров»,
является индивидуальное задание по технологической практике.
5.3
Назначение разработки
Автоматизированное рабочее место – совокупность информационнопрограммно-технических ресурсов, обеспечивающих конечному пользователю
обработку данных и автоматизацию управленческих функций в конкретной
предметной области. При этом предполагается, что операции по накоплению,
хранению и переработке информации возлагаются на вычислительную технику,
а специалист выполняет часть ручных операций и операций, требующих
творческого подхода.
Создание автоматизированных рабочих мест позволяет эффективно
обрабатывать большие потоки информации, которые имеют определенную
структуру, зависящую от особенностей места применения. Это позволяет
осуществлять индивидуальный подход к автоматизации именно тех функций,
которые выполняются данным подразделением.
13
Автоматизированное рабочее место менеджера сервисного центра по
ремонту и обслуживанию компьютеров позволит значительно сократить время
выполнение работы и повысить их точность, облегчить труд менеджера.
14
6
ТЕХНИКО-РАБОЧИЙ ПРОЕКТ
6.1
Постановка задачи
Создание любой программы начинается с постановки задачи. Изначально
задача формулируется в терминах предметной области, и необходимо перевести
ее на язык понятий, более близких к программированию. Поскольку
программист редко досконально разбирается в предметной области, а заказчик –
в программировании, постановка задачи может стать весьма непростым
итерационным процессом.
Для разработки сервиса «Автоматизированное рабочее место менеджера
сервисного центра по ремонту и обслуживанию компьютеров», использовать
следующие исходные данные:
1)
список производителей;
2)
список типов устройств;
3)
список комплектности принятого на ремонт устройства;
4)
список менеджеров компании;
5)
список клиентов компании;
Отображение актуальной информации в главном окне программы.
Актуальной информацией является список заявок, которые необходимо
выполнить и список неисправного оборудования, которое нуждается в ремонте.
6.2
Выбор среды разработки программного продукта
На этом этапе также определяется среда, в которой будет выполняться
программа: требования к аппаратуре, используемая операционная система и
другое программное обеспечение.
Придерживаясь индивидуального задания «Автоматизированное рабочее
место менеджера сервисного центра по ремонту и обслуживанию компьютеров»
будет web-сайтом. Для реализации задуманного интерфейса, потребуется
15
использовать
язык
разметки
«HTML(с
подключённым
фреймворком
«Bootstrap»)» и язык стилей «CSS». Для хранения данных будет использоваться
реляционная система управления базами данных «PhpMyAdmin». Затем, для
реализации задуманных функций будет использоваться язык программирования
«PHP» и скриптовый язык программирования «JavaScript». Подключим к «PHP»
фреймворк «Yii2», а также, для JavaScript библиотека «JQuery».
Сервис будет адаптирован под все браузеры и операционные системы. А
также, будет доступен в мобильной версии.
6.3
Определение структуры данных
База данных – представленная в объективной форме совокупность
самостоятельных материалов (статей, расчётов, нормативных актов, судебных
решений и иных подобных материалов), систематизированных таким образом,
чтобы эти материалы могли быть найдены и обработаны с помощью электронной
вычислительной машины.
СУБД (Система управления базами данных) – это совокупность языковых
и программных средств, предназначенных для создания, ведения и совместного
использования БД многими пользователями. Система управления базами данных
(СУБД) является посредником между базой данных и ее пользователями.
SQL – декларативный язык программирования, применяемый для
создания, модификации и управления данными в реляционной базе данных,
управляемой соответствующей системой управления базами данных. MySQL –
свободная реляционная система управления базами данных.
PhpMyAdmin — веб-приложение с открытым кодом, написанное на языке
PHP и представляющее собой веб-интерфейс для администрирования СУБД
MySQL.
Для правильной разработки базы данных вначале требуется изучить
предметную область. База данных должна быть сформирована таким образом,
16
чтобы хранить в себе максимально большое количество нужной информации при
этом не быть заполненной ненужными данными.
Автоматизированное рабочее место менеджера сервисного центра по
ремонту и обслуживанию компьютеров, имеет 11 сущностей:
1)
brands;
2)
cass;
3)
cass_operations;
4)
client;
5)
comment;
6)
manager;
7)
model;
8)
order;
9)
order_status;
10) type_device;
11) user.
Сущность – это реальный или представляемый тип объекта, информация
о котором должна сохраняться и быть доступна.
Первая сущность, хранит в себе наименования брендов. Структура и
атрибуты данной таблицы, отображены на рисунке 4.
Рисунок 4 – Структура и атрибуты сущности «brands»
Вторая сущность, хранит в себе количество денег в кассе, у
определённого
пользователя.
Структура
и
атрибуты
данной
таблицы,
отображены на рисунке 5.
17
Рисунок 5 – Структура и атрибуты сущности «cass»
Следующая сущность – «cass_operations». Данная таблица, хранит в себе
операции движения по кассе. Структура и атрибуты данной таблицы,
отображены на рисунке 6.
Рисунок 6 – Структура и атрибуты сущности «cass_operations»
Четвёртая таблица – «client». В данной сущности хранится информация о
клиенте компании. Структура и атрибуты данной таблицы, отображены на
рисунке 7.
Рисунок 7 – Структура и атрибуты сущности «cass_operations»
Далее, сущность «comment», хранит в себе комментарии к принятой на
ремонт технике. Структура и атрибуты данной таблицы, отображены на рисунке
8.
Рисунок 8 – Структура и атрибуты сущности «comment»
18
Шестая сущность – «manager». Хранит в себе имя менеджера, принявшего
технику на ремонт. Структура и атрибуты данной таблицы, отображены на
рисунке 9.
Рисунок 9 – Структура и атрибуты сущности «manager»
Сущность «order_status», хранит в себе список статусов заказа. Структура
и атрибуты данной таблицы, отображены на рисунке 10.
Рисунок 10 – Структура и атрибуты сущности «order_status»
Таблица «type_device», хранит в себе список типов устройств. Структура
и атрибуты данной таблицы, отображены на рисунке 11.
Рисунок 11 – Структура и атрибуты сущности «type_device»
Предпоследняя сущность – «user». Хранит в себе данные о пользователях,
их имя, пароль и т.д. Структура и атрибуты данной таблицы, отображены на
рисунке 12.
19
Рисунок 12 – Структура и атрибуты сущности «user»
Последняя сущность базы данных – «order». Является ключевой
таблицей, которая связывает в себе большинство сущностей базы данных.
Структура и атрибуты данной таблицы, отображены на рисунке 13.
Рисунок 13 – Структура и атрибуты сущности «order»
20
Реляционная модель ориентирована на организацию данных в виде
двумерных таблиц. Каждая реляционная таблица представляет собой двумерный
массив и обладает следующими свойствами:
1)
каждый элемент таблицы – один элемент данных;
2)
все столбцы в таблице однородные, т.е. все элементы в столбце
имеют одинаковый тип (числовой, символьный и т.д.) и длину;
3)
каждый столбец имеет уникальное имя (заголовки столбцов
являются названиями полей в записях);
4)
одинаковые строки в таблице отсутствуют;
5)
порядок следования строк и столбцов может быть произвольным.
Таким образом, с использованием реляционного языка запросов «SQL» и
системы управления базами данных «PhpMyAdmin», сущности были полностью
спроектированы и смоделированы.
21
7
ТЕСТИРОВАНИЕ
Тестирование программного обеспечения - процесс исследования
программного обеспечения с целью получения информации о качестве продукта.
Для проверки и оценки программы, выбрали следующий тестовый
вариант:
стохастическое
тестирование.
Стохастическое
тестирование
–
тестирование программ, при котором исходные тестовые данные берутся
случайным образом (с использованием статистического распределения).
Существующие на сегодняшний день методы тестирования ПО не
позволяют однозначно и полностью выявить все дефекты и установить
корректность функционирования анализируемой программы, поэтому все
существующие методы тестирования действуют в рамках формального процесса
проверки исследуемого или разрабатываемого ПО.
Такой процесс формальной проверки или верификации может доказать,
что дефекты отсутствуют с точки зрения используемого метода.
Сортировка базы данных – это упорядочение записей по значениям
одного из полей.
Сортировка записей производится по какому-либо полю базы данных.
Значения, содержащиеся в этом поле, располагаются в порядке возрастания или
убывания. В процессе сортировки целостность записей сохраняется, т. е. строки
таблицы перемещаются целиком.
Автоматизированное рабочее место менеджера сервисного центра по
ремонту и обслуживанию компьютеров, было протестировано с использованием
метода «Стохастическое тестирование» и не выявило активных ошибок.
Выборка данных из базы данных происходит на высокой скорости. При
добавлении записей, стоят многочисленные проверки наполненности полей, а
также, маски ввода данных.
В результате тестирования, ошибок выявить не удалось. Программа
готова к использованию.
22
ВЫВОД
8
В ходе выполнения задания технологической практики, была разработан
сервис, с использованием двух языков программирования «PHP» и «JavaScript»,
языка разметки – «HTML», язык стилей – «CSS», а также, с помощью языка
структурированных запросов «SQL». Изучены возможности данного языка.
Было изучено взаимодействие скриптов, написанных на «PHP» с базами данных
под управлением «PhpMyAdmin».
Изучены и исследованы автоматизированные информационные системы.
Основное
внимание
информации,
уделено
способов
изучению
современных
проектирования
методов
приложений,
защиты
объектно-
ориентированному и системному программированию.
Разработанное обеспечение быстро и безошибочно справляется с
поставленной задачей хранения и обработки информации. В удобном
интерфейсе воплощены все необходимые для данной работы возможности.
В процессе тестирование были обнаружены и исправлены некоторые
ошибки, возникающие при работе. Основная их масса возникали из-за проблем,
связанных с взаимодействием программы оболочки и самой базы данных.
Программный продукт был опробован на предприятии и в данный момент
используется, что показывает его актуальность и целесообразность.
23
ЛИТЕРАТУРА
1
Албахари, Б. JavaScript 6.0. Справочник. Полное описание языка. 6-е
изд./ Албахари Д., Албахари Б. – Издательство «Вильямс», 2016.
2
Грин, Д. Изучаем PHP. 2-е изд./ Стиллмен Э., Грин Д.– Питер, 2012.
3
Зиборов, В.В. HTML 2012 на примерах – БХВ-Петербург, 2013.
4
Карли, Н. CSS 4.0 и платформа .NET 4 для профессионалов/ Скиннер,
К. Карли Н. – Издательство «Вильямс», 2011.
5
Шилдт, Г. PHP 4.0. Полное руководство – Издательство «Вильямс»,
6
Виссер, Дж. Building Maintainable Software (PHP) – Издательство
2015.
ДМК Пресс, 2017.
7
Трей, Н. JavaScript 2010. Ускоренный курс для профессионалов –
Издательство «Вильямс», 2016.
24
Скачать