Първоначално в http://www.agilemodeling.com/essays/agileRequirements.htm. Отиди на главната страница.

Много от традиционните проектни екипи тичам в беда, когато те се опитват да определят всички изисквания отпред, често е резултат на погрешната идея, че разработчиците всъщност ще четат и следват какво съдържа документа изисквания. Реалността е, че документът за изисквания обикновено не е достатъчно, независимо от това колко усилия отива в него, изискванията се променят, така или иначе, и разработчиците в крайна сметка в крайна сметка става директно на своите заинтересовани страни за предоставяне на информация, така или иначе (или те просто предполагам какво означават техните заинтересовани страни). Адалистс знаят, че ако те имат способността да предизвикат подробни изисквания отпред след това те могат да направят същото, когато те действително се нуждаят от информация. Те също така знаят, че всяка инвестиция в подробна документация в началото на проекта ще се губи, когато изискванията неизбежно се променят. Адалистс избират да не губим време в началото на проекта писмено подробни изисквания документи, защото те знаят, че това е един много лош начин на работа.

Ефективни изискванията за моделиране в орехова черупка

Фигура 1 изобразява Ефективни модела задвижване развитие (AMDD) жизнен цикъл, който изобразява как Ефективни за моделиране (AM) се прилага от пъргави екипи за разработка на софтуер. Критичните аспекти, които ние сме загрижени за сега са първоначалните изисквания за моделиране, итерация моделиране, модел щурмуването и тест задвижване развитие приемане (ATDD). Основната идея е, че правиш достатъчно едва моделиране в началото на проекта, за да се разбере на изискванията за вашата система на високо ниво, а след това ви събера детайлите, колкото е необходимо, за да на база току-що в работно време (JIT).

1.1 Първоначалните изискванията за моделиране

В началото на проекта, който трябва да отнеме няколко дни, за да представим на изискванията за високо ниво и да се разбере обхвата на освобождаването (това, което мисля, че системата трябва да се направи). Вашата цел е да се получи чревната усещане за това, което проектът е за всички, а не да се документира подробно какво си мислите, че системата трябва да прави: документацията, може да дойде по-късно, ако действително се нуждаят. За вашата първоначална изисквания модел моя опит е, че имате нужда от някаква форма на:

Модел ползване. Както името предполага използване на модели ви позволяват да проучи как потребителите ще работят с вашата система. Това може да бъде колекция от случаите за неотложни нужди на Единна процеса проект (UP), колекция от функции за Feature задвижване развитие (FDD) проект или колекция от потребителски истории за Екстремно Програмиране проект (XP), или към някоя от по-горе, на дисциплиниран пъргав екип.
Първоначално модел домейн. Модел A домейн идентифицира основните видове бизнес единица и взаимоотношенията между тогава. Модели на домейни могат да бъдат изобразени като колекция от клас отговорност карти Сътрудник (CRC), тънък UML клас диаграма, или дори един тънък модел на данните. Този модел домейн ще съдържа достатъчно информация за: основните субекти на домейни, техните основни атрибути, както и отношенията между тези лица. Вашият модел не е необходимо да бъде завършен, той просто трябва да се покрие с достатъчно информация, за да ви накара да се удобно с концепциите на основния домейн.
Интерфейс модел на потребителя. За потребителски интерфейс интензивни проекти, които трябва да обмислят разработването на някои екранни скици или дори потребителски интерфейс прототип.

Какво ниво на детайлност, наистина ли е необходимо? Моят опит е, че имате нужда от изисквания артефакти, които са едва достатъчно добър, за да ви дам това разбиране и не повече. Например, Фигура 2 показва прост случай употреба точка форма. Този случай употреба може много добре да са написани на картотека, парче флипчарт хартия, или върху бяла дъска. Той съдържа достатъчно информация, за да разберем какво случай употреба прави, а в действителност тя може да съдържа твърде много информация за този момент от жизнения цикъл, защото само името на делото за употреба може да бъде достатъчно за вашите заинтересовани страни да разберат основите на какво искаш да кажеш. Фигура 3, от друга страна, показва напълно документирани официално случай употреба. Това е един прекрасен пример за добре документиран случай употреба, но тя върви в много по-подробно, отколкото ви е нужна в момента. Ако наистина имате нужда от това ниво на детайлност, и на практика рядко се направи, можете да го уловят, когато всъщност трябва да се по модел го щурмуват по това време. Колкото по-дълго вашия екип по проекта върви без конкретна обратна връзка за работа софтуер, толкова по-голяма опасност, че сте моделиране неща, които не отразяват това, което вашите заинтересовани страни наистина се нуждаят.

Импулсът да пиша изисквания документация трябва да се трансформира в желание да работят в тясно сътрудничество, вместо с вашите заинтересовани страни и след това да създадете работещ софтуер въз основа на това, което ти кажа.

Фигура 2 A случай точка форма на употреба.

Име: Регистриране в семинар

Основен курс на действие:

 

  • Студент входове име и ученик си номер
  • Система проверява студентът има право да се запишат в семинари. Ако не са допустими тогава студентът е информиран и използва случая свършва.
  • Системата показва списък на наличните семинари.
  • Студент избира семинар или реши да не се запишат на всички.
  • Система валидира студентът има право да се запишат в избраната семинара. Ако не отговарят на условията, студентът трябва да избере друг.
  • Система валидира семинара се вписва в графика на ученика.
  • Системата изчислява и показва такси
  • Студент проверява разходите и или показва, че иска да се запишат или не.
  • Система записва студент в семинара и ги таксува за него.
  • Система разпечатки записване разписка.

 

Фигура 3 Подробно използване случай.

Име: Регистриране в семинар

Идентификатор: UC 17

Описание:

Записване на съществуващ студент в семинар, за който тя е допустима.

Предварителни условия:

Студентът е регистриран в университета.

Посткондиц:

Студентът ще бъдат записани в хода тя иска, ако тя отговаря на условията и стая е на разположение.

Основен курс на действие:

1 случай на ползване започва, когато един студент иска да се запишат в семинар.

2. Студентът входове името си и студент брой в системата чрез UI23 сигурност Вход екрана.

3 Системата проверява студентът има право да се запишат в семинари в университета в съответствие с бизнес правило BR129 определяне дали да се запишат. [Алт Курс A]

4. Системата показва Избор UI32 Семинар екрана, която показва списък с наличните семинари.

5. студентът показва на семинара, в който тя иска да се запишат. [Алт Курс B: The Студент реши да не се запишат]

6 Системата потвърждава студентът има право да се запишат в семинара в съответствие с бизнес правило BR130 Определете Студент допустимост да се запишат в един семинар. [Алт Курс C]

7 Системата потвърждава семинара се вписва в съществуващата схема на студента по правилото бизнес BR143 Проверка Студент семинар график.

8 Системата изчислява таксите за семинара на базата на такса публикувана в каталога разбира се, приложими студентски такси и приложими данъци. Нанесете бизнес правила BR 180 Изчисли Студент такси и BR45 калкулиране на данъците за семинар.

9. Системата показва таксите чрез UI33 дисплея Семинар Такси екрана.

10 Системата пита студента, ако тя все още иска да се запишат в семинара.

11 Ученикът показва, че иска да се запишат в семинара.

12. Системата записва студент в семинара.

13. Системата информира студента записването е била успешна чрез UI88 Семинар Резюме екрана.

14 Системата на сметките за ученика на семинара, според бизнес правило BR100 Bill Студент за семинар.

15. системата пита студента, ако тя иска разпечатка на събирането.

16 Ученикът показва, че иска разпечатка.

17. Системата отпечатва изявление записване UI89 Резюме доклад.

18 случая на употреба завършва, когато студентът се отпечатаната изявлението.

Алтернативен Курс A: Студентът не е допустимо да се запишат в семинари.

А.3. Регистраторът определя студентът не е допустимо да се запишат в семинари.

А.4. Регистраторът информира студента той не е допустимо да се запишат.

A.5. Делото за употреба завършва.

Алтернативен Курс B: The Студент реши да не се запишат в една Предлага Семинар

Б.5. Студентът гледа списъка на семинари и не вижда едно, в което той иска да се запишат.

Б.6. Делото за употреба завършва.

Алтернативен Курс C: Студентът не разполага с предпоставки

C.6. Регистраторът определя студентът не е допустимо да се запишат в семинара той избра.

C.7. Регистраторът информира студента той не разполага с необходимите условия.

C.8. Регистраторът информира студента от предпоставките той се нуждае.

C.9. Делото за употреба продължава в Стъпка 4 в основния курс на действие.

1.2 Повторение за моделиране

Повторение моделиране е част от общите си усилия за планиране на итерация, извършени в началото на итерация. Вие често трябва да проучи изисквания към малко по-детайлно ниво отколкото си направил първоначално, моделиране просто достатъчно, за да се планира работата изисква да изпълни дадена изискване.

1.3 Модел буря

Подробните изисквания са предизвикани, или може би по-добър начин да се мисли за това е, че се анализират изискванията на високо равнище, на току-що в работно време. Когато един разработчик има ново изискване за изпълнение, може би се запишат в семинар” използване случая на фигура 2, те се питат дали те разбират какво се иска за. В този случай, това не е толкова ясно точно какво искат заинтересованите страни, например ние нямаме никаква индикация за това какво екраните трябва да изглеждат. Те също така се питам, ако изискването е достатъчно малък, за да приложат по-малко от един ден или два, и ако не е, тогава тя се реорганизира в събирането на по-малки части, които се справят те с едно по едно време. Малките неща са по-лесни за изпълнение от по-големите неща.
За да откриете подробности зад изискването, разработчикът (или разработчиците на проектни екипи, които да предприемат подход за програмиране на бройка), да зададете своя заинтересованите страни ), за да обясни какво означават те. Това често се извършва чрез скициране на хартия или бяла дъска със заинтересованите страни. Тези “модел щурмуването сесииобикновено са импровизирани събития и обикновено трае 5-10 минути (това е рядкост да се моделира буря за повече от тридесет минути, тъй като изискванията парчета са толкова малки). Хората се събират, да събира около обща моделиране инструмент (например на дъската), проучи въпроса, докато си убеден, че те я разбират, и след това те продължават на (често кодиране). Екстремно програмисти (XPers) биха нарекли изисквания моделиране щурмуването сесии клиент Q & A сесии“.

В примера за идентифициране на това, което на екрана ще изглежда така, заедно с заинтересованите страни (ите), която скицира това, което искате на екрана да изглежда като, рисуване няколко примера, докато не се стигне до общо разбиране за това какво трябва да се изгради. Скици като това са приобщаващи модели, защото сте с помощта на прости инструменти и техники за моделиране, това дава възможност на Ефективни за моделиране (AM) практиката на участие на заинтересованите страни Ефективни. Най-добрите хора да моделират изисквания са заинтересовани страни, тъй като те са тези, които са експерти на домейни, а не ти.
Ефективни за моделиране

За по-подробен пример за това как да отида за изискванията за моделиране, прочетете статията Ефективни изискванията за моделиране пример.

1.4 Приемане за изпитване задвижване развитие (ATDD)

Test задвижване развитие (TDD) (Бек 2003; Астелс 2003 г.), е един еволюционен подход за развитие, който, която изисква значително дисциплина и умения (и добра инструментална екипировка). Първата стъпка е да добавите бързо тест, основно само достатъчно код, за да се провалят. Следваща изпълнявате вашите тестове, често пълен тестов пакет, въпреки че заради на скоростта, която може да реши да се изпълнява само една част, за да се гарантира, че новият тест прави в действителност се провали. След това можете да актуализира вашия функционален код, за да го предаде на нови тестове. Четвъртата стъпка е да стартирате вашите тестове отново. Ако те не трябва да обновите вашия функционален код и повторно тестване. След тестовете преминат на следващата стъпка е да започнем отначало (може да се наложи първо да рефактор дублиране от вашия проект, ако е необходимо). Както Фигура 4 показва, че има две нива на TDD:

Приемане TDD (ATDD). С ATDD пишете тест единствен приемане, или поведенческо спецификация в зависимост от предпочитания от вас терминология, и след това просто достатъчно производство функционалност / код, за да изпълни този тест. Целта на ATDD е да уточни подробни, изпълними изисквания за вашето решение на база точно навреме (JIT). ATDD се нарича също поведение задвижване развитие (БДД).

TDD разработчици. С разработчик TDD ти пиша един тест разработчик, понякога неточно посочен като единица тест, а след това просто достатъчно производствен код, за да изпълни този тест. Целта на разработчика TDD е да се уточни подробно, изпълним дизайн за вашето решение на базата на JIT. TDD Developer често се нарича просто TDD.

Фиг.4 Как ATDD и разработчик TDD поберат заедно.

С ATDD вас не се изисква да се вземе подход разработчик TDD за прилагането на кодекса на производството, въпреки че по-голямата част от отборите правят ATDD също направи разработчик TDD. Както виждате на фигура 4, когато комбинирате ATDD и разработчик TDD създаването на един единствен тест приемане на свой ред изисква от вас да превъртите няколко пъти през анализатора напиши тест, напиши производство код, той получи работа цикъл на ниво разработчик TDD. Очевидно, за да TDD работа, трябва да имате един или повече рамки, достъпни за Вас за тестване. За приемане TDD хора ще използват инструменти като Fitnesse или RSpec и за разработчик TDD гъвкави софтуерни разработчици често използват семейството xUnit на инструменти с отворен код, като JUnit или VBUnit. Търговските инструменти за тестване също са жизнеспособни опции. Без такива инструменти TDD е почти невъзможно.

Има няколко важни предимства на ATDD. Първо, тестовете не само валидират работата си в потвърждение на ниво те също са в сила спецификации изпълними, които са написани в току-що в работно време (JIT) начин. Чрез промяна на реда, в който работите вашите тестове в сила направи двойно мито. Второ, проследимост от подробни изисквания, за да тествате е автоматично, защото тестовете за приемане са вашите подробни изисквания (като по този начин намаляване на вашите усилия за проследяване на поддръжка, ако трябва да направя такова нещо). На трето място, това работи за всички видове изисквания - въпреки че голяма част от дискусията за ATDD в пъргав общност се фокусира върху писането на тестове за потребителски истории, факт е, че това работи за случаите на използване, сценарии за използване, бизнес правила, както и много други видове на изискванията за моделиране артефакти.

Най-голямото предизвикателство с приемането ATDD е липсата на умения сред съществуващите изисквания за практикуващите, още една причина да се насърчи обобщаване специалисти в рамките на вашата организация през тясно фокусирани специалисти.
TDDSpecification от Пример


2. Къде изискванията дойде?

Вашите заинтересованите страни по проекта - преки или косвени потребители, ръководители, висши мениджъри, членове на операциите на персонала, поддръжка (Help Desk) членове на персонала, тестери, разработчици, работещи по други системи, които интегрират или да взаимодействат с вашата, както и специалисти по поддръжката - са единственият официален източник на изисквания (да, разработчиците могат да предлагат изисквания, но заинтересованите страни трябва да приемат предложенията). В действителност това е отговорност на участниците в проекта, за да се осигури, да изяснят, посочете и приоритет изисквания. Освен това, тя е правото на заинтересованите страни по проекта, че разработчиците да инвестират време, за да се идентифицират и разбират тези изисквания. Това е концепция, е от решаващо значение за успеха ви като един пъргав моделиер - това е ролята на заинтересованите страни по проекта за предоставяне на изисквания, е ролята на разработчиците да разберат и да ги приложат.

Дали това означава, че вие седите там в състояние на вцепенение чака вашите заинтересованите страни по проекта, за да ви кажа това, което искат? Не, разбира се, че не. Можете да задавате въпроси, за да проучи това, което вече ви казах, може би дейност анализ, да ги мотивира да се уточни по-подробно какво искат и може би дори да се преосмислят и променят първоначалното си изискване (а). Вие може да предложи нови изисквания към тях, ключовата дума е съответно ПРЕДЛАГАМЕ, че те трябва да разгледат и я приемат, (може би с изменения), или да отхвърли като официален изискване. За да се идентифицират потенциалните изисквания Може също, често с помощта на вашите заинтересованите страни по проекта, работят чрез съществуващи документи като ръководства корпоративна политика, съществуващи и утвърдени системи, или публично достъпни ресурси като информация в интернет, книги, статии от списания, или на продуктите и услуги от вашите конкуренти. Отново, това е Вашата заинтересованите страни по проекта, които са най-сигурният източник на изисквания, е тяхното решение, а не твоя. Не мога да бъда по-категоричен за това.

Къде си участниците в проекта получават идеи от? Те често ще имат домашни любимци Пийвс около съществуващата околна среда, Много ми се иска ние да го направим.”, Ще видите неща, които техните конкуренти може да направи, че те не могат, може да искате да се избегнат проблеми, които те са имали в миналото с други системи, или може просто да имат визия за една нова функция. Някои заинтересовани страни по проекта, по-специално операциите на персонала и старши IT управление, могат да имат изисквания, основани на необходимостта да се интегрират със съществуващите или най-бързо да бъде съществуващи системи или изисквания, мотивирани от IT стратегия, като например намаляване на броя на компютърни платформи в рамките на вашата организация . Въпросът трябва да се направи е, че вашите заинтересованите страни по проекта трябва да се формулират изисквания, основани на широк набор от входове, нещо, което може да искате да се гарантира, се случва чрез задаване на въпроси.

Често съм се установи, че е налице значителна стойност по отношение на включването на някой с опит в съответната област на системата, че аз съм изграждането да помогне за идентифициране на потенциалните изисквания за моята система. Например, в случая на система за електронна търговия, аз най-вероятно ще искате да се въвеждат в някой с международен опит в проектирането, данъчно право експертиза, или логистика експертиза. Този подход е особено ценно, когато вашата организация е изграждането на система, която включва аспекти, че не е запознат с, може би вашата електронна търговия система е първия си опит да обслужва международни клиенти. Аз често ще донесе външни експерти, за един ден или два и с няколко заинтересовани страни по проекта вземете техните мозъциза съответните проблеми, които може да липсват поради нашата неопитност. Това е чудесен начин да се уверете, че ние сме обхващащ базите ни, особено когато сме определяне на първоначалния обхват на проекта, както и да получите заинтересованите страни по проекта мислят отвъд сегашната им среда. Въпреки това, да признае, че има опасност при този подход - вашите външни експерти могат да предложат идеи, които звучат добре, но всъщност не са необходими в момента. С други думи, вие все още трябва да се работи чрез внушение от външен експерт, точно както всеки друг.

4. Видове изискванията

Аз съм твърдо вярва в отделяне изисквания в две категории:

 

  •      Поведенчески. A поведенчески изискване описва как потребителят ще взаимодейства със система (въпроси на потребителския интерфейс), как някой ще използва система (ползване), или как една система изпълнява бизнес функция (бизнес правила). Те често се наричат ​​функционални изисквания.
  •      Не поведенческа. А не-поведенческа изискване описва техническата функция на система, разполага обикновено отнасящи се до наличността, сигурността, производителността, оперативната съвместимост, надеждност и надеждност. Non-поведенчески изисквания често са посочени като нефункционални” изисквания поради тежко именуване решение, взето от IEEE (доколкото аз съм загрижен нефункционален означава, че тя не работи).


Важно е да се разбере, че разграничението между поведението и не-поведенчески изисквания е размита - изискване за представяне описващ очакваната скорост на достъп до данните е ясно от технически характер, но също така ще се отрази на времето за отговор на потребителския интерфейс, който засяга използваемост и потенциал използване. Въпроси за контрол за достъп, като например кой има право на достъп до определена информация, е ясно поведенчески изискване, въпреки че те са обикновено се счита за проблем със сигурността, който попада в категорията не-поведенческа. Отпусни се малко и не си позволявайте да се затвори по въпроси като този. Критичната нещо е да се идентифицират и разбират даден изискване, ако сте погрешно категоризират изискването, който наистина го е грижа?

5. Потенциалните изисквания на артефакти

Тъй като съществуват няколко различни видове изисквания, някои или всички от които могат да бъдат приложими за вашия проект, а защото всеки моделиране артефакт разполага със силни и слаби страни, вие ще искате да има няколко изисквания, моделиране артефакти в интелектуалната си набор от инструменти, за да бъдат ефективни. Таблица 1 обобщава общи артефакти за изискванията за моделиране, артефакти, които са описани по-подробно в статията артефакти за Ефективни за моделиране. Видът (ите) на изискването, че артефактът е обикновено се използва за модел е показан, както и потенциален “простинструмент, който можете да използвате за създаване на артефакта (значението на използването на прости инструменти бе обсъдено по-рано в раздела Някои Философия) .

Artifact

 

Type

 

Simple Tool

 

Description

 


Acceptance Test
Either FITNesse Описва наблюдава функция на система, която
е в интерес на една или повече проекта
заинтересовани страни.
Business rule definition
Behavioral

 

Index card

 

Правило A бизнес е
принцип на действие или политика, че вашият софтуер
трябва да отговарят.
Change case
Either

 

Index card

 

Промяна случаи се използват за
опише нови потенциални изисквания за система
или модификации на съществуващите изисквания.

CRC model  Either, Usually Behavioral

 

Index cards

 

A клас Отговорност
Сътрудник (CRC) модел е колекция от
стандартен индекс карти, всяка от които са били
разделена на три части, като се посочва името
на класа, отговорностите за този клас,
и сътрудниците на класа.
A клас представлява колекция от подобни
обекти, на отговорност е нещо, което
клас, знае или прави, и сътрудник е друг
клас, че един клас взаимодейства с да изпълни своята
отговорности.
Се използват модели CRC, по време на изисквания
моделиране, за концептуално моделиране, която изследва
концепции на домейни и отношения на високо равнище
между тях.
Constraint definition  Either

 

Index card

 

A ограничение е ограничение
на степента на свобода имате за осигуряване на
разтвор. Ограничения
са ефективно глобалните изисквания за вашия
проект.
 
Data flow
diagram (DFD)
 
Behavioral

 

Whiteboard drawing

 

A
данни поточна диаграма (DFD) показва движението
на данни в рамките на една система между процеси,
субекти, както и хранилища за данни.
При моделиране на изискванията на DFD може да бъде
използвана за моделиране контекста на вашата система,
посочват основните външни субекти, които си
система взаимодейства с.
 
Essential UI prototype
Either

 

Post It notes and flip chart
paper
 
Съществен потребителски интерфейс
(UI) прототип е модел с ниска точност, или
прототип, на потребителския интерфейс за вашата система - това
представлява основните идеи зад потребителския интерфейс, но не
точните детайли.
 
Essential use case  Behavioral

 

Paper

 

Случай употреба е последователност от
действия, които осигуряват измерима стойност на
актьор.
неотложни нужди случай е опростена, абстрактни,
генерализирана случай употреба, която улавя намеренията
на потребителя в една технология и изпълнение
независим начин.
Feature  Either, Usually Behavioral

 

Index card

 

Отличителна черта е “малък,
полезен резултат в очите на клиента .
Отличителна черта е малък блок за изграждане на
планиране, отчитане и проследяване.
Това е разбираемо, измерими и
да не се прави в състояние (заедно с няколко други функции) в рамките на
нарастване от две седмици (Палмър
& Фелсинг 2002 г.).
Technical requirement  Non-Behavioral

 

Index card

 

A техническо изискване
се отнася до нефункционален аспект от
система, като спектакъл, свързани с издаване, а
надеждност въпрос или проблем, техническа среда.

Usage scenario
Behavioral

 

Index card

 

Сценарий A ползване описва
общ път на логиката чрез един или повече случаи употреба
или потребителски истории.
Сценарий A ползване случай биха могли да представляват
основен курс на действие, за щастлив път, чрез
един случай употреба, комбинация от части от
щастлив път заменя от стъпките на един или повече
алтернативни пътища чрез един случай употреба, или
път в продължение на няколко случаи използването или потребителски истории.

Use case diagram  Behavioral

 

Whiteboard sketch

 

Диаграмата на използване случай изобразява
колекция на случаите на използване, актьори, тяхното
асоциации, и по избор граница система
кутия. Когато
изисквания за моделиране използване случай диаграма могат да се използват за моделиране
контекста на вашата система, което показва, майорът
външни лица, че вашата система взаимодейства с.
 
User story
Either

 

Index card

 

Потребителското история А е напомняне за
да разговаряте с вашия проект
заинтересовани страни.
Потребителски истории улавяне на високо равнище
изисквания, включително поведенчески изисквания
бизнес правила, ограничения и технически
изисквания.

Едно важно нещо, което трябва да запомните е, че въпреки че има няколко артефакти, които можете да потенциално да използват за събиране на изисквания, което не означава, че ще трябва да използвате всички от тях на всеки един проект. Трябва да се разбере, когато това е подходящо да се използва всеки артефакт, знание, което ви позволява да следват практиката прилагат Right артефакта (и) на вашата ситуация в ръка.

Основният процес често мотивира артефакт избор. На началната страница I показват, че AM се използва в съчетание с друг процес, софтуер, като Екстремно програмиране (XP) или Единна процеса (UP), чийто обхват е пълният жизнен цикъл. Много често на базовия процес ще предпочете определен първичен изисквания артефакт (и), в случай на XP истории на потребителите и за случаите на използване на UP, един въпрос, който трябва да се вземат предвид при изисквания моделиране. Виж статиите АМ и XP и AM и UP за повече подробности.

6. Техниките за предизвикване изискванията

Има няколко техники за предизвикване на изискванията, които са обобщени в Таблица 2 Всяка техника има компромиси, изводът е, че ще трябва да се научат няколко, ако искате да станете добър в предизвикване на изискванията, и всеки може да се прилага както в един пъргав и не-пъргав начин (аз Ви предлагам да я държи като пъргав, колкото е възможно).

8. Ефективни изискванията за управление на промените

Ефективни екипи за разработка на софтуер прегърнат промяна, приемайки идеята, че изискванията ще се развиват през целия проект. Адалистс разбират, че тъй като изискванията се променят с течение на времето, че всяка инвестиция в началото подробна документация ще се губи само. Вместо агилистс ще направят достатъчно първоначалното моделиране с цел идентифициране на обхвата на проекта и разработване на график на високо равнище и оценка; това е всичко, което наистина трябва в началото на един проект, така че това е всичко, което трябва да направим. По време на развитието те ще моделират буря по начин, който току-що в работно време, за да проучи всяко изискване в необходимия детайл.

Тъй като изискванията се променят често имате нужда от опростена, гъвкав подход по отношение на промените в изискванията за управление. Адалистс искат да разработват софтуер, който е едновременно високо качество и висока стойност, както и най-лесният начин да се развива с висока стойност на софтуера е да се приложат най-приоритетните изисквания на първо място. Адалистс стремят наистина да се справи с промяната, а не да го предотврати, което им позволява да се максимизира възвръщаемостта на инвестициите на заинтересованите страни. Вашият екип за разработка на софтуер има купчина от приоритизирани изисквания, които трябва да бъдат изпълнени - XPers буквално ще имат една купчина от потребителски истории, написани на индексни карти. Екипът взима най-високите изисквания за приоритетни от върха на комина, които те смятат, че могат да се реализират в рамките на текущата итерация. Scrum предполага, че замразява изискванията за текущата итерация да се осигури ниво на стабилност за разработчиците. Ако направите това след всяка промяна на изискването сте в момента за изпълнение, следва да се третира като просто още една ново изискване.

Figure5 общ изглед на пъргав подход към управлението на работните елементи потенциално необходими, за да бъде осъществено от екипа (те всъщност не може да разполага с достатъчно време или ресурси, за да изпълни всички елементи). Тази стратегия отразява подхода на риска стойност насърчавани от Дисциплиниран Ефективни доставка (DAD) рамка процес. Този подход да работи за управление, която е разширение към Продуктова Backlog подход на Scrum методологията за управление на изисквания. Къде Scrum третира изисквания като приоритетен комин, DAD отнема една стъпка по-нататък, за да признае, че не само ще mplement изисквания като част от ежедневната си работа, но вие също върши работата без изискване свързани като вземат за обучение и преглед работни продукти от други отбори . Нови работни позиции, включително дефекти, идентифицирани като част от вашите потребителски дейности за изпитване, са приоритизирани от вашите заинтересованите страни по проекта и се прибавят към купчината в съответното място. Вашите заинтересованите страни по проекта имат право да определят нови изисквания, да си променят мнението за съществуващите изисквания и дори reprioritize изисквания, както им е удобно. Въпреки това, заинтересованите страни трябва да бъдат отговорни за вземането на решения и предоставяне на информация в своевременно.

Фигура 5 Ефективни изисквания се променят управленски процес.

Разработчиците са отговорни за оценка на усилията, необходими за изпълнение на изискванията, на които те ще работят по. Въпреки че може да се страхуват, че разработчиците не разполагат с необходимата оценка на умения, а това често е вярно първото, фактът е, че тя не отнема много време за хората да получат доста добри в оценяването, когато те знаят, че те ще трябва да живеят до тези оценки. За повече информация, прочетете Ефективни Промяна изисквания за управление.

Leave a Comment