SLO | EN

Objectives and competences

To teach students how to optimally use software process, models, methodologies and principles in the development and management of complex software systems .

Content (Syllabus outline)

• Trends in software development technologies and paradigms • General life cycle model. • Software development processes: definition, categories, models, methods, and processes of assessment, adaptation and improvement • Advanced approach to software life cycle modelling: .principles, types of models (information, behavioural, structured), analysis • Heuristic, formal, prototyping and agile modelsScaling agile approach to large projects and multi-teams Requirements analysis in the context of general and specific models focusing on complex environments . • Architecture and implementation • Software development in the context of general and specific models • Implementation in the context of general and specific models. • Verification, validation focusing on automated testing. • Software maintenance: evolution of software, categories, techniques, cost • Process aspects of software quality in the context of maturity models. • Tools for software development • Software configuration managemet • Cost benefit analysis and cost models. • Empirical software engineering and data science • Artificial intelligence in software development.

Learning and teaching methods

• lectures, • lab work

Intended learning outcomes - knowledge and understanding

On completion of this course the student will be able to • analyse, plan, manage, verify and validate large software systems.

Intended learning outcomes - transferable/key skills and other attributes

• Communication skills: communicating with clients and team members. • Use of information technology: for managing the development of software systems. • Organisation skills: management of human factors in software ddevelopment. • Problem solving: solving the problems emerging in software development.

Readings

• Sommerville: Software Engineering, Addison-Wesley, Pearson Education Ltd, New York, 2015. • Ivar Jacobson et al: The Essentials of Modern Software Engineering, ACM; 2019 • R. S. Pressman: Software Engineering - A Practitioner’s Approach, , McGraw-Hill, New York, 2021. • M, Felder, G.H. Travassos: Contemporary Empirical Software Engineering, Springer Nature, 2020

Prerequisits

None.

  • red. prof. dr. PETER KOKOL, univ. dipl. inž. el.

  • Written examination: 50
  • Computer skills: 50

  • : 30
  • : 30
  • : 90

  • Slovenian
  • Slovenian

  • COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES - 1st