17
Programų sistemų inžinerija Saulius Ragaišis, VU MIF [email protected]

Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Programų sistemų inžinerija

Saulius Ragaišis, VU MIF [email protected]

Page 2: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

PSI praktikoje

Page 3: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

PSI praktikoje (2)

Page 4: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Kurso struktūra

Egzaminas (atsakymai į

klausimus)

<= 6 balų būtina surinkti bent 1

balą

Pranešimas seminare <= 3 balų būtina gauti bent 1

balą

Klausimai egzaminui <= 0.3 balo

Dalyvavimas pratybose +0,1 balo

Aktyvumas pratybose <= 0,2 balo

Nedalyvavimas paskaitoje -0,1 balo

Praleistas pranešimas -1 balas

Page 5: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Šaltinis seminarams

Roger S Pressman,

Software Engineering: A Practitioner's Approach,

6th Edition, 2005, ISBN 007-123840-9

Page 6: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Programų sistemų inžinerijos samprata

Computing Curricula 2005: The Overview Report. ACM and IEEE, 2006. http://www.acm.org/education/curric_vols/CC2005-March06Final.pdf

Išskiriamos 5 savarankiškos disciplinos:

Kompiuterių inžinerija (angl. Computer Engineering);

Kompiuterių mokslas (angl. Computer Science);

Informacinės sistemos (angl. Information Systems);

Informacinės technologijos (angl. Information Technology);

Programų sistemų inžinerija (angl. Software Engineering).

Page 7: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Informatikos (Computing) disciplinos

Kompiuterių techninė

įranga ir architektūra

Sistemų infrastruktūra

Programų kūrimo

metodai ir technologijos

Taikymų technologijos

Organizaciniai aspektai

ir informacinės sistemos

Teorija

Principai

Inovacijos

Taikymas

Diegimas

KonfigūravimasLabiau teorinis Labiau taikomasis

Kūrimas

Kompiuterių inžinerija

Kompiuterių techninė

įranga ir architektūra

Sistemų infrastruktūra

Programų kūrimo

metodai ir technologijos

Taikymų technologijos

Organizaciniai aspektai

ir informacinės sistemos

Teorija

Principai

Inovacijos

Taikymas

Diegimas

KonfigūravimasLabiau teorinis Labiau taikomasis

Kūrimas

Kompiuterių mokslas

Informacinės sistemos

Kompiuterių techninė

įranga ir architektūra

Sistemų infrastruktūra

Programų kūrimo

metodai ir technologijos

Taikymų technologijos

Organizaciniai aspektai

ir informacinės sistemos

Teorija

Principai

Inovacijos

Taikymas

Diegimas

KonfigūravimasLabiau teorinis Labiau taikomasis

Kūrimas

Informacinės technologijos

Kompiuterių techninė

įranga ir architektūra

Sistemų infrastruktūra

Programų kūrimo

metodai ir technologijos

Taikymų technologijos

Organizaciniai aspektai

ir informacinės sistemos

Teorija

Principai

Inovacijos

Taikymas

Diegimas

KonfigūravimasLabiau teorinis Labiau taikomasis

Kūrimas

Page 8: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Informatikos (Computing) disciplinos (2)

Programų sistemų inžinerija

Kompiuterių techninė

įranga ir architektūra

Sistemų infrastruktūra

Programų kūrimo

metodai ir technologijos

Taikymų technologijos

Organizaciniai aspektai

ir informacinės sistemos

Teorija

Principai

Inovacijos

Taikymas

Diegimas

KonfigūravimasLabiau teorinis Labiau taikomasis

Kūrimas

Page 9: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Disciplinų nagrinėjamos sritys

Kompiuterių inžinerija

Informacija

Valdymas

Programinė įranga

Organizacijos ir verslas

Fizika

30 %

25 %

20 %

15 %

10 %

5 %Matematika

Informatikos teorija

Techninė įranga ir

architektūra

Infrastruktūra

Žmonės

Kompiuterių mokslas

Informacija

Valdymas

Programinė įranga

Organizacijos ir verslas

Fizika

30 %

25 %

20 %

15 %

10 %

5 %Matematika

Informatikos teorija

Techninė įranga ir

architektūra

Infrastruktūra

Žmonės

Informacinės sistemos

Informacija

Valdymas

Programinė įranga

Organizacijos ir verslas

Fizika

30 %

25 %

20 %

15 %

10 %

5 %Matematika

Informatikos teorija

Techninė įranga ir

architektūra

Infrastruktūra

Žmonės

Informacinės technologijos

Informacija

Valdymas

Programinė įranga

Organizacijos ir verslas

Fizika

30 %

25 %

20 %

15 %

10 %

5 %Matematika

Informatikos teorija

Techninė įranga ir

architektūra

Infrastruktūra

Žmonės

Page 10: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Disciplinų nagrinėjamos sritys (2)

Programų sistemų inžinerija

Informacija

Valdymas

Programinė įranga

Organizacijos ir verslas

Fizika

30 %

25 %

20 %

15 %

10 %

5 %Matematika

Informatikos teorija

Techninė įranga ir

architektūra

Infrastruktūra

Žmonės

Page 11: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Projektas SWEBOK

SoftWare Engineering Body Of Knowledge: Guide to the Software Engineering Body of Knowledge, 2004 Version, SWEBOK®. IEEE, 2004. http://www.swebok.org/

Šio projekto tikslas apibrėžti pagrindines programų sistemų inžinieriams būtinų žinių sritis.

Buvo sukurtos kelios versijos::

Šiaudų amžiaus žmogaus versija (Straw Man Version) 1998 metais;

Akmens amžiaus žmogaus versijos (Stone Man Versions) 1999-2001 metais;

Geležies amžiaus žmogaus versija (Iron Man Version) 2004 metais.

Page 12: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Žinių sritys ir esminės jos temos

1 Programų sistemų reikalavimai (angl. Software Requirements):

- Reikalavimų pagrindai (angl. Software Requirements Fundamentals)

- Reikalavimų procesas (angl. Requirements Process)

- Reikalavimų išgavimas (angl. Requirements Elicitation)

- Reikalavimų analizė (angl. Requirements Analysis)

- Reikalavimų specifikavimas (angl. Requirements Specification)

- Reikalavimų validavimas (angl. Requirements Validation)

- Praktiniai aspektai (angl. Practical Considerations)

2 Programų sistemų projektavimas (angl. Software Design):

- Projektavimo pagrindai (angl. Software Design Fundamentals)

- Esminės projektavimo problemos (angl. Key Issues in Software Design)

- Programų sistemų struktūra ir architektūra (angl. Software Structure and Architecture)

- Projekto kokybės analizė ir vertinimas (angl. Software Design Quality Analysis and

Evaluation)

- Projektavimo notacijos (angl. Software Design Notations)

- Projektavimo strategijos ir metodai (angl. Software Design Strategies and Methods)

Page 13: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Žinių sritys ir esminės jos temos (2)

3 Programų sistemų kūrimas (angl. Software Construction):

- Kūrimo pagrindai (angl. Software Construction Fundamentals)

- Kūrimo valdymas (angl. Managing Construction)

- Praktiniai aspektai (angl. Practical Considerations)

4 Programų sistemų testavimas (angl. Software Testing):

- Testavimo pagrindai (angl. Software Testing Fundamentals)

- Testavimo lygiai (angl. Test Levels)

- Testavimo metodai (angl. Testing Techniques)

- Matavimai, susiję su testavimu (angl. Test Related Measures)

- Testavimo procesas (angl. Test Process)

5 Programų sistemų priežiūra (angl. Software Maintenance):

- Priežiūros pagrindai (angl. Software Maintenance Fundamentals)

- Esminės priežiūros problemos (angl. Key Issues in Software Maintenance)

- Priežiūros procesas (angl. Maintenance Process)

- Priežiūros metodai (angl. Techniques for Maintenance)

Page 14: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Žinių sritys ir esminės jos temos (3)

6 Programų sistemų konfigūracijos valdymas (angl. Software Configuration

Management):

- Konfigūracijos valdymo procesas (angl. Management of the SCM Process)

- Konfigūracijos identifikavimas (angl. Software Configuration Identification)

- Konfigūracijos kontroliavimas (angl. Software Configuration Control)

- Konfigūracijos būsenos valdymas (angl. Software Configuration Status Accounting)

- Konfigūracijos auditas (angl. Software Configuration Auditing)

- Konfigūracijos išleidimų valdymas ir pateikimas (angl. Software Configuration Release

Management and Delivery)

7 Programų sistemų projektų valdymas (angl. Software Engineering Management):

- Inicijavimas ir apimties apibrėžimas (angl. Initiation and Scope Definition)

- Projekto planavimas (angl. Software Project Planning)

- Projekto vykdymas (angl. Software Project Enactment)

- Peržiūra ir vertinimas (angl. Review and Evaluation)

- Uždarymas (angl. Closure)

- Programų inžinerijos matavimai (angl. Software Engineering Measurement)

Page 15: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Žinių sritys ir esminės jos temos (4)

8 Programų sistemų kūrimo procesas (angl. Software Engineering Process):

- Proceso įgyvendinimas ir keitimas (angl. Process Implementation and Change)

- Proceso apibrėžimas (angl. Process Definition)

- Proceso vertinimas (angl. Process Assessment)

- Proceso ir produkto matavimai (angl. Process and Product Measurement)

9 Programų sistemų metodai ir įrankiai (angl. Software Engineering Tools and Methods):

- Reikalavimų įrankiai (angl. Software Requirements Tools)

- Projektavimo įrankiai (angl. Software Design Tools)

- Kūrimo įrankiai (angl. Software Construction Tools)

- Testavimo įrankiai (angl. Software Testing Tools)

- Priežiūros įrankiai (angl. Software Maintenance Tools)

- Konfigūracijos valdymo įrankiai (angl. Software Configuration Management Tools)

- Projektų valdymo įrankiai (angl. Software Engineering Management Tools)

- Programų kūrimo proceso įrankiai (angl. Software Engineering Process Tools)

- Kokybės užtikrinimo įrankiai (angl. Software Quality Tools)

- Įvairialypiai įrankiai (angl. Miscellaneous Tools Issues)

- Euristiniai metodai (angl. Heuristic Methods)

- Formalūs metodai (angl. Formal Methods)

- Prototipavimo metodai (angl. Prototyping Methods)

Page 16: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Žinių sritys ir esminės jos temos (5)

10 Programų sistemų kokybė (angl. Software Quality):

- Kokybės pagrindai (angl. Software Quality Fundamentals)

- Kokybės valdymo procesas (angl. Software Quality Management Process)

- Praktiniai aspektai (angl. Practical Considerations)

11 Susijusių disciplinų žinios (angl. Knowledge Areas of the Related Disciplines):

- Kompiuterių inžinerija (angl. Computer Engineering)

- Kompiuterių mokslas (angl. Computer Science)

- Valdymas (angl. Management)

- Matematika (angl. Mathematics)

- Projektų valdymas (angl. Project Management)

- Kokybės valdymas (angl. Quality Management)

- Programų sistemų ergonomika (angl. Software Ergonomics)

- Sistemų inžinerija (angl. System Engineering)

Page 17: Programų sistemų inžinerija - Vilniaus universitetasragaisis/PSI_mag2012/PSI_1...Disciplinų nagrinėjamos sritys.RPSLXWHULÐLQåLQHULMD Informacija Valdymas 3URJUDPLQ¡³UDQJD

Klausimai

?