Домашно за ученическата академия на Телерик
декември 2011 – Разработка на цялостни PHP приложения
Да се проектира и реализира информационна система за управление на дефекти открити при разработката на софтуерни приложения на езика PHP. Системата трябва да съхранява и управлява информация за тестерите във фирмата, разработваните проекти и откритите грешки за конкретен проект. Достъпът до системата се извършва единствено след автентикация.
Тестери
Тестерите са потребителите на системата. За всеки тестер трябва да се съхранява следната информация:
username (съдържа само букви и цифри, уникално за системата)
Администраторът на системата е потребител с username admin и предварително зададена в системата парола. Той може да извършва следните действия:
Добавяне на нов тестер. Представлява регистриране на нов потребител в системата (тестер) и въвеждане на информация за него.
Редактиране на тестер – позволява промяна на информацията за даден тестер (потребител). Не може да се редактира единствено потребителското име на тестера.
Изтриване на тестер – изтрива се наличната информация за даден тестер (потребител). При изтриване на тестер всички негови грешки в системата остават без автор.
Създаване на нов проект – въвежда се и се съхранява информация за проекта.
Редакция на проект – позволява редактиране на името и описанието на проекта.
Изтриване на проект – изтрива наличната информация за даден проект. При изтриването на проект се изтриват всички грешки, асоциирани с него.
Грешки
За всяка грешка открита от тестерите за даден проект се съхранява следната информация:
Дата и час на откриване. Автоматично се попълва с текущите дата и час при първоначално въвеждане на грешката.
Собственик – тестер, който е въвел грешката в системата. Може да липсва стойност или да се избере някой от потребителите в системата. При първоначално въвеждане грешката се свързва с текущия потребител.
Проект, в който е открита грешката. Избира се измежду дефинираните в системата проекти.
Статус на грешката. Валидните стойности са: New, In Progress, Fixed и Closed. Статусът на всички грешки при въвеждането им е New, а след това може да се променя.
Тестерите могат да извършват следните операции:
Избор на проект и показване на всички грешки, които са открити по него. За всяка грешка трябва да се извежда нейния собственик, степента на важност и дата и час, на които е открита. Таблицата с грешките трябва да позволява сортиране по различните й колони и страниране (да се показват по 20 грешки на страница).
Добавяне на грешка – попълва се и се съхранява информацията за грешката. Всички полета без датата, собственика и статуса се задават свободно, а останалите се задават автоматично от системата.
Редактиране на грешка – позволява промяна на информацията за грешката. Забранено е редактирането на собственик (тестер) и проект. При редактиране дата и часът на откриване не се променят.
Изтриване на грешка – грешката минава в статус Deleted и повече не се визуализира в потребителския интерфейс на системата.
Справки
Тестерите и администраторът могат да извършват следните справки:
Извеждане на таблица с всички тестери, които са регистрирани в системата заедно с броя на проектите, в които участва всеки от тях, броя на грешките, които е въвел в системата, датата на последната активност в системата и текстово описание на последното извършено действие (например "редактирана грешка #37"). Един тестер се счита, че участва в даден проект, ако е открил поне една грешка в него.
Извеждане на таблица с всички активни грешки по всички проекти. За всяка грешка се извежда съкратено описание (първите 50 символа от описанието), приоритет, собственик, проект и статус. Активни са грешките със статус различен от Closed.
Извеждане на таблица с всички активни грешки по избран от падащ списък проект.
За всички таблици, извеждани в справките да се имплементира възможност за сортиране (по всяка от колоните) и страниране (извеждане на страници от по 15 реда с възможност за навигация между страниците).