Правилно създаване на Техническо задание

от Wiki

Направо към: навигация, търсене

В практиката се налага да се създават нови модули, да се добавят документи, да се изменя поведението на продукта или да се откриват определен вид слабости (грешки) в програмите. Стандартната процедура е чрез описание на процесите или така нареченото „Техническо задание“.
Под техническо задание се има предвид комплекс от документи, описания, действие и примери за изпълнение на задачите. То помага на всички участници да разберат идеята и да я реализират успешно. На базата на техническото задание се определят сроковете за изпълнение на измененията и съответно то е опорна точка за ценообразуване на желаните функции.

Съдържание

Дефиниране за задание

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

Правилно задание

Правилното техническо задание се състои от 4 стъпки, от тях първите 3 са задължителни, последната стъпка е спомагателна и е препоръчително да се направи:

  1. Предложение и аргументиране на предложението за изменение или създаване на нова функционалност. Това е задължителен етап от заданието;
  2. Конкретен пример за входните данни, посочват се реални ситуации, дават се практически действия и последователности. Към тях се прилагат съответните действия, които трябва да се предприемат от софтуера. Това е задължителен етап от заданието;
  3. Посочва се резултат от действието върху входните данни във вид на таблица или документ. От тук може да се провери каква трансформация е извършена върху входните данни и как са получени резултатите. При изпълнение на заданието и завършване на промените се проиграва именно този пример, като се съпоставят точка 2 и точка 3. Това е задължителен етап от заданието;
  4. Допълнителни разяснения за метода на работа, аналози в други системи, евентуални сходни документи и друга спомагателна информация. Това е препоръчителна стъпка и служи за по-доброто разбиране на процесите от страна на програмистите и архитектите на компютърната система.

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

Неправилно задание

Неправилното задание за изменение на продуктите може да се преразкаже с няколко прости изречения. То обикновено се състои в аналогии и няма точен пример за последователност работа и дефиниция на задачи:

  1. Задание от типа: „Направете тази справка като онази“ може да предизвика единствено коментари от специалист, например „Тогава използвате онази справка, а не тази!“;
  2. Предложения от типа: „Добавете в този документ такива данни“ автоматично изисква да се представя съответна аргументация или формула. Обикновено след това от клиентите следва тишина, защото те самите не знаят каква е точната формула или нямат никаква аргументация;
  3. Стандартно запитване е: „Може ли този продукт да работи като онзи“ и отговорът е „Не, всеки продукт има своя технология на работа и не може да се смесват“.

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

Примерно техническо задание

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

  1. Необходима е модификация на документ за продажба, именно „Стокова разписка“, като в документа се добавят текущите задължения на клиента, получил този документ. Настоящото изменение ще помогне търговската дейност защото ще дефинира ясно задълженията на клиента върху всяко издадено копие;
  2. Пример за изменение на документа е добавянето на следните редове в края на документа, под таблицата със стоките:
    • Текуща сума на документа преди плащане;
    • Предишно задължение на клиента;
    • Плащане по документа;
    • Задължение след плащане или неплатен остатък.
  3. Като резултат от изменението на „Стокова разписка“ е необходимо върху документа да се появят следните данни:
    • 1000 EUR – текуща сума;
    • 700 EUR – предишно задължени;
    • 900 EUR – плащане;
    • 800 EUR – оставащо задължение.
  4. Задължението на клиента се формира от предишното задължение, сумирано с текущата сума на документа. След това се изважда направеното плащане и като остатък се изписва разликата между задължението и плащането.

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

Време, което е необходимо за техническо задание

Много често се среща твърдението, че „няма време“ за да се напише техническо задание. Практиката показва че:

  1. Времето за създаване на техническо задание е от порядъка на няколко минути до 1-2 часа;
  2. Времето за изпълнение на техническото задание от порядъка на няколко дни до 1-2 месеца.

От това следва, че техническото задание е много по-просто от реалното изпълнение на проекта. Затова то трябва да бъде прецизно направено и предадено в образцов вид.
Съотношението на времето за създавате на техническо задание към времето за изпълнение е от порядъка на 1:50 до 1:200. Затова е важно да се анализират всички желани възможности и една след това да се опишат като промени в продуктите.

Устно техническо задание

Съществуват партньори, които обясняват измененията в програмните продукти устно. След това същите тези партньори проверяват резултата и правят ново задание. Този процес се повтаря до безкрай и е изтощителен за всички страни. Проблемът, който съществува е в това, че няма завършена форма на заданието, то се сменя произволно и никога не се достига до окончателен вариант. Едновременно с това програмистите на системата отделят много време и ресурс за изграждане на модули, след това ги преработват според новите изисквания и това постоянно се върти в кръг. Тъй като времето за създаване на модул е от 50 до 200 пъти по-дълго от описанието, то непрекъснатите промени натоварват единствено програмистите и затормозяват развитието на програмните продукти.
От тези непрекъснати цикли се появява извода че техническото задание трябва да е писмено и подробно. В противен случай не се постига никакъв резултат.

Изводи

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

Полезни връзки

Лични инструменти