SLO | EN

Objectives and competences

The objective of this course is to provide a basic understanding of the software life cycle and the methods used in the context of a team-based disciplined development of software.

Content (Syllabus outline)

• Introduction: modelling the life cycle, concept of quality, the role of standards. • Planning and managing the project: feasibility analysis, planning, project management, case study, work on project. • Capturing the requirements: types and characteristics of requirements, requirements validation, expressing the requirements, case study, work on project. • Designing the system: system architecture design, architectural styles. • Implementation: design principles and methods, coding, user interface design, case study, work on project. • Software verification: basic definitions, test case description, basic testing strategies, testing tools, writing test reports, formal verification, case study, work on project. • Software maintenance: writing the user manual, maintenance problems, case study, work on project.

Learning and teaching methods

• lectures, tutorial, computer work.

Intended learning outcomes - knowledge and understanding

• plan small projects and capture the requirements • write and verify specifications • design, debug, test and maintain medium size programs according to a selected standard • explain the role of quality and economy factors in the software design • explain the teamwork problems • explain the project management problems

Intended learning outcomes - transferable/key skills and other attributes

• Communication skills: written skills in writing the project documentation, communicating with co-workers on the project. • Use of information technology: use of software development tools

Readings

• Pfleeger, S. L., & Atlee, J. M. (2010). Software engineering: theory and practice (4th ed., [international ed.], p. 782). Pearson. • Sommerville, I. (2016). Software engineering (10th ed., p. 810). Pearson Education. • Dogša, T. (1993). Verifikacija in validacija programske opreme: V & V (1. izd., p. 269). Tehniška fakulteta, Elektrotehnika, računalništvo in informatika.

Prerequisits

Recommended knowledge: C or C++ programming.

  • red. prof. dr. TATJANA KAPUS, univ. dipl. inž. el.

  • Project: 50
  • Oral examination: 50

  • : 30
  • : 45
  • : 105

  • Slovenian
  • Slovenian

  • ELECTRICAL ENGINEERING (ELECTRONICS) - 3rd
  • TELECOMMUNICATIONS - 2nd