StORM

(Forskjell mellom revisjoner)
Gå til: navigasjon, søk
m (NIAM flyttet til StORM: NIAM er nå ORM, og stORM er verktøyet som benyttes ved UiO (artikkelen omhandler verktøyet))
(basert på NIAM-artikkel, WIP (bla. språkvask) + min egen FAQ)
Linje 1: Linje 1:
NIAM for Windowser et verktøy for å tegne ER-Modeller og for å generere SQL-tabller utifra modellene.
+
'''stORM''' for [[Windows]] er et modelleringsverktøy som benyttes til å modellere ORM-diagrammer og generere SQL-tabeller. Ved UiO benyttes stORM i kurset [http://www.google.com/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fwww.uio.no%2Fstudier%2Femner%2Fmatnat%2Fifi%2FINF1300%2F&ei=5ihqSbjDL4ai-gaKkvmuBw&usg=AFQjCNGTybuWHPUzXfrMKvDWx9BYEkmREw&sig2=lkptp5Zxw12BhzUB8FyAsQ INF1300].
  
NIAM består av tre deler:
+
stORM består av tre deler:
* Tegne NIAM-digrammer  
+
* Tegne ORM-digrammer  
* Oversette NIAM-digram til relasjoner/regler(konstraints) og skrive resultatet til en ''Model Dictioanary''
+
* Oversette ORM-digram til relasjoner/regler (constraints) og skrive resultatet til en ''Model Dictionary''
* Generere databaser på grunnlag av en ''Model Dictionary''
+
* Generere database på grunnlag av en ''Model Dictionary''
  
==Hvordan starte Niam?==
+
==Hvordan starte stORM?==
Niam startes fra ''start menyen'' følgende måte:
+
stORM er installert IFI og MatNat sine Windows-maskiner, og ligger i Start-menyen under Programs -> stORM.
-> ''Start -> Programs -> Niam for Windows''
+
  
==Tegne diagrammer i Niam==
+
==Modellering==
For å tegne diagrammer i Niam en først åpne ett nytt ''Niam dokument''. Dette gjøres ved å velge:  
+
For å modellere i stORM du først lage et nytt ORM-diagram. Dette gjøres ved å velge: ''File -> New (Ctrl+N)'' og velge ''ORM Diagram'' som dokumenttype.
-> ''File -> New (Ctrl+N)''
+
Velg så å åpne et ''Niam Document''.
+
  
a) velg ønsket figur:
+
===Begreper (LOT og NOLOT===
 +
For å legge et objekt til i diagrammet, velg ønsket objekttype:
  
[[Image:niam_velgfig.gif|Velg ønsket figur]]
+
[[Image:niam_velgfig.gif|Velg ønsket objekt]]
  
Dobbel-klikk i siden.
+
Deretter dobbeltklikker du i dokumentet for å plassere objektet. Ved å høyreklikke på en sirkel (LOT eller NOLOT) kan du gi den et navn, og hvis du dobbeltklikker på den kan du sette flere spesifikasjoner. For å flytte på en figur klikker du først på figuren én gang, og deretter klikker du og drar den på arket.
  
Ved å høyre-klikke på Sirkelen kan man skrive tekst. Kun de tre første bokstavene vises. Hvis du vil se hele navnet kan du dobbel-klikke på figuren. For flytte på en figur, klikker du først figuren, og deretter flytter den.  
+
Synes du en figur er for liten for teksten, klikk den én gang og velg størrelse under menyvalget ''Layout''.
  
 +
'''OBS:''' Har du først laget en rekke objekter med setninger og skranker osv, kan du ikke slette en LOT/NOLOT uten å slette setningene dens. Dette kan være en kilde til frustrasjoner, men hvis du ved en feil lager et begrep som en LOT i stedet for NOLOT eller vice versa, kan du endre fram og tilbake uten å måtte slette objektet! Dette gjør du under ''Edit -> Change Object Type''.
  
 
+
===Roller (setninger) og subtyper===
b)For å tegne setninger og sub-typer,
+
For å tegne setninger og subtyper, må du først ha en LOT eller en NOLOT å knytte setningen eller subtypen opp mot. Deretter velger du en av de to fra menyen:
  
 
[[Image:niam2.gif|Tegne setninger og sub-typer]]
 
[[Image:niam2.gif|Tegne setninger og sub-typer]]
  
mellom to sirkler (ja du må først tegne to sirkler), drar du musa fra den ene sirkelen til den andre. Ikke klikk (velg) på sirkelen først, for da flytter du den. Når du lager en setning mellom to sirkler, får du typisk en slik figur:   
+
Så klikker du på en av sirklene og drar musa til den andre (ikke klikk på [velg] sirkelen først, for da flytter du den). Når du lager en setning mellom to sirkler, får du typisk en slik figur:   
 
[[Image:niam3.gif|Setning mellom to sirkler]]
 
[[Image:niam3.gif|Setning mellom to sirkler]]
  
Du kan fjerne symbolene [[Image:niam4.gif|Fjerne symboler]] eller [[Image:niam5.gif|Fjerne symboler alt.]] ved å bevege musen over dem. Du ser da \/ eller ↔ .  Høyre-klikk så en gang. 
+
Du kan fjerne den totale rollen [[Image:niam4.gif|Fjerne symboler]] eller entydighetsskranken [[Image:niam5.gif|Fjerne symboler alt.]] ved å klikke på dem.
Andre figurer fjernes ved å først velge dem, og deretter trykke delete knappen på tastaturen (eller Edit -> Delete).
+
  
Symbolene:
+
Andre figurer fjernes ved å først velge dem ved å klikke på dem, og deretter trykke delete-knappen på tastaturet (eller ''Edit -> Delete'').
[[Image:niam6.gif|Symboler som kan benyttes mellom setninger]] 
+
kan benyttes mellom setninger. Piler eller linjer går fra disse symbolene og inntil setningene.
+
 
+
c) Lager diagrammet
+
File -> Save as
+
Velg et passende navn. Filen får tiltypen .ias.  
+
  
 +
===Skranker===
 +
Skrankene [[Image:niam6.gif|Symboler som kan benyttes mellom setninger]] 
 +
kan benyttes mellom setninger. (Bildet er fra forrige stORM-versjon; i stORM 6 ser de helt like ut, men ingen av symbolene har sirkel rundt seg.) For å knytte dem til begreper velger du først symbolet og klikker i arket for å plassere dem, og deretter klikker og drar du musa fra symbolet til begrepet du vil knytte det opp mot. (Sørg for at symbolet ikke er valgt før du drar musa.)
  
 
==Gruppering==
 
==Gruppering==
 
+
Gruppering vil si å lage relasjoner ut fra et diagram. Det går ut på å gruppere setninger med samme NOLOT i deres identifikasjons-rolle (se nederst). Regler blir gjort om til referanseintegritetesregler mellom kolonner i samme eller forskjellige tabller. Grupperingsalgoritmen sjekker hvordan alle NOLOT-er er identifisert, og at modellen er refererbar.
 
+
a) Gruppering
+
-> Gruppering vil si å gruppere setninger med samme NOLOT i deres identifikasjons-rolle (se nederst). Regler blir gjort om til referanse integritetes regler mellom kolonner i samme eller forskjellige tabller. Grupperingsalgoritmen sjekker hvordan alle NOLOT er identifisert, og at modellen er refererbar.
+
  
 
[[Image:niam7.gif|Gruppering av NOLOT]]  
 
[[Image:niam7.gif|Gruppering av NOLOT]]  
  
b) Typer grupperinger
+
Eksempel på en gruppering:
-> Sterk-gruppering: grupperer sammen setninger, hvor identifiserbare-roller er forbindet med like regler(constraints).
+
  
-> Svak-gruppering: tar i betrakting roller med NULL verdi.
+
#Du må først lage en «Model Dictionary»:
  
-> Operasjonen GRUOP utfører en modifiserbar sterk gruppering. Den tar i betraktning roller med NULL verdi. Hvis NULL verdi er tillatt, utføres det en svak gruppering.
 
 
c) Eksempel på en gruppering
 
 
-> i)  lag en ”Model Dictionary”  fil
 
-> i)  lag en ”Model Dictionary”  fil
 
     File -> New -> Model Dictionary
 
     File -> New -> Model Dictionary
Linje 71: Linje 59:
 
Velg en Modell Dictionary du vil gruppere til ved å trykke på:     
 
Velg en Modell Dictionary du vil gruppere til ved å trykke på:     
 
[[Image:niam9.gif|Modell Dictionary som skal grupperes]]
 
[[Image:niam9.gif|Modell Dictionary som skal grupperes]]
 
  
 
==Generere SQL-tabell/skjema==
 
==Generere SQL-tabell/skjema==
 +
En av de største fordelene med å modellere relasjoner i stORM er at modellen automagisk kan grupperes til en SQL-database. For å gjøre dette må du ha laget en Model Dictionary av modellen.
  
 
a)Velg ønsket (Model Dictionary) fil (Du må endre Files of type til: Model Files (*.mod)
 
a)Velg ønsket (Model Dictionary) fil (Du må endre Files of type til: Model Files (*.mod)
Linje 86: Linje 74:
 
Og -> Generate New
 
Og -> Generate New
  
 +
==Spørsmål og svar==
  
 +
*stORM kræsjet og jeg mistet diagrammet mitt :(<br/>stORM er ganske ustabilt, og det er viktig at du lagrer diagrammet ditt ofte fra ''File -> Save''.
 +
*Jeg får ikke tegnet inn en setning!<br/>Du tegner først to sirkler, og deretter en setning mellom disse to sriklene.
 +
*Hvordan fjerner jeg sirkler, setninger og lignende?<br/>Du må først velge ønsket figur, og deretter: edit -> delete.
 +
*Jeg får ikke plass til hele diagrammet mitt!<br/>I stORM består et diagram av flere «sheets»/ark (for at det enkelt skal gå an å skrive ut diagrammet og vise det fram til sjefen sin). Du kan bare putte objekter innenfor det hvite feltet, som representerer ett papirark. For å legge til flere ark og redigere rekkefølge og navn på dem, se i ''Sheets''-menyen. (Her kan du også bla mellom alle arkene dine, men det er raskere å bruke snarveiene ''Shift'' sammen med ''Page Up'' og ''Page Down''.) Du kan godt dele diagrammer over flere ark hvor du vil - hvis du har to objekter av samme type (LOT/NOLOT) med samme navn på forskjellige ark, vil stORM skjønne av seg selv at de er samme objekt og gruppere deretter.
 +
*Diagrammet mitt er kjempestygt! Jeg har for med masse forvridde setninger.<br/>Du kan rotere setninger under ''Rotate''-menyen. Husk også at du kan endre størrelsen på alle objekter i ''Edit''-menyen, så kan du få det litt penere. Et annet tips er å ha et eget ark der du samler alle leksikaliseringer (altså alle LOT-er med perfekte broer til korresponderende refererte NOLOT-er); jamfør siste setning i forrige svar.
  
==Spørsmål - Svar==
+
==Relevante lenker==
 
+
*[http://www.orm.net ORM]
a) Jeg får ikke tegnet inn en setning?
+
-> Du tegner først to sirkler, og deretter en setning mellom disse to sriklene.
+
 
+
b) Hvordan fjerner jeg uønsket  eller  fra setningen?
+
-> Beveg musa over symbolene og høyre -klikk en gang.
+
 
+
c) Hvordan fjerner jeg sirkler, setninger og lignende?
+
-> Du må først velge ønsket figur, og deretter: edit -> delete
+
 
+
 
+
 
+
 
+
==Relevante Lenker==
+
 
+
[http://essentialstrategies.com/publications/modeling/niam.htm NIAM]
+
 
+
[http://www.orm.net ORM]
+
  
[[Category:Programvare]]
+
[[Kategori:Programvare]]
[[Category:Bildebehandling]]
+

Revisjonen fra 12. jan 2009 kl. 01:15

stORM for Windows er et modelleringsverktøy som benyttes til å modellere ORM-diagrammer og generere SQL-tabeller. Ved UiO benyttes stORM i kurset INF1300.

stORM består av tre deler:

  • Tegne ORM-digrammer
  • Oversette ORM-digram til relasjoner/regler (constraints) og skrive resultatet til en Model Dictionary
  • Generere database på grunnlag av en Model Dictionary

Innhold

Hvordan starte stORM?

stORM er installert på IFI og MatNat sine Windows-maskiner, og ligger i Start-menyen under Programs -> stORM.

Modellering

For å modellere i stORM må du først lage et nytt ORM-diagram. Dette gjøres ved å velge: File -> New (Ctrl+N) og velge ORM Diagram som dokumenttype.

Begreper (LOT og NOLOT

For å legge et objekt til i diagrammet, velg ønsket objekttype:

Velg ønsket objekt

Deretter dobbeltklikker du i dokumentet for å plassere objektet. Ved å høyreklikke på en sirkel (LOT eller NOLOT) kan du gi den et navn, og hvis du dobbeltklikker på den kan du sette flere spesifikasjoner. For å flytte på en figur klikker du først på figuren én gang, og deretter klikker du og drar den på arket.

Synes du en figur er for liten for teksten, klikk på den én gang og velg størrelse under menyvalget Layout.

OBS: Har du først laget en rekke objekter med setninger og skranker osv, kan du ikke slette en LOT/NOLOT uten å slette setningene dens. Dette kan være en kilde til frustrasjoner, men hvis du ved en feil lager et begrep som en LOT i stedet for NOLOT eller vice versa, kan du endre fram og tilbake uten å måtte slette objektet! Dette gjør du under Edit -> Change Object Type.

Roller (setninger) og subtyper

For å tegne setninger og subtyper, må du først ha en LOT eller en NOLOT å knytte setningen eller subtypen opp mot. Deretter velger du en av de to fra menyen:

Tegne setninger og sub-typer

Så klikker du på en av sirklene og drar musa til den andre (ikke klikk på [velg] sirkelen først, for da flytter du den). Når du lager en setning mellom to sirkler, får du typisk en slik figur: Setning mellom to sirkler

Du kan fjerne den totale rollen Fjerne symboler eller entydighetsskranken Fjerne symboler alt. ved å klikke på dem.

Andre figurer fjernes ved å først velge dem ved å klikke på dem, og deretter trykke delete-knappen på tastaturet (eller Edit -> Delete).

Skranker

Skrankene Symboler som kan benyttes mellom setninger kan benyttes mellom setninger. (Bildet er fra forrige stORM-versjon; i stORM 6 ser de helt like ut, men ingen av symbolene har sirkel rundt seg.) For å knytte dem til begreper velger du først symbolet og klikker i arket for å plassere dem, og deretter klikker og drar du musa fra symbolet til begrepet du vil knytte det opp mot. (Sørg for at symbolet ikke er valgt før du drar musa.)

Gruppering

Gruppering vil si å lage relasjoner ut fra et diagram. Det går ut på å gruppere setninger med samme NOLOT i deres identifikasjons-rolle (se nederst). Regler blir gjort om til referanseintegritetesregler mellom kolonner i samme eller forskjellige tabller. Grupperingsalgoritmen sjekker hvordan alle NOLOT-er er identifisert, og at modellen er refererbar.

Gruppering av NOLOT

Eksempel på en gruppering:

  1. Du må først lage en «Model Dictionary»:

-> i) lag en ”Model Dictionary” fil

    File -> New -> Model Dictionary

ii) Velg NIAM diagrammet du vil gruppere (filen har endelsen .ias).

    File -> Group

iii) Marker filen i den hvite firkanten til høyre. Grupper ved å trykke på: Grupper

Velg en Modell Dictionary du vil gruppere til ved å trykke på: Modell Dictionary som skal grupperes

Generere SQL-tabell/skjema

En av de største fordelene med å modellere relasjoner i stORM er at modellen automagisk kan grupperes til en SQL-database. For å gjøre dette må du ha laget en Model Dictionary av modellen.

a)Velg ønsket (Model Dictionary) fil (Du må endre Files of type til: Model Files (*.mod) -> File -> Open

b)Foreta diverse valg vedrørende mod. filen: -> - File -> Read Modell / Create History / Create Dictionary Summary -> - Pipe -> oracle7 eller sybase .. -> - outputfile -> exclude DB Functions

c)Generere SQL- skjema Og -> Generate New

Spørsmål og svar

  • stORM kræsjet og jeg mistet diagrammet mitt :(
    stORM er ganske ustabilt, og det er viktig at du lagrer diagrammet ditt ofte fra File -> Save.
  • Jeg får ikke tegnet inn en setning!
    Du tegner først to sirkler, og deretter en setning mellom disse to sriklene.
  • Hvordan fjerner jeg sirkler, setninger og lignende?
    Du må først velge ønsket figur, og deretter: edit -> delete.
  • Jeg får ikke plass til hele diagrammet mitt!
    I stORM består et diagram av flere «sheets»/ark (for at det enkelt skal gå an å skrive ut diagrammet og vise det fram til sjefen sin). Du kan bare putte objekter innenfor det hvite feltet, som representerer ett papirark. For å legge til flere ark og redigere rekkefølge og navn på dem, se i Sheets-menyen. (Her kan du også bla mellom alle arkene dine, men det er raskere å bruke snarveiene Shift sammen med Page Up og Page Down.) Du kan godt dele diagrammer over flere ark hvor du vil - hvis du har to objekter av samme type (LOT/NOLOT) med samme navn på forskjellige ark, vil stORM skjønne av seg selv at de er samme objekt og gruppere deretter.
  • Diagrammet mitt er kjempestygt! Jeg har for med masse forvridde setninger.
    Du kan rotere setninger under Rotate-menyen. Husk også at du kan endre størrelsen på alle objekter i Edit-menyen, så kan du få det litt penere. Et annet tips er å ha et eget ark der du samler alle leksikaliseringer (altså alle LOT-er med perfekte broer til korresponderende refererte NOLOT-er); jamfør siste setning i forrige svar.

Relevante lenker

Personlige verktøy
Navnerom
Varianter
Handlinger
Navigasjon
Kategorier
Programvare
Andre
Translate
Verktøy