Thursday, January 12, 2017

12.01.2017: tarkvara arendusprotsess x4 (Väino L.)

Tarkvara disain:
protsess, kus agent loob tarkvaratehise spetsifikatsiooni, kasutades algseid komponente

1)Algoritmi disain

Algoritmid:
1)probleemi määraimine

Jada liikmed käivad loogeliste sulgude vahele

CASE vahendid: Eclipse, NetBeans
CASE: tööriistade valdkond, mida kasutatakse tarkvara loomiseks ja disainimiseks

CASE kolm gruppi:
1)Tööriistad
2)Tööpingid
3)Keskkonnad

Tööriistad:
1)Äri ning analüüsi modelleerimine
2)Arendus, debuggerid
3)Verifitseerimine ning valideerimine; koodi analüsaatorid
4)Seadistuste haldus
5)mõõtmine; koodi analüsaatorid koodi keerukuse suhtes
6)projektijuhtimine

Tööpingid: 
integreerivad kaks või rohkem CASE tööriista

Fundamentaalsed modelleerimis kontseptid (FMC)
1)süsteemi struktuur
2)protsess süsteemis
3)domeeniväärtused süsteemis

*Liitstruktuuri skeem ehk FMC plokk-skeem
*Dünaamilise struktuuri skeem ehk FMC Petri-net
*Väärtuste raadiuse struktuuri skeem ehk FMC E/R skeem

FMC plokkskeem
Pilt (see link siin eelmisel real) on liitstruktuuri skeemi näide. Selles on agendid tellimuse protsessor (Order Processor), tarnija haldur (Supplier Manager) , tarnija (Supplier), veebipood (Online Shop), ning nimetu inimagent (Human Agent)

DAVIS 
1)disainiprotsess ei tohiks kannatada "silmaklappidest", peaks proovima erinevaid lähenemisi
2)disain peaks olema seotud ning jälitatav
3)ära leiuta jalgratast
4)disain peaks näima ühtlane,
5)peaks olema struktuurne ning peaks võimaldama muutuste sisseviimist
6)peaks olema disainitud nii, et suudaks ootamatustele vastata
7)disain pole koodimine, koodimine pole disain
8)peaks hindama disaini kvaliteetsust
9)disaini peab üle vaatama, et minimiseerida põhimõttelisi vigu

Disaini põhimõtted
1)abstraktsioon - üldistamine
2)viimistlemine/täpsustamine:
3)modulaarsus- tarkvara arhitektuur võiks olla jaotatud komponentideks
4)Tarkavara arhitektuur
5)Juhtimise hirearhia
6)jaotiste ülesehitus- programmi ülesehitus tuleks jagada horisontaalselt ning vertikaalselt juppideks
7)Andmestruktuur
8)Tarkvaraprotseduur
9)Polümorfism

Disaini kaalutlused
1)ühilduvus: tarkvara peab töötama teiste toodetega koos
2)laiendatavus: võimalus lisada uusi võimekusi
3)modulaarsus
4)hooldatavus
5)taaskasutatav
6)robustne
7)turvalisus
8)kasutatavus
9)jõudlus: asi ei tohi venima jääda
10)porditavus
11)mastaapsus

Arhitektuuri kirjeldamise keel
https://github.com/osate

camunda.org/bpmn/tutorial/

https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation#Overview

EEML

Vooskeem

IDEF: modelleerimiskeelte perekond

Jackson

LePUS3: kuulub objekt-orienteeritud programmeerimiskeelte hulka

Alloy: on loodud keeruliste struktuursete piirangute kirjeldamiseks (uuri Alloy'd!)

Service-oriented modeling framework (SOMF)

hirmus UI
Disaini mustrid 

No comments:

Post a Comment