Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

1 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista.

Samankaltaiset esitykset


Esitys aiheesta: "1 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista."— Esityksen transkriptio:

1 1 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista

2 Ohjelmistotuotannon työkaluuista Projektinhallintatyökalut (ei käsitellä tällä kurssilla) CASE- ja mallinnustyökalut (esim. Poseidon) Nykyaikainen IDE (esim. Eclipse) –ohjelmointi ja erilaiset näkymät koodiin –suoritus ja virheenjäljitys (debugging) –testaus (esim. JUnit) Järjestelmänrakennus (esim. Ant) Ylläpito & ryhmätyön tuki 2

3 Yleistä työkaluista Työkalut voidaan jakaa kahteen pääryhmään –henkilökohtaista työskentelyä tukevat työkalut –ryhmätyötä (computer-supported collaborative work, CSCW) tukevat työkalut Työkalun ja sen käyttöorganisaation oltava riittävän kypsiä –tietotaito, ohjeistus, johtaminen & hallinto –muuten työkalusta enemmän haittaa kuin hyötyä 3

4 CASE- ja mallinnustyökalut Ominaista –visuaalisia, esittävät mallin useilla eri abstraktiotasoilla –tukevat ryhmätyötä Jaottelu –vaatimusten hallinta –visuaalinen UML-mallinnus –raporttien generointi –tietokannan mallinnus [ei käsitellä] 4

5 Vaatimusten hallinta: vaatimusdokumentti Vaatimukset (requirements) esitetään yleensä tekstinä vaatimusdokumentissa –jaoteltu tyypillisesti käyttötapauksittain –voidaan käyttää useita abstraktiotasoja, jolloin muodostuu vaatimushierarkia 5

6 Vaatimusten hallinta: työkalutuki Erityisesti ryhmätyö edellyttää työkalutukea Tyypillistä työkalutukea –vaatimusten kirjoittaminen oikeassa muodossa –vaatimusten kategorisointi ja vaatimushierarkian hallinta –vaatimusten muutosten hallinta –vaatimusten esittäminen eri sidosryhmille (esim. kehittäjille ja asiakkaille) –vaatimusten jäljitettävyys 6

7 Esimerkki vaatimustyökalusta: IBM Rational Requisite Pro 7

8 IBM Rational Requisite Pro 8

9 Visuaalinen UML-mallinnus UML-työkalut yksinkertaisimmillaan pelkkiä kaavionpiirtovälineitä Kehittyneimmät UML-työkalut tarjoavat –mallien semantiikan ja keskinäisen ristiriidattomuuden tarkastamisen –liitynnät muihin työkaluihin –jaettuun tietovarastoon perustuvan ryhmätyötuen ja versioinnin –muunneltavat graafiset esitystavat –koodingeneroinnin eri ohjelmointikielille 9

10 Esimerkki UML-mallinnuksesta: IBM Rational Rose 10

11 Esimerkki UML-mallinnuksesta: Poseidon 11

12 Raporttien generointi Tarvitaan –visuaalisten mallien ja –malleihin liittyvien dokumenttien jakamiseen kehittäjien ohella myös muille projektin sidosryhmille Voidaan yleensä tuottaa –erilaisten vakiomuotojen (templates) mukaisesti –erilaisissa tiedostoformaateissa esim. HTML, Word, PDF, … 12

13 Esimerkki raporttien generoinnista: MagicDraw ja IBM Rational Suite 13

14 Integroidut kehitysympäristöt: ohjelmoinnin rutiinitehtävien tuki Koodin kirjoittaminen –syntaksin korostaminen ja tarkistaminen, navigointi, automaattinen täydentäminen ja generointi, … Kääntäminen ja linkittäminen –integroitu Ant, make tai vastaava (tästä lisää myöhemmin) Suorittaminen ja virheenjäljitys (eli debuggaus) –pysäytyspisteet (breakpoint) ja askellus, muuttujien arvojen ja muiden lausekkeiden evaluointi, säikeiden ja kutsupinon tarkastelu, … 14

15 IDE-esimerkki: rutiiniohjelmointia (Sun One Studio) 15

16 IDE-esimerkki: rutiiniohjelmointia (Sun One Studio) 16

17 IDE-esimerkki: suoritus ja virheenjäljitys 17

18 IDE-esimerkki: suoritus ja virheenjäljitys 18

19 Integroidut kehitysympäristöt: muita yleisiä ominaisuuksia Integrointi (UML-)mallinnustyökaluun –koodingenerointi mallista, takaisinmallinnus koodista Erityyppisten sovellusalueiden tuki –vrt. esim. J2SE, J2EE, J2ME Komponenttikirjastojen ja kehysten tuki –graafisen käyttöliittymän piirtäminen, tietokantaintegraatio, liiketoimintakomponentit, … Hajautetun ryhmätyön tuki ja versionhallinta Testaustuki 19

20 Integrointi mallinnukseen: Together ControlCenter 20

21 IDE-esimerkki: Testaus (Eclipse & JUnit) 21

22 Järjestelmänrakennus (system building) “Järjestelmänrakennuksella tarkoitetaan prosessia, jossa tietylle kohdekonfiguraatiolle tarkoitettu ohjelma koostetaan kääntämällä ja linkittämällä yhteen sopivat ohjelmistokompo-nentit.” [Sommerville] Lopullisena tarkoituksena on tuottaa ohjelmasta käyttäjille jaettavissa oleva suorituskelpoinen versio (distributable) 22

23 Järjestelmänrakennuksessa määriteltävät asiat Ohjelmiston osien väliset riippuvuussuhteet (build dependency) –esim. käännettyjen tiedostojen (.class) riippuminen lähdekooditiedostoista (.java) Riippuvuussuhteiden mukaiset tehtävät (build task, build target) –esim. kääntäminen Tehtävien suorittamisesta vastaavat työkalut –esim. kääntäjä 23

24 Esimerkki rakennustyökaluista: Apache Ant Suosituin Java-ympäristön rakennustyökalu Tukee kattavaa valikoimaa valmiiksi määriteltyjä tehtäviä, jotka annetaan XML-muotoisissa konfiguraatio- eli build-tiedostoissa, mm. –tiedostojen hallinta (copy, delete, chmod, …) –kääntäminen ja tulkinta (javac, java, …) –pakkaaminen ja asentaminen (jar, war, zip, gzip, …) Voidaan laajentaa vapaasti kirjoittamalla lisäykset Java-luokkina 24

25 Esimerkki rakennustyökalusta: Apache Ant 25


Lataa ppt "1 582101 - Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista."

Samankaltaiset esitykset


Iklan oleh Google