AMS-case. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

Like dokumenter
AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

case forts. Generell interaktor Integer- interaktor Domenemodell Eksemplifisering av modellbasert tilnærming til design av brukergrensesnitt

case forts. Alternativ 1 Alternativer Sammensetning Objekt-interaktor med valg

AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

Konseptuell modell, skjermdesign og konstruksjon

Modeller for design av Web-Applikasjoner

I dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?

Kapittel 7 & 8. Kravspesifikasjoner & Data design. Thomas Tjøstheim og Thomas Edvinsen. 20 September Kapittel 7 & 8 p.1/20

Use case drevet design med UML

UML- Use case drevet analyse og design. Domenemodeller Sekvensdiagrammer Use case realisering med GRASP patterns Klassediagram - designmodeller

UML 1. Use case drevet analyse og design Kirsten Ribu

Bruk av kontrollelementer i design av grafiske brukergrensesnitt TDT4180, vår 2017

INF 329: Web-Teknologier. Dataimplementasjon. Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004

Diskusjon:SportsAdmin Medlemsadministrasjon

Kap3: Klassemodellering

Arbeidskrav 1. Se fremdriftsplanen for innleveringsfrist. Emneansvarlig: Olav Dæhli 1

Arbeidskrav 1. Se fremdriftsplanen for innleveringsfrist. Emneansvarlig: Olav Dæhli 1

Data design p.1/17. Data design. Lage ER modell av kravspesifikasjoner.

UML-Unified Modeling Language. Prosess-oversikt. Use case realisering

Øvingsforelesning 1 Python (TDT4110)

Introduksjon til objektorientert programmering

ITGK - H2010, Matlab. Dagens tema : Teori - Databaser

Etternavn Fornavn Født Død Annet Felt

UML-Unified Modeling Language

Semantisk Analyse del III

2017/05/24 04:52 1/5 Dynamisk spørring. Dynamisk spørring blir brukt til å velge objekter fra modellen, typisk for å angi inndata til en oppgave.

Enkel app-programmering med JavaFX og FXML

Datamodellering 101 En tenkt høgskoledatabase

Fra krav til objektdesign

Funksjoner og prosedyrer

HØGSKOLEN I SØR-TRØNDELAG

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign

Agio Forvaltning AS - Portal. Enkelt, effektivt og tidsbesparende!

Datatyper og typesjekking

Datatyper og typesjekking

EKSAMEN OBJEKTORIENTERT PROGRAMMERING Alle trykte og skrevne. Java API dokumentasjon er tilgjengelig lokalt på hver maskin.

CabinWeb BRUKERDOKUMENTASJON ET SYSTEM UTVIKLET AV DELFI DATA

Repitisjonskurs. Arv, Subklasser og Grensesnitt

Oppsummering. Thomas Lohne Aanes Thomas Amble

Datatyper og typesjekking

Model Driven Architecture (MDA) Interpretasjon og kritikk

versjon 1.1 Brukermanual

Datatyper og typesjekking

Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

Dokumentasjon av XML strukturer for ByggSøk

HØGSKOLEN I SØR-TRØNDELAG

ETTERNAVN OG MELLOMNAVN MED FAMILIETRADISJON

Kapittel 15: Grafiske brukergrensesnitt: Enkel GUI. Del I

LSCs Live Sequence Charts

IN2090 Databaser og datamodellering. Databasedesign og normalformer

Kapittel 15: Grafiske brukergrensesnitt: Enkel GUI. Del I

Leksjon 6. Objekt. Evt. importsetninger. public class Klasse { Konstruktør. Objektmetoder. Innkapsling (private): set-og get-metoder

Morfologi i Binære Bilder II

UKE 11 UML modellering og use case. Gruppetime INF1055

HØGSKOLEN I SØR-TRØNDELAG

Lage større programmer (Python, relatert til teoridelen om Software Engineering ) TDT 4110 IT Grunnkurs Professor Guttorm Sindre

Oppgave 1: Multiple choice (20 %)

Lærebok. Opplæring i CuraGuard. CuraGuard Opplæringsbok, - utviklet av SeniorSaken -

ULTICAP. UltiCap HiST Jan 01

AlgDat 12. Forelesning 2. Gunnar Misund

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19

INF1010 våren 2008 Uke 4, 22. januar Arv og subklasser

WordPress for transmark-subsea.com

INF Algoritmer og datastrukturer

D2 - Papirprototyping av design

DinVikar - Bruker Manual

GUI 3 JavaFX. Mer interaksjon Hvordan gi input :l programmet. INF1010 Stein Michael Storleer

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

Fra krav til modellering av objekter

University of Oslo Department of Informatics. INF Modellering med objekter Oblig 2, V2004. Skrevet av:

einnsyn PoC: Demo for tredje sprint

INF1500 Høst 2015 Magnus Li Martine Rolid Leonardsen. Designprinsipper

Brukermanual - Joomla. Kopiering av materiale fra denne Bonefish manualen for bruk annet sted er ikke tillatt uten avtale 2010 Bonefish.

Transaksjonsstandard for virkesomsetningen i Norge. Business Acknowledge. Versjon 2.0. Desember 2007 SKOG-DATA AS

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen. Objektorientert Programmering IGR 1372

Vårt nettsted En håndbok for lokale nettredaktører i fylkes- og lokallag

2012 2a. C rc; void main() { rc = new C (); rc.m2(); } } INF 3110/ INF /28/13 1

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

Variabelliste og utkast til informasjonsmodell

Brukerveiledning for MUSITbasen

Opt inn/opt ut, mailliste

Administrasjon av metadata og brukere

TDT4110 IT Grunnkurs Høst 2015

Team2 Requirements & Design Document Værsystem

esam/byggeweb Rolleveiledning: Utveksler (Bane NOR og eksternt) Byggeweb Prosjekt

Genova810DokDomenemodell

UMBRA utvikling av mobile brukergrensesnitt

INF1010 MVC i tekstbaserte programmer

Rollemodell. for. det norske kraftmarkedet

Aksiom 3.1 (Likhet av mengder). La A og B være mengder. Da er A og B like hvis og bare hvis de har akkurat de samme elementene.

EKSAMEN 6108/6108N PROGRAMMERING I JAVA Alt trykt og skriftlig materiale.

UNIVERSITETET I OSLO

class Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; }

INNFØRING I PRINSIPPER FOR OBJEKTORIENTERT PROGRAMMERING EMILIE HALLGREN OG KRISTIN BRÆNDEN

Morfologi i Binære Bilder

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

Transkript:

AMS-case Eksemplifisering av modellbasert tilnærming til design av brukergrensesnitt

Domenemodell Sentrale begreper og relasjoner Utgangspunkt for både oppgave- og dialogmodeller Mange muligheter kan undersøkes basert på modellen og kunnskap om generelle handlinger

Person-begrep Innfører Person som generalisering av Owner Staff Generelle og spesifikke egenskaper navn, adresse, etc. rollespesifikke egenskaper Naturlig sammenkobling til eksisterende adm.systemer, i toppen av generaliseringshierarkiet Hva slags type og struktur har de ulike attributtene? name/navn = fornavn [mellomnavn] etternavn? postal address!= email address!= billing address? personnavn!= dyrs navn mange detaljer må avklares i designprosessen

Person-komponent Form/property sheet for visning og innfylling av verdier Typespesifikke felt for hvert attributt Felles attributter samles og håndteres likt Tekst og ikoner brukes for markerer sub-typer vindustitler, gruppebokser, osv. ikoner i lister og hierarkier Spesifikke attributter (owner, staff) skilles fra felles vha. åpenrom streker gruppebokser, other...

Person-interaktor I en applikasjon finnes det som regel mange varianter av funksjonelt like komponenter Person-elementer kan presenteres på mange måter: kun navn eller alle attributter tabbed visning med kategoriserte detaljer viktigste attributter og Detaljer... -knapp Trenger notasjon for en komponents funksjon

Person-interaktor Notasjon for å beskrive abstrakt komponent-struktur Generell struktur for visning av verdier visning og editering Person-element mappes til attributter vha. funksjoner Nye verdier settes også vha. funksjoner

Integer-interaktor Input av heltall Basert på strenginput Parsing og unparsing Alternativer

Interaktorer og datatyper Mange datatyper har sin standardkomponent boolean: checkbox integer: slider string: tekstfelt Color: fargesirkel Date: kalender Mange varianter finnes imidlertid Alternativ å konstruere en selv, fra de andre

Spesialisert Integer-interaktor Input av heltall i begrenset intervall generell innfylling knapper for å øke eller minke verdi minimum eller maksimum

Tre bilder av system og UI 1. Tynt lag mellom bruker og system 2. Komponent som formidler data mellom system og bruker 3. Brukerens representant mot systemet

Strukturer Generelle strukturelle mønstre har sine konvensjoner Relasjoner, mapping fra ett objekt til 0-1, hvert objekt har 0 eller 1 relatert objekt 0-n, 0 eller flere relaterte objekter 1-n, 1 eller flere relaterte objekter Vær varsom med strenge begrensninger i GUI, dvs. slakk på domenekrav

Strukturer forts. Eksempel på domenebegrensning: en eier må ha minst ett dyr/animal et dyr må være eid av noen en avtale må være knyttet til et dyr Rimelig begrensning i domenemodell ellers er ikke en eier en eier kan ikke ringe til et dyr, atså må ha eier for å legge inn kontaktinfo Brukergrensesnitt stiller andre krav ufullstendige modeller må ofte tillates unngå feil bruk, f.eks. legge inn dyr som eier, for å kunne legge inn kontaktinformasjon

Eksempel-scenario Telefonen ringer Hei! Hva kan jeg hjelpe deg med? Jeg tror kjeledeggen min har vondt i halsen, kan jeg stikke ned til dere om en halv time? OK, men hva slags dyr gjelder det?...<klikk>... Eier kan ikke legges inn, siden navn mangler Dyr kan ikke legges inn, siden eier og navn mangler Avtale/appointment kan ikke legges inn, siden dyr mangler Slakke på krav om navn, nødvendig eier og kobling mellom avtale og dyr

Domenemodell!= UI-modell!

UI-orientert domenemodell Færre begrensninger Mer egnet for design av fri dialog Ingen tvangstrøye for brukeren

Relasjoner forts. Kardinalitet og oppgave avgjør interaksjonsobjekt kardinalitet avgjør ofte hvor praktiske ulike interaksjonsobjekter er i bruk enkle oppgave kan være input og output, hvor input kan inkludere valg blant alternativer 0-1, hvert objekt relateres til 0 eller 1 andre output/visning: som enkeltfelt input/redigering: valg av ett objekt fra sett av alternativer vha. listbox eller dropdown listbox mulighet for kategorisering, hierarkier og søk

Objekt-interaktor med valg Relatert objekt velges ofte blant mange kandidater Output av kandidat-sett Input av objekt fra settet Inkluderer ofte spesiell visning av valgt objekt

Oppgave Hvordan uttrykk flervalgsfunksjon? Output: Sett av kandidater Input: Subsett av kandidat-sett