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

Podobné dokumenty
PROBLÉMY A SPECIFIKA VÝVOJE SOFTWARE

14 Úvod do plánování projektu Řízení projektu

14 Úvod do plánování projektu Řízení projektu

5 Požadavky a jejich specifikace

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

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)

5 Požadavky a jejich specifikace

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda

PŘÍLOHA C Požadavky na Dokumentaci

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

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

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

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

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

CASE. Jaroslav Žáček

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

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

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

POŘÍZENÍ A IMPLEMENTACE INFORMAČNÍCH SYSTÉMŮ

2 Životní cyklus programového díla

WIDE AREA MONITORING SYSTEM (WAMS) METEL

3. Očekávání a efektivnost aplikací

CASE nástroje. Jaroslav Žáček

Logistika v údržbě. Logistika - definice

Metodika konstruování Úvodní přednáška

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

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

Prehistorie. Doly Těžký průmysl

1. VYMEZENÍ ODBORNÉ STÁŽE

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

Analytická specifikace a její zpracování

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

Systémy pro podporu. rozhodování. 2. Úvod do problematiky systémů pro podporu. rozhodování

Projekt DRG Restart Vývoj, aktuální stav a harmonogram projektu

Předmluva: Vítejte v ITIL! Úvod 15 IT Infrastructure Library O této knize ITIL (IT Infrastructure Library ) 1.3. Služby a správa služeb

Vývoj řízený testy Test Driven Development

Operační program Lidské zdroje a zaměstnanost

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

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

Obsah. Zpracoval:

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

Přehled technických norem z oblasti spolehlivosti

1.05 Informační systémy a technologie

Outsourcing v podmínkách Statutárního města Ostravy

1. VYMEZENÍ ODBORNÉ STÁŽE

BI-TIS Případová studie

Informační systémy. Jaroslav Žáček

Programové vybavení počítačů

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

Rozvoj a údržba systémů

Workflow, definice, charakteristika, trendy

MULTIMEDIÁLNÍ A HYPERMEDIÁLNÍ SYSTÉMY

úvod Historie operačních systémů

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

Povolání Vyšší odborné vzdělání; Bakalářský studijní program

Sísyfos Systém evidence činností

Program a životní cyklus programu

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

Expresní analýza PLM. jako efektivní start implementace PLM.

METEOVIVA WVS Produktový list Ušetřete náklady na energii prostřednictvím systému pro předpověď a optimalizaci

Teorie a praxe SW inženýrství

Základní informace: vysoce komfortnímu prostředí je možné se systémem CP Recorder efektivně pracovat prakticky okamžitě po krátké zaškolení.

S T R A T E G I C K Ý M A N A G E M E N T

MANAŽERSKÉ INFORMAČNÍ SYSTÉMY

MANAŽERSKÉ INFORMAČNÍ SYSTÉMY

Zápočtová úloha z předmětu KIV/ZSWI DOKUMENT SPECIFIKACE POŽADAVKŮ

Základy business intelligence. Jaroslav Šmarda

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

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

Zkouška ITIL Foundation

5.15 INFORMATIKA A VÝPOČETNÍ TECHNIKA

Aktuální otázky provozu datových skladů PAVEL HNÍK

Řízení projektů. Centrální podpora projektového řízení projektů realizovaných MVČR (CEPR) Praha,

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura

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

Řešení Vašeho nástrojového managementu

Vnořený Ensemble nové integrované aplikace. Martin Zubek, Account manager

Informační systémy. Jaroslav Žáček

Správa projektového portfolia v systému ADVANTA

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

7. Pracovní postupy. Fakulta informačních technologií MI-NFA, zimní semestr 2011/2012 Jan Schmidt

Zátěžové testy aplikací

Váš partner pro přesná, kompaktní a vysoce efektivní řešení pohybu. Naše kroky k synergii: Váš úspěch. Náš motor.

Prezentace 2. Slide 1. Slide 2. Slide 3. Slide 4. Prezentace pdf. nazev projektu jmena atd.. Obsah

Aplikovaná informatika

Návod k požadavkům ISO 9001:2015 na dokumentované informace

Zaměříme se na sanaci jako jeden z důvodů restrukturalizace podniku

Joelův test. 12 kroků k lepšímu programování. Jaroslav Šnajdr

Technická specifikace soutěžených služeb

Produkty třídy BYZNYS

RDF DSPS ROZVOJ PORTÁLU

Agile. nejžádanější způsob vývoje software. Tomáš Tureček. Business consultant, Lean&Agile coach Tieto

KATALOG ŘEŠENÍ ELVAC SOLUTIONS

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

7 Jazyk UML (Unified Modeling Language)

Disková pole (RAID) 1

Stanovit nezbytná pravidla pro tvorbu dokumentace vytvářenou ve SITRONICS centru využitelnou firmou SITRONICS TS.

Chytrá systémová architektura jako základ Smart Administration

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

Transkript:

1 Úvod 1.1 Vlastnosti programového vybavení (SW) - dávkové zpracování - omezená distribuce - zakázkový SW - distribuované systémy - vestavěná inteligence - laciný HW - vliv zákazníka 1950 1960 1970 1980 1990 2000... - víceuživatelské prostředí - práce v reálném čase - databáze - produkční SW - výkonné stolní počítače - OO technologie - paralelní výpočty - umělá inteligence - Internet, WWW I - málo systematických metod, kdo SW vyvinul, ten i udržoval II - růst výkonnosti HW, SW jako výrobek, problém údržby, krize SW III - PC a WS, růst počtu distribucí, prodej SW předbíhá prodej HW IV - zesilují problémy spojené se SW (schopnost využít potenciálu HW, růst požadavků na nové programy, neschopnost údržby) J. Zendulka: Projektování programových systémů - 1 Úvod 1

Programové vybavení zahrnuje: - počítačové programy, - datové struktury, - dokumentace. Vlastnosti SW: - vyvíjí se, není vyráběn v klasickém smyslu, - neopotřebovává se (ale zhoršuje), neexistují náhradní díly - je spíše budovaný na zakázku než sestavovaný z existujících dílů - hledání metod opakovaného použití (reusability) - knihovny, OO přístup, technologie založené na komponentách J. Zendulka: Projektování programových systémů - 1 Úvod 2

Generace programovacích jazyků - strojově-orientované (2G), - vyšší programovací jazyky (3G), - neprocedurální jazyky (4G). Typy programů - různá hlediska klasifikace, možné členění: Systémový SW - slouží jiným programům (jádro operačního systému, překladač, ). SW pro práci v reálném čase - typicky sběr dat+analýza+řízení, rozhodující je časové omezení odezvy (řízení technologických procesů). Firemní programy (business software) - interakční, víceuživatelské, databázová technologie, velké objemy dat. Přechod od jednotlivých programů k integrovaným systémům, součástí nebo nadstavbou často programy a systémy na podporu rozhodování. SW pro VTV - programy na podporu složitých výpočtů různých vědních oborů (předpověď počasí, návrh plošných spojů, ). SW z oblasti umělé inteligence - nenumerické algoritmy k řešení složitých problémů (expertní systémy, rozpoznávání, neuronové sítě, ). - dávkové/interakční - s grafickým/textovým rozhraním, J. Zendulka: Projektování programových systémů - 1 Úvod 3

Krize SW - 60. léta - růst výkonnosti HW požadavky na rozsáhlé systémy - techniky návrhu malých systémů, špatné odhady, špatně udržovatelné programy, slabá výkonnost SW v krizi, cena HW, cena SW potřeba lepších metod, technik a nástrojů (obsah pojmu softwarové inženýrství). - Problémy: 1. špatné odhady doby řešení a nákladů (plánování a řízení projektu) 2. nedostatečná produktivita vývojářů SW (nástroje) 3. nízká kvalita programů (význam systematických opatření k zajištění kvality) 4. obtížná udržovatelnost (dokumentace, CASE). - Příčiny: - v povaze SW - kvalita dána kvalitou jediného kusu i při velkých distribucích, odstraňování chyb - v lidech - nekompetentní (v oblasti SW) manažeři, konzervativní praktici, rozptyl produktivity programátorů (1:28), problémy v komunikaci vývojář - zákazník J. Zendulka: Projektování programových systémů - 1 Úvod 4

SW mýty: mýty managementu: tlak rozpočtu, času, kvality Moji lidé přece mají moderní vývojové nástroje; kupujeme jim nejnovější počítače. - rozhodující význam výkonného vývojového prostředí (SW) Jestli se dostaneme s projektem do skluzu, přijmeme další programátory a doženeme to. - Brooksův zákon: Přidání lidí ke zpožděnému SW projektu zvýší jeho zpoždění. mýty zákazníka: chybná očekávání nespokojenost s vývojářem Obecná specifikace cílů je dostatečná k tomu, aby se začaly psát programy. - formální a detailní specifikace je podstatná význam komunikace zákazník-vývojář Požadavky na projekt se neustále mění, ale změnám se lze snadno přizpůsobit, protože SW je pružný. - vliv změn je závislý na fázi zavedení J. Zendulka: Projektování programových systémů - 1 Úvod 5

Náklady na změnu 60-100x 1x 1.5-6x Definice Vývoj Údržba mýty praktika: Náš úkol skončí, jakmile napíšeme program a uvedeme ho do provozu. - 50-70% úsilí bude spotřebováno po prvém dodání programu zákazníkovi Dokud neuvedu program do chodu, nemám možnost posoudit jeho kvalitu. - techniky posuzování a oponentur lze aplikovat už v počátcích projektu Jediným výsledkem úspěšného projektu je fungující program. - fungující program je pouze část tzv.sw konfigurace J. Zendulka: Projektování programových systémů - 1 Úvod 6

Datové struktury Fungující program Plán Specifikace požadavků Návrh Výpisy Specifikace testu J. Zendulka: Projektování programových systémů - 1 Úvod 7

1.2 Předmět softwarového inženýrství Podmínky formování disciplíny - krize SW Fritz Bauer (1969 konference sponzorovaná vědeckým výborem NATO k problematice softwarového inženýrství): Stanovení a používání spolehlivých inženýrských principů za účelem získat ekonomicky SW, který je spolehlivý a pracuje efektivně na reálných počítačích. Systematický přístup k vývoji SW, provozování, údržbě a nahrazování starého SW. Zahrnuje: - metody - nástroje - procedury - pro manažera podpora řízení vývoje - pro praktika základ efektivního vývoje kvalitních a udržovatelných programů Metoda - Jak na to - plánování a odhady projektu, analýza požadavků, návrh datových struktur, struktury programu, kódování, testování, údržba notace + kritéria vyhodnocení kvality. J. Zendulka: Projektování programových systémů - 1 Úvod 8

Nástroj - automatizovaná/poloautomatizovaná podpora metod CASE - integrované nástroje (HW, SW, databáze). Procedura (metodologie, metodika) - posloupnost aplikace metod a požadovaných výstupů (deliverables), řídicích kroků k zajištění kvality a koordinace, milníky Softwarové inženýrství se zabývá programovými systémy vyvíjenými týmem technické + netechnické aspekty Softwarové inženýrství učí, jak se vyvarovat budoucích chyb, ne jak je řešit. - softwarové inženýrství jako disciplína a jako proces J. Zendulka: Projektování programových systémů - 1 Úvod 9

Čím se vyznačuje dobrý SW?? Pracuje, jak chce uživatel.? funkčnost + udržovatelnost + spolehlivost + efektivní + vhodné uživatelské rozhraní A E B C D A - dodán, nikdy úspěšně nepoužit ($3.2 mil. - 47%) B - zaplaceno, ale nedodáno ($1.95 mil. - 29%) C - použit s rozsáhlými změnami nebo později nepouží ($1.3 mil. - 19%) D - použit po úpravách ($0.198 mil- 3%) E - použit beze změny ($0.119 mil. - 2%) J. Zendulka: Projektování programových systémů - 1 Úvod 10

Delloite & Touche - celosvětový průzkum trhu s informačními technologiemi (1996): - oblast aplikací oblast zakázky [%] komerční [%] svět 43 57 ČR 44 56 Zkracování doby mezi uváděním nových verzí 35 30 25 20 15 10 5 0 < 3 měsíce 3 měsíce 6 měsíců 9 měsíců 12 měsíců neví J. Zendulka: Projektování programových systémů - Úvod 11

Činnosti při údržbě programů: E1 40 E E2 30 20 A B C E3 E4 E5 E6 10 D F G H A - havarijní opravy B - rutinní odstranění chyb C- změna vstupů, souborů D - změna OS, HW E - úpravy pro uživatele F - zlepšení dokumentace G - zlepšení efektivnosti kódu H - jiné E1 - nové sestavy (40.8%) E2 - přidaná data (27.1%) E3 - jiný formát sestav (10%) E4 - sloučení sestav (5.6%) E5 - konsolidace sestav (6.4%) E6 - jiné (10.1%) J. Zendulka: Projektování programových systémů - Úvod 12