Specifikace požadavků, UC. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/



Podobné dokumenty
Specifikace požadavků, UC. Jaroslav Žáček

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

27/11/2017. Business analýza a sběr požadavků. Dotazy na event #G865

Úvod do principů objektově orientovaného programování

UML. Unified Modeling Language. Součásti UML

Návrh IS - UML. Jaroslav Žáček

Návrh IS - UML. Jaroslav Žáček

UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

Modelování požadavků

Unifikovaný modelovací jazyk UML

Communist Party of Nepal (Unified Marxist-Leninist) Unified Modeling Language University of Massachusetts Lowell User-mode Linux.

Systémová analýza a návrh. Zbyněk Ungermann, UNG května 2011

Základy analýzy. autor. Jan Novotný února 2007

Analýza a Návrh. Analýza

TÉMATICKÝ OKRUH Softwarové inženýrství

Use Case Model - Complete Report Grouped by Item Kind, Full Descriptions

Unifikovaný proces vývoje

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

Karta předmětu prezenční studium

7 Jazyk UML (Unified Modeling Language)

Vývoj informačních systémů. Obecně o IS

5 Požadavky a jejich specifikace

6INF2. RNDr. Jaroslav Žáček, Ph.D.

7 Jazyk UML (Unified Modeling Language)

Object-oriented Analysis & Design. Requirements Analysis

Modelování procesů s využitím MS Visio.

Tvorba informačních systémů

Jiří Mašek BIVŠ V Pra r ha

CASE nástroje. Jaroslav Žáček

2 Axiomatic Definition of Object 2. 3 UML Unified Modelling Language Classes in UML Tools for System Design in UML 5

UML - Unified Modeling Language

5 Požadavky a jejich specifikace

3 Inženýrství systémů založených na počítačích (Computer-based System Engineering)

3 Inženýrství systémů založených na počítačích (Computer-based System Engineering)

KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování

Kurz Postupy návrhu IS pomocí UML a OOP (5 dnů, in-house)

CASE. Jaroslav Žáček

KIV/ASWI 2007/2008 Metody získávání a zachycení požadavků. Postupy a UML modely Zachycení požadavků Model užití Popis problémové oblasti

UML: Unified Modeling Language

Jazyk UML VST (Velmi stručný tutorial) verze 1.0

Využití SysML pro tvorbu modelů v systémovém inženýrství

Zajištění kvality programového vybavení - testování

Plug-in pro správu požadavků a sledování postupu vývoje

Obsah. Zpracoval:

Testování software. Jaroslav Žáček

TÉMATICKÝ OKRUH Softwarové inženýrství

Objektová tvorba SW, Analýza požadavků 2006 UOMO 53

Metody popisu systému, základy UML

Přednáška. Sběr požadavků na SW s použitím metody C.C a nástroje Craft.CASE. e-fractal, s.r.o.

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

Objektově orientované technologie Diagram komponent Implementační náhled (Diagram rozmístění) Pavel Děrgel, Daniela Szturcová

Analytická specifikace a její zpracování

Modelování podnikových procesů

Prototypování, testování prototypů

Objektově orientované technologie Dynamický náhled Sekvenční diagram (Realizace UC) Daniela Szturcová

Architektura softwarových systémů

Zhodnocení architektury podniku. Jiří Mach

Návrh softwarových systémů - architektura softwarových systémů

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

PŘÍLOHA C Požadavky na Dokumentaci

Budování architektury pomocí IAA

Tvorba informačních systémů

Testování softwaru. 10. dubna Bořek Zelinka

Model případu užití. Martin Komárek

Modelování informačních systémů Standard architektury MPSV

Modelování webových služeb v UML

Chyby software. J. Sochor, J. Ráček 1

Novinky v UML 2.5 a agilní modelování

OOT Objektově orientované technologie

OOT Objektově orientované technologie

Vývoj informačních systémů. Přehled témat a úkolů

(Akty přijaté před 1. prosincem 2009 podle Smlouvy o ES, Smlouvy o EU a Smlouvy o Euratomu)

Testování Java EE aplikací Petr Adámek

Vysoká Škola Ekonomická - Fakulta informatiky a statistiky. 4IT450 CASE Computer aided systems engineering

Modelování informačních systémů s využitím jazyka UML. Jaroslav Šmarda

Pokročilá analýza a návrh stavebních konstrukcí

ARIS Platform softwarová podpora řízení procesů Procesní ARIS laboratoř základ moderní výuky.

Nástroje pro tvorbu wireframes

Ročníkový projekt. Jaroslav Žáček

Novinky ve standardu UML 2.0

Požadavky Modelování případů užití

Znalostní systém nad ontologií ve formátu Topic Maps

Dokumentace software

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

7.5 Diagram tříd pokročilé techniky

IS pro podporu BOZP na FIT ČVUT

PV207. Business Process Management

Procesní dokumentace Process Management. Pavel Čejka

Databázové patterny. MI-DSP 2013/14 RNDr. Ondřej Zýka,

EXTRAKT z mezinárodní normy

Systém pro správu experimentálních dat a metadat. Petr Císař, Antonín Bárta 2014 Ústav komplexních systémů, FROV, JU

EXTRAKT z mezinárodní normy

Vývoj informačních systémů. Přehled témat a úkolů

Česká zemědělská univerzita v Praze. Provozně ekonomická fakulta. Katedra informačních technologií

Testování SW produktů. Jiří Sochor, Jaroslav Ráček 1

Plant-wide Automation

Modelem řízený vývoj. SWI 1 Jan Kryštof

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

Transkript:

Specifikace požadavků, UC Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/

Důvody pro formalizaci SRS Podle Chaos Report organizace Standish Group jsou požadavky jedním z přispěvatelů k problémům softwarových projektů. V roce 1997 na prvním místě, 2006 na 4. místě. Výzkumy i zkušenosti hodnotí měnící se požadavky jako jednu z příčin neúspěšnosti projektů. Pouze 20% požadavků na software je využito, zhruba 45% se nikdy nepoužije.

Základní dělení požadavků Funkční - popisuje co systém dělá, formalizace např. pomocí UC Nefunkční - popisují další vlastnosti, které uživatel přímo nevidí při práci s aplikací (doba odezvy, architektura - přístup k aplikaci z více míst)

Obecný postup při specifikaci požadavků Pochopení problému a jeho analýza Identifikace lidí se zájmem na projektu (tzv. stakeholders) Definice systému (scope) a jeho hranic (boundaries) Identifikace omezení, které musí systém mít (celá firma používá jako OS Linux)

Způsoby identifikace požadavků Rozhovory s vybranými uživateli Requirements workshop Prototyp (HTML, obecné GUI) User Stories, Post-it lístečky

Tradiční způsoby soupisu požadavků Sesbírat veškeré požadavky na systém detailně. Na základě požadavků navrhnout architekturu aplikace a detailně vypracovat důkladnou analýzu. Navrhnout databázi, pak teprve funkce nad ní. Forma zápisu převážně dokumentová.

Současný stav

Možné nevýhody Ztráta celkového přehledu. Navzájem se vylučující požadavky. Funkce jsou zafixovány po celou dobu vývoje (již proběhla analýza). Funkce jsou většinou zaznamenány z pohledu systému, ne uživatele.

UML Obecný grafický jazyk pro vizualizaci, dokumentaci a popis chování a funkcí v oblasti softwarového inženýrství. Od roku 1997 standardizován organizací OMG. Nejedná se o programovací jazyk.

Dostupné modely UML 1.x: Use Case diagram Class diagram Object diagram Sequence diagram Statechart Activity diagram Component diagram Deployment diagram UML 2.0: Class diagram Component diagram Composite structure diagram Deployment diagram Object diagram Package diagram Activity diagram State Machine diagram Use case diagram Communication diagram Interaction overview diagram Sequence diagram Timing Diagram

Modely při vývoji SW Use Case Class diagram Sequence diagram

Use Case Actor - vyjadřuje jednotku, která má nějaké interakce se systémem (člověk, jiný software, organizace). Scenario - specifická sekvence akcí a interakcí mezi aktorem a systémem který budujeme. Občas označován jako instance případu užití. Use Case (případ užití) - kolekce úspěšných a neúspěšných scénářů, které mají něco společného a podporují konkrétní cíl.

Use Case Hranice systému Aktoři Use Cases - případy užití (identifikované společně s aktory) Relace, vazby

Příklad použití - bankomat

Use Case a scénáře Scénář 3 Scénář 2 Scénář 1

Příklad scénáře

Styl Black-box Nejčastější způsob zapsání UC. Nepopisují vnitřní práci systému, ale odpovědnosti systému za určité činnosti. Styl Black-box Styl White-box Systém zaznamenává objednávky. Systém zapisuje objednávky do databáze...(nebo hůře)...systém generuje SQL INSERT pro objednávku

Formálnost UC Brief - nejvyšší abstrakce, většinou jeden hlavní scénář, např. Proces prodeje Casual - pokrývá více scénářů, např. Zpracování objednávek Fully dressed - detailně zpracovány všechny kroky, obsahují sekce Preconditions a Guaranties

Šablona Primary Actor Stakeholders and Interests Preconditions Success Guarantee Main Success Scenario (také označován jako Basic Flow) Extensions (také označovány jako Alternative Flow) Special Requirements Technology and Data Variations List Frequency or Occurence Open Issues

Příklad

Basic Flow

Alternative Flow

Special Requirements/ Technology

Jak často se opakuje, na co je potřeba si dát pozor

User Stories

User Story Termín z XP, Scrum Textový popis požadavku na budoucí software v řeči, kterou denně používá uživatel Psáno na malém papírku, kartičce (aby nenarostl do velkých rozměrů) User Stories jsou psány zákazníkem Students can purchase monthly parking passes online. Parking passes can be paid via credit cards. Parking passes can be paid via PayPal. Professors can input student marks. Students can obtain their current seminar schedule. Students can order official transcripts. Students can only enroll in seminars for which they have prerequisites. Transcripts will be available online via a standard browser.

Story board

IEEE 830

IEEE 830 IEEE Recommended Practice for Software Requirements Specification Doporučený přístup ke specifikaci SW požadavků Definuje zaměření (scope) - Popis praktik SRS - SRS za účelem vývoje SW - Částečně za účelem výběru SW Odkazy na relevantní standardy IEEE - IEEE 610.12 Standard Glossary of Software Engineering Terminology - IEEE 1042 Guide to SW Configurations Management Definice - Kontrakt, zákazník, dodavatel, uživatel.

Náplň IEEE 830 Čím se zabývat: - Funkcionalita - Externí rozhraní - Výkon - Atributy - Návrhová omezení SRS by měla být: - Correct (přesná) - Unambiguous (jednoznačná) - Complete - Consistent - Ranked for importance (ohodnocená podle důležitosti) - Verifiable (ověřitelná) - Modifiable (přizpůsobitelná) - Traceable (sledovatelná)

Obsah SRS podle IEEE 830

Příklad - šablona dle IEEE 830

FURPS+

FURPS+ Systém klasifikace požadavků z pohledu architektury navrhovaného systému Autorem Robert Grady (HP), alternativně lze použít standard ISO 9126 Oblasti: - Functionality - funkce, bezpečnost - Usability - uživatelské rozhraní, dokumentace, nápověda - Reliability - spolehlivost, schopnost zotavení z chyby - Performance - odezva, přesnost, propustnost, využitelnost zdrojů - Supportability - podporovatelnost, udržitelnost, lokalizace + znamená, že bychom neměli zapomenout ani na: - Návrhové, implementační, fyzické požadavky

Funkční požadavky, které ovlivňují architekturu

Transformace požadavků FURPS do výsledného produktu

Podpora nástroji

Požadavky na nástroj Automatizace a usnadnění činností. Kontrola konzistence modelů. Traceability. Znovupoužití. Možnost generování GUI.