Struktúrált fejlesztés

Slides:



Advertisements
Hasonló előadás
Definíciók: Algoritmus: bármely véges sok lépéssel leírható tevékenység. Olyan pontos előírás, amely megmondja, hogy egy adott típushoz tartozó feladat.
Advertisements

Összefoglalás Hardver,szoftver,perifériák Memóriák fajtái
ADATBÁZISOK.
Hatékonyságvizsgálat, dokumentálás
Adatbázis kezelés Adatbázis tervezés.
Az integrált áramkörök (IC-k) tervezése
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Követelmények Szoftver- környezet SQL ismétlés ADATBÁZIS ALAPÚ RENDSZEREK.
2. Rendszer fejlesztés
Az egyed-kapcsolat modell
Budapesti Műszaki és Gazdaságtudományi Egyetem Elektronikus Eszközök Tanszéke A programozás alapjai 1. (VIEEA100) 9. előadás.
Programozás alapjai A programozás azt a folyamatot jelenti, melynek során a feladatot a számítógép számára érthető formában írjuk le. C++, Delphi, Java,
OBJEKTUMORIENTÁLT PROGRAM
Algoritmusok Az algoritmus fogalma:
Vizuális modellezés Uml és osztálydiagram UML eszközök
Algoritmizálás Göncziné Kapros Katalin humaninformatika.ektf.hu.
Szintézis Keresztes Péter, 2005 A GAJSKI-KUHN DIAGRAM Alapelv: Rendezzük a digitális- rendszerek leírásait célok és szintek szerint.
Java programozási nyelv 2. rész – Vezérlő szerkezetek
Szoftvertechnológia előadás
Gazdasági informatika II.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
Megvalósíthatóság és költségelemzés Készítette: Horváth László Kádár Zsolt.
SSADM Structured Systems Analysis and Design Method
Szoftvertechnológia Szoftvergyártás 2..
Szoftvertechnológia Rendszertervezés.
Komplex rendszertervezési módszerek
OAIS. Megőrzés feladatai Viability –Meg kell őrizni a bitfüzér változatlanságát és olvashatóságát a tároló eszközön Rendbebility –Meg kell őrizni a bitfüzér.
Adatfolyam modellezés az SSADM-ben
Anyagadatbank c. tárgy gyakorlat Féléves tematika Adatbázis alapfogalmak, rendszerek Adatmodellek, adatbázis tervezés Adatbázis műveletek.
Objektumorientált tervezés és programozás II. 3. előadás
Statisztika, kutatásmódszertan I.
Algoritmus. Folyamatábrák
S S A D M ELEMZÉSI ÉS TERVEZÉSI MÓDSZERTAN
Magas szintű hardware szintézis
Az algoritmusok áttekinthető formában történő leírására szolgáló eszközök Páll Boglárka.
Adatszerkezetek 1. előadás
Algoritmusok.
ALGORITMUS.
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT
Önálló labor munka Csillag Kristóf 2005/2006. őszi félév Téma: „Argument Mapping (és hasonló) technológiákon alapuló döntéstámogató rendszerek vizsgálata”
3.2. A program készítés folyamata Adatelemzés, adatszerkezetek felépítése Típus, változó, konstans fogalma, szerepe, deklarációja.
AICC, IEEE, SCORM, fogalmak. Tananyagok cseréje (export-import) Támogatja az együttműködéseket Támogatja a felhasználóbarát környezet kialakítását Megoldja.
Adatbázis-kezelés JAG,
Objektumorientált programozás
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázisok gyakorlat
Adatbázis kezelés.
Programozás. Programozási nyelvek: Gépi nyelv A számítástechnika őskorában egyedüli lehetőség volt a gép bitsorozattal való programozása. Minden processzor.
Adatbázis alapfogalmak
Objektumvezérelt rendszerek tervezése
Funkciós blokkok A funkciós blokkok áttekintése Az alkalmazás előnyei.
Gyurkó György. Az állapotmodellezés célja Általánosságban ugyanaz, mint a többi dinamikus modellezési technikáé: Jobban megismerni a problémát. Finomítani.
Programozás, programtervezés
UML modellezés 3. előadás
Szimuláció.
Adatszerkezetek és algoritmusok 2008/ Algoritmus Az algoritmus szó eredete a középkori arab matematikáig nyúlik vissza, egy a i.sz. IX. században.
Adatbázisszintű adatmodellek
Szoftvermenedzsment A szoftver fogalma programmodulok rendszerdokumentáció konfigurációs adatok, és ezeket tároló fájlok felhasználói dokumentáció a szoftver.
Strukturált programozás.  A strukturált programozás jelenti valamennyi ma használatos programtervezési módszer alapját  Széles körben elfogadott az.
S S A D M ELEMZÉSI ÉS TERVEZÉSI MÓDSZERTAN Structured Systems Analysis and Design Method.
INFORMÁCIÓMENEDZSMENT Dr. Szalay Zsigmond Gábor adjunktus, intézeti tanszékvezető VEZETÉS ÉS SZERVEZÉS MSC SZAK SZENT ISTVÁN EGYETEM.
Programozási nyelvek csoportosítása.
Programozási alapok.
A könyvtári integrált rendszerek statisztikai moduljának használata
UML használata a fejlesztésben, illetve a Visual Studio 2010-ben
Bevezetés a programozásba Algoritmikus gondolkodás
Algoritmusok Az algoritmus fogalma:
Algoritmusok szerkezete
Algoritmus készítés.
Előadás másolata:

Struktúrált fejlesztés Szoftvertechnológia előadás

Témakörök Structured Analysis/Stuctured Design (SA/SD) Jackson Structured Programming (JSP) Jackson System Development (JSD) Data Structured Systems Development (DSSD)

Structured Analysis (SA) A struktúrált elemzés módszertanát Tom Demarco 1979-ben foglalta össze 20 éves fejlődési folyamat eredménye Adat- és vezérlésáramlást és tartalmat ír le Az elemzés során funkcionalitás és viselkedés szerint partícionáljuk a rendszert

Előnyök (SA) Népszerű és könnyen érthető Alkalmazható kis és nagy projektek esetében is Kiterjesztése (Ward és Mellor) beágyazott rendszerek elemzésére is alkalmas CASE eszközök is alkalmazzák

Hátrányok (SA) Tervezésre nagyon jól használható, de a követelmények feltárására és az implementációs fázis leírására majdhogynem alkalmatlan

Alapfogalmak (SA) Az elemzés eszköze az adatfolyam diagram (Data Flow Diagram – DFD) Külső egyed A rendszer számára szolgáltat információt vagy a rendszer által előállított információt használja Folyamat Információ-transzformációt hajt végre Adatáramlás Az információáramlás iránya (diszkrét) Adattároló Tetszőleges tároló

Példa (beléptető rendszer) Kijelző eredmény Ellenőrző Konzol minta eredmény tárolt minta Zár Login adatok

Elemzés folyamata Folyamatos finomítás (különböző szintekhez tartozó DFD-k elkészítése) A kezdeti (0. szintű) DFD egyetlen folyamatot tartalmaz, amit a további szinteken bontunk részekre A DFD kiegészíthető Adatszótárral (Data Dictionary – DD) A rendszerben tárolt és mozgó adatok részletes leírása A folyamat szöveges leírásával (Process Specification – PSPEC) A folyamat lépései beszélt nyelven vagy matematikai formulákkal leírva

Structured Design (SD) A struktúrált tervezés módszertanát Larry Constantine és Edward Yourdon dolgozta ki (1979-ben publikálták) Jól alkalmazható, mert a problémák jelentős hányada leírható információáramlásokkal Szintén DFD-ket használ

A DFD kiterjesztése A rendszer tervezése során fontos az időben állandó adatfolyam és a vezérlési információk áramlásának modellezése is Folyamatos adatfolyam Állandó adatáramlást reprezentál Folyamatvezérlő Az adat-transzformációs folyamatokat vezérli (aktivál/deaktivál) Vezérlési adat tároló Valamilyen puffertároló (általában a stack) Vezérlési adatfolyam Vezérlési információk áramlását mutatja Üzenet (Aktiváló/Indító/Megállító/Trigger) A folyamatvezérlők ezekkel vezérlik a folyamatokat

Példa (sütő) sütési idő Lámpa Konzol Sütési idők be/ki sütési idő fűtés Sütő Hőmérő hőmérséklet sütési adatok pontos idő Óra Kijelző

Jackson Structured Programming (JSP) Michael A. Jackson publikálta 1975-ben A bemenő és kimenő adatfolyamokra fókuszál A problémát hierarchikusan bontja részeire Az elemi utasításokat (adatokat) szekvencia, szelekció és iteráció segítségével építi komplex egységekké Bár már eljárt felette az idő, még mindig sok helyen használják (CASE-eszközök)

A módszer A bemenő adatok leírása (Data Structure Diagram – DSD) A kimenő adatok leírása (DSD) Az input és output adatok közötti összefüggések meghatározása Adat-transzformációs algoritmusok leírása A diagramok összefésülése egyetlen programszerkezetbe (Program Structure Diagram – PSD) A program leírása pszeudokóddal

Példa (fizetési statisztika készítése) Fizetési lista Fizetési stat. Fizetési adat * Statisztika * Név Beosztás Fizetés Beosztás Átlag fizetés Bemenő adatok szerkezete Kimenő adatok szerkezete

Példa (fizetési statisztika készítése) Listázás Előkészítés Összegzés Nyomtatás Fizetési adat feldolgozás * Beosztás_1 Beosztás_2 Beosztás_n … Programszerkezet

Jackson System Development (JSD) Michael A. Jackson és John Cameron publikálta (1983-ban) A JSP technikáira épít A módszer középpontjában az események állnak A módszer a kezdeti lépések során rendszer környezetére fókuszál (eltér a többi rendszertervezési módszertől)

Szabályok A valós világot kell modelleznünk a rendszer struktúrájának leírása helyett Egy időzített világ modellje is időzített kell legyen (események sorozata) A rendszer implementációja a specifikáció lépésenkénti transzformációja hatékony folyamatok halmazává

Lépések (eredeti) Egyed/tevékenység lépés Kezdeti modell lépés Interaktív funkciós lépés Információs funkciós lépés Rendszeridőzítéses lépés Rendszerimplementációs lépés

Fázisok (átdolgozott) Modellező fázis (Analysis) Egyed/tevékenység lépés Egyed-struktúra lépés Hálózati fázis (Design) Kezdeti modell lépés Funkciós lépés Rendszeridőzítéses lépés Implementációs fázis (Realisation) Implementációs lépés

Modellező fázis Egyed/tevékenység lépés Egyed-struktúra lépés A rendszer egyedeinek meghatározása (minden olyan objektum, amely fontos a rendszer számára) Tevékenységet végez vagy valamilyen tevékenységet végeznek vele A valós világban is létezik Egyedi Az egyedek által végzett tevékenységek és azok időbeli sorrendjének meghatározása Egy időpillanatban történik meg A rendszeren kívül történik Nem dekomponálható rész-tevékenységekké Az egyedek és tevékenységek tulajdonságainak meghatározása Egyed-struktúra diagramok készłtése (JSP-szerinti struktúra diagram) Fontos a felhasználók és a fejlesztők közötti kommunikáció Egyed-struktúra lépés Megszorítások megfogalmazása a tevékenységek sorrendjéhez Struktúra diagram készítése

Hálózati fázis Folyamatok és a közöttük végbemenő kommunikáció leírása (System Specification Diagram – SSD, más néven Network Diagram) A rendszer feladatának meghatározása Minden egyed folyamatként vagy programként jelenik meg a diagramon (ezek tartják naprakészen az egyedeket) A külső programokat később adjuk a diagramhoz (ezek állítják elő a bemeneti adatokat és számítják ki a kimeneti adatokat) A diagrammot kiegészítjük az adatok és a folyamatok közötti kapcsolatok leírásával Kezdeti modell lépés A valós világ szimulációja Funkciós lépés A rendszer fő funkciójának megfelelő műveletek Rendszeridőzítéses lépés A folyamatok szinkronizációja, megszorítások

Implementációs fázis A hálózati modell transzformációja szoftverrendszerré A transzformációt a rendszer-implementációs diagram (System Implementation Diagram) írja le Az implementáció fő problémája az optimalizáció (folyamatok számának csökkentése)

Példa (Student Loan System) Lsd. Irodalom

Példa (Könyvtár) Modellező fázis Egyedek: Tag (Kölcsönző személy) Könyv Tevékenységek: Vásárlás – a könyvtár vásárol egy könyvet Katalogizálás – a könyvtár katalogizál egy könyvet Belépés – egy új tag beiratkozása a könyvtárba Kilépés – tagsági viszony megszüntetése Kivitel – egy tag egy könyvet kölcsönöz Visszahozatal – egy tag visszahoz egy kölcsönzött könyvet Eladás – a könyvtár elad egy könyvet

Példa (Könyvtár) Tulajdonságok Tag TagAzonosító Név Lakcím Könyv KönyvAzonosító Szerző Cím ISBN Vásárlás Dátum Katalogizálás Csoport Belépés TagAzonosító Név Lakcím Dátum Kilépés Kivitel KönyvAzonosító Visszahozatal Eladás Ár

Példa (Könyvtár) Egyed-struktúra diagram (Tag) Belépés Tagság Kilépés Tevékenységek Kölcsönzés * Kivitel Visszahozatal Más Sorrend

Példa (Könyvtár) Hálózati fázis (SSD) Tag Könyv K Többszörös multiplicitás Tag adatok Könyv adatok SV SV Állapot lekérdezés Kivitel Kö Kölcsönzési adatok

Data Structured Systems Development (DSSD) Jean-Dominique Warnier és Keneth Orr publikálta Másnéven Warnier-Orr módszer A módszer főként az output adatokra fókuszál Adatszerkezetek és folyamatok leírására egyaránt alkalmas diagram

Warnier-Orr diagram Hierarchia Szekvencia Ismétlés Alternáció A legalapvetőbb szerkezet, az adatok/folyamatok felépítését mutatja Szekvencia A lépések egymás utáni végrehajtása (folyamat) Rekord jellegű konstrukció (adat) Ismétlés Ciklus (folyamat) Szekvenciális adathalmaz, pl. fájl (adat) Alternáció Elágazás (folyamat) Variáns rekord (adat)

Warnier-Orr diagram (kiegészítés) Konkurencia Akkor használjuk, amikor egy szekvencia esetén nem lényeges a sorrendiség Rekúrzió Az adat/folyamat tartalmazza önmaga valamely korábbi változatát

Példa (adat) Fejléc Név Lakcím (0, 1) Vásárló adatok Elérhetőség Vásárló rekord (1, N) Adatok Telefon (0, 1) Hitelkártya

Példa (folyamat) Ellenőrzés Termék raktáron? Megrendelt termék ellenőrzése (1, N) Megrendelés feldolgozás Rögzítés Megrendelés nyomtatás

Irodalom http://www.engin.umd.umich.edu/CIS/course.des/cis375/lec2/week/wk8/wk8.html Structured Analysis & Structured Design Szoftver tervezés és technológia tantárgy anyaga http://www.informatics.bangor.ac.uk/~dewi/modules/rts/YSM_slides.pdf Jackson Structured Programming http://www.wikipedia.org Jackson System Development http://cisx2.uma.maine.edu/NickTemp/JSP&JSDLec/JSDTutorialStudentLoanAbbrev.htm

Irodalom Data Structured Systems Development / Warnier-Orr diagram http://www.wikipedia.org/ http://varatek.com/warnierorr.html