Какво е разработка на софтуер?

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

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

Синонимни думи за разработка на софтуер са Дизайн на софтуер, Разработка на приложения.

Жизненият цикъл на разработката на софтуер SDLC е рамка, която включва определени стъпки (както е показано на фигурата по-долу):

Фиг. 1

Типичният жизнен цикъл за разработка на софтуер се състои от следните етапи -

  1. Планиране: Анализът на планирането и изискването е началният, жизненоважен и основен етап в SDLC, който се изпълнява от старшите членове на екипа с принос от клиенти, отдел продажби, експерти в областта на домейните, пазарни проучвания в бранша. След това цялата тази информация се натрупва и се използва за планиране на основния подход към проекта, за провеждане на проучване за осъществимост на продукта по всички начини от икономически, оперативни до технически области. Проучването за осъществимост отваря много врати за изпълнение на проекта, но подходът се решава въз основа на най-високия фактор на качество с минимален риск.
  2. Дефиниране: Анализът след изискване, дефинирането и документирането на изискванията по ясен начин е много важно. След като това е направено, тези документирани изисквания трябва да бъдат одобрени или от клиенти, или от пазарни анализатори. SRS (спецификация на софтуерните изисквания) влиза в картина за това, която съдържа всички изисквания на продукта, които трябва да бъдат проектирани и разработени по време на жизнения цикъл на проекта.
  3. Проектиране: SRS се счита за ориентир за продуктови архитекти, за да предложи най-добрата архитектура за продукта, който ще бъде разработен. Въз основа на обхванатите изисквания, за архитектурата на продукта се предлага повече от един подход. Всичко това е документирано в DDS (Спецификация на документа за проектиране). Тогава DDS се преглежда и анализира от важни членове / заинтересовани страни въз основа на различни фактори, като пазарни рискове, модулна конструкция, бюджетни ограничения, ограничения във времето, надеждност на продукта, най-добрият подход за проектиране и т.н. Подходът на дизайна носи цялата информация. За архитектурния модул на продукта под формата на диаграма на потока от данни. Вътрешни или външни, най-малките подробности трябва да присъстват в документа за проектиране.
  4. Изграждане: Това е етапът, в който започва реалното развитие на продукта и се изгражда продуктът. Позовавайки се на диаграмата на потока от данни в документа за проектиране, програмният код се генерира. Колкото по-ясна е предназначена за документиране, толкова по-безпроблемно е генерирането на код. Кодерите / разработчиците трябва да следват указанията за кодиране, дефинирани от инструментите им за организация и програмиране, като интерпретатори, компилатори, отстраняване на грешки и т.н., за да направят кода по-четим и ясен.
  5. Тестване: Тестването е част от повечето от всички етапи в SDLC, следователно можем да кажем, че тестването е подмножество от всички етапи. Тестването е етап, в който дефектите на продуктите се отчитат, проследяват, фиксират и проверяват отново, докато продуктът не достигне определените стандарти за качество съгласно SRS.
  6. Разгръщане: Когато даден продукт е тестван напълно и е готов да бъде наблюдаван от пазара, официалното пускане се извършва на съответния пазар от тази организация. Внедряването на продукт може да се случи и в слотове, като го пуснете за ограничени потребители в бизнес среда в реално време и тествате края на отговора за този продукт (UAT, т.е. тест за приемане от потребителя). Въз основа на отзивите на потребителите от потребителите, необходимите функции се реализират и пускат като по-новата версия. Допълнителна поддръжка се извършва за съществуващи потребители.

Модели за разработка на софтуер

По-долу са споменати моделите на жизнения цикъл на разработката на софтуер, които са най-популярни сред индустриите:

  • Модел на водопад
  • Модел RAD
  • Итеративен модел
  • Agile модел
  • Спирален модел
  • V-модел
  • Модел с голям взрив

Модел на водопад:

Един от най-простите модели за разработка на софтуер. Съгласно това, всички фази на SDLC работят една след друга, по линеен начин.

Фиг

https://www.tutorialspoint.com/

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

Модел RAD:

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

Фигурата, показана по-долу, показва фазите на този модел.

Фиг

https://www.researchgate.net/figure/

Итеративен модел:

Итеративният модел проектира изпълнението на проекта циклично.

Фигура 4

https://www.tutorialspoint.com/

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

Спирален модел:

Този модел е синтез на два модела - SDLC и Iterative model.

Фиг

https://www.tutorialspoint.com/

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

V Модел:

Този модел преодолява недостатъка на модела на водопада. Според модела на водопада следващата стъпка се обработва само когато настоящата стъпка се изпълни и няма начин да се коригира грешката на последната стъпка. V моделът взема предвид това и предоставя начин за тестване на софтуера на всеки етап по обратен начин.

Фиг. 6

https://www.tutorialspoint.com/

Всички тестови планове и стратегии се проверяват на всеки етап. Следователно този модел е известен още като „модел за проверка и валидиране“.

Модел с голям взрив:

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

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

Фиг. 7

https://www.tutorialride.com/

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

Препоръчителни статии

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

  1. Сравнение между софтуер и уеб разработка
  2. Софтуерни инженери и разработчици на софтуер
  3. Ръководство за кариерата като софтуерен инженер
  4. Кариера в разработчиците на софтуер