Rational Rose 2000 и UML. Визуальное моделирование

Кватрани Терри

Глава 2. Начало проекта

 

 

Определение правильного проекта

Главный вопрос при разработке системы не касается методологии. Это и не проблема технической реализации. Это с виду простой, но на самом деле достаточно сложный и важный вопрос: «Правильна ли создаваемая система?». К сожалению, он в большинстве случаев вообще не возникает или остается без ответа. Хотя неверная методология или технические проблемы могут привести к неудаче, иногда избыток ресурсов и титанические усилия талантливых людей спасают проект. Но ничто не поможет системе, которая не нужна или автоматизирует неправильные вещи.

Для начала проекта необходима идея. Зарождение идеи и определение общих требований и форм происходит на этапе задумки. Он заканчивается утверждением: «Наша система делает…». В процессе проработки идея приобретает ясные очертания, а предположения утверждаются или отвергаются. На этом этапе собираются и документируются основные идеи, предварительно описываются риски, внешние интерфейсы, общая функциональность системы и возможно создание тестовых прототипов для проверки общей концепции (proof of concept prototypes). Идеи поступают из разных источников (это могут быть заказчики, эксперты по предметной области, сами разработчики, отраслевые эксперты, результаты тестов, изучение существующих систем). Важно отметить, что любые прототипы, созданные в этом периоде, должны рассматриваться как временный код, предназначенный лишь для проверки предположений и не прошедший через стадии анализа и проектирования.

На этом этапе разработки процессы могут быть оформлены формально или проведены неформально, но они всегда включают анализ бизнес-требований, доступных ресурсов, возможностей использования различных технологий, а также идей и пожеланий конечных пользователей. Затем для выработки целевой концепции системы, описания задач и приоритетов могут быть использованы такие средства, как профессиональные и научные исследования, мозговой штурм, анализ эффективности, анализ функциональности и создание прототипов. Обычно в этот период происходят первичные сокращения запланированных ресурсов и времени. Для одних проектов концепцию можно изложить на обороте салфетки, для других описание идеи является формальным этапом, выполняемым при помощи итеративного процесса до достижения необходимого уровня точности и детализации.

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

 

Несколько слов об университете ESU

Описание регистрации учебных курсов для университета Истерн (Eastern State University — ESU) будет использоваться в качестве основного примера книги.

После того как преподаватели ESU решат, какие курсы они будут вести в течение семестра, служба регистрации курсов внесет информацию в компьютерную систему. Затем для преподавателей распечатают сводный отчет по курсам, которые они будут читать, а для студентов — каталог курсов.

На этом этапе студенты заполняют специальную регистрационную форму, где указывают выбранные курсы, и отдают ее в службу регистрации. Обычно студент подписывается на четыре курса, после чего информация заносится в компьютер. Далее запускается ночная пакетная программа, которая распределяет студентов по курсам. При возникновении конфликтной ситуации служба регистрации уточняет студенческие данные. После успешного распределения студенту высылается расписание для проверки. Обычно процесс регистрации на курсы занимает около недели, но в ряде случаев может потребоваться до двух недель, чтобы уладить все вопросы. Затем преподаватели получают список студентов для каждого курса, который они будут читать.

 

Риски задачи регистрации курсов

Группа разработчиков определила, что главный риск системы связан с возможностью эффективно сохранять и получать информацию об учебных планах. С этой целью было создано несколько прототипов, чтобы оценить механизмы хранения и доступа к информации для каждой рассматриваемой системы управления базами данных. Результаты испытания прототипов показали, что риск неэффективной работы базы данных может быть уменьшен. Дополнительные прототипы были использованы для оценки аппаратных ресурсов, необходимых при создании онлайновой системы регистрации.

 

Постановка задачи регистрации курсов

В начале каждого семестра студенты могут запросить каталог курсов, в который включен список учебных предметов, предлагаемых в данном семестре. Информация о курсах должна содержать фамилию преподавателя, название факультета и краткое описание, помогающее студентам сделать выбор.

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

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

В каждом семестре выделяется определенное время, в течение которого студенты могут менять свое расписание и получать доступ к системе для добавления или удаления выбранных курсов.

 

Резюме

Фаза задумки — это этап открытия. Задача оговаривается и обсуждается в группе разработчиков с привлечением заказчиков. Все высказанные предположения и допущения могут быть утверждены или отклонены после апробации на прототипах. Результаты этой фазы — описание внешних интерфейсов, оценка начальных рисков, определение требований к системе. Заказчики, клиенты, пользователи и другие заинтересованные стороны обсуждают различные идеи и точки зрения и предлагают возможные пути получения необходимых ресурсов и инструментов.