Главная » Просмотр файлов » Принципы работы с требованиями к ПО. Леффингуэлл (2002)

Принципы работы с требованиями к ПО. Леффингуэлл (2002) (1186169), страница 46

Файл №1186169 Принципы работы с требованиями к ПО. Леффингуэлл (2002) (Принципы работы с требованиями к ПО. Леффингуэлл (2002).djvu) 46 страницаПринципы работы с требованиями к ПО. Леффингуэлл (2002) (1186169) страница 462020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 46)

Если функции были праввсльно выбраны и упорядочены, это позволит заказчилу достичь своих целей, по крайней мере частично, в то время как команда продолжит работу нал итерациями разработки. Если архитектура устойчива и отвечает осцовиым техническим требованиям, у команды будет надежная зклат форма Лля предоставления дополнительных функциональных возможностей. Что делать, что делать... Независимо от того, какая молсль используется, комапяа должна предложить по крайней мере олин устойчивый оценочный прототип Лля раннего получения реакции клиента. Олни из прслпосылок данной книги состоит в том, что раннее получение реакции "да, цо..." является одной из самых главных задач в процессе разработки программного обеспечения. ° Сколько раз прилется делать прототип? ° Изменяются ли требования заказчика для каждого нового прототипа? ° Обречены лп мы па неудачу, независимо от того, какому процессу следуем? Глава 22. Управление масштабом и модели процесса разработки...

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

обходимо обгсгичить создание но крайней за)эе одного устойчивого окгночного прснютина для получении реакции клиента до того, как будет выполнен основной объем действий по проектированию и написанию программного кода. (Помните о действиях по созданию прототипа, которые Ройс (Коусе, 1970) изначально предлагал для модели водопада?!) Благодаря уменыпенню числа изменений до разумного уровня разработчику удается путем внесения инкрементных изменений (как правило, в интерфейсы пользователя, отчеты и другие выходные результаты) создать качественный устойчивый технический про екг и реализовать его. Затем пцательно организованный процесс завершения проектирования, кодирования, тестирования компонентов и сборки системы обеспечит для продукта прочный фундамент и в значительной мере будет способствовать действиям по обеспечению качества и тестированию.

222 т2асть 4. Управление масштабом В части 4, "Управление маспггабом", мы выяснили, что проблема масштаба проекта является весьма типичной. Проекты, как правило, инициируются с объемом функцио. нальных возможностей, вдвое превышающим тот, который команда может реализовать, обеспечив приемлемое качество. Это не должно нас удивлять: заказчики хотят большего, маркетинг хочет большего и мы также желаем болынего. Тем не менее, нам необходимо ограничить себя, чтобы иметь возможность предоставить в срок хоть что-нибудь Мы рассмотрели различные методы задания очередности выполнения (приоритетов) и ввели понятие базового уровня (совместно согласованного представления о том, в чем будут состоять ключевые функции системы как рабочего продукта нашего проекта) — по.

пятне, задающее точку отсчета и ориентир для принятия решений и их оценки. Если маспгтаб и сопутствующие ожидания превышают реальные, в любом случае придется сообщать некие неприятные новости. Мы остановились на философии привлечения заказчика к процессу принятия трудных решений. В конце концов, мы являемся только исполнителями. а принимать решения должны наши закаэчики, ведь зто их проект. Поэтому вопрос стоит так: что обяэаямлькл даикно быть сделано в следугощей версии прн имеющихся ресурсах проекта? Даже в этом случае нам придется вести переговоры; в некотором смысле вся жизнь и, конечно, весь бизнес состоят из переговоров, и мы не должны этому удивляться. Мы кратко перечислили некоторые приемы ведения переговоров и пючекнули, что они мог)т понадобиться команде. Нельзя ожидать, что данный процесс полностью решит проблему масштаба, точно так же как никакой другой процесс в отдельности не решит проблемы разработки приложений.

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

Привлечение закаэчика к решению проблемы управления масштабом повышает обязательства сторон, способствует юаимопониманию и доверию между закаэчиком и командой разработчиков приложения. Имея всеобъемлющее определение продукта (документ.концепцию) и сократив масштаб проекта до разумного уровня, мы можем надаюиьгл на успех в следующих фазах проекта. Часть Б Уточнение определения системы И Глава 23. Требования к программному обеспечению И Глава 24.

Уточнение прецедентов ° Глава 25, Спецификация требований к программному обеспечению (Мойегп Бойь аге Кес~шгегпепа Брес1псаноп) ° Глава 26. Неоднозначность и уровень конкретизации И Глава 27. Критерии качества требований к программному обеспечению ° Глава 28. Теоретически обоснованные формальные методы спецификации требований 224 Часть 5.

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

.р,~" "',и зч Прослемнал 'ЛР~лйлилг:л ", область Парями да требований В части б будут обсуащаться методы исследования и организации требований к программ. ному обеспечению, а также способы доведения их ло всех участников. Часть завершается рассмотрсиисм одной из важнейших тем как сформулкревалль лфеболания ко~ютлко н ястю. Независимо от того, каким методом вы пользуетесь для сбора требований, необходимо помнить, что тбрлняыл эяРплманлл ~к глалько онк!) шлужат движущей силой проекта.

Если ока. жется, что оци недостаточны или даже ошибочны, их нужно быстро и официально изменить; так что правило остается в силе. При таком подходе вся команда имеет перед собой ясную цель и может сосредоточить свои усилия иа выявлении и реализации требований, сократив время, потраченное напрасно. Начнем с изу ~сипя самой природы требовшппь Глава 23 Требования к программному обеспечению '; Основные положения, : ° Полный набор требований можно получить.

определив вводы, выводы,' р ' 'функции и атрибуты системы, а тахже атрибуты ее окружения. ° В требования не следует включать общую информацию (графики, планы 'разработки, выделенные средства, тесты), а также информацию, касающуюся проектирования. ° Процесс разработки требований/проектирования является итеративным; вы; явленные требования ведут к выбору конкретных вариантов проектирования, которые в свою очередь приводатк возникновению новых требований. ; ° Ограничения проектирования касаются вариантов проектирования системы или процессов, с помощью которых система разрабатывается.

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

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

обходимо подготовиться к работе с пей. 226 Часть 5. Уточнение определения системы Уровень конкрстнзжппп необходимый на этом шаге, зависит от множества факторов, среди которых содержание приложения и профсссиональныс навыки команды разработчиков.

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

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

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

~ таточно строгих документов требований, традиционных баз данных * ~ или архивов требований до использования моделей прецедентов и более формальных методов. Но всегда главное внимание уделялось спецификации на естественном языке, написанной достаточно ясно, чтобы сс могли понять все заинтересованные лица, заказчики, пользователи, раэработ чики и тсстологи, но также достаточно конкретно ("Максимальиая горизонтальная ско. рость оси 4 должна составлять 1м/с"), чтобы можно было выполнить верификацию и продемонстрировать соответствие.

Перед тем как организовывать требования к системс, рассмотрим саму природу этих требований. Определение требований к программному обеспечению В главе 2 мы дзлп следующее определение требования. ° Некос свойство программного обеспечения, необходимое пользователю для ре- шения проблемы при лостижспип поставленной цели. ° Некос с~юйство программного обеспечения, которым должна обладать система плп сс компонент, чтобы удовлетворить требования контракта, стандарта, спспнфпкацнн либо пиой формалыюй документации, Требовании к яро!льмккоку обсслгчскпю — это то, что данная программа делает для пользователя, прибора плп дру ой системы. Начинать их поиск следует среди того, что "входит" в систему и "выходит" нз нес, т.с.

необходимо рассмотреть взаимодействия системы с сс пользоватслямп. Для этого проще всего сначала представить ссбс систему как некий черный ящик и подумать о том, что следует определить, чтобы полностью описать, что делает этот черный ящик. Глава 2В.

Характеристики

Тип файла
DJVU-файл
Размер
4,5 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6525
Авторов
на СтудИзбе
301
Средний доход
с одного платного файла
Обучение Подробнее