1 / 17

Objektorienterad Realtidsprogrammering 2000

OCTOPUS utvecklingsmetod en översikt. Något om kravspecifikationer och systemarkitektur. Några RMI-exempel till. Objektorienterad Realtidsprogrammering 2000. Föreläsning 6. OCTOPUS-metoden en översikt. Objektorienterad Hanterar viktiga problem i realtidssystem som parallellitet

tamira
Télécharger la présentation

Objektorienterad Realtidsprogrammering 2000

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OCTOPUS utvecklingsmetod en översikt.Något om kravspecifikationer och systemarkitektur.Några RMI-exempel till Objektorienterad Realtidsprogrammering 2000 Föreläsning 6

  2. OCTOPUS-metoden en översikt • Objektorienterad • Hanterar viktiga problem i realtidssystem som • parallellitet • synkronisering • kommunikation • avbrottshantering • ASICs (Application-Specific Integrated Circuit), kundanpassad hårdvara på chip • hårdvarugränssnitt • responstider • I huvudsak för icke hårda realtidssystem • Utgår från OMT och Fusion

  3. Olika faser, en översikt • Faser • systemkravfas • struktur via kontextdiagram • funktionalitet och dynamiskt beteende mha användingsfallsdiagram och användningsfall • kan kompletteras med scenarier • systemarkitekturfas • systemstruktur via delsystemdiagram • delsystem analysfas • görs för varje delsystem • delsystem designfas • delsystem implementationsfas

  4. Systemkravsfas Systemarkitektur Användningsfall och kontextdiagram Delssystem och gränssnitt Utvecklingsprocessen: mjukvarusystem Delsystem analys Delsystem analys Hårdvaru- wrapper Delsystem design Delsystem design Delsystem implementation Delsystem implementation Delsystem program Wrapper program Delsystem program Systemprogram

  5. Diagram som används i dom olika faserna • Tabell 2-1 visar vilka diagram som används i dom olika faserna och abstraktionsnivåerna

  6. Utvecklingsprocessen: delsystem Delsystem Analys Funktionell modell Objektmodell Dynamisk modell Händelser Klassdiagram Operationslakan Tillståndsdiagram Scenarier Delsystem Design Händelsetrådar Interaktionsmekanismer Objektgrupper Processkisser Meddelandeskisser Klasskisser Delsystem Implementation Processbeskrivningar Klassbeskrivningar Metodbeskrivningar Delsystemprogram

  7. Kravspecifikationsfas • I denna fas definieras vad systemet skall göra • typiskt infaller mjukvaruspecifikationsfasen efter andra "faser" som tex att bestämma vilken hårdvara som skall användas • I OCTOPUS, och i många andra metoder, börjar man med att specificera användningsfall som beskriver hur systemet skall användas • man beskriver både externa aktiviteter, tex hur användare använder systemet, och interna, autonoma, aktiviteter • I OCTOPUS strukturerar man användningsfallen i ett användningsfallsdiagram (se Awad fig 2-4, s 21)

  8. ... • I OCTOPUS beskriver man användningsfall på följande tabellform: • Se Awad fig 2-5 s 22 för exempel Användningsfall Användningsfallets namn Aktörer Dom som använder detta användningsfall Previllkor Villkor som måste vara uppfyllda innan användningsfallet används Beskrivning Kort beskrivning av användningsfallet, tidsvillkor och möjliga undantag (eng. exceptions) Delanvändingsfall Referenser till ingående användningsfall Undantagshantering Hur reagerar användningsfallet på undantag Aktiviteter Referenser till användningsfall som beskriver aktiviteter som inträffar vid det aktuella användnings- fallets genomförande Postvillkor Villkor som gäller efter användningsfallets genomförande eller vid undantag

  9. ... • Man kan komplettera tabellen med andra illustrationer, tex UMLs (se föreläsning 2, s 16) • I OCTOPUS gör man också ett systemkontextdiagram som visar relationerna mellan systemet och dess omgivning, se Awad fig 2-6 s 23

  10. Systemarkitekturfas • Systemet bryts ned på delsystem • för att hantera komplexitet och få mer hanterbara enheter • utgå från användningsfall och systemkontextdiagram • Följ god oo-tradition och gör delsystemen så oberoende av varandra som möjligt • Analysera alla delsystem innan design och implementation påbörjas • bla för att identifiera gränssnitt och verifiera arkitekturen • Undvik att hårdvaran påverkar mjukvarudesignen • I OCTOPUS används bla hårdvaurwrappers för att dölja detaljer i hårdvaran, se Awad fig 2-7 s 24

  11. Delsystem analysfas • I analysfasen försöker vi göra en konceptuell beskrivnimg av systemet • undvik detaljer och konstruktionslösningar • Olika delar associeras med varandra, Awad figur 2-8 • Vi antar att all bearbetning är momentan och problem relaterade till parallellitet beskrivs senare i designfasen • I OCTOPUS (och OMT) pratar man om följande delar i analysen • objektmodell-statisk struktur, objekt i domänen, relationer och relevanta attribut • funktionell modell-systemets funktionella gränssnitt • dynamisk modell-operationer samt reaktiva och realtidsaspekter • I UML pratar man om • strukturella modeller-som OMTs objektmodeller • beteendemodeller-som OMTs dynamiska modeller med inslag av funktionella modeller (samt några nya diagramtyper, tex aktivitetsdiagram)

  12. Objektmodellen • OCTUPUS objektmodell • beskriver statisk struktur • klassdiagram • som beskriver klasser och associationer, Awad fig 2-9

  13. Funktionell modell • Beskriver funktionella gränssnittet för delsystem • Bland annat beskrivs systemets operationer i operationslakan • Awad fig 2-10

  14. Dynamisk modell • Beskriver operationerna i ett delsystem över "applikationsgränserna", tar hänsyn realtids- och reaktiva aspekter • Man • analyserar • händelser • tillstånd • undersöker signifikans för händelser och tillstånd • kritisk, viktig, möjlig att ignorera, neutral • validerar modellen • Se fig 2-11 till fig 2-14

  15. Design av delsystem • Man analyserar hur objekten interagerar och skapar händelseträd (motsvarar ungefär UMLs samarbetsdigram) • Awad fig 2-15 till 2.17 • Exempel på implementation från fig 2-17 se listning 2-1 • Man grupperar objekten efter om dom kommunicerar synkront eller asynkront med varandra • se Awad fig 2-18 samt listning 2-2 respektive 2-3

  16. Mer om analys och design • Vi återkommer till kapitel 2 och resten av kapitlen i Awad samt fördjupningar under del 2 av kursen, dvs bla • Delsystem designfas • Delsystem implementationsfas • Då kommer också fler jämförelser med UML och andra tekniker att göras

  17. RMI mer beskrivningar och fler exempel • Läs också tutorialen som du hittar på följande adress: • http://www.javasoft.com/docs/books/tutorial/rmi/index.html • Vi tittar också på dom tre exemplen på följande sida • http://www.nada.kth.se/kurser/kth/2D4334/99-00/contents/exempel.html • dvs följande: • Transport av serialiserat objekt • Calbackrutin • Meddelandesystem • Ingen av exemplen skyddar sina kritiska regioner. Den intresserade kan ju fundera över hur kritiska regioner skall skyddas.

More Related