
- •Содержание
- •Аннотация
- •Введение
- •Постановка задачи
- •Разработка и согласование тз на информационную систему
- •Формирование команды проекта, распределение обязанностей в команде, выбор методологии разработки по
- •Распределение трудовых ресурсов
- •Описание используемой методологии разработки по
- •Технико-экономическое обоснование проекта
- •Выполнение технико-экономических требований
- •Этапы проведения работ по созданию системы
- •Расчет сметной стоимости создания системы
- •Оценка стоимости эксплуатации ис «ebis»
- •Затраты на сопровождение ис «ebis».
- •Затраты на эксплуатацию ис «ebis».
- •Экономическая целесообразность разработки системы
- •Сбор требований к разрабатываемой системе, выявление основных групп пользователей системы
- •Анализ рисков проекта, описание мер уменьшения их влияния на результат выполнения проекта
- •Описание угроз и возможностей, которые могут возникнуть в процессе работы над проектом
- •Оценки рисков, проведённая аналитиком проекта
- •Описание сценариев работы с рисками
- •План проекта
- •Описание архитектуры системы
- •База данных
- •Принятие основных решений по видам обеспечений системы
- •Принятие основных решений по безопасности и отказоустойчивости системы
- •Защита от межсайтового скриптинга (xss)
- •Защита от подделки межсайтового запроса (csrf)
- •Защита от внедрения sql (sql-injection)
- •Разработка структур данных и основных решений
- •Разработка основных компонентов системы
- •Описание приложения менеджера учетных записей (apps.Accounts)
- •Описание приложения для управления сервисом вопросов и ответов (apps.Forum)
- •Описание решений по организации тестирования системы
- •Разработка средств автоматизированного развертывания системы и основных решений по автоматизации рутинных задач
- •Описание выбора окончательного решения
- •Оптимизация проекта
- •Анализ и оптимизация плана проекта
- •Анализ и оптимизация плана работ
- •Анализ и оптимизация стоимости проекта
- •Анализ рисков
- •Проведение испытаний в соответствии с программой и методикой испытаний
- •Перечень проверок, проводимых на 1 этапе испытаний
- •Перечень проверок, проводимых на 2 этапе испытаний
- •Оценка соответствия окончательного варианта системы требованиям технического задания
- •Описание решений по сопровождению системы
- •Заключение
- •Список использованных источников
Описание решений по организации тестирования системы
Тестирование системы организованы с использование встроенных средств фреймворка Django. Есть два основных способа создания тестов для Django: unit-тесты, унаследованные от unittest.TestCase и doc-тесты — тесты, написанные в стиле интерактивного интерпретатора Python. В разработанной системе применяется способ создания doc-тестов.
Юнит тесты Django используют модуль unittest2. Этот модуль определяет тесты в виде классов. Test runner при запуске юнит тестов проверяет models.py и tests.py в поиске наследников класса unittest.TestCase в каталоге приложения.
Запуск тестов для приложения осуществляется командой python manage.py test. Есть возможность запустить единственный метод из теста, к примеру: python manage.py test my_tests.MyTestCase.test_something
Тесты, которым необходима база данных, не используют основную базу данных, для них база создается отдельно и при окончании тестов автоматически удаляется. По умолчанию тестовые базы данных создаются с помощью добавления префикса test_ к значению параметра NAME в DATABASES. Чтобы использовать свое название нужно просто определить его в TEST_NAME в DATABASES. Для контроля кодировки информации в базе следует использовать TEST_CHARSET.
Разработка средств автоматизированного развертывания системы и основных решений по автоматизации рутинных задач
Система поставляется в виде архива, в котором расположены файлы проекта. В архиве также расположен файл «readme», который содержит описание развертывания системы.
Содержимое файла «readme»:
Скачать и установить Python 3.4: https://www.python.org/downloads/release/python-340/.
Скачать ez_setup.py: https://bootstrap.pypa.io/ez_setup.py.
Запустить ez_setup.py командой ez_setup.py.
Скачать Django web-framework: https://github.com/django/django/zipball/master.
Распаковать Django, перейти в распакованный каталог и установить Django командой setup.py install.
Запустить отладночный сервер командой manage.py runserver.
После чего система готова к эксплуатации пользователями.
Для автоматизации рутинных задач в системе предусмотрена панель администратора. Панель администратора позволяет вручную редактировать содержиоме БД и управлять учетными записями пользователей.
Описание выбора окончательного решения
Оптимизация проекта
Анализ и оптимизация плана проекта
После определения стоимости всех ресурсов план проекта почти завершен. Необходимо проанализировать насколько он соответствует требованиям, а также проверить соответствие расписанию, так как в процессе назначения длительности задач могли измениться. Также необходимо проверить загрузку ресурсов. Надо проверить соответствие бюджета. Еще надо оценить риски выполнения проекта, как велика вероятность, не уложиться в расписание, бюджет и не выполнить все поставленные цели.
Если в процессе анализа обнаруживаются проблемы, необходимо избавляться от них, оптимизируя план проекта.
Чтобы определить неравномерность загрузки ресурсов, открываем «Лист ресурсов». Ресурсы, загрузка которых превышает их доступность, выделены красным цветом, и в поле «Индикаторы» стоит пометка о перегрузке.
Перегрузка ресурса означает, что для выполнения задачи ему потребуется больше времени, чем запланировано. Самой частой причиной перегрузки ресурса является назначение ресурса на задачи, выполняемые одновременно.
Выровнять перегрузку ресурса можно несколькими способами. Во-первых, уменьшив объем работы перегруженных ресурсов, сократив некоторые задачи и назначив других сотрудников на их выполнение. Во-вторых, избавившись от пересечения задач, вставив в расписание перерывы в задачах или назначениях, либо изменив даты их начала и окончания. В-третьих, засчитав работу, выполняемую ресурсом сверх нормы, как сверхурочную.
Для выравнивания загрузки ресурсов можно воспользоваться автоматизированными средствами и можно перераспределить загрузку вручную. Используют оба способа одновременно, так как автоматизированные средства выравнивания используют второй способ распределения загрузки.
Рисунок 4.1 - Выравнивание ресурсов
Автоматизированное выравнивание загрузки ресурсов производится с помощью диалогового окна «Выравнивание загрузки ресурсов».
Раздел «Вычисления для выравнивания» задает параметры, как будет выполняться выравнивание: непосредственно при создании назначений или вручную при нажатии кнопки «Выровнять» в этом диалоговом окне.
Выпадающий список «Поиск превышений доступности» определяет период в пределах, которого программа будет искать превышение доступности.
Раздел «Диапазон выравнивания для проекта...» позволяет задать временной период выравнивания или производить выравнивание во всем проекте.
Раздел «Устранение превышений доступности» определяет, как программа будет устранять найденные перегрузки ресурсов.
Флажок «Выравнивание только в пределах имеющегося резерва» определяет, что необходимо предотвратить задержку даты окончания проекта.
Флажок «При выравнивании допускается коррекция отдельных назначений для задачи» разрешает при выравнивании изменять время, когда трудозатраты ресурса являются независимыми от трудозатрат других ресурсов на эту задачу. Этот параметр установлен по умолчанию.
Флажок «При выравнивании допускается прерывание оставшихся трудозатрат» определяет, что при выравнивании выполняется прерывание задач путем прерывания оставшихся трудозатрат по задачам или назначениям. Если требуется разрешить или запретить прерывание отдельных задач, надо добавить поле «Допускается прерывание при выравнивании» в таблицу со списком задач и установить для каждой задачи значение «Да» или «Нет».
При нажатии на кнопку «Выровнять» MSProject уточнит, выравнивать все задачи или ресурсы или только выделенные.
Часть ресурсов все же пришлось выравнивать вручную. Ручное выравнивание осуществляется в два этапа: сначала надо найти те задачи, назначение на которые перегружает ресурсы. Затем надо определить методы выравнивания перегрузки. Методов довольно много: перенести задачу, прервать задачу, изменить длительность задачи, выделить на задачу другой ресурс, уменьшить объем работы, сохранить перегрузку, перенеся избыточные трудозатраты в сверхурочные и т.д. Произвели выравнивание ресурсов (рисунок 4.2).
Рисунок 4.2 - Выравнивание перегрузки ресурсов
Для отображения результатов выравнивания также можно просмотреть представление «Диаграмма Ганта с выравниванием». На этой диаграмме будет изображено состояние проекта до выравнивания и изменения, внесенные процедурой автоматического выравнивания.
Рисунок 4.3 - Диаграмма Ганта с выравниванием
Для поиска задач, участие в которых перегружает ресурсы, удобно воспользоваться представлением «Использование ресурсов». В представлении нужно применить фильтр «Превышение доступности ресурсов», чтобы отобрать только перегруженные ресурсы. Данные, обозначающие перегрузку, выделены красным. Для быстрого перехода к дате, когда ресурс перегружен, используется инструмент «Перейти к следующему превышению доступности», расположенной на панели инструментов «Управление ресурсами».