Témakörök. Structured Analysis (SA) Előnyök (SA) (SA/SD) Jackson Structured Programming (JSP) Szoftvertechnológia

Hasonló dokumentumok
Témakörök. Struktúrált fejlesztés. Elınyök (SA) Structured Analysis (SA) Hátrányok (SA) Alapfogalmak (SA)

2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA

ADATBÁZIS ALAPÚ RENDSZEREK

TERMÉKTERVEZÉS PANDUR BÉLA TERMÉKTERVEZÉS

Bánsághi Anna 2014 Bánsághi Anna 1 of 31

10-es Kurzus. OMT modellek és diagramok OMT metodológia. OMT (Object Modelling Technique)

Java programozási nyelv

AZ ELőADÁS CÉLJA. a funkciók dokumentálásának bemutatása. az SSADM szerkezetben elfoglalt helyének bemutatása

rendszerszemlélető, adatközpontú funkcionális

SSADM. Az SSADM (Structured System Analysis and Desing Method) egy rendszerelemzési módszertan.

01. gyakorlat - Projektalapítás

S01-7 Komponens alapú szoftverfejlesztés 1

Programozás alapjai (ANSI C)

Rendszer szekvencia diagram

Kölcsönhatás diagramok

Adatok ábrázolása, adattípusok

Software Engineering

Az informatika kulcsfogalmai

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Rendszer-modellezés, modellezési technikák

Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

Tartalom. Nagy rendszerek struktúrált fejlesztése (SSADM) Bevezető. Történet A strukturális modell Az SSADM technikái Az SSADM termékei

UML (Unified Modelling Language)

Bevezetés az informatikába

Információtartalom vázlata

Hatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve

ASDFG csapat SSADM Kiss Mihály Gábor. Lukács Krisztián Pénzes Andor 1.1 Jelenlegi rendszer analízise

Integrált keretrendszer

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Informatika tanítási módszerek

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

A dokumentáció felépítése

A Szekszárdi I. Béla Gimnázium Helyi Tanterve

Részletes szoftver tervek ellenőrzése

Informatika tagozat osztályozóvizsga követelményei

Software Engineering Babeş-Bolyai Tudományegyetem Kolozsvár

Algoritmusok tervezése

Automatikus tesztgenerálás modell ellenőrző segítségével

Szoftverminőségbiztosítás

Adatszerkezetek I. 1. előadás

Szoftvertechnológia ellenőrző kérdések 2005

3. A szoftverfolyamat alapvető

Rendszerterv. Makoviczki András. Neptun: JJ26AR

Történet John Little (1970) (Management Science cikk)

Szoftverminőségbiztosítás

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

S S A D M ELEMZÉSI ÉS TERVEZÉSI MÓDSZERTAN. Structured Systems Analysis and Design Method

Programozási technológia

Objektum orientált software fejlesztés (Bevezetés)

Szoftverminőségbiztosítás

Objektumorientált paradigma és a programfejlesztés

Oktatási segédlet 2014

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

ADATBÁZISOK. 3. gyakorlat E-K modell

Algoritmusok tervezése

Feladataink, kötelességeink, önkéntes és szabadidős tevékenységeink elvégzése, a közösségi életformák gyakorlása döntések sorozatából tevődik össze.

Rekurzió. Dr. Iványi Péter

2) Tervezzen Stibitz kód szerint működő, aszinkron decimális előre számlálót! A megvalósításához

Modellek ellenőrzése és tesztelése

Méréselmélet MI BSc 1

Modell alapú tesztelés mobil környezetben

ELTE, Informatikai Kar december 12.

SSADM OO nézőpontból. Molnár Bálint Egyetemi docens, Corvinus egyetem

AZ ALGORITMUS. az eredményt szolgáltatja

Algoritmusok. Dr. Iványi Péter

Szekvenciális hálózatok és automaták

Algoritmusok, adatszerkezetek, objektumok

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Algoritmusok. Hogyan csináljam?

Ismeretanyag Záróvizsgára való felkészüléshez

Mérés és modellezés 1

Alapszintű formalizmusok

Adattárház kialakítása a Szövetkezet Integrációban, UML eszközökkel. Németh Rajmund Vezető BI Szakértő március 28.

Szoftver-mérés. Szoftver metrikák. Szoftver mérés

Programozási nyelvek a közoktatásban alapfogalmak I. előadás

Objektum Orientált Szoftverfejlesztés (jegyzet)

Mérés és modellezés Méréstechnika VM, GM, MM 1

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Információs rendszerek Információsrendszer-fejlesztés

A rész (30 pont) A.1. Vajon mit csinál? (5 pont) A generál(n) algoritmus egy n természetes számot dolgoz fel (0 < n < 100).

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

Adatbázis rendszerek. 3. előadás Adatbázis tervezés

III. Alapfogalmak és tervezési módszertan SystemC-ben

HASZNÁLATI ESET DIAGRAM (USE CASE DIAGRAM)

NAV online számla regisztráció SAP rendszerhez

Folyamatmodellezés. Budapesti Műszaki és Gazdaságtudományi Egyetem. Hibatűrő Rendszerek Kutatócsoport. Budapesti Műszaki és Gazdaságtudományi Egyetem

S z á m í t ó g é p e s a l a p i s m e r e t e k

Informatika érettségi vizsga

Web-programozó Web-programozó

Az alállomási kezelést támogató szakértői funkciók

Valószínűségi modellellenőrzés Markov döntési folyamatokkal

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Objektum orientált programozás Bevezetés

Segédanyagok. Formális nyelvek a gyakorlatban. Szintaktikai helyesség. Fordítóprogramok. Formális nyelvek, 1. gyakorlat

Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás:

Funkcionális modellek leképezése. Dialógusok meghatározása

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: január 30.

Előzmények

Átírás:

Témakörök Struktúrált fejlesztés Szoftvertechnológia előadás Structured Analysis/Stuctured Design (SA/SD) Jackson Structured Programming (JSP) Jackson System Development e e (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 e e elemzésére e e is alkalmas CASE eszközök is alkalmazzák 1

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) Elemzés folyamata eredmény Kijelző 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 Konzol minta Ellenőrző tárolt minta Login adatok eredmény Zár 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 2

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 ió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ő) Jackson Structured Programming (JSP) Konzol Hőmérő Óra sütési idő hőmérséklet pontos idő Sütési idők be/ki Lámpa sütési idő fűtés Sütés Sütő sütési adatok Kijelző Michael A Jackson publikálta 1975-ben 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) 3

A módszer 1. A bemenő adatok leírása (Data Structure Diagram DSD) 2. A kimenő adatok leírása (DSD) 3. Az input és output adatok közötti összefüggések meghatározása 4. Adat-transzformációs algoritmusok leírása 5. A diagramok összefésülése egyetlen programszerkezetbe (Program Structure Diagram PSD) 6. A program leírása pszeudokóddal Példa (fizetési statisztika készítése) Fizetési lista Fizetési adat * Bemenő adatok szerkezete Fizetési stat. Statisztika Név Beosztás Fizetés Beosztás Átlag fizetés Kimenő adatok szerkezete * Példa (fizetési statisztika készítése) Előkészítés Listázás Összegzés * Fizetési i adat feldolgozás Programszerkezet Nyomtatás Beosztás_1 Beosztás_2 Beosztás_n Jackson System Development (JSD) Michael A Jackson és John Cameron 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) 4

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) 1. Egyed/tevékenység lépés 2. Kezdeti modell lépés 3. Interaktív funkciós lépés 4. Információs funkciós lépés 5. Rendszeridőzítéses lépés 6. Rendszerimplementációs lépés A továbbfejlesztés során a lépéseket fázisokká összevonták. Fázisok (átdolgozott) 1. Modellező fázis (Analysis) Egyed/tevékenység lépés Egyed-struktúra lépés 2. Hálózati fázis (Design) Kezdeti modell lépés Funkciós lépés Rendszeridőzítéses lépés 3. Implementációs fázis (Realisation) Implementációs lépés Modellező fázis 1. Egyed/tevékenység 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ó 5

2. Egyed-struktúra lépés Megszorítások megfogalmazása a tevékenységek sorrendjéhez Struktúra diagram készítése Egyed-Struktúra Diagram (Entity Structure Diagram ESD) Ábrázolja az egyes egyedek által időrendben db végrehajtott tt tevékenységeket é k t Ismerős a JSP-ből Entity Entity Entity Action Action Action Action Action * Szekvencia Szelekció Iteráció 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 1. Kezdeti modell lépés A valós világ szimulációja 2. Funkciós lépés A rendszer fő funkciójának megfelelő műveletek 3. Rendszeridőzítéses lépés A folyamatok szinkronizációja, megszorítások Hálózat Diagram (Network Diagram ND) A folyamatok közötti interakciókat ábrázolja Process Process Process Process a rendszer egyik funkcióját reprezentálja D SV Process Process DataStream State Vector 6

Implementációs fázis A hálózati modell transzformációja szoftverrendszerré A transzformációt a rendszerimplementá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 Szerző Cím ISBN Vásárlás Katalogizálás Csoport 7

Belépés TagAzonosító Név Lakcím Kilépés TagAzonosító Kivitel TagAzonosító Visszahozatal TagAzonosító Példa (Könyvtár) Egyed-struktúra diagram (Tag) Tag Belépés Tagság Kilépés Kölcsönzés * Egyed Tevékenységek Eladás Ár Kivitel Visszahozatal Sorrend Más Példa (Könyvtár) Hálózati fázis (SSD) Data Structured Systems Development (DSSD) T Tag adatok Tag SV Többszörös multiplicitás Állapot lekérdezés Kivitel Könyv SV Kö K Könyv adatok Kölcsönzési adatok 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 8

Warnier-Orr diagram Hierarchia Al legalapvetőbb l szerkezet, az adatok/folyamatok t k 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) Példa (folyamat) Fejléc Ellenőrzés Vásárlói adatok Adatok Vásárló rekord (1, N) Név Elérhetőség Hitelkártya Lakcím (0, 1) Telefon (0, 1) Megrendelés feldolgozás Megrendelt termék ellenőrzése (1, N) Megrendelé s nyomtatás Termék raktáron? Rögzítés 9

Irodalom 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_slid es.pdf Jackson Structured Programming Szoftver tervezés és technológia tantárgy anyaga http://www.wikipedia.orgwikipedia Jackson System Development http://www.wikipedia.org http://cisx2.uma.maine.edu/nicktemp/jsp&jsdlec/jsdt utorialstudentloanabbrev.htm Data Structured Systems Development / Data Structured Systems Development / Warnier-Orr diagram http://www.wikipedia.org/ http://varatek.com/warnierorr.html 10