Programų inžinerijos pagrindai

  • Dalyko kodas: INF 3021
  • Dalyko grupė: C
  • Apimtis ECTS kreditais: 6
  • Pavadinimas anglų kalba: Software Engineering Basics
  • Dalyko aprašo rengėjas(-ai):

    dr. Aušra Mackutė-Varoneckienė

Dalyko anotacija lietuvių kalba

Kurso tikslas – susipažinti su programinės įrangos inžinerijos sritimi ir įgyti programinės įrangos projektavimui reikalingų įgūdžių. Šiame kurse pristatomos pagrindinės programinės įrangos sistemų gyvavimo ciklo fazės: reikalavimų analizė ir specifikavimas, projektavimas ir įgyvendinimas, testavimas, perdavimas vartotojui, naudojimas ir palaikymas. Studentai mokysis modeliuoti dalykinę sritį naudojant UML, taikyti panaudos atvejų metodą, dokumentuoti reikalavimus, peržiūrėti reikalavimų specifikacijas, projektuoti sistemas ir testuoti. Teoriniai ir praktiniai klausimai bus nagrinėjami paskaitų metu, praktiniai įgudžiai dirbant su specialia programine įranga bus ugdomi laboratorinių darbų metu.

Dalyko anotacija užsienio kalba

The aim of this course – gain knowledge in software engineering and develop skills necessary for efficient design of software systems. In this course main software system life-cycle phases are presented: requirement analysis and specification, design and construction, testing, delivery to the user, use and maintenance. Also in this course are presented the modern practices and tools used in requirements analysis and system design. The students will learn how to model business domain with UML, apply use case method, document requirements, review requirement specifications, design the system and identify test cases. The theory and practices will be discussed in lectures, and the tools will be explored in labs.

Būtinas pasirengimas dalyko studijoms

Programavimo pagrindai, Objektinis programavimas

Dalyko studijų rezultatai

Apibrėžti pagrindinius programų inžinerijos srities terminus bei sąvokas.
Pagal apibrėžtus ribojimus ir poreikius projektuoti sistemas, komponentus, procesus.
Suprasti skirtingų programų inžinerijos metodų taikymo galimybes skirtingoms programinės įrangos sistemoms kurti.
Suprasti programinės įrangos kūrimo komandų struktūrą ir įgyti praktinius įgūdžius sprendžiant nedidelius uždavinius komandoje.
Suprasti programinės įrangos inžinieriaus atsakomybes.
Planuoti programinės įrangos kūrimo procesus atsižvelgiant į kokybei keliamus reikalavimus bei funkcinius ir nefunkcinius reikalavimus.
Naudoti pagrindinius sistemų modeliavimo metodus programinės įrangos veikimo apibrėžimui ir paaiškinimui.
Pasirinkti tinkamus metodus nedidelės apimties sistemos analizei ir projekto sudarymui.
Pagilinti komandinio darbo įgūdžius formuojant bendrąjį projekto vykdymo modelį, planuojant ir valdant laiko resursus, vystant bendravimą tarp atskirų darbo grupių.
Pagilinti darbo rezultatų pristatymo įgūdžius.

Dalyko turinys

Įvadas į programų inžineriją.
Programinės įrangos kūrimo procesas.
RUP.
Agile.
Reikalavimų inžinerija.
Sistemos modeliavimas.
Architektūros projektavimas.
Projektavimas ir įgyvendinimas.
Programinės įrangos testavimas.
Programinės įrangos vystymas.

Dalyko studijos valandomis

Paskaitos – 45 val.
Laboratoriniai darbai – 30 val.
Savarankiškas darbas – 85 val.
Iš viso 160 val.

Studijų rezultatų vertinimas

Egzaminas 50%, kolokviumas 17%, laboratoriniai darbai 33%

Literatūra

1. D. Budgen. Software Design. Harlow: Person Education; New York N.Y. : Addison-Wesley, 2003.
2. L. A. Maciaszek, B. L. Liong. Practical software engineering. Harlow: Pearson Addison Wesley, 2005.
3. R. S. Pressman. Software engineering: a practitioner's approach. Boston Mass. etc.: McGraw-Hill/Higher Education, 2010.
Papildoma literatūra
1. D. Leffingwell, D. Widrig. Managing software requirements: a use case approach. Boston Mass. etc.: Addison-Wesley, 2003.