Сайтостроительство
ac3ae3b5

Тестирование на этапе проектирования


На стадии проектирования необходимо оттестировать проектную документацию. Во-первых, документация должна быть полной, т.е. чтобы ее можно было отдать любой команде разработчиков и эта команда без дополнительных уточнений реализовала бы проект. Это, конечно, идеальная картина, но это то, к чему надо стремиться. Во-вторых, проектная документация должна описывать "правильную" систему, которая отражает суть происходящего. Не всегда правильно то, что говорит Заказчик. Совсем недавний пример. Мы разрабатывали веб-сайт для Российского Вакуумного Общества. У них регулярно проходят конференции. На конференцию, каждый автор присылает свои тезисы. Тезисы присылаются в формате Word. В конференции имеется несколько секций. Наша задача была осуществить пуликацию тезисов в Интеренет с возможностью обсуждения их, также нужно было генерировать всевозможные отчеты по авторам, расслать электронную почту и т.д. и т.п.. Был еще целый ряд требований к системе, но здесь их нет смысла приводить. Мы разработали гибкую систему, где автор после регистрации и оборения администратором может вносить свои тезисы. Естественно, уже можно вносить не тезисы, а полностью статью, т.к. места на сервере много. При вводе системы в эксплуатацию столкнулись с проблемой, которую не учли на стадии проектирования системы. На конференции есть коммиссия, которая может перебросить доклад по своему усмотрению из одной секции в другую, изменять названия докладов, создавать или удалять секции, и прочие мелкие изменения. В результате, получилось, что конференцию можно публиковать в Интеренет, только после утряски всех этих мелочей. Если в нашей системе тезисы, каждый автор сам публиковал, то в требуемой системе тезисы должны были публиковаться все разом. В данном случае мы сделали лишнюю работу, поэтому ничего переделывать не пришлось, просто кое-что отрезали. Если придется делать конференцию, где коммиссии нет или ее роль заключается только лишь в оценке докладов, но ни их корректировки, то наши разработки пригодятся. Тем не менее данный пример хорошо демонстирует ошибку заложенную на стадии проектирования. Для того чтобы такие ошибки исключить надо промоделировать работу системы.

Моделировать можно просто перекладывая бумаги на столе. Необходимо убедиться, что система отвечает намеченным целям и решает все поставленные перед ней задачи.



Содержание раздела