Дефиниция на софтуерното инженерство

Софтуерното инженерство е дисциплина, формирана от набор от методи, инструменти и техники, които се използват при разработването на софтуер ( софтуер ).

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

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

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

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

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

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

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

Първият от всички етапи на работата, извършена от софтуерните инженери, е внимателно проучване на характеристиките, които се считат за необходими за разработването на програмата, и това е точката, в която те трябва да намерят баланс (все по-трудно постижимо) между прекомерните изисквания на лошите потребители и възможностите на компанията. Времето е пари, а компаниите в компютърния свят го познават много добре.

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

border=0

Търсете друго определение