Разработка на софтуер: Разлика между версии

Изтрито е съдържание Добавено е съдържание
форматиране: 2x нов ред, 2x тире, 6lokavica, А|А, интервали, кавички (ползвайки Advisor.js)
→‎Методологии: без препратки към англ.
Ред 8:
 
== Методологии ==
[[:en:software development methodology|Софтуерната методологията]]методология при разработката на [[софтуер]] (още известна като процес на разработка на софтуер, модел или цикъл от живота) е рамка, която се използва за [[:en:structure|структуриране]], [[:en:plan|планиране]] и контролиране процеса на разработка на [[:en:information system|информационни системи]]. ШирокаПрез разновидностгодините наса такиваеволюирали платформимного саразновидности еволюиралина втакива годинитеплатформи, всяка със своите отличителни предимства и недостатъци. Има няколко различни подхода в разработката на софтуер: някои използват по-структуриран, инженерен подход за разработка на бизнес решения, докато други могат да приемат по-частични подходи, където софтуерът се развива на части в процеса на разработка. Една системна методология на разработка на софтуер не винаги е подходяща за всички проекти. Всяка от възможните методологии е най-подходяща за определен тип проекти, в зависимост от различните технически, организационни, проектовипроектни и екипни спецификации.
 
Повечето методологии споделят някои от следните комбинации в разработката на софтуер:
Ред 15:
* Събиране на изискванията за предложеното бизнес решение
* Изработване на план или дизайн на софтуерно решение
* Писане на програмен код (имплементация)
* Имплементация (писане на код) на софтуера
* Тестване на софтуера
* Внедряване
* [[:en:Software_maintenance|Поддръжка]] и оправяне на [[:en:Software_bugs|бъговебъг]]ове
Тези етапи често се свързват с цикъла на живот на [[Разработка на софтуер|софтуерната разработка]]. Различните подходи в разработката на софтуер  ги използват в различна последователност или посвещават повече, или по-малко време на някои от тях. Детайлите в документацията на всеки етап също може да варират. Посочените етапи могат да се свържат с подхода на „водопада“ или може да бъдат повтаряни в различни цикли (малко „по-екстремен“ подход). По-екстремният подход обикновено включва по-малко отделено време в планирането и документирането, но повече време в писането на програмен код и разработката на автоматизирани тестове. По-екстремните подходи също предлагат непрекъснато тестване по време на живота на разработка, както и работещ (или без бъгове) продукт през цялото време. По-структурираните или подходи на „водопада“ се стремят да бъдат преценени повечето рискове и да се разработи план в детайли за софтуера, преди неговата [[:en:Implementation|имплементация]] (писанеписането на програмен код), и да се избегнат значителни промени в дизайна и програмния код в по-късен етап от планирането на софтуерната разработка.
 
Това са значителни предимства и недостатъци за различните методологии и най-добрият подход в разрешаването на проблем, използвайки софтуер, често зависи от типа на проблема. Ако проблемът е добре разбран и може да бъде планирано решение за дълъг период от време напред, то подходите на „водопада“ често са най-удачни. От друга страна ако проблемът е уникален (или е такъв поне за екипа от разработчици) и структурата на софтуерното решение не може да бъде лесно визуализирана, то тогава „по-екстремните“, частични подходи биха свършили по-добра работа.