Úvod do softwarového inženýrství IUS 2009/2010 p.1/40

Podobné dokumenty
ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ

PŘÍLOHA C Požadavky na Dokumentaci

Obsah. Zpracoval:

Klasické metodiky softwarového inženýrství 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

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

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

Návrh softwarových systémů - úvod, motivace

Škola: Střední škola obchodní, České Budějovice, Husova 9. Inovace a zkvalitnění výuky prostřednictvím ICT

2 Životní cyklus programového díla

Analýza a Návrh. Analýza

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

TREND POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE

10 Metody a metodologie strukturované analýzy

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

3. Je defenzivní programování technikou skrývání implementace? Vyberte jednu z nabízených možností: Pravda Nepravda

Návrh softwarových systém. Návrh softwarových systémů

Softwarové inženýrství 01. doc. Ing. František Huňka, CSc.

Analytická specifikace a její zpracování

Akademické tituly (ČR, 2013)

Akademické tituly (ČR, 2011)

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

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

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

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

Specializace Návrhář software na základě analýzy vytváří návrh softwarových aplikací ve formě schémat a diagramů.

Téma číslo 6 Vývoj české vzdělávací soustavy. Pavel Doulík, Úvod do pedagogiky

Metodika analýzy. Příloha č. 1

5 Požadavky a jejich specifikace

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

5 Požadavky a jejich specifikace

Řízení reálných projektů, agilní metodiky

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

01 Teoretické disciplíny systémové vědy

Manažerská informatika - projektové řízení

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

Hodnocení železničních systémů podle Evropských standardů. Doc. Dr. Ing. Tomáš Brandejský Ing. Martin Leso, PhD Fakulta dopravní ČVUT v Praze

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

Analýza. Roman Danel 1. Metody analýzy

Vysokoškolské vzdělání a udělované akademické tituly (přehled pro ČR, platný od září 2016)

SOFTWAROVÉ INŽENÝRSTVÍ 1

8 Přehled OO metodik (metod, metodologií)

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

POČÍTAČE A PROGRAMOVÁNÍ

Úvod do softwarového inženýrství IUS

Projektový management. Projektový management. Další charakteristiky projektu. Projekt

AUDITY Hlavním cílem každého auditu musí být zjišťování faktů, nikoli chyb!

Seminář VŠE, ČSSI a ICT UNIE

Soulad studijního programu. Aplikovaná informatika

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

Unifikovaný proces vývoje

8 Přehled OO metodik (metod, metodologií)

Datová věda (Data Science) akademický navazující magisterský program

PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE

MANAŽERSKÉ INFORMAČNÍ SYSTÉMY

7.2 Model použití (jednání) (Use Case)

TÉMATICKÝ OKRUH Teorie zpracování dat, Databázové a informační systémy a Teorie informačních systémů

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

MANAŽERSKÉ INFORMAČNÍ SYSTÉMY

Softwarový proces. Bohumír Zoubek, Tomáš Krátký

Problémové domény a jejich charakteristiky

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

ROZHODOVÁNÍ ROZHODOVACÍ PROBLÉM A PROCES

PROPOJENÍ VĚDY, VÝZKUMU, VZDĚLÁVÁNÍ A PODNIKOVÉ PRAXE. PhDr. Dana Pokorná, Ph.D. Mgr. Jiřina Sojková, Státní zámek Sychrov,

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

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

6 Objektově-orientovaný vývoj programového vybavení

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

Bakalářský studijní obor informatika

SMĚRNICE DĚKANA Č. 4/2013

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

CASE. Jaroslav Žáček

Úvod do softwarového inženýrství IUS 2009/2010 p.1/55

Vývoj řízený testy Test Driven Development

Informace o projektu APSYS

Výukový materiál zpracován v rámci projektu EU peníze školám

Architektury Informačních systémů. Jaroslav Žáček

Standard studijního programu Učitelství informatiky pro střední školy

Řízení SW projektů. Lekce 3. Projektové procesy a znalostní oblasti. přednáška pro studenty FJFI ČVUT. zimní semestr 2012

Komponentový návrh SW

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

Hospodářská informatika

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

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

12 Zajištění kvality programového vybavení

12 Zajištění kvality programového vybavení

Česká letecká servisní a. s.

Teorie systémů TES 10. Měkké systémy metodiky

2. Začlenění HCI do životního cyklu software

MANAŽERSKÉ ROZHODOVÁNÍ. Téma 1 - Normativní a deskriptivní teorie rozhodování, struktura problémů a rozhodovacích procesů

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

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í.

METODIKY VÝVOJE SOFTWARE STUDIJNÍ OPORA PRO KOMBINOVANÉ

ZEMĚMĚŘICKÝ ÚŘAD. Výzkum a vývoj programového aparátu pro generalizaci státního mapového díla. Ing. Přemysl JINDRÁK

Michal Oškera (50854)

Životní cyklus vývoje SW. Jaroslav Žáček

Nebojte se přiznat, že potřebujete SQA

II. ZMĚNY VNITŘNÍHO MZDOVÉHO PŘEDPISU VYSOKÉ ŠKOLY TECHNICKÉ A EKONOMICKÉ V ČESKÝCH BUDĚJOVICÍCH

1. VYMEZENÍ ODBORNÉ STÁŽE

8/2.1 POŽADAVKY NA PROCESY MĚŘENÍ A MĚŘICÍ VYBAVENÍ

Informační systémy ve strojírenství

Transkript:

Úvod do softwarového inženýrství IUS 2009/2010 2. přednáška Ing. Radek Kočí, Ph.D. Ing. Bohuslav Křena, Ph.D. Úvod do softwarového inženýrství IUS 2009/2010 p.1/40

Dekompozice složitých problémů rozdělení (dekompozice) složitějšího problému na jednodušší (lehčí zvládnutí problému) rozhraní podsystémů Problem 1 2 3 4 1 2 3 4 Úvod do softwarového inženýrství IUS 2009/2010 p.2/40

Dekompozice složitých problémů Přináší lépe zvládnutelné podsystémy soustředění pozornosti na jeden podsystém prezentovatelnost dílčího problému bez rušivých vlivů podsystémy se mohou vyvíjet nezávisle skutečně velké systémy se bez dekompozice nedají zvládnout Zvýšená pozornost koordinace tvorby rozhraní integrace a testování podsystémů Úvod do softwarového inženýrství IUS 2009/2010 p.3/40

Proces vývoje softwaru Proces, ve kterém se potřeby uživatele transformují na požadavky na SW, požadavky na SW se transformují na návrh, návrh se implementuje, implementace se testuje a nakonec předá uživateli. SW proces definuje kdo dělá co a kdy jak dosáhnout požadovaného cíle Úvod do softwarového inženýrství IUS 2009/2010 p.4/40

Životní cyklus softwaru Činnosti spojené s vývojem softwaru analýza a specifikace požadavků (8 %), architektonický a podrobný návrh (7 %), implementace (12 %), integrace (např. se stávající částí SW) a testování (6 %), provoz a údržba (67 %). Úsilí věnované pečlivé analýze a návrhu se vrátí úsporou nákladů později. Například dokud by dvakrát větší úsilí věnované analýze a návrhu znamenalo polovinu nákladů při provozu a údržbě, pak celkově ušetříme 18 % nákladů: specifikace požadavků: +8 % architektonický a podrobný návrh: +7 % provoz a údržba: -33 % Na analýze a návrhu se nevyplatí šetřit! Úvod do softwarového inženýrství IUS 2009/2010 p.5/40

Životní cyklus softwaru Existuje mnoho přístupů k vývoji softwaru. Podstaty těchto přístupů jsou vyjádřeny v modelech životního cyklu softwaru. Model životního cyklu definuje etapy vývoje softwaru, pro každou etapu definuje nutné činnosti, pro každou etapu definuje její vstupy a výstupy. Rozdíly v modelech jsou zejména v definování jednotlivých etap a definování posloupnosti etap. Úvod do softwarového inženýrství IUS 2009/2010 p.6/40

Etapy životního cyklu softwaru Analýza a specifikace požadavků transformace neformálních požadavků uživatele do strukturovaného popisu požadavků, zdůraznění požadavků uživatele, ne jak toho docílit (realizovat), provedení studie vhodnosti, identifikace a analýza rizik, získávání, analýza, definování a specifikace požadavků, plánování akceptačního testování. Úvod do softwarového inženýrství IUS 2009/2010 p.7/40

Etapy životního cyklu softwaru Architektonický návrh ujasnění koncepce systému, dekompozice systému, definování vztahů mezi částmi systému, specifikace funkcionality a ohraničení podsystémů, plánování testování systému, plánování nasazení systému do provozu, dohoda o postupu nasazování podsystémů, dohoda o plánu zaškolování uživatelů. Úvod do softwarového inženýrství IUS 2009/2010 p.8/40

Etapy životního cyklu softwaru Podrobný návrh podrobná specifikace softwarových součástí, specifikace algoritmů realizujících požadované funkce, specifikace rozhraní pro jednotlivé součásti, specifikace logické a fyzické struktury údajů, které zpracovává příslušná součást, specifikace způsobu ošetřování chybových a neočekávaných stavů, plán prací při implementaci součásti, plán testování součásti, návrh testovacích dat, specifikace požadavků na lidské zdroje (odhad trvání a nákladů projektu). Úvod do softwarového inženýrství IUS 2009/2010 p.9/40

Etapy životního cyklu softwaru Implementace a testování součástí programová realizace softwarových součástí, vypracování dokumentace k součástem, testování implementovaných součástí, začátek školení budoucích uživatelů. Integrace a testování systému spojení součástí do podsystémů, testování podsystémů, integrace podsystémů do celého systému, testování podsystémů a celého systému oprava nalezených chyb, návraty k etapě implementace. Úvod do softwarového inženýrství IUS 2009/2010 p.10/40

Etapy životního cyklu softwaru Akceptační testování a instalace testování systému uživatelem, operace přebírání SW produktu, školení používání systému, nasazení systému. Provoz a údržba zabezpečení provozu softwaru, řešení problémů s nasazením softwaru, řešení problémů s používaním softwaru, opravy, rozšiřování, přizpůsobování softwaru podle požadavků okolí. Úvod do softwarového inženýrství IUS 2009/2010 p.11/40

Model životního cyklu softwaru definuje jednotlivé kroky (etapy), které je nutné vykonat, definuje časovou následnost kroků, nedefinuje délku trvání kroků a jejich rozsah, možnost návratu k předcházejícímu kroku, každá etapa musí být dobře definovaná, každá etapa vytváří reálné výstupy, správnost každé etapy lze vyhodnotit. Úvod do softwarového inženýrství IUS 2009/2010 p.12/40

Vodopádový model životního cyklu softwaru následující etapa začne až po ukončení předcházející Požadavky Návrh Implementace testování jednotek Testování systému Provoz, údržba Úvod do softwarového inženýrství IUS 2009/2010 p.13/40

Vodopádový model Nevýhody reálné projekty většinou nesledují etapy v definovaném pořadí uživatel není schopen předem stanovit (přesně!) všechny požadavky zákazník vidí spustitelnou verzi až v závěrečných fázích projektu odhalení nedostatků příliš pozdě Výhody lepší než neřízený chaotický přístup při stálých požadavcích zaručuje nejlepší strukturu výsledného produktu Úvod do softwarového inženýrství IUS 2009/2010 p.14/40

V-model Analýza požadavků plán akceptačních testů Architektonický návrh plán testů systému Podrobný návrh plán testů součástí Testy součástí Akceptační testy Testy systému Implementace V-model je varianta vodopádového modelu s větším důrazem na testování. Úvod do softwarového inženýrství IUS 2009/2010 p.15/40

Iterativní modely životního cyklu systém se vyvíjí v iteracích v každé iteraci se vytvoří reálný výsledek náročnější řízení horší výsledná struktura S S N I N I... T T čas Úvod do softwarového inženýrství IUS 2009/2010 p.16/40

Iterativní modely životního cyklu Inkrementální modely na základě specifikace celého systému se stanoví ucelené části systému systém se vytváří a předává uživateli po částech Spirálový model kombinace prototypování a analýzy rizik (management) jednotlivé kroky se ve vývoji opakují (na vyšším stupni zvádnuté problematiky) Agilní metodologie např. extrémní programování Rational Unified Process RUP Úvod do softwarového inženýrství IUS 2009/2010 p.17/40

Spirálový model Úvod do softwarového inženýrství IUS 2009/2010 p.18/40

Rational Unified Process RUP výsledek výzkumu řady velkých firem koordinovaný firmou Rational, využívání existujících komponent, vývoj softwarového produktu iteračním způsobem, verze systému, po každé iteraci spustitelný kód model softwarového systému je vizualizován, UML,... průběžná kontrola kvality produktu, objektivní měření, metriky,... správa požadavků na softwarový systém, umění získávání požadavků od zákazníka řízení změn systému každá změna je přijatelná, všechny změny jsou sledovatelné Úvod do softwarového inženýrství IUS 2009/2010 p.19/40

Rational Unified Process RUP Úvod do softwarového inženýrství IUS 2009/2010 p.20/40

Problémy s výběrem správného modelu Neexistuje projekt, který by byl řízen přesně podle jednoho z modelů životního cyklu. Uvedené modely jsou pouze konceptuální, žádný projekt se nemůže striktně řídit pravidly jednoho z nich! Většinou není možné na začátku specifikovat celé zadání. Jednotlivé etapy nelze zcela uzavřít v průběhu projektu. Úvod do softwarového inženýrství IUS 2009/2010 p.21/40

Aktéři v životním cyklu softwaru Zákazník sponzoruje vývoj SW specifikuje požadavky na SW Dodavatel vyvíjí systém má závazky vůči zákazníkovi komunikuje s uživatelem (testování,... ) Uživatel testuje a používá systém upřesňuje požadavky na SW Úvod do softwarového inženýrství IUS 2009/2010 p.22/40

Role v softwarovém týmu analytik návrhář programátor odborník na testování odborník na údržbu auditor, skupina na zabezpečení kvality management podpůrný personál Úvod do softwarového inženýrství IUS 2009/2010 p.23/40

Analytik vs. programátor Programátorská profese programátoři navrhují technické řešení systému, implementují, ladí a testují komponenty práce má předem daný cíl mezilidské vztahy nejsou většinou komplikované výsledky práce jsou okamžitě zřejmé. Analytická profese analytici vytvářejí cíle projektu, zpracovávají specifikační dokumenty a jejich odsouhlasení zákazníkem vyžaduje diplomatické vlohy při jednání s lidmi mezilidské vztahy jsou většinou komplikované analytická fáze nemá jasné ohraničení. Úvod do softwarového inženýrství IUS 2009/2010 p.24/40

Jak tráví čas programátoři? psaní programů 13% čtení programů a příruček 6% komunikace týkající se práce (konzultace,... ) 42% ostatní (všetně osobních věcí) 39% Úvod do softwarového inženýrství IUS 2009/2010 p.25/40

Etapy životního cyklu softwaru analýza a specifikace požadavků návrh implementace testování provoz, údržba Úvod do softwarového inženýrství IUS 2009/2010 p.26/40

Etapy životního cyklu softwaru analýza a specifikace požadavků návrh implementace testování provoz, údržba management Úvod do softwarového inženýrství IUS 2009/2010 p.26/40

Analýza a specifikace požadavků Cíl: Stanovení služeb, které zákazník požaduje od systému a vymezení podmínek jeho vývoje a provozu. Dobře identifikované požadavky snižují cenu vývoje! Proces tvorby požadavků získávání požadavků (naslouchat) analýza požadavků (přemýšlet) definice požadavků (psát) Požadavky versus řešení více uživatelů stejná podstata požadavku více alternativ řešení stejného požadavku žádné řešení požadavku je nerealizovatelný Úvod do softwarového inženýrství IUS 2009/2010 p.27/40

Specifikace požadavků Definice požadavků Specifikace požadavků Specifikace softwaru Požadavky pro zákazníka (neformální, abstraktní) Podrobné požadavky (formální, strukturovaný text) Podrobný popis pro vývojáře Stavy požadavku přijatý akceptovaný zrušený řešený (definovaný, specifikovaný, implementovaný, testovaný) ukončený Úvod do softwarového inženýrství IUS 2009/2010 p.28/40

Typy požadavků Funkcionální požadavky např. výpočet mzdy, odvodů,... Požadavky na provoz systému statické např. počet uživatelů,... dynamické např. čas odezvy, počet transakcí na jednotku času,... Požadavky na výsledný systém počítačové vybavení např. HW náročnost (pamět,... ) programové vybavení např. operační systém, programovací jazyky,... vyvíjený software např. efektivnost, spolehlivost, odolnost vůči chybám, přenositelnost, bezpečnost,... Úvod do softwarového inženýrství IUS 2009/2010 p.29/40

Typy požadavků Požadavky na vývojový proces dodržování norem odevzdání systému Požadavky na rozhraní software uživatel software jiné součásti systému (HW, SW) Externí požadavky legislativní požadavky (ochrana informací,... ) Úvod do softwarového inženýrství IUS 2009/2010 p.30/40

Typy požadavků Požadavky na vývojový proces dodržování norem odevzdání systému Požadavky na rozhraní software uživatel software jiné součásti systému (HW, SW) Externí požadavky legislativní požadavky (ochrana informací,... ) měřitelnost požadavků Úvod do softwarového inženýrství IUS 2009/2010 p.30/40

Kroky při specifikaci požadavků Studie vhodnosti odhad, zda je reálné vytvořit systém s danými vlastnostmi za daných podmínek rychlé, levné Analýza požadavků zkoumání současného stavu pozorování, diskuze, prototypování Definování požadavků transformace informací z analýzy do dokumentu pro uživatele / zákazníka Specifikace požadavků soustřed uje se na software, ne na proces jeho tvorby často se vykonává paralelně s architektonickým návrhem Úvod do softwarového inženýrství IUS 2009/2010 p.31/40

Metody získávání informací Kvalitní získávání informací o problémové oblasti a požadavcích snižuje riziko vytvoření systému, který nebude vyhovovat požadavkům uživatele. Důležitá je také motivace ze strany zákazníka (uživatele). Různé metody získávání informací interview (orientační, strukturované) dotazníky studium dokumentů pozorování prací u zákazníka přímá účast na pracech zákazníka analýza existujícího softwarového systému Úvod do softwarového inženýrství IUS 2009/2010 p.32/40

Vlastnosti specifikace požadavků Specifikace by měla být správná vyvíjený SW by měl splňovat každý požadavek jednoznačná neumožňuje více interpretací úplná obsahuje všechny důležité požadavky a definice reakcí systému na všechny třídy vstupních údajů verifikovatelná existuje proces kontroly, zda SW splňuje požadavek konzistentní požadavek není v rozporu s jinými požadavky sledovatelná původ (smysl) požadavku je jasný modifikovatelná změna požadavku je možná se zachováním struktury a stylu požadavku seřazená podle důležitosti seskupení požadavků do tříd důležitosti požadavky na SW se v čase vyvíjí Úvod do softwarového inženýrství IUS 2009/2010 p.33/40

Problémy při specifikaci požadavků Různorodost požadavků různí uživatelé mají různé požadavky a priority kompromis (měnící se) různé požadavky uživatele a zákazníka (objednavatele) špatná predikovatelnost dopadu nového systému na organizaci, kde se nasadí. Chyby, které se neodhalí při specifikaci: 65% z nich se odhalí při návrhu 2% z nich se odhalí při implementaci 30% z nich se odhalí při testování 3% z nich se odhalí v provozu Úvod do softwarového inženýrství IUS 2009/2010 p.34/40

Problémy při specifikaci požadavků Přibližný odhad nákladů na opravu chyb ve specifikaci Etapa Náklady (člověko-hodiny) Specifikace 2 Návrh 5 Implementace 15 Akceptační testování 50 Údržba 150 Úvod do softwarového inženýrství IUS 2009/2010 p.35/40

Problémy při specifikaci požadavků Komunikace se zákazníkem zákazník není schopen přesně formulovat požadavky terminologie vývojář (analytik) se neorientuje v doménové problematice zákazník se neorientuje v problematice vývoje softwaru vyčleněný člověk od zákazníka; specialista ve vývojovém týmu problém rozhodování, jaké požadavky už nezačleňovat do specifikace Problémy plynou z použití přirozeného jazyka. Vyřazení Používají systém k výpůjčkám knih. Kdo? Deformace, zkreslení Čtenáři si nemohou půjčit další knihu, dokud nevrátí knihy s prošlou výpůjční lhůtou. Když je zaplatí, tak mohou! Zobecnění Každý, kdo si chce vypůjčit knihu, musí mít průkazku. A co výpůjčky mezi knihovnami? Úvod do softwarového inženýrství IUS 2009/2010 p.36/40

Několik poznámek ke specifikaci požadavků požadavky pište jasně a jednoznačně bud te konzistentní v používání názvů udržujte specifikaci čitelnou pro zákazníka poznamenejte si datum vytvoření požadavku seřad te požadavky podle priorit ve specifikaci nenavrhujte řešení specifikujte situace, ve kterých se porušuje akceptovatelné chování validujte požadavky používejte více pohledů prototyp snižuje riziko špatného pochopení požadavků slabá specifikace špatný odhad nákladů používejte podpůrné prostředky, ale bud te realističtí Úvod do softwarového inženýrství IUS 2009/2010 p.37/40

Myšlenka na závěr... Úlohou analytika je dát zákazníkovi včas a za určenou cenu ne to, co chce, ale to, o čem nikdy ani nesnil, že chce; až když to dostane, zjistí, že je to přesně to, co vlastně celý čas chtěl. Úvod do softwarového inženýrství IUS 2009/2010 p.38/40

Studijní koutek Tituly a oslovení Akademické tituly Bc. bakalář (angl. bachelor, lat. baccalaureus) BcA. bakalář umění (lat. baccalaureus artis) Ing. inženýr (angl. engineer = strojník) Ing. Arch. inženýr architekt Mgr. magistr (doslovně učitel) MgA. magistr umění RNDr. doktor přírodních věd (rerum naturalium doctor) MUDr. doktor veškeré medicíny (medicinae universae doctor) JUDr. doktor práv (juris utriusque doctor) MVDr., PhDr., PaedDr., PharmDr., ThDr., ThLic., RSDr.,... = asistent MBA (angl. Master of Business Administration ) navazující studium zaměřené na management Úvod do softwarového inženýrství IUS 2009/2010 p.39/40

Studijní koutek Tituly a oslovení Vědecké hodnosti Ph.D. doktor (lat. philosophiae doctor) Th.D. (lat. theologiae doctor) Dr. doktor = učený CSc. kandidát věd (candidatus scientiarum) = odborný asistent DrSc. / DSc. doktor věd (lat. doctor scientiarum) akademik člen akademie věd ČR Pedagogické hodnosti doc. docent prof. profesor Učitelům na střední škole se říká profesor, přestože titul prof. nemají. Čestná hodnost Dr. h. c. doctor honoris causa Úvod do softwarového inženýrství IUS 2009/2010 p.40/40