- •Аннотация
- •Введение
- •2.1.2.Используемое на предприятии по
- •2.1.3.Полный цикл строительных работ по объекту
- •2.1.4.Аналоги проектируемого программного продукта
- •2.1.5.Итог анализа предпроектной ситуации
- •2.2.Выбор и обоснование средств разработки
- •2.2.1.Выбор языка программирования для сервера
- •2.2.2.Выбор субд sql
- •2.2.3.Выбор Web-сервера
- •2.2.4.Выбор хостинга
- •2.2.5.Выбор интегрированной среды разработки
- •2.2.6.Выбор вспомогательных программных средств
- •2.2.7.Обход недостатков php как динамически типизированного языка
- •2.2.8.Работа с базой данных.
- •3.1.2.2.Таблица nodes
- •3.1.2.3.Таблица nodes_versions
- •3.1.2.4.Таблица chat_messages
- •3.1.2.5.Таблица news
- •3.1.2.6.Таблица made_projects
- •3.1.2.7.Таблица uploaded files
- •3.1.2.8.Таблица uploaded_files_versions
- •3.1.2.9.Таблица attached_files
- •3.1.2.10.Таблица made_projects
- •3.1.2.11.Таблица projects
- •3.1.2.12.Таблица service_groups
- •3.1.2.13.Таблица services
- •3.1.2.14.Таблица calculations
- •3.1.2.15.Таблица calculation_items
- •3.1.2.16.Таблица calculation_items
- •3.1.2.17.Таблица menu_groups
- •3.1.2.18.Таблица menu_items
- •3.1.2.19.Таблица pages
- •3.1.2.20.Таблица special_pages_settings
- •3.2.Разработка модулей сайта
- •3.2.1.Главный модуль
- •3.2.2.Модуль показа новостей
- •5.Тестирование и отладка web-сайта
- •5.1.Модульное тестирование
- •5.2.Проверка работы сайта в разных браузерах. Тестирование web-сайта в целом
- •5.3.Проверка на устойчивость к проникновению
- •6.Безопасность при работе за компьютером
- •6.1.Особенности работы с компьютерами
- •6.2.Основные вредные и опасные факторы при работе с компьютером
- •6.2.1.Повышенное зрительное напряжение
- •6.2.2.Нервное напряжение
- •6.2.3.Костно-мышечные напряжения
- •6.2.4.Электромагнитные поля и последствия их воздействия
- •6.2.5.Шум, выделение вредных веществ, тепловыделение, опасность поражения электрическим током, риск возгорания
- •6.3.Меры безопасности при работе с пэвм
- •6.3.1.Факторы охраны труда на рабочем месте
- •6.3.2.Требования к параметрам излучений дисплеев
- •6.3.3.Требования к цветовым параметрам дисплеев
- •6.3.4.Электромагнитное излучение на рабочем месте
- •6.3.5.Жидкокристаллические мониторы
- •6.3.6.Оптимизация визуальных характеристик дисплеев
- •6.3.7.Освещение и организация рабочего места
- •6.3.8.Режим труда и отдыха
- •6.3.9.Электробезопасность при работе с пэвм
- •6.3.10.Пожарная безопасность
- •6.3.11.Микроклимат на рабочем месте
- •7.Экономическая часть
- •7.1.Определение затрат на разработку и создание программных средств.
- •7.1.1.Затраты на оплату труда
- •7.1.2.Затраты на материалы
- •7.1.3.Затраты на аренду
- •7.1.4.Затраты на электроэнергию
- •7.1.5.Затраты на внедрение
- •7.2.Затраты на эксплуатацию системы
- •7.3.Годовой экономический эффект от применения.
- •7.4.Срок окупаемости затрат.
- •7.5.Итоговые экономические показатели проекта.
- •Заключение
- •Список литературы и прочих источников информации
- •П. 3.2 модуль подключаемых заголовков header.Inc.Php
- •П. 3.3 модуль fглобальных переменных gvars.Inc.Php
5.Тестирование и отладка web-сайта
Тестирование приложения является одной из завершающих стадий в процессе создания надежного программного обеспечения. Надежность, т.е. вероятность безотказной (правильной) работы программы в течении длительного времени подразумевается заказчиками как само собой разумеющееся. Однако обеспечение этого требования зачастую требует больше времени и сил, чем написание самой программы.
Причиной ненадежности программы является наличие в ней ошибок. Можно выделить 3 класса ошибок:
• Невыполнение требований, предъявляемых разработчиками к программе.
• Прием программой неверных данных от пользователя и дальнейшая неверная их интерпретация.
• Внутренние ошибки программы, приводящие к сбоям в работе программы, потере данных и неправильной их обработке.
Так как ошибки могут вноситься в приложение на любой стадии разработки, то мероприятия по обеспечению правильности работы приложения должны включать в себя весь процесс создания программы, начиная от постановки задачи и заканчивая сдачей программы.
При этом можно выделить две стадии создания надежного приложения:
• Проектирование и разработка программы с учетом требований надежности.
• Тестирование и проверка живучести программы.
Проектирование с учетом требований надежности означает, что в дополнение к уже имеющимся требованиям к программе, добавляются требования, призванные обеспечить ее надежность. Это могут быть такие требования, как:
• Предупреждение ошибок (за счет минимизирования сложности, немедленного обнаружения и исправления ошибок);
• Обнаружения ошибок (например, за счет включения средств обнаружения ошибок в само ПО);
• Исправление ошибок или информирование о них пользователя;
• Устойчивость к ошибкам (минимизация вреда от ошибок);
Под тестированием программы понимается процесс обнаружения и исключения из программы ошибок. В общем случае, тестирование служит для обнаружения как можно большего числа ошибок в программе перед передачей ее заказчику.
Для тестирования программы применяют следующие методы:
• Статический анализ текста программы.
• Нисходящее и восходящее тестирование на совокупности эталонных данных.
• Проверка живучести программы.
При статическом анализе текста программы проверяются исходные тексты модулей программы, а не работа исполняемого модуля программы в реальном времени. Проверяется:
• Соответствие исходных текстов функций внешним спецификациям: выполняемое действие, входные и выходные данные, используемые глобальные переменные и БД.
• Наличие у каждого открывающего элемента составной конструкции соответствующего ему закрывающего элемента.
• Правильное использование БД в приложении.
• Время жизни и использование переменных: переменные должны, по возможности, использоваться локально внутри отдельных функций, кроме специальных случаев (глобальные данные, используемые по всей программе), все переменные должны быть явно описаны.
• Правильность вызова в программе своих и библиотечных функций.
• Правильность кодирования сложных выражений и условий.
При нисходящем тестировании проверяется работоспособность отдельных модулей программы, начиная с модулей верхнего уровня. Сначала тестируется головной модуль и модули, чьи функции используются по всей программе. Затем к тестированию подключаются модули более низкого уровня, и проверка осуществляется вместе с ними. Вместо функций, не участвующих в тестировании, но вызываемых по ходу действия программы, подключаются «заглушки» – небольшие кусочки кода, выводящие на экран сообщение о своем выполнении и возвращающие управление в вызываемую программу. При тестировании независимых ветвей программы, находящихся на одном уровне, взамен уже оттестированных модулей опять вставляются заглушки, а затем проводится полное тестирование. Данный метод тестирования позволяет легко локализовать ошибку при ее обнаружении и всесторонне проверяет правильность взаимодействия отдельных модулей друг с другом.
При восходящем тестировании, так же как и при нисходящем, проверке подвергается программа, составленная из части модулей, но, в данном случае подключение компонент происходит снизу вверх. Сначала тестированию подвергаются функции самого нижнего уровня, затем подключаются вызывающие их функции и т.д. В данном случае не требуются функции-заглушки, зато для каждого этапа тестирования необходимо создавать специальную функцию, осуществляющую вызов тестируемых функций и моделирующую для них соответствующую обстановку. Данный способ тестирования позволяет всесторонне проанализировать логику работы каждой функции, однако значительно более трудоемок.
Сам процесс тестирования может быть внешним, при котором заключение о правильности работы модуля делается по результатам эталонных тестов, или всесторонним, при котором в пошаговом режиме исследуется логика работы модуля при выполнении эталонных тестов (значения временных переменных, открытие БД, значение условных выражений и т.д.). Всестороннее тестирование требует наличия фирменных или собственных отладочных средств. При подготовке исходных данных для эталонных тестов необходимо включить кроме нормальных, правильных значений также граничные и ошибочные.
Наконец, после выполнения тестирования программы по частям и в целом, проводят тесты на живучесть программы:
• Проверяют работоспособность программы при различном порядке компиляции модулей.
• Проверяют работоспособность программы в разных условиях: на различных компьютерах, при наличии малого объема памяти и т.д.
Для тестирования web-системы применялись следующие методы: статический анализ текста модулей, восходящее тестирование и проверка живучести.
К стадии тестирования можно также отнести процедуру испытания работы системы с помощью различных Web-браузеров. По результатам этих испытаний можно констатировать, что работать с тестирующей системой можно с помощью любого из данных браузеров.