UML

Обједињени језик за моделовање или UML (енгл. Unified Modeling Language) је у пољу софтверског инжењерства стандардни језик за визуелно приказивање објектног модела. UML је општи језик за моделовање помоћу ког се преко графичких симбола прави апстрактни модел система познат као UML модел.

UML logo
UML Diagrams
Колаж UML дијаграма.

Опис

Званично дефинисан од стране ОМГ групе (група руководилаца објектима) помоћу МОФ (Мета Обџект Фасилити) метамодела. Једна од одлика УМЛ-а као и свих осталих језика дефинисаних помоћу МОФ-а је могућност да се програмери више посвете дизајну и архитектури. Помоћу одређених алата може да се преведе у неки од стандардних програмских језика (јава, C#).

Metisergid

Metisergid (UML-491, Sansert, Deseril) je lek na recept koji se koristi za profilaktički tretman migrenskih glavobolja.

Veb-programer

Veb-developer je osoba koja obavlja neki od poslova vezanih za razvoj veb-aplikacija.

Алгоритам

Алгоритам је опис за решавање неког проблема. Реч долази из презимена персијског математичара Ал Хорезмија. Алгоритам је био израз који описује начин рачунања децималним бројевима уведеним око 1600. године у Европи. Алгоритмичарима су се раније звали они математичари који не оперишу симболима множина представљеним на абакусу, него једним (индијским или арапским) системом знакова за бројеве (од 16. века раширеним у Европи).

У новије време, алгоритам је појам који се готово искључиво везује за информатику и, мада не постоји јединствена општеприхваћена дефиниција, подразумева се да је у питању некако описана процедура за обављање посла. У ту сврху се дефинишу алгоритамски језици. То су формализовани језици којима се релативно лако описују поступци решавања проблема представљених алгоритмом, такви су на пример програмски језици Алгол, Фортран и Кобол.

У математичкој логици је алгоритам генерализован појам и односи се на поступак за поступно претварање низова знакова.

Архитектонско описни језик

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

Заједница системског инжењеринга користи архитектонски описни језик као језик и/или концептуални модел да опише и представи системске архитектуре

Заједница системског инжењеринга користи архитектонски описни језик као програмски језик за креирање описа софтверске архитектуре. У случају такозване техничке архитектуре, архитектура мора да буде саопштена софтверским програмерима; функционална архитектура је саопштена разним актерима и корисницима. Неки АОЈи који су развијени су: Акми (развио је Универзитет Карнеги Мелон), ААДЈ (стандардизован од стране УАИ), Ц2 (развије он стане Универзитета Калифорније), СБЦ-АОЈ (развијен од стране Националног Сун Јат-Сен универзитета), Дарвин (развијен од стране царског колеџа Лондон), и Рајт (развијен од стране ЦМУ).

Актуелна листа архитектонских програмских језика се мозе наћи на Up-to-date list of ADLs.

ISO/IEC/IEEE 42010 документ, Systems and software engineering—Architecture description, дефинише архитектонски описни језик као "било каква форма израза за коришћење у архитектонским описима" и специфише минималне захтеве за АОЈе.

Заједница предузетног моделовања и инжењеринга је такође развила архитектонско описне језике прављене на предузетном нивоу. Примери укључују АрхиМејт (сада стандард од Отворене групе), ДЕМО, АБАКУС (развијен од стране Универзитета технологије, Сиднеј). Ови језици се не односе обавезно на софтверске компоненте, итд. Већина њих , ипак, односи апликациску архитектуру која је саопштне софтверским инжењерима.

Већина написаног испод се примарно односи на перспективу заједнице софтверских инжењера.

Аспектно-оријентисано програмирање

У рачунарству, аспектно-оријентисано програмирање (АОП) је патентирана парадигма програмирања која има за циљ да повећа модуларност дозвољавајући издвајање механизмом крос-сечење проблема. То чини додавањем додатног понашања на постојећем коду без мењања самог кода, уместо одвојено наводећи који код је модификован преко "поинткат" спецификације, као што су "лог све функције позива када име функција почиње са 'сет' ". Ово омогућава понашања која нису у средишту пословне логике (као што улоговање) да се дода у програму без пренатрпавања језгра кода на функционалности. АОП формира основу за аспектно оријентисан развој софтвера.

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

Аспект-оријентисано програмирање подразумева разбијање програмске логике у различитим деловима (тзв бриге, уједињене области функционалности). Скоро све програмске парадигме подржавају одређени ниво груписања и енкапсулације забринутости у посебне, независне ентитете пружајући апстракције (нпр функције, процедуре, модули, класе, методе) које могу да се користе за спровођење, апстракција и компоновања ових проблема. Неки проблеми "пресецају" више апстракције у програму, и пркоси овом облику имплементације. Ови проблеми се називају укрштена забринутост или хоризонтална забринутост.

Пријављивање илуструје попречно сечење забринутости зато што стратегија пријављивања нужно утиче на сваки пријављени део система. Пријављивање на тај начин пресеца све пријављене класе и методе.

Све АОП имплементације имају неке прожимајуће изразе који енкапсулирају сваку забринутост на једном месту. Разлика између имплементације лежи у моћи, сигурности и употребљивости конструкције предвиђених. На пример, пресретачи који уређују начин да пресретну изразе ограниченог облика прожимајућег, без много подршке типа безбедности или отклањања грешака. АспектЈ има велики број таквих израза и сажима их у специјално одељење, један аспект. На пример, један аспект може променити понашање основног кода (нон-аспект део програма) применом савета (додатна понашања) на различитим придружењем поена (тачака у програму) наведеним у квантификацији или упитима који се зову "поинткат" (да детектује да ли је дати придружити тачка матцхес). Један аспект такође може да направи бинарне-компатибилне структурне промене на другим класама, као додавање чланова или родитеља.

Атрибутско-оријентисано програмирање

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

Аутоматско програмирање

У информатици, термин аутоматско програмирање идентификује тип компјутерског програмирања у којем неки механизми генеришу компјутерски програм који омогућава људским програмерима да пишу код на вишем нивоу апстракције.

Нема сагластности у погледу прецизног дефинисања аутоматског програмирања, углавном зато што се њено значење мењало током времена. Дејвид Парнас је пратећи историју "аутоматског програмирања" у објављеним истраживањима уочио да је током 1940-их оно описивало аутоматизацију ручног процеса бушења папирних трака. Касније се односило на превод програмских језика високог нивоа, као што су Фортран и Алгол. У ствари, један од првих програма препознатљивих као компајлер звао се Аутокод. Парнас је закључио да је "аутоматско програмирање увек било еуфемизам за програмирање на језику вишег нивоа него што је доступно програмеру."

Дијаграм класа

У инжењерингу софтвера, дијаграм класа или класни дијаграм у обједињеном језику за моделовање (UML) је тип дијаграма статичке структуре који описује структуру система приказивањем класа система, њихових атрибута, операција (метода) и односа између објеката.

Дијаграм класа је главни градивни блок објектно-оријентисаног моделовања. Користи се за опште концепутално моделовање структуре апликације, као и за детаљно моделовање превођења модела у програмски код. Дијаграми класа могу се користити и за моделовање података. Класе у дијаграму класа представљају главне елементе, интеракције у апликацији и класе које треба да буду испрограмиране.

У дијаграму, класе су представљене кутијама које се састоје из три дела:

Горњи део садржи назив класе. Исписан је подебљано и центрирано, а прво слово назива класе је велико.

Средњи део садржи атрибуте класе. Они су поравнати улево, а прво слово је мало.

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

Да би се даље описало понашање система, ови дијаграми класа могу бити допуњени дијаграмом стања или UML аутоматом стања.

Дијаграм протока података

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

Дијаграм случајева коришћења

Дијаграм случајева коришћења (енгл. Use case diagram) приказ је интеракције корисника са системом који показује однос између корисника и различитих случајева коришћења у којима је корисник укључен. Дијаграм случаја коришћења може идентификовати различите типове корисника система и различите случајеве коришћења и често ће бити пропраћен и другим типовима дијаграма. Случајеви коришћења представљени су круговима или елипсама.

Дијаграм стања

Дијаграм стања је дијаграм који се користи на пољу компјутерских наука, који представља понашање система који је састављен од коначног броја стања. Постоје многи облици дијаграма стања, који се незнатно разликују и имају различиту семантику.

Извршавање (рачунарство)

Извршење код рачунарског и софтверског инжењеринга је процес којим рачунар или виртуелна машина обавља инструкције рачунарског програма. Упутства у програмском обарачу слажу једноставне акције на машину за извршење. Те акције производе ефекте у складу са семантиком упутства у програму.

Рачунарски програми могу да изврше гомилу процеса без људског учествовања, или корисник може укуцати команде у интерактивној сесији преводиоца. У овом случају "команде" су једноставни програми, чије извршавање је сковано заједно.

Израз run се скоро користи као синоним за извршење. Оба значења "to run" и "to execute" су сродна и односе се на специфичну акцију покретања (или лансирања или позивања) програма од стране корисника, као у "Молим вас покрените апликацију."

Мартин Фаулер (софтверски инжењер)

Мартин Фаулер (рођен 1963) је британски програмер, аутор и међународни јавни говорник о софтверском развоју, специјализован за oбјектно-оријентисане анализе и дизајн , UML језик, обрасце и методологију развоја агилних софтвера, укључујући екстремно програмирање.

Његова књига, објављена 1999. године, учинила је популарним процес реструктурирања постојећег рачунарског кода. Године 2004. увео је модел презентација, архитектонски образац.

Модел објекти-везе

Модел објекти-везе (МОВ) представља један од начина на који се могу пројектовати базе података. Поред IDEF1x, UML, и још неколико других метода, МОВ представља један од најпопуларнијих метода.

Наиме, МОВ настоји да графичким путем, користећи дијаграм објекти-везе (ДОВ) прикаже модел реалног света, тј оног дела реалног света на који се база података односи. То приказивање стварности се одликује у приказивању објеката, њихових особина и међусобних односа.

Натријум-бензоат

Натријев бензоат (E211) је натријумова со бензоеве киселине хемијске једначине NaC6H5CO2. Најчешће се производи реакцијом натријум хидроксида с бензојевом киселином. Натријум бензоат је конзерванс који се највише користи у производњи газираних пића, воћних сокова, укисељеног поврћа, мармелада, киселих краставаца и зачина.

Обласно-специфично моделовање

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

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

Програмер

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

Примарни програмски језик програмера (асемблер, COBOL, C, C++, C#, Java, Lisp, Python, итд.) често се ставља у префикс назива професије (нпр. C програмер), а они који раде у веб окружењу често се називају веб програмери.

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

Развојни циклус софтвера

У софтверском инжењерству, методологија за развој софтвера (позната и као методологија за развој система, развој софтверског животног циклуса, процес развоја софтвера, софтверски процес) је развој софтверског рада у различитим фазама (или фазе) који садржи активности са намерама за боље планирање и управљање. Често се сматра подскупом система развоја животног циклуса. Методологија може укључити пре-дефинисање конкретних резултата и артефаката који су створени и завршени од стране пројектног тима за развој или одржавање апликације.Уобичајене методологије укључују водопад модел, израду прототипова, итеративни и постепен развој, спирални развој, брз развој апликација, екстремно програмирање и разне врсте агилане методологије. Неки људи сматрају да животни циклус "модела" је општији термин за категорију методологије и "процеса" развоја софтвера а конкретнији назив се односи на конкретан процес по избору одређене организације. На пример, постоје многи специфични процеси развоја софтвера који се уклапају у спирални животни век модела.

Семантички-оријентисано програмирање

Семантички оријентисано програмирање (SOP) је парадигма програмирања у којој програмер формулише логику домена путем семантичке структуре. Концептно програмирање је слично као и концептно оријентисано програмирање.

ISO стандарди по бројевима
1–9999
10000–19999
20000+

На другим језицима

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.