80/20 такође утиче на заказивање

Сви смо чули за правило 80/20, оно које каже да 80% нашег успеха (ефеката) потиче од само 20% наших поступака (узрока). Па, ова универзална истина такође утиче на развој софтвера и у овом чланку ћемо представити неке од основа ове изјаве.

БПМ

Управљање пословним процесима, са скраћеницом на енглеском језику, је дисциплина управљања (између осталог) која вам омогућава да визуелно разумете процесе који се морају спровести у послу (или на многим другим местима). Међу његовим главним квалитетима је чињеница да може да анализира сложене процесе и чини их „једноставним“.

Постоји много алата отвореног кода који вам омогућавају да развијете БПМ дијаграме, а овај који сам користио за овај чланак је БонитаСофт. Ако желите да сазнате мало више о управљању процесима, на Интернету постоје многи водичи и књиге на ту тему. Вратимо се сада централној теми.

Софтверски пројекти

Данас постоји много методологија за развој пројеката: агилне, традиционалне, хибридне и тако даље. Једна ствар коју сви имају заједничко је припрема . Шта под тим мислим? Да ће 80% вашег успеха у овом софтверском пројекту зависити од првих 20% целог процеса: припреме.

Припрема пројекта

Ово је логична поента која се ретко примењује у стварности (као и многе друге логичне ствари које су нелогичне у пракси). Када говоримо о припреми, морамо разумети способност разумевања проблема, разумевања решења и, пре свега, процеса који решење користи. Једна од најмање уобичајених ствари које се налазе у непрофесионалним софтверским пројектима је недостатак документације о овој теми. Ово се обично дешава у приватним компанијама, јер жеља за продајом често засенује процес развоја.

Пошто многи од оних који читају ове чланке раде у области технологије или су повезани са њом, вреди напоменути да ако у било ком тренутку свог радног века наиђу на компанију/добављача који не испуњава добар стандард припреме, скоро је 80% сигурно да пројекат неће добро проћи.

Кључ је апстракција

Ово је нешто што сам научио током времена проведеног у GNU/Linux-у, и то се изнова показује као кључно у процесу развоја софтвера. Способност апстраховања проблема и њиховог претварања у једноставније ствари је од виталног значаја за генерисање елегантног и, пре свега, издржљивог кода . И можда је ово једна од главних разлика између великих професионалних пројеката и пројеката који неконтролисано расту. Први размишљају, разумеју и структурирају процес, док га други једноставно одржавају у току без потребе да га разумеју.

Стагер

Ово је назив пројекта који развија програм за инсталацију Гентоо, као што можете замислити, ово је прилично сложен процес, јер подржава велики број архитектура. Још један фактор који треба узети у обзир је број конфигурација које подржава, на нивоу језгра, инит систем итд. И кажем вам све ово, јер је то уједно и мој рад на тези, који морам завршити пре завршетка студија. Очигледно је да не могу да направим програм који укључује апсолутно све могуће опције у тако кратком времену (до јула следеће године), али бар могу да генеришем онај који омогућава инсталирање функционалног система на врло основни начин.

Разумевање процеса инсталације

Захваљујући БПМ алатима може се генерисати дијаграм процеса који нам омогућава да разумемо кораке неопходне за успешну инсталацију Гентоо-а на рачунар.

Процес инсталације Гентоо-а

Сопствени. Цхристопхер Диаз Риверос

Упркос томе што садржи неколико процеса и потпроцеса, очигледно је прилично сажет и види се да имамо 18 линеарних корака. Ово је важно јер је апликација која има линеарну структуру једноставна за имплементацију, а истовремено паралелност може бити генерисана у једној или више нити ако је потребно.

Још један важан фактор је то што нам омогућава да апстрахујемо скупове процеса по типу; на пример, дефинисање подпроцеса језгра нам омогућава да знамо да постоје специфични задаци унутар њега који су директно повезани са процесом успешне инсталације језгра.

Потпроцес "кернел"

Сопствени. Цхристопхер Диаз Риверос

На тај начин сваки "сложен" корак постаје "једноставан" на глобалан начин, без губљења потребних детаља. Ово олакшава видљивост склопа без смањења нивоа спецификације неопходног за успешно довршење процеса. И не можемо порећи да је лакше видети слику него прочитати цео Приручник одједном 

Штеде време

Још једна очигледна предност је та што ако немате директно повезан програмски језик, могуће је извршити логичку анализу без нужног губљења времена на имплементацију језика. Ово је предност у односу на количину времена које се може потрошити на примену неке функције само да би се открило да ће она бити одбачена јер постоји ефикасније решење. Као каква би била решења у псеудо-коду (нешто што такође игноришу многи „програмери“, али не би требало да буде).

Једноставно режирање пројеката

Узимајући у обзир ове концепте, управљање пројектима (било које врсте) постаје једноставније, јер фокусирамо напоре тамо где су заиста неопходни, а ако се овај део уради исправно, остатак пада под сопственом тежином. Надам се да ће помоћи вашој радозналости и мотивисати вас да истражујете БПМ, алгоритме и ко зна, можда ће вас подстаћи да ми помогнете са мојом тезом  Хвала вам пуно што сте дошли овако далеко и видимо се ускоро. Поздрав


Додај као жељени извор на Гуглу