Участник:Васин Юрий/ТЗ
Пример технического задания на разработку программы "Moodle phone book"
Техническое задание — исходный документ для проектирования сооружения или промышленного комплекса, конструирования технического устройства (прибора, машины, системы управления и т. д.), разработки информационных систем, стандартов либо проведения научно-исследовательских работ (НИР).
Вступление
править- Разработать программу (модуль, плагин, программный продукт);
- Программа не должна быть абстрактной, т. е. должна иметь практический смысл;
- Требования:
- Общие требования
- программа должна относиться к какому-либо проекту с открытым кодом (open source);
- программа должна быть написана с помощью программного обеспечения, распространяемого на условиях лицензии GNU GPL.
- Требования к применению в системе языков программирования высокого уровня:
- Требования к численности и квалификации персонала и режиму его работы:
- Работа выполняется самостоятельно.
- Общие требования
- Предпочтительная область применения — система управления обучением moodle;
- Программа должна легко инсталлироваться и деинсталлироваться;
- Необходимо обеспечить возможность быстрой проверки работоспособности программы;
- Документация создается по окончании работ из комментариев (phpdocumentor);
- Предоставить полный список источников, использованных во время выполнения задания.
Детализация ТЗ для модуля телефонный справочник
править- Назначение программы - программа предназначена для решения перечисленных ниже задач:
- Программа служит для упрощения и ускорения административных решения задач, путем предоставления информации о пользователях системы и участниках обучающего процесса;
- Программа позволяет вести быстрый поиск с с большим количеством параметров.
- Функциональные требования. Программа должна обеспечивать возможность выполнения перечисленных ниже функций:
- в рамках первой задачи - должна предоставлять пользователю структурированную информацию о пользователях системы;
- в рамках второй задачи - должна позволять вести расширенный поиск с большим количеством критериев:
- поиск по имени пользователя;
- поиск по номеру телефона;
- расшифровка кодов мобильной связи;
- коррекция неверных запросов - Soundex.
- Цели создания системы - целями создания системы являются:
- увеличение удобства системы Moodle, путем предоставления дополнительной справочной информации;
- ускорение процесса поиска контактной информации участников учебного процесса;
- уменьшение издержек на выпуск печатных справочников;
- улучшение показателей системы Moodle, как АСУ;
- XHTML — Весь вывод Moodle должен быть подчинен XHTML Strict 1.0, а также общим правилам стандартов Accessibility Guidelines(руководства по доступности веб-содержания) (такого как W3C WAG).
- Формы — Все формы должны использовать библиотеку Moodleforms, если это возможно. Это из-за единого стандартизированного вывода, который дизайнеры могут модернизировать единым образом.
- Параметры — Все параметры должны быть проверены с помощью require_param() и optional_param(), которые безопасно очистят все входящие данные для использования и обеспечения установки значений по умолчанию в вашем коде.
- Вывод — Весь текстовый вывод должен быть осуществлен с использованием функции format_text или format_string. Тогда текст будет действительно чистым и отфильтрованным должным образом.
- Доступ — Все проверки прав доступа должны использовать библиотеку "Access library" чтобы проверить соответствие текущим возможностям. Наиболее общая функция, которую Вы будите использовать – это has_capability(), она проверяет права текущего пользователя, чтобы определить, можно ли ему осуществлять данную операцию. Не исправляйте специфические роли в вашем коде (напр. учитель/студент) так как это сделает ваш код непригодным.
- JavaScript — вся функциональность должна сохранятся при отключении JavaScript.
Основные сведения
правитьНаименование программы
правитьНаименование программы: "Модуль поиска для системы Moodle".
Назначение и область применения
правитьПрограмма предназначена для быстрого поиска информации о пользователях в системе управления обучением Moodle. Программа должна позволять:
- Вести поиск пользователей по имени и фамилии;
- Отображать номера телефонов найденых пользователей.
Программа предоставляет блок для главной, написаный с помощью стандартных средств Moodle API.
Требования к программе
правитьТребования к функциональным характеристикам
правитьПрограмма должна обеспечивать возможность выполнения перечисленных ниже функций:
- Предоставлять возможность настроийки модуля;
- Коректно обрабатывать ситуации ошибочного ввода не на том языке (укр. рус. англ.).
Требования к надежности
правитьТребования к обеспечению надежного функционирования программы
правитьДля обеспечения надежной работы родительской системы Moodle рекомендуется использовать для модуля отдельного пользователя БД с правами только чтение.
Отказы из-за некорректных действий пользователей системы
правитьВозможность отказа родительской системы вследствие некорректных действий пользователя при взаимодействии с модулем через Веб интерфейс, должна быть исключена.
Условия эксплуатации
правитьТребования к квалификации и численности персонала
правитьМинимальное количество персонала, требуемого для работы модуля, составляет не менее одной штатной единицы — администратор системы Moodle. Желательно чтобы администратор имел высшее профильное образование и опыт работы с системой Moodle. В перечень задач, выполняемых системным администратором, должны входить:
- задача поддержания работоспособности технических средств;
- задачи установки (инсталляции) и поддержания работоспособности системных программных средств — родительской системы Moodle;
- задача установки (инсталляции) модуля;
- задача создания резервных копий базы данных.
Требования к информационной и программной совместимости
правитьТребования к информационным структурам и методам решения
правитьБаза данных работает под управлением Microsoft SQL Server. Используется много поточный доступ к базе данных. Необходимо обеспечить одновременную работу с программой с той же базой данной модулей экспорта внешних данных
Структура баз данных
правитьОписание действий администратора по модификации структуры БД для установки модуля
Требования к исходным кодам и языкам программирования
правитьМодуль должен быть написан на объектно-ориентированном языке.
Требования к программным средствам, используемым программой
правитьДля нормальной работы модуля необходима версия Moodle 1.5 или выше. Для пользователей необходим браузер с поддержкой JavaScript.
Требования к защите информации и программ
правитьМодуль должен предоставлять возможность выбора групп пользователей для которых доступна дополнительная информация.
Специальные требования
правитьРазработчики не несут ответственность за последствия использования модуля. Администраторы должны осозновать опасность и возможные последствия установки и использования модуля.
Требования к программной документации
правитьПредварительный состав программной документации
правитьСостав программной документации должен включать в себя:
- техническое задание;
- программу и методики испытаний;
- руководство по установке;
- автоматически созданную документацию с помощью системы PhpDocumentor;
- список справочных рессурсов wiki системы Moodle.
Технико-экономические показатели
правитьЭкономические преимущества разработки
правитьОриентировочная экономическая эффективность не рассчитываются. Аналогия не проводится ввиду уникальности предъявляемых требований к разработке. Но ожидаемая полная стоимость разработки и владения ожидается на очень низком уровне из-за использования модульного подхода в составе комплексной системы Moodle.
Стадии и этапы разработки
правитьСтадии разработки
правитьРазработка должна быть проведена в три стадии:
- разработка технического задания;
- рабочее проектирование;
- внедрение.
Этапы разработки
правитьНа стадии разработки технического задания должен быть выполнен анализ системы Moodle. На стадии рабочего проектирования должны быть выполнены перечисленные ниже этапы работ:
- разработка программы;
- разработка программной документации;
- испытания программы.
На стадии внедрения должен быть выполнена подготовка и передача программы.
Содержание работ по этапам
правитьНа этапе разработки технического задания должны быть выполнены перечисленные ниже работы:
- постановка задачи;
- определение и уточнение требований к техническим средствам;
- определение требований к программе;
- определение стадий, этапов и сроков разработки программы и документации на неё;
- согласование и утверждение технического задания.
На этапе разработки программы должна быть выполнена работа по программированию (кодированию) и отладке программы. На этапе разработки программной документации должна быть выполнена разработка программных документов в соответствии с требованиями к составу документации. На этапе испытаний программы должны быть выполнены перечисленные ниже виды работ:
- разработка методики испытаний;
- проведение приемо-сдаточных испытаний;
- корректировка программы и программной документации по результатам испытаний.
На этапе подготовки и передачи программы должна быть выполнена работа по подготовке и передаче программы и программной документации в эксплуатацию.
Порядок контроля и приемки
правитьВиды испытаний
правитьПриемо-сдаточные испытания должны фиксироватся с помощью средств визуального контроля (видеосъемка). Ход проведения приемо-сдаточных испытаний Исполнитель документирует в протоколе проведения испытаний.
Общие требования к приемке работы
правитьПосле проведения испытаний планируется передача модуля сообществу Moodle.
Пояснительная записка к ТЗ
правитьВ связи с тем, что мы не изучали язык программирования Java, а на написание дипломной работы нам было выделено всего месяц, для написания программы был выбран язык PHP. Этот язык был выбран потому, что позволяет писать модули для системы управления обучением Moodle, которая используется в КПУ.
Moodle — (модульная объектно-ориентированная динамическая учебная среда) — свободная система управления обучением (LMS), распространяющаяся по лицензии GNU GPL. Система ориентирована прежде всего на организацию взаимодействия между преподавателем и учениками, хотя подходит и для организации традиционных дистанционных курсов, а также поддержки очного обучения.