Принципы работы с требованиями к ПО. Леффингуэлл (2002) (1186169), страница 28
Текст из файла (страница 28)
~внимание потребностей пользователей Сведующий список более подробно представляет участников совещания. Имя Роль Доюкность Комментарии Эрик Ведущий Директор по паркетин~у Менеджер про. Лидер проекта дуэта НОЯБ 2000 Менеджер разработки программного обеспечения Участник Участник Ответственный за разработку НОЯБ 2000 Будущий домовладелец Будущий домовладелец Будущий домовладелец Крупнейший дистрибьютор компании 1лщспас!опз Дженнфср Замер Жене Джон Участник Участник Участник Участник Исполнительный директор компа- нии Ацсошабоп Б!ц!р Гснерэльньзй менеджер, ЕцгоСопсгоа Президент, Кзуие! Иссспс Президент, Казан!пб Сопзсгцсс!оп Команда разработчиков Европейский дистрибьютор ком- пании Бшпепайопз Раксэь Участник Участник Местный поставщик электриче- ских систем Дэвид Участник Домостроитсль Различные Наблюдатели члены комаэщы Вес члены команды, кто может прибыть Совещание Перед совещанием команда подготовила следующий пакет предварительных материалов.
° Несколько свежих журнальных статей, высвечивающих тенденции в домашней автоматизации. ° Копии нескольких проведенных интервью. ° Итоговый список потребностей, которые выявлены к настоящему времени. Эрик "освежил" свои навыки ведущего, а Кэти занялась вопросамн логистики. Заседание Заседание проводилось в отеле возле аэропорта и началось в 8:00. Эрик огласил повестку дня и правила проведения совещания, в том числе правила использования "совещательных билетов". На рис. 11.2 представлена схема совещания. Глава 11. Мозговой штурм и а гбор идей 137 вкцв.л и генерал Рив П 2. СтРуктуРа птвеяаиил иа ваефасаи ифмевааиий к аРвтаяу НОЕБ 2000 Таблица 11.1. Определенные совещанием функции НО 1.15, упорядоченные по приоритету Ш Эу Количество голосов 28 Возможность произволыюго выбора зон освещения 121 1б Автоматическая установка длительности работы для различных источ. 107 ников света и т.п.
Встроенные средства системы безопасности, например аварийные лам- 105 пы, звуковые сирены, звонки 100%-надежность 90 Легко программируемый блок управления, не требующий использова- 88 ния персонального компьютера 77 77 74 Легко програмевируеиые станции управления Возможность программирования режима "жильцы в отпуске" Любой источник света может плавно изменять яркость В целом, совещание проходило очень королю, все участники имели возможность внести свои предложения так, чтобы они были усльппаны. Эрик прекрасно справился с ролью ведущего, лишь однажды возник неловкий момент, когда он вст1чзил в дискуссию с Кати относительно приоритетов некой группы функций.
(Команда припиа к решению на все следующие совещания приглашать стороннего ведущего.) Эрик провел сеанс мозгового штурма потенциальных функций НОТ 1з, и команда использовала накопительное голосование для выяснения относительных приоритетов. Результаты показаны в табл. 11.1. Часть 2.
Понимание потребностей пользователей !38 Окоячаиие зшбз. 11. 1 Количество голосов Можно использовать собственный персональный компьютер для про. 73 грзммнрозання режимов работы Возможность программирования работы в режиме обслуживания эре- 66 лишных мероприятий Функция закрытия гаражных ворот 66 Автоматическое включение света в туалете при открытии двери 55 Интерфейс с системой охраны дома 52 Простота монтажа 50 20 19 2 18 7 50 Автоматическое включение света, когда кто-то подходит к двери Мгновенное включение/выключение света 44 Воэможность управлять шторами, жалюзи, насосами и движками 44 Управление освещением и т.п. по телефону 44 Наличие интерфейса с системой управления автоматикой в доме 43 Наличие режима плавного перехода: постепенное увеличение/уменьшение 34 яркости света Наличие главного блока управления Легко дополняется новыми злеменшми прн изменении схемы эксплуатации Интернационализированный пользовательский интерфейс Интерфейс с видео.
н аудиосистемой 23 Восстановление функций после сбоя в энергоснабжении 23 Управление работой кондиционера 22 Активация голосом 7 15 10 31 25 12 21 24 17 28 Поддержка презентационного веб.сайта Анализ результатов 1. Функция 4, "Встроенные средства безопасности" оказалась одной из первых в спи- ске приоритетов. Эта функция упоминалась в предварительных интервью, но в индивидуальных списках приоритетов находилась не слишком высоко.
Кэти выяснила, что встроенная безопасность (возможность гасить свет, дополнительная си. рена, вызов внешних служб при возникновении опасности) практически не предлагается конкурирующими системами. Дистрибьюторы прокомментировали это так, что хотя они и были удивлены таким предложением, но они считают, что это будет выгодным отличием. и согласны с тем, что данная функция должна быть высокоприоритетной.
Дзвид также согласился. Основываясь на этом, отдел лгарке- Результаты процесса можно охарактеризовать как ожидаемые, за исключением двух важных моментов. Глава 11. Мозговой штурм ма юбер идей 139 тинга решил включить данную функциональную возможность в продукт и выде. лить ее как уникальное дифференцирукнцее отличие на рынке. Она стала одной из енрпуезланвих функций системы НОЯБ. й. Функция 25,уИнтернационализированный пользовательский интерфейс", не набрала большого количества голосов.
(Этого следовало ожидать, исходя из состава участников, так как домовладельцев в США мало заботит то, насколько хорошо продукт будет продаваться в Европе.) Дистрибьютор, однако, настаивал, что если продукт ие будет интернациоиализирован уже в версии 1.0, он не будет предлагаться в Европе. Команда аафнксировала зто и согласилась приложзють все необходимые усилия, чтобы добюпъса интернационализации в версии 1.0. ю Этот пример демонстрирует одну нз проблем. сзззанпых с накопительным голосозанвем.
Не зсе участники равны. Неудача в достижении интернационализации, которая не рассматривалась командой перед совещанием, была бы существенной стратегической ошибкой требований. Глава 12 Раскадровка » .И:. цель раскадровки с»ос»тоит в раннем выявя»еййй' реадцнйстнйа, "да, но...". ~. ° Ржкадровки могут быть пассивными, активна»мни йнтерактивнь»»м»», ~'И,.;Они идентифицируют игроков, 'объясня»от,'-"ч$о',»с, ними происходит, и ";.:;.",описывают, хак это происходйт;: .". ';; ° "Раскадровку:еледует делать 'краткой, легко»»додснфицируемой н недолго- ' вечной.
":,:;; ' ",, -,.';, ''' ':».и' , ° Примеия»»»»те раскадровку как можно рань»це и!чаще в кжкдомщзоекте с но- ' вым нли инновационным содержанием. Возможно, ни один из методов выявления требований не имеет столько интерпретаций, как "раскадровка". Тем не менее большинство этих интерпретаций сходится в том, что целью раскадровки является получение ранней реакции пользователей на предложенные концепции приложения. При этом раскадровка предлагает наиболее эффективные методы преодоления синдрома "да, но...". С ее помощью можно на самых ранних этапах жизненного цикла наблюдать реакцию пользователей, до того как концепции бу. дут превращены в код, а во многих случаях дэзке до разработки подробной спецификации.
Психологи годами твердят нам, что не следует недооценивать возможности раскадровок. В частности, киноиндустрия успешно использовала этот метод со времен появления первых картин на экране. При создании раскадровки применяются недорогие и простые в обращении средства. Раскадровка имеет следующие преимущества. ° Предельно недорога ° Дружественна пользователю, неформальна и интерактивна ° Обеспечивает ранний анализ пользовательских интерфейсов системы и Легко создаваема и модифицируема Раскадровки также являются л»ощ»»ыь» средствол» в борьбе с синдромом "чистого листа".
Когда пользователи не знают, чего они хотят, да»ге примитивная раскадровка, скорее всего, сможет вызвать ответ; "Нет, это пе то, мы скорее хотели бы слсдующее,"— и процесс пойдет. Раскадровки можно испольэовать для ускорения концептуальной разработки различных граней приложения. Их можно применять для понимания визуализации данных, определения и понимания бизнес-правил, которые будут реализованы в новом бизнес. 142 Часть 2. Понимание потребностей пользователей приложении, для определения алгоритмов и других математических конструкций, коте рые будут выполняться внутри встроенных систем, или для демонстрации отчетов и дру.
гнх результатов на ранних этапах. Раскадровки можно (и нужно!) испольэовать практически для всех приложений, в которых раннее получение реакции пользователей является ключевым фахтором успеха. Типы раскадровок й основном, раскадровку можно делать такой, кзк пожелает команда; команда свободна в выборе способов раскадровки для конкретного приложения. Раскадровки делятся на три типа в зависимости от режима взаимодействия с пользователем: пассивные, актив. ные и интерактивные. ° Пассивные представляют собой историю, рассказываемую пользователю.
Они мо. тут состоять из схем, картинок, моментальных копий экрана, презентаций РотчегРотпт или образцов выходной информации системы, й пассивной раскадровке аналитик играет роль системы и просто проводит пользователя по раскадровке, обаясняя следующее: "Когда вы делаете это, происходит вот зто". ° Акжиеяые пытаются показать пользователю "еще не созданный фильм". Оии создаются с помощью анимации или автоматизации, возможно, посредством автоматического последовательного показа слайдов, анимационных средств или даже фильма.
Активные раскадровки обеспечивают автоматизированное описание пть ведения системы при типовом использовании или в операционном сценарии. ° Интфактивньы дают пользователю опыт обращения с системой почти такой же реальный, как на практике. Для своего выполнения они треб)тот участия полыователя.
Интерактивные раскадровки мотуг быть имитационными, в виде макетов или могут даже представлять собой отбрасываемый впоследствии код. Сложная интерактивная раскадровка, основанная на отбрасываемом коде, может быль весьма похожа на отбрасываемый прототип (который обсуждается в следующей главе). Как видно из рис. 12.1, эти три типа раскадровки предлагают широкий спектр возможне стей — от образцов выходной информации до "живьпс" демонстрационных версий. Различие между сложными раскадровками и ранними прототипьчи продукта весьма условно. дпивныа ! ! ! ! ! ! ! ! ! ! Прототип«резание ! ! ! ! ! Интерактивные Пассивныа Анимация Живая" демонстрация Бизнес-правила Имитация Интатякпени! презентация Вм!однне отчеты Сяиность и стоимость 11!с. 13.1. Рознична!а виды Раскадроеон Глава 12.
Раскадровка 143 Выбор типа раскадровки зависит от сложности системы и того, насколько велик риск, что команда неправильно понимает ее назначение. Для беспрецедентной новой системы, имеющей расплывчатое определение, может потребоваться несколько раскадровок, от пассивной до интерактивной, по мере того как команда совершенствует свое понимание системы. Что делают раскадровки Расшщровкн использовались уже в первом мультфильме Диснея Бььмяеж«а к шиь гяамээ и по сей день остшотся неотъемлемой частью творческого процесса при создании кинокартин и мультфильмов. Практически все фильмы, анимационные функции и мультфильмы начинаются с раскадровок, которые представляют собой творческий материал для развития характеров и сюжетных линий.