Interaction Flow modelleringssprog - Interaction Flow Modeling Language
Den Interaktion Flow Modeling Language ( IFML ) er en standardiseret modellering sprog inden for softwareudvikling. IFML inkluderer et sæt grafiske notationer til at skabe visuelle modeller af brugerinteraktioner og front-end opførsel i softwaresystemer.
Interaction Flow Modelling Language blev udviklet i 2012 og 2013 under ledelse af WebRatio og blev inspireret af WebML- notationen såvel som af et par andre oplevelser inden for Web-modelleringsområdet .
Det blev vedtaget som en standard af Object Management Group (OMG) i marts 2013.
Indhold
Fokus
IFML understøtter den platformuafhængige beskrivelse af grafiske brugergrænseflader til applikationer, der er adgang til eller implementeret på systemer som stationære computere, bærbare computere, PDA'er, mobiltelefoner og tablets. Fokus for beskrivelsen er på strukturen og opførslen af applikationen, som den opfattes af slutbrugeren.
IFML beskriver brugerinteraktioner og kontroladfærd for front-end af applikationer, der tilhører følgende domæner:
- HTML + HTTP-baserede webapplikationer.
- Rige internetapplikationer, som understøttet af HTML 5-standarden.
- Mobil applikationer.
- Klient-server applikationer.
- Desktop applikationer.
- Embedded Human Machine Interfaces til kontrolapplikationer.
- Multikanal og kontekstbevidste applikationer.
IFML tager ikke højde for specifikationen af bi-dimensionel og tredimensionel computerbaseret grafik.
IFML gælder ikke for modellering af præsentationsproblemer (layout / udseende og fornemmelse) af en applikations front-end eller design af forretningslogik og datakomponenter. Selvom disse aspekter ikke er sproget i fokus, tillader IFML designere at referere til eksterne modeller eller modellere artefakter vedrørende disse aspekter inden for IFML-modeller.
Standardens indhold
IFML-specifikationen består af:
- IFML- metamodel ( MOF ).
- IFML UML-profilen .
- Den visuelle syntaks af IFML (defineret via diagram-definition og diagramudvekslingsspecifikation).
- IFML XMI- modeludvekslingsformat.
Vigtigste modelleringskoncepter
En IFML-model består af en eller flere visningscontainere (muligvis indlejret). F.eks. Vinduer i traditionelle desktop-applikationer eller sideskabeloner i webapplikationer. En visningsbeholder kan indeholde visningskomponenter , der angiver offentliggørelse af statisk eller dynamisk indhold eller interfaceelementer til dataregistrering (såsom inputformularer). En visning komponent kan have input og output parameter s.
En visningsbeholder og en visningskomponent kan tilknyttes hændelser , der kan repræsentere brugernes interaktion eller systemgenererede forekomster. F.eks. En begivenhed til valg af et eller flere elementer fra en liste eller til indsendelse af input fra en formular. Effekten af en begivenhed er repræsenteret af en interaktionsflowforbindelse . Interaktionsstrømmen udtrykker en ændring af status for brugergrænsefladen. En begivenhed kan også udløse en handling , der udføres inden opdatering af brugergrænsefladens tilstand; for eksempel en slet- eller opdateringsoperation i tilfælde af en database. En afhængighed af input / output mellem elementer kan specificeres gennem parameterbindinger, der er tilknyttet navigationsstrømme eller gennem dataflow , der kun beskriver dataoverførsel.
IFML inkluderer også koncepter til at definere begrænsninger, modularisering og kontekstbevidsthed (f.eks. Baseret på brugerprofil, enhed, placering) over modelleringselementer. IFML-koncepter kan udvides med standardudvidelsesmekanismer baseret på stereotype .
Fordele
Omkostningerne ved udvikling af front-end applikationer er steget med fremkomsten af en hidtil uset række enheder, teknologiske platforme og kommunikationskanaler, som ikke ledsages af fremkomsten af en passende tilgang til oprettelse af en Platform Independent Model (PIM), der kan være bruges til at designe brugerinteraktioner uafhængigt af implementeringsplatformen. Dette får frontend-udvikling til at være en kostbar og ineffektiv proces, hvor manuel kodning er den fremherskende udviklingsmetode, genbrug af designartefakter er lav, og portabilitet af applikationer på tværs af platforme er stadig vanskelig.
IFML bringer flere fordele ved udviklingen af applikationsfronter:
- Det understøtter den formelle specifikation af front-end fra forskellige perspektiver: interface-sammensætning, brugerinteraktion, begivenhedsstyring.
- Det understøtter forbindelse med forretningslogikken, datamodellen og det grafiske præsentationslag.
- Det isolerer specifikationen af front-end fra implementeringsspecifikke problemer.
- Det forbedrer udviklingsprocessen ved at fremme adskillelsen af bekymringer mellem roller i interaktionsdesignet.
- Det muliggør kommunikation af UI-design til ikke-tekniske interessenter.
Implementeringer og værktøjer
IFML understøttes i øjeblikket af WebRatio [1] . Et sæt blogindlæg, der beskriver standardiseringsprocessen, er tilgængeligt her .
En ny, open source IFML-editor baseret på Eclipse, EMF / GMF og Graphiti API er under udvikling. Værktøjet frigives som et open source Eclipse-projekt. Værktøjet vil omfatte kortlægninger fra IFML-abstrakte koncepter til de platformspecifikke koncepter Java Swing, Microsoft WPF og HTML. Modelleringen af IFML-diagrammer til UI-delen kan suppleres med (eksekverbare) UML-diagrammer i henhold til fUML- specifikationer kombineret med Alf-scripts til back-end forretningslogik. En sneak preview af værktøjets funktioner kan ses i denne video .
Historie
IFML blev inspireret af WebML- notationen, der blev opfundet på Politecnico di Milano af Stefano Ceri og Piero Fraternali, med et team af mennesker, herunder Roberto Acerbis, Aldo Bongio, Marco Brambilla, Sara Comai, Stefano Butti og Maristella Matera.
Referencer
Yderligere læsning
- Marco Brambilla; Piero Fraternali (2015). Interaction Flow modelleringssprog. Modeldrevet UI-konstruktion af web- og mobilapps med IFML . Morgan Kaufmann & OMG Press. ISBN 978-0-12-800108-0 .
- Stefano Ceri; Piero Fraternali; Aldo Bongio; Marco Brambilla; Sara Comai; Maristella Matera (2002). Design af dataintensive webapplikationer . Morgan Kaufmann. ISBN 978-1-55860-843-6 .
- S. Ceri; M. Brambilla; P. Fraternali (2009), "Historien om WebML-lektioner, der læres af 10 års model-drevet udvikling af webapplikationer", konceptuel modellering: fundamenter og applikationer, essays til ære for John Mylopoulos , Springer LNCS, Festschrift-serien, 5600 , pp 273–292
- RS Wazlawick (2014), "Interface Tier Design with IFML", Objektorienteret analyse og design til informationssystemer: Modellering med UML, OCL og IFML , Morgan Kaufmann, s. 289–334
eksterne links
- IFML.org http://www.ifml.org
- IFML officielle specifikationsdokumenter http://www.omg.org/spec/IFML/
- WebML http://www.webml.org
- WebRatio http://www.webratio.com
