firma

author(s): Tomas Dlouhy

(c) 2007 Tomas Dlouhy

Model softwarove firmy - Kontrolni bod 3 z predmetu Y36OMO

Softwarova firma ma zamenstanace, ktery ma pridelenou nejakou mistnost, ma pridelene vybaveni. Mezi pridelena vybaveni patri napr. nabytek, mobilni telefon, notebook/pocitac popr. automobil. Kazda mistnost se nachazi v nejakem oddeleni. Firma tez vlastni nejake budovy.
Firma ma ucet u banky. Dalsi ulozene penize ma na pokladne obchod. oddeleni. Zamestanci firmy vytvareji softwarove produkty.

CHANGELOG:

1. Kontrolni bod:

-vystavba zakladnich predstav o modelu
-provtni navrh modelu
-zakaldni pospojovani objektu v modelu

2. Kontrolni bod

-mensi uprava predstav modelu
-totalni prekopani do noveho souboru

3. Kontrolni bod

-znovu prekopany model
-obsahuje metody
-navrhove vzory





Workspace

Majitele := Set new.
Majetky := Set new.
Automobily := Set new.
Pokl := Set new.
Ucty := Set new.
Fin := Set new.
Produkty := Set new.
Zam := Set new.



"Polozky"
pok1 := Pokladna new.
pok1 cislo: '1'; umisteni: nem2; soucasna_castka: 10000.

pok2 := Pokladna new.
pok2 cislo: '2'; umisteni: nem1; soucasna_castka: 50000.
Pokl add: pok1.


ucet1 := Ucet new.
ucet1 cislo_uctu: 78454546546; var_symbol: '0010'; banka: 'BankaC'; castka: 150000.

fin1 := Finance new.
fin1 pokladna: pok1; ucet: ucet1; ostatni: nil.

majitel1 := Majitel new.
majitel1 jmeno: 'Tomas Dlouhy'; telefon: 123456789; adresa: '5.Ulice, Mesto 2, 123 14'.

majetek1 := Majetek new.
majetek1 nemovitosti: nem1; finance: fin1; vybaveni: vyb1; automobil: auto1.

nem1 := Nemovitosti new.
nem1 nazev: 'Pentagon'; adresa: 'Bukova hora 1, Mesto 4, 123 18'; typ: 'administrativni budova'.

firma1 := Firma new.
firma1 jmeno: '4d Systems'; sidlo: nem1; zamereni: 'vyvoj softwaru'; ico: '9785455546'; majetek: majetek1; zamenstanci: zam1; produkty: prod1; oddeleni: odd1; majitel: majitel1;forma: 'Akciova spolecnost'.

nem2 := Nemovitosti new.
nem2 nazev: 'Sklidste'; adresa: 'Bukova hora 2, Mesto 4, 123 18'; typ: 'sklad'.

odd1 := Oddeleni new.
odd1 jmeno: 'vedeni'; ucel: 'management'; sidlo: nem1.

odd2 := Oddeleni new.
odd2 jmeno: 'sklad1'; ucel: 'sklad produktu'; sidlo: nem2.

odd3 := Oddeleni new.
odd3 jmeno: 'uctarna'; ucel: 'management'; sidlo: nem1.

odd4 := Oddeleni new.
odd4 jmeno: 'vyvoj'; ucel: 'management'; sidlo: nem1.

odd5 := Oddeleni new.
odd5 jmeno: 'betatesting'; ucel: 'management'; sidlo: nem1.

odd6 := Oddeleni new.
odd6 jmeno: 'test'; ucel: 'management'; sidlo: nem1.


zam1 := Zamestnanci new.
zam1 jmeno: 'Pepa Jan'; bydliste: 'Pepikov'; telefon_domu: 789512356; telefon_sluzebni: 1254588888; zpusob_vyplaceni: 'hotove'; cislo_uctu: '-'; typ_uvazku: 'plny'; cinnost: 'skladnik'; misto: nem2; pridelene_pomucky: ''; automobil: auto1; oddeleni: odd2.

auto1 := Automobil new.
auto1 ev_cislo: '0045455A'; znacka: 'Skoda'; typ: 'Octavia'; zodpovedna_osoba: zam1.

vyb1 := Vybaveni new.
vyb1 jmeno: 'pocitac1'; ev_cislo: 4588; popis: 'pocitac'; stav_pri_vydani: 'ok'; datum_koupe: '1.9.2000'; zodpovedna_osoba: nil.

vyb2 := Vybaveni new.
vyb2 jmeno: 'pocitac2'; ev_cislo: 4589; popis: 'pocitac'; stav_pri_vydani: 'ok'; datum_koupe: '1.9.2000'; zodpovedna_osoba: nil.

vyb3 := Vybaveni new.
vyb3 jmeno: 'mobil1'; ev_cislo: 4590; popis: 'mobil'; stav_pri_vydani: 'ok'; datum_koupe: '1.9.2000'; zodpovedna_osoba: zam1.

vyb4 := Vybaveni new.
vyb4 jmeno: 'skrin'; ev_cislo: 4591; popis: 'skrin'; stav_pri_vydani: 'ok'; datum_koupe: '1.9.2000'; zodpovedna_osoba: nil.

prod1 := Produkty new.
prod1 jmeno: 'Program'; oznaceni: 'kn'; datum_vydani: '25.3.2007'; stav: 'dokoncen'; verze: '1.0'

ucet1 pridatNaUcet: 100.

Workspace Objects



Script



Diagram


Classes

Majitel
instance variables
adresa :String
jmeno :String
telefon :Number
methods
adresa
adresa:
initialize
jmeno
jmeno:
telefon
telefon:

code of non-accessing methods:

Majetek
instance variables
automobil :Object
finance :Object
nemovitosti :Object
vybaveni :Object
methods
automobil
automobil:
finance
finance:
initialize
nemovitosti
nemovitosti:
vybaveni
vybaveni:

code of non-accessing methods:

Automobil
instance variables
ev_cislo :String
moznosti_vyuzivani :String
typ :String
znacka :String
zodpovedna_osoba :Object
methods
ev_cislo
ev_cislo:
initialize
moznosti_vyuzivani
moznosti_vyuzivani:
typ
typ:
znacka
znacka:
zodpovedna_osoba
zodpovedna_osoba:

code of non-accessing methods:

Ucet
instance variables
banka :String
castka :Number
cislo_uctu :Number
var_symbol :String
methods
banka
banka:
castka
castka:
cislo_uctu
cislo_uctu:
initialize
pridatNaUcet
var_symbol
var_symbol:

code of non-accessing methods:

Vybaveni
instance variables
datum_koupe :String
ev_cislo :Number
jmeno :String
popis :String
stav_pri_vydani :String
zodpovedna_osoba :Object
methods
datum_koupe
datum_koupe:
ev_cislo
ev_cislo:
initialize
jakeVybaveni
jmeno
jmeno:
popis
popis:
stav_pri_vydani
stav_pri_vydani:
zodpovedna_osoba
zodpovedna_osoba:

code of non-accessing methods:

Produkty
instance variables
datum_vydani :String
jmeno :String
oznaceni :String
stav :String
verze :String
methods
datum_vydani
datum_vydani:
initialize
jmeno
jmeno:
novyProdukt:
oznaceni
oznaceni:
stav
stav:
verze
verze:

code of non-accessing methods:

Nemovitosti
instance variables
adresa :String
nazev :String
typ :String
methods
adresa
adresa:
initialize
nazev
nazev:
typ
typ:

code of non-accessing methods:

Firma
instance variables
forma :String
ico :String
jmeno :String
majetek :Object
majitel :Object
oddeleni :Object
produkty :Object
sidlo :Object
zamenstanci :Object
zamereni :String
methods
forma
forma:
ico
ico:
initialize
jmeno
jmeno:
majetek
majetek:
majitel
majitel:
oddeleni
oddeleni:
produkty
produkty:
sidlo
sidlo:
zamenstanci
zamenstanci:
zamereni
zamereni:

code of non-accessing methods:

Zamestnanci
instance variables
automobil :Object
bydliste :String
cinnost :String
cislo_uctu :String
jmeno :String
misto :Object
oddeleni :Object
pridelene_pomucky :Object
telefon_domu :Number
telefon_sluzebni :Number
typ_uvazku :String
zpusob_vyplaceni :String
methods
automobil
automobil:
bydliste
bydliste:
cinnost
cinnost:
cislo_uctu
cislo_uctu:
initialize
jmeno
jmeno:
misto
misto:
oddeleni
oddeleni:
pridelene_pomucky
pridelene_pomucky:
seznamPomucek
telefon_domu
telefon_domu:
telefon_sluzebni
telefon_sluzebni:
typ_uvazku
typ_uvazku:
zpusob_vyplaceni
zpusob_vyplaceni:

code of non-accessing methods:

Finance
instance variables
ostatni :Object
pokladna :Object
ucet :Object
methods
initialize
ostatni
ostatni:
pokladna
pokladna:
ucet
ucet:

code of non-accessing methods:

Oddeleni
instance variables
jmeno :String
sidlo :Object
ucel :String
methods
initialize
jmeno
jmeno:
seznamZam
sidlo
sidlo:
ucel
ucel:

code of non-accessing methods:

Pokladna
instance variables
cislo :String
nova_castka :Number
soucasna_castka :Number
umisteni :Object
methods
cislo
cislo:
initialize
nova_castka
nova_castka:
soucasna_castka
soucasna_castka:
umisteni
umisteni:

code of non-accessing methods:


Links

Data file and class source.

Generated by Daskalos - Object Modeling Tutor (C) 2006 V. Merunka
May 27, 2007