III praktikumi juhend

Praktikumi eesmärk

Harjutada nõuete kogumist ja nende esitamist arusaadavas vormis läbi modelleerimise ja analüüsidokumentide koostamise.

Klassis

Klassis kasutame modellerimise erinevate aspektide läbitegemisel autokooli näidet.

  1. Kirjeldage sõidueksami sooritamise kasutuslugu (use case). Vajadusel võtta appi vastav määrus.
  2. Looge kasutusloodiagramm (use case diagram) kõigist lubade saamiseks vajalikest tegevustest alates autokooli registreerumisest kuni lubade kättesaamiseni.
  3. Koostage andmemudel (5 või rohkem olemit ja nendevahelised seosed klassidiagrammina).
  4. Leidki määrusest 2-3 mittefunktsionaalset nõuet sõidueksami sooritamisele.
  5. Kujutada tegevusskeemina (activity diagram) protsessi autokooli lõpetamisest lubade saamiseni (eksamitele registreerimised, teooriaeksam(id), sõidueksam(id), lubade väljastamine jms.).

Rühmatöö

Rühmatöö tulemusena peavad valmima korporatsiooni kassasüsteemi kirjeldavad analüüsidokumendid:

  1. Visioon - formuleerida lahendatav probleem, sihtrühm, kitsendused jms..
  2. Funksionaalsete nõuete spetsifikatsioon - loetleda kõik kasutuslood. Spetsifitseerida detailiselt kaks kasutuslugu (Kõrvalstsenaariumid A ja B), mis lähevad 4. praktikumis realiseerimisele.
  3. Lisaspetsifikatsioon - mittefunktsionaalsed nõuded, nõuded tehnilisele keskkonnale.
  4. Ainemudel - koostada andmemudel, dokumenteerida äriprotsessid.

Ülesande püstituse ja nõuete analüüsimisel võiks lähtuda reaalse elu vajadustest. Ennast võiks püüda panna näiteks rakenduse tellija (kliendi) rolli ja mõelda selle peale, milline võiks olla kassasüsteemi funktsionaalsus. Mõelda võib ka nii, et te arendate tarkvaratoodet korporatsioonidele müügiks.

Töö esitamine

Analüüsidokumendid tuleb esitada PDF kujul. PDF ning lähtefailid tuleb hoida Subversionis.

Iga dokument peab sisaldama:

  • Rühma nimi
  • Autorid
  • Oluliste muudatuste ajalugu
    • Kuupäev
    • Mida tehti
    • Kes tegi
  • Dokumendi eesmärk

Analüüsidokumentide Struktuur

Visioon

  • Ülesande püstitus
    • Probleem
      • Kellel
      • Tagajärjed
    • Lahendus
      • Kellele
      • Võimaldab teha mida
      • Erinevus teistest lahendustest
  • Kliendi kirjeldus
    • Kes on klient, kasutajad
    • Keskkond
      • Organisatsioon
      • Kasutajate arv
      • Tehnoloogilised piirangud
    • Kliendi põhivajadused
    • Alternatiivid
  • Loodava süsteemi kirjeldus (lühidalt)
    • Funktsionaalsuse nimekiri
    • Funktsionaalsusest saadavad eelised
    • Eeldused, sõltuvused, ja piirangud
      • Tehnoloogia
      • Välised süsteemid
      • Majanduslikud parameetrid
    • Litsens & hind
  • Prioriteedid

Näide: DEMO visioon

Funksionaalsete nõuete spetsifikatsioon

Spetsifikatsioon peaks esitama rakenduse funktsionaalsed nõuded kasutuslugudena. Põhirõhk peaks olema kasutuslugude tekstilisel spetsifikatsioonil (stsenaariumid). Kõikide kasutuslugude dokumenteerimiseks peaks kasutama läbivalt sama malli (template'i). Võib kasutada mõnda linkide juures viidatud mallidest. (Kui kasutate inglise keelset malli, tõlkige see eestikeelses dokumendis kasutamiseks eelnevalt eesti keelde! Dokument peab olema korrektne ja läbivalt ühes keeles.)

Kasutuslood tuleb gruppeerida alateemadeks. Dokumenti peaks illustreerima mõne kasutusloodiagrammiga nii nagu see tundub kõige otstarbekam ja lisaväärtust andvam.

Mitte-funktsionaalsete nõuete spetsifikatsioon

  • Kasutatavus (usability)
  • Käideldavus (reliability)
  • Jõudlus (performance)
  • Toetus (support)
  • Lisanõuded:
    • Piirangud realisatsioonile
    • Liidesed väliste süsteemidega
    • Juurutamise piirangud
    • ...

Näide: DEMO Lisanõuetedokument

Diagrammid

  • Andmemudel (klassiskeemina)
  • Olulised äriprotsessid (tegevusskeemidena)
  • Tähtsate olemite või osapoolte olekumudelid (olekumasinaskeemidena)

Töö teostamisel võib kasutada suvalist CASE-vahendit, mis toetab UML-i. Vt. linkide alt modelleerimisvahendeid.

Lingid

Erinevad süsteemianalüüsi produktid:

Modelleerimisvahendid

Muud materjalid

  • Tarkvaratehnika 2008 loengud 4 (Ulrich Norbisrath).
  • C. Larman. Applying UML and Patterns.
  • H.-E. Eriksson, M. Penker. UML 2 Toolkit.
  • M. Fowler, K. Scott. UML Distilled: A Brief Guide to the Standard Object Modeling Language.
  • UML-i õppematerjal, Liina Lang.
  • UML tutorial.
edit