study programme: software and data engineering course...

69
Study programme: Software and Data Engineering Course Title: Computer Architecture Course Code: SPSII01 Teachers: Tomašević R. VioletaŠarac K. Marko Course Status: compulsory Year: I Semester:I Number of classes (l +p +l):2+0+3 Number of ECTS: 8 Requirements: / Course Objective Introducing students to the basic concepts of computer architecture, working principles, structural organization and methods of computer implementation. Course Outcome Student becomes familiar with the basics of mathematical and hardware operation of digital computers, their basic parts, working principles and computer organization level. Student is able to differentiate computer systems according to the parameters and evaluate the effectiveness of the use of various computer implementations for different purposes. Student has a basic knowledge of operating systems, and assembly language. He/she is able to apply acquired knowledge. Course Content Week Topic/activity I Introduction: Basic concepts, brief history of the computer development and evolution, contemporary computer classification; The basic components of a computer system (CPU, primary and secondary memory, I / O) II Computer Basics: Boolean algebra, basic logic circuits, memory, chips and buses with examples. III Computer Basics: Numbers and arithmetics (the presentation of numbers, 1-bit and 4-bit collector, negative numbers, and two’s complement, addition and subtraction of two's complement) IV Computer Basics: Balance, finite state machines V Computer architecture: memory (static memory, dynamic memory) VI Midterm exam - Computer Basics VII Computer Architecture: CPU (operations, components) VIII Computer Architecture: Bus (types, arbitration schemes) IX Computer Architecture: Architecture of machine instruction set (data types, instruction formats, addressing, types of instruction, flow control, examples) X Computer Architecture: Micro architecture (methods of implementation with examples) XI Assembly Language: design (basic elements, macros, support for structured programming); Examples of assembler programs; the process of assembling, linking and loading. XII End-of-term exam - Computer Architecture and Assembly Language XIII Assembly Language: Examples of assembler programs; the use of assembly language (historical perspective, current use, typical applications) XIV Computer operating system: virtual memory and I / O instructions, examples of operating systems. XV Parallel computer architectures (parallelism on the chip, coprocessors multiprocessors, multicomputers with messaging)

Upload: others

Post on 21-May-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Study programme: Software and Data Engineering

Course Title: Computer Architecture Course Code: SPSII01

Teachers: Tomašević R. VioletaŠarac K. Marko

Course Status: compulsory Year: I Semester:I

Number of classes (l +p +l):2+0+3

Number of ECTS: 8

Requirements: /

Course Objective

Introducing students to the basic concepts of computer architecture, working principles, structural

organization and methods of computer implementation.

Course Outcome

Student becomes familiar with the basics of mathematical and hardware operation of digital computers,

their basic parts, working principles and computer organization level. Student is able to differentiate

computer systems according to the parameters and evaluate the effectiveness of the use of various

computer implementations for different purposes. Student has a basic knowledge of operating systems,

and assembly language. He/she is able to apply acquired knowledge.

Course Content

Week Topic/activity

I Introduction: Basic concepts, brief history of the computer development and evolution,

contemporary computer classification; The basic components of a computer system (CPU,

primary and secondary memory, I / O)

II Computer Basics: Boolean algebra, basic logic circuits, memory, chips and buses with

examples.

III Computer Basics: Numbers and arithmetics (the presentation of numbers, 1-bit and 4-bit

collector, negative numbers, and two’s complement, addition and subtraction of two's

complement)

IV Computer Basics: Balance, finite state machines

V Computer architecture: memory (static memory, dynamic memory)

VI Midterm exam - Computer Basics

VII Computer Architecture: CPU (operations, components)

VIII Computer Architecture: Bus (types, arbitration schemes)

IX Computer Architecture: Architecture of machine instruction set (data types, instruction

formats, addressing, types of instruction, flow control, examples)

X Computer Architecture: Micro architecture (methods of implementation with examples)

XI Assembly Language: design (basic elements, macros, support for structured

programming); Examples of assembler programs; the process of assembling, linking and

loading.

XII End-of-term exam - Computer Architecture and Assembly Language

XIII Assembly Language: Examples of assembler programs; the use of assembly language

(historical perspective, current use, typical applications)

XIV Computer operating system: virtual memory and I / O instructions, examples of operating

systems.

XV Parallel computer architectures (parallelism on the chip, coprocessors multiprocessors,

multicomputers with messaging)

Literature

1.Tomašević, V. "Fundamentals of Computer Engineering", University Singidunum, 2012.

2. Stollings, West Virginia, United "The organization and computer architecture", CET, 2013.

Number of active classes: 5 Lectures: 2 Practice: 3

Teaching Methods:

Lectures, practice, seminar paper, term exams, final exam

Final grade (maximum number of points: 100)

Pre-exam obligations points Final Exam points

Class Attendance 10 Exam 30

Assessment I 30

Assessment II 30

Total: 70 O: 30

Study Programme: Software and Data Engineering

Course title: Mathematics Course code: SPSII02

Teachers: Kostić-Kovačević P. Ivana

Course Status: Compulsory Year: I Semester: I

Number of classes (l+p):3+3+0

ECTS credits: 8

Requirement: /

Course Objective:

Introduction to the basics of mathematics necessary for the acquisition of contemporary computing systems

and their usage.

Course Outcome:

The development of computer techniques requires adequate mathematical apparatus which includes various

areas such as mathematical logic, set theory, graph theory, combinatorics, probability and statistics.

Students will be able to solve complex tasks in business and design without being burdened with technical

solutions.

Course Content:

Week Topic/activity

Matrices.

Determinants, characteristics, counting and implementation.

Equation system solving.

The concept of sequence and its limit value

The concept of function.

Limiting value of a function. Midterm exam.

Theorems of differential calculus.

Testing and drawing of the graph of a function.

Definition and characteristics of indefinite integral.

Integration methods – Indefinite integral.

Definite integral. Newton-Leibinz formula.

Integration methods – Definite integral.

Midterm Exam

I

II

III

IV

V

VI

VII

VIII

IX

X

XI

XII

XIII

XIV

XV The application of definite integral

Course systematization and preparation for the final exam

Literature

1. Kovačević, Mathematics with a collection of tasks, Singidunum University, Belgrade, 2012.

2. B.Boričić, M. Ivović, Mathematics, Faculty of Economics, Belgrade 2012.

3. M. Merkle, Analysis theory-1000zadataka, AkademskaMisao, Belgrade 2008.

Numberofactiveteachingunits: 6 Lectures: 4 Practice: 2

Teaching Methods

Lectures, computer and laboratory practice in computer classroom, homework, seminar papers,

consultations

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Class Attendance 10 Exam (Written/Oral) 30

Assessment I 30

Assessment II 30

Total: 70 Total: 30

Study programme: Software and Data Engineering

Course: Computer Programming Basics Course Code: SP-SII-02

Teachers: Živković Dejan

Course Status: compulsory Year: I Semester: I

Number of classes (l +p l): 2+0+3

Number of ECTS: 8

Requirements: /

Course Objective

Introducing students to the basic concepts, elements and structure of computer programs, and basic

algorithms for data processing.

Course Outcome

After successfully completing the course the student knows the concepts of computer programs and writes

programs that interact with the user; handles different types of data in a computer program; uses the basic

structural elements of the program: sequence, selection and iteration; uses subprograms and decomposes

complex programs; knows the elements of the process of program development; student is familiar with the

elements of algorithm analysis. Student is qualified to write a simple program in the programming language

Python.

Course Content

Week Topic/activity

I Computer program: the role of hardware and software in a computer system; principles of

contemporary computer operation; shape and purpose of programming languages;

software development process; characteristics of the programming language Python.

II Elements of (Python) program: names, expressions, assignment, input / output (without

working with files).

III Elements of (Python) program: input / output (including working with files), control

program flow control (single branching, the final loop).

IV Handling numbers: the concept of data types; numeric data types; representation of

numbers in the computer; accumulation variable; the use of mathematical functions.

V Handling strings: the concept of the string and its computer representation; operations on

strings; formatting strings.

VI Branching in the program: the concept of branching in the program; single, double and

multi-branching; handling exceptions.

VII Loops and logical expressions: the concept of the loop; finite and infinite loop; interactive

and sentinel loop; nested loops; Boolean algebra and Boolean expression.

VIII Collection of data: the concept of a sequence; operations on sequences; multidimensional

sequences; the concept of vocabulary; operations on the vocabulary.

IX Project 1 - Creating a simple program in the programming language Python.

X Analysis of algorithms: the basics of the efficiency analysis of algorithms; the concept of

the search, linear and binary search; concept and application of recursion.

XI Analysis of algorithms: the concept and sorting algorithms.

XII Subprograms: Program Decomposition; subprogram call; parameter and result transfer.

XIII Subprograms: parameter and result transfer; subprogram collections.

XIV Program development: representation of the real system in a computer program; top-down

and spiral development program techniques; program testing.

XV Project 2 - Creating a complex program in the programming language Python by using the

subprogram.

Literature

1. J.M. Zelle. "Python Programming: An Introduction to Computer Science", 2nd edition, Franklin,

Beedle & Associates, 2010.

2. Dawson, M. "Python Programming for the Absolute Beginner", Premier Press, 2003

Number of active classes: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, seminar paper, term exams, final exam

Final Grade (maximum number of points 100)

Pre-exam obligations points Final Exam points

Class Attendance 10 Exam 40

Assessment I 30

Assessment II 30

Total: 70 Total: 40

Study programme: Software and Data Engineering

Course title: Мanagement Course code: SPSII04

Teacher: Trifunović Miroslav

Сourse status: elective Year: I Semester: I

Number of classes (l+p): 2+2+0

ECTS credits: 6

Requirement: /

Course objective

The aim of the course is to make students realize the basic notions of the concept of management and the

evolution of management theory; to introduce students to the most important management trends; to make

students understand all the guidelines regarding management processes (planning, organising, managing

and controlling).

Course outcome

To enable students to plan, organize, implement, lead and control business processes by applying

theoretical knowledge in real business systems.

Сourse content

Week Тopic/аctivity

I Introduction to management

II The history of management

III Internal and external environment analysis

IV Ethics and social responsibility

V Planning and decision making

VI Midterm test. Organizing strategy.

VII Innovation and changes.

VIII Global business environment.

IX Organizing structures and processes

X Teams and individuals management

XI Human resources and communication management

XII End-of-Tem-Exam. Presentations of seminar papers

XIII Motivation and leadership

XIV Control

XV Presentation of project assignments and seminar papers

Literature

1. Williams, C. Menadžment. Data Status. 2011.

Number of active teaching units: 4 Lectures: 3 Practice: 1

Teaching methods: Lectures, seminar papers, term tests, final exam

Course grade (maximum number of points:100)

Pre-examination requirements points Final exam points

Class Attendance 10 Exam 30

Assessment I 30

Assessment II 30

Total: 70 Total: 30

Study programme: Software and Data Engineering

Course: Discrete Mathematics Course Code: SPSII05

Teachers: Kostić-Kovačević P. Ivana

Course Status: compulsory Year: I Semester: I

Number of classes (l +p): 3+2+0

Number of ECTS: 8

Requirements: /

Course Objective

Introduction to mathematical, organizational and programming basics necessary for the study of

contemporary computer systems and their application.

Course Outcome

Students will be able to solve complex tasks in business, design and programming without being burdened

with technical solutions and application of mathematical methods.

Course Content

Week Topic/activity

I Elements of mathematical logic.

II Basic concepts of set theory.

III Relations and functions.

IV Basics of combinatorics.

V Evidence.

VI Course systematization and the Midterm exam

VII Algorithms.

VIII Graph Theory.

IX Trees.

X Graph algorithms - search algorithms and optimization

XI Graph algorithms-algorithms for minimizing trees

XII Course systematization and End-of-term exam

XIII Boolean algebra

XIV Application of Boolean algebra in computer science and engineering.

XV Seminar paper analysis and defence

Literature

1. Kostic Kovačević, Discrete Mathematics with a Collection of Tasks, University Singidunum, Belgrade 2013.

2. D. Cvetković, S.Simić, Discrete Mathematics, Basics of combinatorics and graph theory, Akademska misao,

Belgrade 2010.

3. J. Anderson, Discrete Mathematics, Computer Engineering, Belgrade 2005.

Number of active classes: 5 Lectures: 3 Practice: 2

Teaching Teaching Methods:

Lectures, computer practice, term exams, seminar papers, consultations and final exam.

Final Grade (maximum number of points 100)

Pre-exam obligations points Final Exam points

Class Attendance 10 Exam (written/spoken) 40

Assessment I 30

Assessment II 30

Total: 70 Total: 40

Study programme: Software and Data Engineering

Course: Object-oriented programming Course Code: SPSII06

Teachers: Živković S. Dejan, Tanasković V. Marko

Course Status: compulsory Year: I Semester: II

Number of classes (l +p+l): 2+0+3

Number of ECTS: 8

Requirements: /

Course Objective

Training students to develop computer programs using the object-oriented programming.

Course Outcome

Knowledge of methods, technologies and standards for the development of object-oriented applications.

Student is competent to develop software by using the object-oriented approach and the programming

language Java.

Course Content

Week Topic/activity

I Basic concepts and terms of object-oriented approach; basic properties of object

programming languages; an overview of the most important object languages.

II Basics of programming language Java object: manipulating, creating, range.

III Java Class: fields, methods, arguments, return values.

IV Java commands: operators, flow control program.

V Java: creating objects, constructors, Garbage Collection, overlapping methods.

VI Java: inheritance, polymorphism.

VII Java: data structures.

VIII Project 1 - Creating a simple program in the programming language Java.

IX Java: abstract classes and interfaces.

X Java abstract classes and interfaces.

XI Java: generic types.

XII Java: programming U / I.

XIII Java: threading.

XIV Java: Exceptions, error management.

XV Project 2 - Development of complex programs in the Java programming language.

Literature

1. D. Zivkovic, "Java Programming", University Singidunum, 2013.

2. B. Eckel, "Thinking in Java", translation 4tog editions, Micro books, 2007.

Number of active classes: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, seminar paper, term exams, final exam

Final Grade (maximum number of points 100)

Pre-exam obligations points Final Exam points

Class Attendance 10 Exam 40

Assessment I 30

Assessment II 30

Total: 70 Total: 40

Study programme: Software and Data Engineering

Course: Web Design Course Code: SPSII07

Teachers: Cvetković M. Dragan,

Course Status: compulsory Year: I Semester: II

Number of classes (l +p+l): 2+0+3

Number of ECTS: 8

Requirements: /

Course Objective

Introduction to the basic concepts of markup and scripting languages and training for the development of

Web applications by using the language Javascript.

Course Outcome

After successfully completing the course the student knows the basic concept of markup languages,

languages for visualizing Web pages and script languages. The student is able to able to create complex

Web applications by using markup languages HTML and XHTML, CSS visualization languages, language

Javascript and Javascript libraries.

Course Content

Week Topic/activity

I Introduction: Basic concepts of the Internet, WWW Basics (URL, HTML, HTTP,

representation of the document - DOM tree).

II HTML, XML, XHTML, basic language XHTML tags

III XHTML: lists, tables, links, pictures

IV Language CSS: Introduction, values, common properties.

V CSS Language: URL, CSS selectors

VI Web page design: techniques (table, div), common designs

VII Software tool for Web Design: Introduction and basic functionalities

VIII Project 1 - Creating a simple Web site using software tools for Web design.

IX The programming language Javascript: script languages; basics of the language Javascript

(introduction, syntax, script allowing, modalities of inclusion in the HTML document,

variables, operators).

X The programming language Javascript: basics of the language Javascript (commands for

the program execution flow control, function).

XI Javascript programming language: basic language Javascript (events, cookies, dialog

boxes, station redirections, page printing, keyword void).

XII Programming language Javascript: Javascript objects (user objects, native objects,

Document object)

XIII Programming Javascript language: advanced elements (error management, forms and

validation, multimedia and animation, browser compatibility, debugging)

XIV The programming language Javascript: An interactive user interface (JQuery Javascript

library).

XV Project 2 - Development of complex Web applications.

Literature

1. K. Yank, C. Adams. “Simply Javascript“, SitePoint, 2007. 2. B. Biebeault, Y. Katz. “ jQuery in Action“, 2nd edition, Manning, 2010.

Number of active classes:5 Lectures: 3 Practice: 2

Teaching Teaching Methods:

Lectures, practice, projects, final exam

Final Grade (maximum number of points 100)

Pre-exam obligations points Final Exam points

Class Attendance 10 Exam 40

Assessment I 30

Assessment II 30

Total: 70 Total: 40

Study Programme: Software and Data Engineering

Course title: Spanish Language 1 Course code: SPSII08-1

Teacher: Gagić Aleksandra

Course Status: elective Year: III Semester: V

Number of classes (l+p): 4+2

ECTS credits: 8

Requirement: /

Course Objective:

Course objective is reaching level А1 in the Spanish language.

Course Outcome:

Introducing basic information about Spanish language and hispanic culture with special emphasis on

communicative skills.

Course Content:

Week Theme/ Activity

I Módulo 0.Bienvenido al español. First contact with the language Alphabet. Spelling.

II Módulo 1 – Primeros contactos con el mundo hispano. Prevalence of the Spanish

language. Introduction. Personal pronouns. The verb llamarse, Numbers.

III Introduction in certain situations. The verbs: ser, llamarse, trabajar, tener. Interrogative

pronouns, Countries and nationalities, Vocations, Months in a year.

IV Módulo 2: Conoce un nuevo entorno, The verbs ser and estar, The difference between

está(n),hay,tiene, Names of main streets in a city, Parts of apartment and furniture.

V Módulo 3. Organiza tu tiempo; Prepositions, Interrogative pronouns, Reflexive verbs,

Conditional sentences type 1.

VI MIDTERM TEST 1

VII Módulo 4. Familiarízate con una nueva gastronomía y forma de comer; gustar and

pronouns of indirect and direct object, Adverbs sí, no, también, tampoco;

VIII Grammar: adverbs mucho, bastante, poco, nada; verb preferir; Vocabulary: main groceries,

names of some traditional dishes

IX Módulo 5. Habla de la gente que conoces;ser,tener,llevar; Nouns, adjectives, adverbs,

Vocabulary: family members, Describing people and characters

X Módulo 6. Prepárate para viajar. Grammar: verbs hacer, estar, haber, quedar, Seasons,

Colours, Revision of pronouns of direct and indirect object

XI Revision of acquired units and preparation for the midterm test

XII MIDTERM TEST 2

XIII Use of vocabulary and grammar in different communicative situations

XIV Knowledge assessment from previous units

XV Students' presentations

Literature

1. Meta (A1+A2+B1), Madrid, Edelsa, Students book and workbook + audio CD: Grammars, dictionaries,

textual and multimedia materials, CR, the Internet

Number of active teaching units: 6 Lectures: 4 Practice: 2

Teaching Methods

Lectures, practice, presentations, consultation hours.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Lecture attendance 10 Exam (Written/Oral) 30

Midterm test 1 30

Midterm test 2 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: German Language I Course code: SPSII06-2

Teacher: Katarina Milosavljević

Course Status: elective Year: II Semester:II

Number of classes (l+p): 4+2

ECTS credits: 8

Requirement: /

Course Objective:

Course objective is the usage of the German language at A1 level according to the Common European

Framework of Reference for Languages.

Course Outcome:

This course should enable students to communicate on basic level, to exchange information in everyday

situations and to communicate their basic needs. The course is also dedicated to acquisition of all other

language skills: understanding, writing and reading.

Course Content:

Week Topic/activity

I Alphabet of German language; Greeting when meeting and leaving; Personal data;

Auxiliary verbs sein and haben.

II Present tense / regular verbs; Personal pronouns; Writing names.

III The word order; Asking questions; Numbers to 1000.

IV Definite and indefinite article in the nominative case. Verbs with inseparable prefix.

V Negation of verbs and nouns; Present Tense/ irregular verbs.

VI Midterm Exam

VII Numbers to one million; Understanding the thelephone call.

VIII Complex words. Telling the time.

IX Hobbies; Free time, Week days.

X Meals during the day; Definite and indefinite article in the accusative case.

XI End-of-Term Test

XII Plural form; Going shopping.

XIII Negation of nouns in the accusative case.

XIV Food and drinks. Situation in restaurant. Modal verbs.

XV

Literature

1. Textbook and workbook- Köker, C. Lemke, L. Rohrmann, T.Schering: Berliner Platz 1 neu, Langenscheidt,

Berlin, 2010.

2. German language grammar- Dreyer, Schmidt: Lehr- und Übungsbuch der deutschen Grammatik, Hueber,

Ismaning, 2009.

3. Dictionaries, multimedia materials on the Internet, CD.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, project assignments, term exams, consultations.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Class Attendance 10 Exam (Written/Oral) 30

Assessment I 30

Assessment II 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: English Language 1 Course code: SPSII06-3

Teacher: Petrovic Jasna

Course Status: elective Year: I Semester: II

Number of classes (l+p):4+2

ECTS credits: 6

Requirement: -

Course Objective:

English Language 1 is a two-semester course based on the textbook Complete First Certificate

(CambridgeUniversityPress) which represents upper-intermediate level or Common European Framework

(B2). The course also represents preparation for the students who want to gain First Certificate in English-

FCE.

Course Outcome:

Course outcome is to reach higher level of speech fluency in various situations and on various topics. The

aim is also to provide understanding of written and oral language of native speakers, as well as

understanding and acquisition of writing skills- essay writing on diverse topics.

Course Content:

Week Topic/activity

I A Family Affair

II A Family Affair

III Leisure and pleasure

IV Leisure and pleasure

V Happy Holidays!

VI Happy Holidays!

VII Food, glorious food

VIII Food, glorious food

IX Studying abroad

X Studying abroad

XI The planet in danger

XII The planet in danger

XIII My first job

XIV My first job

XV High adventure

Literature

1. Complete First Certificate, Student’s Book, Guy Brook-Hart, Cambridge University Press,

2. Complete First Certificate, Workbook, Barbara Thomas, Amanda Thomas, Cambridge University

Press

3. English Language grammars, dictionaries, the Internet magazines, CDs

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures.

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Class Attendance 10 Exam (Written/Oral) 30

Assessment I 30

Assessment II 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Programming 2 Course code: SPSII09

Teacher: Tanasković V. Marko, Jevremović D. Aleksandar

Course Status: compulsory Year: II Semester: III

Number of classes (l+p): 2+0+3

ECTS credits: 8

Requirement: -

Course Objective:

Introducing students to advanced concepts of object- oriented approach using C++ programming language

and programme development applying different programming styles at the same time (multi-paradigm

programming).

Course Outcome:

A student who successfully completes the course is familiar with the possibilities of the C++ programming

language, is able to effectively use the elements of the standard library; understands the basic principles

which the object-oriented language is developed on; knows the advantages and disadvantages of the

language and is able to recognize the situations in which it is appropriate to use the C++ language; is

aware of the way in which the language supports different programming approaches and identifies the

advantages and disadvantages of each one.

Course Content:

C++ language basic features, C++ language evolution. Programme organization: headers and libraries.

C++ programme structure: global functions, main () function, classes, templates (function and class)

Automatically generated member functions, constructors and assignment operators.

Data flows: input and output, files, customization offlows.

Term categories: rvalue, lvalue, rvalue, lvalue, rvalue.

Passing values (subrprogramme parameters and return value): by value, by reference, lvalue reference, by

rvalue reference.

Midterm exam – C++ programming language basics

Program errors: program reaction to errors, occurrence of exceptions, handling exceptions, exception

classes from the standard library.

Elements of the standard library: strings, containers, iterators and algorithms.

Containers: sequential (vector, stack, list, queue),associative-sorted and associative-hashed (set, map,

multiset, multimap).

Iterators: external, implicit, forward, bidirectional, with direct access.

Search algorithms.

End of term exam– library standards, containers, iterators.

Modifying algorithms.

Sorting algorithms.

Algorithms for heap operations.

Literature

1. R. Popović, Z. Kostić, “C++ programskijeziksarešenimzadacima“, UniverzitetSingidunum, 2010.

2. Bjarne Stoustrup, “The C++ ProgrammingLanguage (4th Edition)“, Addison-Wesley, 2013.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, essay, term exams, final exam

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Class attendance 10 Exam 30

Midterms exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Data Structures and Algorithms Course code: SPSII10

Teacher: Živković S. Dejan, Adamović Ž. Saša

Course Status: Compulsory Year: II Semester: III

Number of classes (l+p): 2+0+3

ECTS credits: 8

Requirement: -

Course Objective:

Students learn about important characteristics of data structures and algorithms.

Students acquire essential theoretical and practical knowledge about basic data structures and

algorithms in the Java programming language.

Course Outcome:

Students are enabled to define and solve problems on the algorithmic level on their own.

Students are enabled to implement various data structures and algorithms in the Java

programming language.

Course Content:

1. Examples of algorithm design and analysis: sorting and searching.

2. Execution time of algorithms.

3. Basic linear data structures: sequences and matrices

4. Lists and stacks.

5. Queues.

6. Midterm exam

7. Recursive algorithms.

8. Recursive algorithms analysis.

9. Rooted and binary trees.

10. Binary search trees.

11. Binary heaps.

12. End of term exam

13. Graphs.

14. Graph traversal algorithms.

15. Graph spanning tree algorithms.

Literature

1. Dejan Živković, Uvod u algoritme i structure podataka, Univerzitet Singidunum,

2. Dejan Živković, Osnove dizajna i analize algoritama, Racunarski fakultet, Beograd, 2007.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, consultations, practice, homework, term exams, final exam.

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Operating Systems Course code: SPSII11

Teacher: Jevremović D. Aleksandar, Šarac K. Marko

Course Status: Compulsory Year: II Semester: III

Number of classes (l+p):3+2

ECTS credits: 8

Requirement: -

Course Objective:

Introducing students to the main concepts, basic parts and structures of operating system, how it works

and how it can be implemented in different ways, along with appropriate configuration, software

maintenance and successful usage in creating IT solutions.

Course Outcome:

Students are conversant with the basic concepts of operating system, its work principles and structures, are

familiar with different kinds of operating systems and their characteristics, understand the meaning of

basic parameters and are able to apply acquired knowledge.

Course Content:

Introduction to operating systems

Processes and threads

Process concurrency

Process synchronization

Deadlock

Midterm exam

Memory management

Virtual memory

Database system

Input/output system

End of term exam

Multimedia and real-time systems

Information management

Information management- file systems examples

Examples of operating systems: Windows/Windows Server, Linux/Linux Server

Final exam preparations

Literature

1. Silberschatz A., Galvin P. B., Gagne G., Operating System Concepts, John Wiley, 7th Ed., 2005.

2. Тanenbaum A. S., Modern Operating Systems, Prentice Hall, 3rd Ed., 2007.

3. Stallings W., Operating Systems: Internals and Designs Principles, 5th Ed., Prentice Hall, 2005.

4. Popović, R, Branović, I, Šarac, M. Operativni sistemi, Univerzitet Singidunum, 2011

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, computer practice, consultations, projects

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Class attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title:Web Programming Course code: SPSII12

Teacher: Cvetković Dragan

Course Status:required Year: II Semester: III

Number of classes (l+p):2+0+3

ECTS credits: 8

Requirement: /

Course Objective:

Familiarize students with the principles of Web programming.

Course Outcome:

Upon successfully completing the course, a student will be familiar with the basic principles of the three-

tier architecture of Web applications, will be capable of critically evaluating the limitations of architecture

and technologies for web applications development and choosing the adequate technology and developing

a simple three-tier Web application using technology of his own choice.

Course Content:

The concept of three-tier architecture. Components of three-tier architecture: client, application server

(business logic), data persistence.

Communication: Basic HTTP protocol;

Application server: CGI Python HTTP requests and responses;

Application server: CGI Python-generate HTML;

Data persistence in Web applications-MySQL; Basics of relational databases and SQL queries(select,

update, delete, insert)

Data persistence in Web applications-MySQL; SQL queries(join, group, or derby)

The client-side application–jQuery

The client-side application-jQuery and components library

Project1 – Creating simple Web application-blog and news portal

Limitations of basic technologies

Asynchronous requests: AJAX technology; jQuery and AJAX;

Data formats in Web applications: JSON, XML

RESTful architecture

RESTful architecture

Project 2- Creating simple RESTful Web applications -blog, or news portal

Literature

1. David Gourley, Brian Totty, Marjorie Sayer, Anshu Aggarwal, Sailu Reddy,HTTP: The Definitive Guide,

O'ReillyMedia 2002

2. Leonard Richardson and Sam Ruby, RESTful Web Services, O'Reilly Media 2013

3. B.Biebeault, Y.Katz. “ jQuery in Action“, 2nd edition, Manning, 2010.

4. Russell J. T. Dyer, MySQL in a Nutshell, O'Reilly, 2008.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, seminar paper, tern exams, final exam.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Project 1 30

Project 2 30

Total: 70 Total: 30

Study programme: Software and Data Engineering

Coursetitle: Software Specification and Modeling Course code: SPSII13

Teacher: Miškovic A. Vladislav, Kolarov M. Aleksandar

Course status: compulsory Year: II Semester: IV

Number of classes (l+p): 3+1+2

ECTS credits: 8

Requirement: /

Course objective

Students learn about efficient and effective modeling and specification of software systems. They gain

knowledge and skills necessary for analysis and specification of software requirements. They learn the

basics of model based design. They learn about UML specifications.

Course outcome

After successfully finishing the course the students are able to conducts analysis of complex systems,

specification of requirements according to the system and software and apply UML formalisms with

modeling static and dynamic behavior of system and software. They also become conversant with the

tools for modeling software and a formal specification of the static and dynamic behavior of systems and

software and modeling software architecture using UML.

Course content

Week Topic/activity

I Basic software system model. Relationship between requirement specification, design

specification and software system implementation.

II Basics of requirement engineering, process, expression, analysis, design specification,

requirement verification and validation.

III Development of formal document – requirement specification.

IV Basics of software design, static and dynamic modeling.

V Basics of UML, structure, organization and meta-model. UML diagrams: use case diagram

VI Midterm exam – requirement modeling using case diagrams

VII UML diagrams: class

VIII UML diagrams: object diagrams, cooperation diagrams.

IX UML diagrams: cooperation diagram

X UML diagrams: sequence diagram, activity diagram.

XI UML diagrams: state diagram.

XII Advanced UML modeling: interface

XIII Advanced UML modeling: packets and physical architecture modeling.

XIV Architectural and design patterns and their application in software system architecture.

XV

Literature

1. S. L. Pfleeger, J. M. Atlee, Софтверско инжењерство Теорија и пракса, треће издање PrenticaHall,

CET-Београд 2006

2. L. A. Maciaszek,“Requirements Analysis and System Design” Developing Information Systems with UML,

Addisom Wesley 2014.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching methods: Lectures, consultations, practice, homework, term exams, final exam.

Course grade (maximum number of points: 100)

Pre-examination requirements points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Databases Course code: SPSII14

Teacher: Veinović Đ. Mladen, Stojmenović I. Miloš

CourseStatus: Year: II Semester:IV

Number of classes (l+p):3+0+2

ECTS credits: 8

Requirement: -

Course Objective:

Acquisition of theoretical and practical knowledge about the implementation of databases in contemporary

information systems. Understanding of all advantages of databases in comparison with classic

programming languages and files implementation. Study of various systems for database management and

interfaces for connection with the chosen programming language. Delayering of database realization into

data models, business logic model and users interface. Understanding of relational database model and the

effect of transactions in concurrency. Acquisition of techniques of database administration and

maintenance.

Course Outcome:

Acquisition of necessary knowledge for individual work in Microsoft Access and MySQL system for

database management: database generation, user interface development, setting inquiry, report

development. Mastering syntax and technique for SQL language usage.

Course Content:

Classic data processing and its disadvantages

The concept of databases

Systems for databases management

Data models: hierarchical, network, relational, object.

Structural system analysis of business functions in real environment.

Midterm exam

Model objects- connections, entities, cardinality, special networks.

Relational databases, structural, integrity and manipulative component.

Relational algebra- foundation for relational databases.

SQL- definition and questions, update and access control.

Functional dependencies and normalization.

End of term exam –MySQL computer assignment

Transactions, concurrency, locking techniques

Base recovery in the case of cancellation. Databases and applications- connection with programming

languages- techniques

Literature

1. Veinović М., Šimić G., Uvod u baze podataka, Univerzitet Singidunum, Beograd, 2007, ISBN 978-86-

84277-70-3

2. Carlos Coronel, Steven Мorris, and Peter Rob. “Database Systems: Design, Implementation, and

Management“, Cengage Learning, Boston, USA, 2010.

3. Abraham Silberschatz, Henry Korth, S. Sudarshan, “ Database Systems Concepts“, МcGraw Hill, 2011.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, final exam- computer based.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Computer Networks Course code:SPSII15

Teacher: Jevremović D. Aleksandar, Šarac K. Marko

Course Status: required Year: II Semester: IV

Number of classes (l+p):3+2

ECTS credits: 8

Requirement: -

Course Objective:

Acquisition of theoretical and practical knowledge from the field of communication technologies and

computer networks. Introduction to and study of the standards and protocols in contemporary networks of

the Internet/ Intranet type. Understanding of the role of layers in OSI and TCP/ IP communication models.

Acquisition of the addressing techniques and data routing. Study of the most important Internet services.

Individual practical work on project and maintenance of computernet works. Understanding of security

challenges in contemporary networks and implementation of overall layered security.

Course Outcome:

Students should gain theoretical and practical knowledge for individual networking, hardware choice,

software installation, setting parameters and network management. Practical knowledge also refers to

installation and adaptation of Windows operating system (XP and Server), as well as Linux operating

system.

Course Content:

Introduction to computer networks

Computer telecommunications principles, signals, data transmission

Active and passive network tools, computer interfaces, cables and cabling

Local computer networks technology

Wide area computer network, Internet access

Midterm exam

Network layer, network to network connectivity, Internet protocol version 4, addressing and subnetting

Routing and routing protocols

Private networks, network addressing, subnetting

Transport layer (protocols with and without connection, TCP, UDP)

End of term exam

Applicative layer: software architecture, Telnet. SSH, DNS, FTP/ NFS/ CIFS

Web service, electronic mail service

The basics of information security, Firewall, IDS and IPS systems

Literature

1. Veinović, M. Jevremović, A. „Računarskemreže“, UniverzitetSingidunum, Beograd, 2011. ISBN: 978-86-

7912-368-8

2. Andrew Tanenbaum „Računarskemreže“, prevod 4. izdanja, Mikroknjiga, Beograd, 2005.

3. William Sтallings, “Data and Computer Communications“, Prentice Hall, 9th

Ed., 2010.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, practical work.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Spanish Language 2 Course Code: SPSII16-1

Teacher: Gagić Aleksandra

Course status: elective Year: II Semester: IV

Number of classes (l+p): 4+2

ECTS: 6

Requirement: /

Course Objective:

Reaching level A2 in Spanish according to the Common European Framework of Reference for

Languages.

Course Outcome:

Preparing students to communicate in different situations, reading comprehension and writing short essays

of descriptive and narrative form in present, future and past tense.

Course content

Week Topic/activity

I Módulo 7. Visita un nuevo lugar.Reviewing of previous lessons and introduction into a new

one. Irregular verbs in Present Tense; Possessive adjectives and pronouns

II Vocabulary: types of accommodation, furniture, parts of a room. Conversation

III Módulo 8. Haz planes y organízate. “Make plans and organize”. Grammar: Pretérito

Perfecto, Regular and irregular verbs; form and use of Perfect Tense in Spanish

IV Grammar: Construction ir+a+infinitive; Verbal periphrasis querer, ir and pensar+infinitive.

Types of accommodation and ways of organizing a trip.

V Módulo 9. Cuida tu salud. Verbal periphrasis: tener que, deber and hay que+infinitive; I type

of conditional clauses; Imperative; Vocabulary: parts of body and diseases;

VI Midterm exam 1

VII Módulo 10. Infórmate y conoce los medios de comunicación; Pretérito Indefinido; Use and

construction; Vocabulary: Spanish press and giving the news; Conversation

VIII Módulo 11. Encuentra trabajo en un país hispano.Verbal periphrasis: empezar a, dejar de,

volver a , acabar de+infinitive; basics of business language; CV, content and writing in

Spanish

IX Módulo 12. Comunícate Pretérito Imperfecto - construction and use, regular and irregular

verbs; Construction: estar+gerund

X Vocabulary: new technologies (basic terms). Conversation.

XI Written and lexical exercises; Conversation

XII Midterm exam 2

XIII Written and lexical exercises;

XIV Conversation

XV Student presentations

Literature

1. Meta (A1+A2+B1), Madrid, Edelsa student and workbook +CD audio; Grammar books, dictionaries,

textual and multimedia material, CD, Internet

Number of active teaching units: 6 Lectures: 4 Practice: 2

Teaching Methods: Lectures, practice, presentation, office hours.

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam поена

Lecture attendance 10 Exam 30

Midterm exam 1 30

Midterm exam 2 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: German language 2 Course code: SPSII16-2

Teacher: Katarina Milosavljević

CourseStatus:elective Year: II Semester:IV

Number of classes (l+p):4+2

ECTS credits:6

Requirement: German Language 1

Course Objective:

The objective of this course is the usage of the German language at A1 level according to the Common

European Framework of Reference for Languages.

Course Outcome:

This course should enable students to communicate at basic levels, to exchange information in everyday

situations and to communicate their basic needs.

Course Content:

Dative of definite and indefinite article, Prepositions with dative, Public buildings;

Asking about directions; Means of transport;

Question words welcher, welche, welches, Sights, Cultural events;

Prepositions with dative and accusative, Occupations, Job adverts;

Modal verbs können, müssen, wollen,

Midterm exam

Subjunctive II, Going to thedoctor’s, Bad and good habits;

Possessive article, Modal verb dürfen;

Furnishing the space. Living and working space.

Conjunctions und, aber, denn; Participle with separable prefeix;

End of term exam

Past tense of the verb sein.

Participles within separable prefix;

Personal pronouns in dative and accusative;

Literature

1. Textbook and workbook: Köker, C. Lemke, L. Rohrmann, T.Schering: Berliner Platz 1 neu, Langenscheidt,

Berlin, 2010.

2. Grammar of the German language, dictionaries, multimedia materials on the Internet, CD.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, presentation, consultations

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: English Language 2 Course code: SPSII16-3

Teacher: Petrović Jasna

Course Status: Elective Year: II Semester: IV

Number of classes (l+p):4+2

ECTS credits: 6

Requirement: English Language 1

Course Objective:

English Language 1 is a subject based on the textbook Complete First Certificate

(CambridgeUniversityPress) which represents upper-intermediate level or Common European Framework

level B2. The course also represents preparation for those students who want to gain First Certificate in

English- FCE.

Course Outcome:

Course outcome is to reach higher level of speech fluency in various situations and on various topics. The

aim is also to provide understanding of written and oral language of native speakers, as well as

understanding and acquisition of writing skills- essay writing on diverse topics.

Course Content:

Star Performances

Reported Speech 1

Secrets of the Mind; Modal verbs to express certainty and possibility

Questions in reported speech; Linking words for contrast (although, even though, while and whereas)

Spend, Spend, Spend! Modal verbs expressing ability, Making suggestions and recommendations; Report

on college improvements

Midterm exam

Staying Healthy

Modal verbs expressing ability, Making suggestions and recommendations; Report on college

improvements

Animal Kingdom

Conditionals type I, II (revision), Third conditional; Letter of advice

House Space; Causative have; expressing obligation and permission

End of term exam

Fiesta

The passive; Email giving information, inviting and accepting

Machine Age

Literature

1. Complete First Certificate, Student’s Book, Guy Brook-Hart, Cambridge University Press,

2. Complete First Certificate, Workbook, Barbara Thomas, Amanda Thomas, Cambridge University

Press

3. English Language grammars, dictionaries, the Internet magazines, CDs

Number of active teaching units: Lectures: Practice:

Teaching Methods

Lectures, practice, project assignments, midterm exams, office hours, case studies.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Activities during lectures 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Probability and Statistics Course Code: SPSII17

Teacher: Kostić-Kovačević P. Ivana

Course Status:Compulsory Year: III Semester: V

Number of Classes (l+p):3+2

ECTS credits: 8

Requirement: /

Course Objective

Students are acquainted with important concepts of probability and statistics, with the aim of

understanding probability models and statistical methods. The aim of this course is that students develop

logical thinking in dealing with the problems using probability and statistics. Students are enabled to apply

probability and statistics methods throughout their further education.

Course Outcome

Students will acquire theoretical and practical knowledge in the field of probability and statistics.

Week Topic/Activity

I Statictical Sofware “R“.

II Introduction to probability theory: outcomes, events, event algebra, probability space

III Conditional probability, Event independence

IV Total probability, Bayes’ formula

V Random variables, Distribution function, Discrete random variables, Continuous random

variables

VI Numerical characteristics of random variables: expectation, variance

VII Midterm test

VIII The law of large numbers, The central limit theorem

IX The basics of statistics: population, feature, sample, central theorem

X Point estimates and interval estimates

XI Hypothesis testing, the power of testing

XII Nonparametric tests, Pearson’s chi-squared test

XIII End-of-term test

XIV Regression analysis: linear, non-linear and logic analysis. Statistical data visualisation,

diagram.

XV Statictical models in computing (Статистички модели у рачунарству (queuing,Monte

Carlo simulation).

References

1. И. Ковачевић, Вероватноћа и статистика, са збирком задатака, Универзитет Сингидунум,

Београд, 2012.

2. С. Вукадиновић, Ј. Поповић, Математичка статистика, Саобраћајни факултет, Београд,

2008.

3. М. Spiegel, J. Schiller, Probability and Statistics,Schaum’s, 2000

4. W. N. Venables, D. M. Smith, An Introduction to R, R Core Team, 2015

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, consultations, homeworks, seminar papers, practice, term exams, final exam.

Course Grade (maximum number of points 100)

Pre-examination requirements points Final exam points

Class Attendance 10 Exam 30

Midterm test 30

End-of-term test 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Software Testing and Quality Assurance Course Code: SPSII18

Teacher: Miškovic A. Vladislav, Kolarov M. Aleksandar

Course Status: Elective Year: III Semester: V

Number of Classes (l+p): 2+1+1

ECTS credits: 8

Requirement: /

Course Objective

Students should be enabled to apply recommended practice, methods, techniques and tools within the field

of Software Construction and Testing.

Course Outcome

Knowing the principles, techniques and tools for software construction and testing. Upon completing the

course, students will be competent for software planning and construction, test automation process, units

testing or the whole software testing. The students will be able to analyse testing tools, create test-case and

to conduct efficient software testing.

Course Content

Lectures:

Week Topic/Activity

I Software construction fundamentals. Complexity minimisation. Changes prediction.

II Verification construction. Software construction management. Construction models.

III Construction process planning. Construction process measurement. Construction process

practical aspects.

IV Software construction design. Languages used in the process of software construction.

V The choice of platform and code language. Repeated usage of developed software units. Units

integration. Quality process of software construction.

VI Midterm Test

VII The role of software testing in the process of software construction. Software analysis. Sofware

bugs. The methods and levels of testing.

VIII Systems testing. Integration testing. Single software components testing.

IX Top-down testing and bottom-up testing

X Testing objectives. Test process management. Test planning and test conducting. Testing

process improvement.

XI Performance testing. Safety testing. Team testing.

XII End-of-Term Test

XII Functional and non-functional requirements testing. Test automation process.

XIV Users' demands definition and its' management and testing . Doubt test (related to tools, test

data, surroundings, requirements specification).

XV User interface testing, web application testing and databases testing.

References

1. Bourque, P., Dupuis; R., Abran, A., Moore, J. W. (2005) Guide to the Software Engineering Body

of Knowledge. Sams Publishing

2. Patton, R. (2005) Software Testing. Sams Publishing

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, exams, practice in e-classrooms

Course Grade (maximum number of points 100)

Pre-examination

requirements

points

Final exam points

Class Attendance 10 Exam 30

Midterm test 30

End-of-term test 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Software Development Metodologies Course Code: SPSII19

Teacher:Tomašević R. Violeta, Kolarov Aleksandar

Сourse Status: Compulsory Year: III Semester: V

Number of Classes: (l+p+l): 3+1+2

ECTS credits: 8

Requirement: /

Course Objective

Students should be enabled to work as part of a team that develop complex software products.

Course Outcome

Upon completing this course, students will be able to understand and critically estimate methodologies of

complex software systems development. Capability to use tools needed for team development of complex

software systems. Ability to communicate to a client/user. Awareness of the importance of Open Source

business model in complex software products development as well as awareness of the possibilities for

participating in an Open Source software project.

Course Content

Week Topic/activity

I Information systems life cycle phases

II Software design (Object-oriented approach, UML diagrams)

III Software design (Object-oriented approach, UML diagrams)

IV Software design (Object-oriented approach, UML diagrams)

V Traditional methodologies for information systems development (Waterfallmodel)

VI Model driven information system development

VII Agile information systems development methodologies: SCRUM (Test Driven Development

- TDD), (Behaviour Driven Development - BDD)

VIII Midterm Exam – Complex software products development methodologies

IX Project managing tools (Redmine)

X Version control and team work

XI Continuous integration

XII Additional tools - scaffolding tools, generators, build tools

XIII Communication to clientsКомуникација са клијентима

XIV Software maintenance

XV Complex software system development within Open Source business model(Crowd

sourcing –possible students’ participation in Open Source project)

Literature

1. S.L.Pfleeger, J. M. Atlee, Софтверско инжењерство Теорија и пракса, треће издање Prentica

Hall, CET-Београд 2006

2. L. A. Maciaszek,“Requirements Analysis and System Design” Developing Information Systems

with UML, Addisom Wesley 2014. B. Boehm, R. Turner, Balancing Agility And Discipline,

Pearson Education, Inc. 2009

3. Kassem A. Saleh, Software Engineering, J. Ross Publishing 2009

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching methods:

Lectures, practice, seminar paper, term exams, team project, final exam

Course Grade (maximum number of points 100)

Pre-examination requirements Points Final exam points

Class Attendance 10 Exam 30

Midterm Exam 20

Project (this project is connected

to the project done within the

course Web-based information

systems–project description:

standard methodologies and

tools for web-based information

system)

40

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title:Web-based Information Systems Course Code: SPSII20

Teacher: Miškovic Vladislav, Marković M. Marko

Course Status: Compulsory Year: III Semester: V

Number of Classes: (l+p+l): 3+0+3

ECTS credits: 8

Requirement: /

Course Objective

Students should be enabled to design and implement complex information systems in web environment.

Course Outcome

Student understands the fundamentals of information systems development. Student is capable of

participating in the development of complex web-based information system by using Java technology.

Course Content

Week Topic/Activity

I Information systems theory

II Web Applications Architecture

III JDBC

IV Java Network Programming

V Running HTTP in Java (demands and answers)

VI Server Fundamentals

VII Session Following

VIII Server Scripting and JSP

IX Server Scripting and JSP - MVC pattern

X JSTL and EL and Visibility Scopes

XI Asynchronous Calls and AJAX

XII Information Systems Reporting

XIII User's Interface Elements in Information Systems(client side and server side validation,

standard form)

XIV Standard Functional Demands (internationalization, pagination)

XV Standard Non-Functional Demands (audit, backup, deployment applications)

Literature

1. S. L. Pfleeger, J. M. Atlee, Софтверско инжењерство Теорија и пракса, треће издање

Prentica Hall, CET-Београд 2006

2. L. A. Maciaszek,“Requirements Analysis and System Design” Developing Information Systems

with UML, Addison Wesley 2014. B. Boehm, R. Turner, Balancing Agility And Discipline,

Pearson Education, Inc. 2009

3. Kassem A. Saleh, Software Engineering, J. Ross Publishing 2009

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, seminar papers, team project, final exam

Course Grade (maximum number of points 100)

Pre-examination requirements points Final exam points

Class Attendance 10 Exam 30

Project (the project is connected 60

to the project within the course

Software Development

Methodologies – project

description: Web Information

System development project)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Client Web Applications Course Code: SPSII21

Teacher: Miškovic A. Vladislav, Stojmenovic I. Miloš

Course Status: Compulsory Year: III Semester: VI

Number of Classes: (l+p+l): 3+0+3

ECTS credits: 8

Requirement: /

Course Objective

Students should be enabled to develop client web applications.

Course Outcome

Student understands the client application functions in web architecture. Student is capable of developing

client web applications by using one, chosen working framework (AngularJS) for JavaScript web clients

development. Students able to critically estimate working frameworks for JavaScript web clients

development who he/she has not had opportunity to work with.

Course Content

Week Topic/Activity

I Web servers, Web clients, REST clients

II Advanced JavaScript (object-oriented programming)

III Introduction to the web clients: The basic concepts of web clients (AngularJS Introduction -

Data binding, controllers, Scope, directives)

IV Introduction to the web clients: mapping(AngularJS)

V Introduction to the web clients: page reload (AngularJS – Digest cycle)

VI Additional tools for web clients development: npm, bower, gulp and yoeman

VII Templates for web clients development: servers, fabrics, dependency injection

VIII Server data usage: HTTP service and Resource service; asynchronous calls handling;

q service, promise object

IX Midterm Test-REST client development by using AngularJS framework

X Directives set enlargement: custom directives development (AngularJS)

XI External libraries: AngularUI - interface, lodash –functional programming

XII Web clients security: authentication and interceptors (AngularJS)

XIII Typical functional demands: internationalisation, validation, pagination.

XIV JavaScript Web client for mobile applications

XV Comparative analysis of JavaScript working frameworks for web clients development.

Literature

1. Ruebbelke, L. “AngularJS in Action“, Manning, 2015.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, seminar paper, term exams, individual projects, final exam.

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Exam 30

Term Test 20

Project 40

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Internet Software Architectures Course Code: SP-SII-11

Teacher: Jevremović D. Aleksandar, Šarac K. Marko

Course Status: Compulsory Year: III Semester: VI

Number of Classes: (l+p+l): 3+0+3

ECTS credits: 8

Requirement: /

Course Objective:

Students should be enabled to design and construct multi-tier client/server systems based on distributed

objects technology.

Course Outcome:

Students will be familiar with the technologies and standards for multi-tier client/server systems

construction. Students will be competent to design multi-tier distributed software systems based on

distributed objects technology.

Course Content

Week Topic/Activity

I Multi-tier client/server systems architecture

II Database access from server environment; connections management

III Directory servers and finding an object

IV Distributed objects technology

V Distributed objects technology

VI Distributed objects life cycle

VII Shared resource management in distributed environment

VIII Shared resource management in distributed environment

IX Transaction mode

X Distributed transactions

XI Distributed transactions

XII Object-relational mapping

XIII Object-relational mapping

XIV Design templates in distributed object environment

XV Design templates in distributed object environment

Literature

1. B. Milosavljević, M. Vidaković. “Java i Internet programiranje”, GInT, Нови Сад 2002

2. E. Roman, R. P. Shriganesh, G. Brose, “Mastering Enterprise JavaBeans”, 3rd edition Wiley and Sons

2005.

3. Floyd Marinescu, “EJB Design Patterns”, Wiley and Sons, 2003.

Number of active teaching units: 5 Lectures: 2 Practice: 3

Teaching Methods:

Lectures, practice, seminar paper, project, final exam

Course Grade (maximum number of points: 100)

Pre-examination requirements points Final exam points

Class Attendance 10 Exam 30

Project ( Application

development by using distributed

objects technology)

60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Artificial Intelligence Course Code: SPSII23-1

Teacher: Vladimir Matić, Milan Milosavljević

Course Status: Elective Year: III Semester: VI

Number of Classes (l+p): 3+2

ECTS credits: 8

Requirement: /

Course Objective:

Students acquire knowledge in the field of artificial intelligence and its place in traditional computer

fields. They are acquainted with theoretical and practical knowledge necessary for the synthesis of the

artificial intelligence systems based on knowledge, learning and examples, or genetic information formed

in the process of evolution within the group of potential solutions.

Course Outcome:

Students acquire theoretical and practical knowledge in the field of the artificial intelligence analysis and

synthesis within the paradigms of automated reasoning, machine learning, evolutionary and genetic

programming.

Course Content:

Week Topic/Activity

I Artificial intelligence - definition and history;

II Production systems and agents

III Search strategies

IV Heuristic search: A and A* algorithms

V First order predicate calculus

VI Midterm Test

VII Resolution-based automated reasoning

VIII Knowledge-based systems

IX Reasoning under uncertainty

X The basics of neurocomputing

XI Neural network architecture and learning algorithms

XII End-of-term Test

XII Induction systems

XIV The basics of genetic and evolutionary systems

XV Hybrid systems and its applications

References

1. Artificial Intelligence: A Modern Approach., S. Russell and P. Norvig. Prentice Hall, 2003

2. Artificial Intelligence: A New Synthesis, N. Nilsson, Morgan Kaufmann, 1998

3. Artificial Intelligence, A guide to Intelligent Systems, 2nd

Edition, Michael Negnevitsky, Addison Wesley,

2005.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, practice in e-classrooms

Course Grade (maximum number of points 100)

Pre-exam requirements points

Final exam points

Class attendance 10 Exam 30

Midterm Test 30

End-of-term Test 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Cryptology 1 Course Code: SPSII23-2

Teacher: Veinović Đ. Mladen, Adamović Ž. Saša

Course Status: Elective Year: III Semester: VI

NumberofClasses (l+p): 3+2

ECTS credits: 8

Requirement: /

Course Objective:

The students should gain necessary knowledge concerning the fundamentals of cryptology and

mathematical apparatus necessary for the analysis and synthesis of modern encryption systems. They should

become conversant with the main information security services: confidentiality, integrity, authentication and

undeniability, as well as with the main concepts and features of private and public key encryption systems.

Course Outcome:

The students should be able to independently assess the quality of the given encryption system relying on

the appropriate information-theoretical mathematical apparatus as well as to understand its role and place in

modern integrated computer environment.

Course Content:

Week Topic/Activity

I The concept of cryptology as the science of secret communication

II Shannon information theory of secret communication

III Classic Cryptography

IV Pseudo random string generators

V Private key systems

VI Midterm Test – Cryptoolclassiccypherstask

VII Stream chipers system

VIII Block ciphers system

IX Diffie–Hellman key exchange method

X Public key systems

XI Hash functions

XII End-of-term Test - Cryptoolmoderncypherstask

XIII Access control-authentication

XIV Access control-authorization

XV Practical aspects of cryptology

Literature

1. Veinović M., Adamović S., “Kriptologija 1“, Univerzitet Singidunum, 2013

2. Bruce Schneier, „Primenjena kriptografija“, Mikro Knjiga, 2007

3. Mark Stamp, „Information Security, Principles and Practice“, John Wiley&Sons, 2011

4. Ferguson, Niels; Schneier Bruce, “Practical Cryptography“, John Wiley & Sons, 2007.

Number of active teaching units: Lectures: 3 Practice: 2

Teaching Methods:

Lectures, practice, term-exams, practice in e-classrooms

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Exam 30

Midterm Test 30

End-of-term Test 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Claud Computing Course Code: SPSII23-3

Teacher: Tanasković V. Marko

Course Status: Elective Year: III Semester: VI

Number of Classes (l+p): 3+2

ECTS credits: 8

Requirement: /

Course Objective

The students should gain theoretical and practical knowledge and skills necessary for usage and

development of different technologies of cloud computing paradigm.

Course Outcome

Upon completing this course, students will be familiar with theory fundamentals as well as with cloud

computing technologies (infrastructure and software stack, programming models, distributed warehouses,

environment and libraries; technologies and virtualisations).

Course Content

Week Topic/Activity

I Introduction to cloud computing and software stack

II Project: bases

III The principles of parallel processing and traditional programming models

IV Exchange messages interface

V MapReduce

VI Apache Mahout

VII Pregel

VIII Dryad and Graph Lab

IX Distributed file systems I

X Distributed file systems II

XI Distributed file systems III

XII Apache Pig, Hive and Zookeeper

XIII Virtualisation I

XIV Virtualisation II

XV Virtualisation III, case study: Xen and VMware

Literature

1. Tom White,"Hadoop: The Definitive Guide", Second Edition,O'Reilly Media, 2010.

2. James E. Smith, and Ravi Nair, Virtual Machines: Versatile Platforms for Systems and Processes, First

Edition,Morgan Kaufmann, 2005.

3. Jothy Rosenberg and Arthur Mateos,"The Cloud at Your Service", First Edition,

Manning Publications, 2010.

4. Sean Owen, Robin Anil, Ted Dunning and Ellen Friedman,"Mahout in Action", First Edition,Manning

Publications, 2011.

5. Chuck Lam,"Hadoop in Action", First Edition,Manning Publications, 2011.

6. Jurg van Vilet and Flavia Paganelli,"Programming Amazon EC2",

O'Reilly Media, 2011.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods: Lectures, computer practice, consultations, practice

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Project defense 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Electronic Payment Systems Course Code: SPSII23-4

Teacher: Šarac K. Marko

Course Status: Elective Year: III Semester: VI

NumberofClasses (l+p): 3+2

ECTS credits: 8

Requirement: /

Course Objective

Introducing students to the models and technologies of electronic payment systems; enabling students to

design and maintains electronic payment systems.

Course Outcome

Upon completing this course, students will be able to apply principles, technologies and standards within the

field of electronic payment in designing and developing various electronic payment software systems as

well as in improving the existing ones.

Course Content

Week Тopic/Activity

I System of payment: organization, instruments, national and international system of payment

II System of payment: financial exchange network (TARGET, SWIFT).

III System of payment: electronic system of payment instruments

IV Payment cards: types of cards, association of cards

V Payment cards: method of paying by card, standards.

VI Мagnetic cards: standards, structure, content.

VII Magnetic cards: PIN codes, risks.

VIII Smart cards: structures, types, standards, organization.

IX Smart cards: modules, file system, keys, communication.

X Smart cards: Java smart cards, risks.

XI EVM standard: aim, organization, file system, data introduction, EMV transaction.

XII E-payment: general characteristics, PayPal, Google Checkout, 3D Secure.

XIII Mobile payment: mobile systems of payment, payment models, EMV mobile standard,

Google Wallet.

XIV Mobile payment: EMV mobile standard, Google Wallet.

XV Electronic payment systems frauds: online frauds, evolution, fraud types, fraudsters, fraud

prevention and fraud security management, fraud prevention techniques.

Literature

1. D. O’Mahony, M. Peirce, H. Tewari (2001) Electronic Payment Systems for E-Commerce, 2nd

edition. Artech House

2. C. Radu (2002) Implementing Electronic Card Payment Systems. Artech House

3. W. Rankl (2004) Smart Card Handbook, 2nd edition. Wiley and Sons

4. D. Montague (2011)Essentials of Online Payment Security and Fraud Prevention. John Wiley and

Sons

5. D. Williams (2007) Pro PayPal E-Commerce Apress

6. EMVCo (2008) EMV Specifications. EMVCo

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods: Lectures, practice in e-classrooms, consultations, practice

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Project defense 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: Software Configuration Management Course Code: SPSII23-5

Teacher: Matić Vladimir

Course Status: Elective Year: III Semester: VI

Number of Classes (l+p): 3+2

ECTS credits: 6

Requirement: /

Course Objective

Students should be enabled to apply the recommended theory, methods, techniques and tools within the

field of Software Configuration Management – SCM. Special attention will be paid to SCM process

introduction and improvement.

Course Outcome

Upon completing this course, students will be enabled to introduce SCM recommended practice, methods

and tools into software development process, to improve the existing SCM processes, to analyse the

available tools, to identify the advantages and disadvantages, to understand strengths and weaknesses of

different control version systems, to manage the changes, to manage the construction and editions, to

manage the alternative ways of development ect.

Course content

Week Тopic/Activity

I The basic definitions and the history of development of Configuration Management – CM.

II Traditional understanding of CM; Identification of configuration; Management of changes.

III File comparison tools (patch и diff). Supporting tools for changes identification (Trac,

Review Board).

IV Status development; Revision and verification; Software Configuration Management –

SCM.

V Initial code management; Version Control System – VCS; Architecture – advantages and

disadvantages

VI Centralized Version Control Systems (Subversion). Distributed Version Control Systems

(Git, Mercurial).

VII Creation and documentation of SCM process in accordance with recommended practice.

Preparation of web application development as a support to the recommended SCM process.

VIII Social coding; Repository models; Competitive advantages models management.

IX Alternative development models management; Construction management.

X Automation; Automated construction tools (Apache Ant + Ivy, Maven).

XI Changes management; Events; Changes demands; Monitoring; Supporting tools (Trac,

Review Board).

XII Edition management; Identification; Automation.

XIII Introduction management; Identification; Authorisation, Security, Planning.

XIV Industrial frameworks and standards; Continuous integration systems (Jenkins).

XV Maturity models.

Literature

1. Mette, J. Hass (2003) Configuration Management Principles and Practice. Addison Wesley

2. Aiello, R. & Sachs, L. (2010) Configuration Management Best Practices: Practical Methods that Work in the

Real World. Addison-Wesley Professional

3. Berczuk, S. & Appleton, B. (2003) Software configuration management patterns: effective teamwork,

practical integration. Addison-Wesley Professional

4. DoD USA (2001) Configuration management guidance. Department of Defense--United States of America

5. Chacon, S.; Hamano, J. & Pearce, S. (2009) Pro Git. APress

6. Reelsen, A. Play Framework Cookbook Packt Pub Limited 2011

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods:

Lectures, computer practice, consultations, practice.

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Project defense 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course Title: The Basics of Digital Forensics Course Code: SPSII24-1

Teacher: Adamović Ž. Saša

Course Status: Elective Year: III Semester: VI

Number of Classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Students acquire new theoretical and practical knowledge in the interdisciplinary field of computer crime.

They are acquainted with methodological and technological basics of computer and digital data

investigation, as well as data investigation on the Internet. They learn digital forensic analysis

technologies, techniques and tools. They will be able to understand the importance of digital forensics for

corporate investigations of IT security incidents, and its irreplaceable role in official investigation of

computer crime. They also learn modern forensic techniques and tools for digital data recovery, forensic

acquisition and analysis, based on scientific principles. Students are provided with practical work with the

most significant forensic tools for making a forensic copy when the system is shut down, a forensic copy

of a virtual machine and active computer system. They will understand the forensic challenges in modern

virtual systems of Cloud computing and the usage of virtual machine introspection in digital forensics.

Course Outcome:

Students acquire theoretical and practical knowledge in digital forensics, which enables them to conduct

forensic investigation as a member of a team for managing corporate IT security incident. Practical

knowledge refers to students' own choice of relevant forensic techniques and tools for making a forensic

copy and acquisition of digital data from different digital devices such as a computer, mobile phone, digital

camera etc.

Course Content

Week Topic/Activity

I Introduction to computer crime

II The basics of computer crime investigation

III The process of corporate investigation of computer security incident

IV Functional models of the digital forensic investigation

V Midterm Test

VI Digital evidence

VII The basics of digital forensics

VIII Digital data forensic acquisition

IX Forensic acquisition funcional models (static, dynamic and virtual)

X Digital data forensic analysis

XI End-of-term Test

XII Antiforensic techniques and tools

XIII Tools for the digital forensic investigation

XIV The use of virtual machines in digital forensics

XV Digital evidence expertise

Literature

1. Milosavljević M., Grubor G., Istraga kompjuterskog kriminala, Univerzitet Singidunum, Beograd, 2009.

godine, ISBN 978-86-7912-175-2

2. Casey E., Digital Evidence & Computer Crime: Forensic Science, Computers, and Internet, Academic Press

3. Prosise, C., Mandia, K., Incident response & computer forensics, 2nd

edition, McGraw-Hill, 2008

4. Jones, J. K., Bejtlich, R., Rose, W. C., Real Digital Forensics, Addison Wesley, 2008

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods: lectures, computer practice, consultations, practice.

Course grade (maximum number of points 100)

Pre-exam requirements points Final exam Points

Class Attendance 10 Project defense 30

Midterm Test 30

End-of-term Test 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Mobile Applications Development, Android, iPhone Course Code: SPSII24-2

Teacher: Adamović Saša, Matić Vladimir

Course Status: Elective Year: III Semester: VI

Number of Classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective

The objective of this course is to enable students to understand specific characteristics of projects

management of mobile applications and to create applications (using examples of Android and IPhone).

Course Outcome:

Students acquire basic knowledge in the field of project management of mobile applications. They are

enabled to use different tools and to realize mobile system projects.

Course Content

Week Topic/Activity

I The basics of Java and SQL.

II Introduction to Android and iPhone architecture.

III Application structure, making simple application.

IV Emulator (Android Virtual Device). Development IDE - XCODE, Interface Builder.

V Basic Inputs and Outputs project management: Form widgets, Text Fields, Layouts.

VI Menu and Preferences from. Monitoring events and actions.

VII Explicit and implicit intents.

VIII Interface programming. UI design projects (time and date, images and multimedia contents,

composition, dialogue, Tabs and TabActivity).

IX Styles and Themes. Integration.

X Database programming and its usage in mobile application. SQLite Programming,

Communication with a server.

XI Debug tools, Application testing.

XII Adapters and Widgets, services and notifications.

XIII Advanced techniques in programming.

XIV Project realization.

XV Project realization.

Literature

1. J. Steele, N. To, Android, Izrada aplikacija pomoću paketa Android SDK, Mikro knjiga, 2011.

2. S. Conder, L. Darcey, Android Wireless Application Development, Addison-Wesley, 2010.

Number of active teaching units: 5 Lectures:3 Practice: 2

Teaching Methods: lectures, practice, term exams, project (final exam).

Course Grade (maximum number of points 100)

Pre-exam requirements points Final exam points

Class Attendance 10 Project 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Information Security Course code: SPSII25-1

Teacher: Veinović Đ. Mladen, Adamović Ž. Saša

Course Status: elective Year: IV Semester: VII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

The aim of this course is to enable students to apply methods and techniques of modeling and establishing

information security in various systems.

Course Outcome:

After the completion of this course students will be able to apply principles, methods and standards in the

field of information security. They are enabled to perform information security management, security risk

management and establishing information security in various organizations.

Course Content:

I Introduction to information security: definition (the subject of interest), basic concepts, information

security development.

II The need for defining information security: threats to information security, attacks against information

system.

III The need for defining information security: business, professional and ethical reasons for defining

information security, legal framework.

IV Information security standards: the reason for standardization, fields of standardization, existing

standards.

V Information security standards: ISO 27000-series.

VI Midterm exam 1

VII Information security organization – internal organization, external organization.

VIII Information security organization – resource management, physical and logical security, security

incidents, business continuity.

IX Information security management system: the concept of information security management, the

concept of information security management system, system range.

X Information security management system: identification of customers and risks, system design, system

policy, standards, procedures.

XI Information system management: the basics of risk management, risk identification, risk assessment,

reduction, risk taking and risk avoiding, risk control strategies.

XII Midterm exam 2

XIII Information security implementation: technical aspects of implementation, non technical aspects of

implementation.

XIV Information security implementation: defining security requirements

XV Information security implementation: implementation of information security management system,

information security analysis, system defining, system supervision and maintenance.

Literature

1. ISO/IEC 27000 (2009) Information technology - Security techniques - Information security management

systems. ISO

2. Michael E. Whitman, Herbert J. Mattord (2012) Principles of Information Security, Fourth Edition. Course

Technology, Cengage Learning

3. Evan Wheeler (2011) Security Risk Management Building an Information Security Risk Management

Program from the Ground Up. Elsevier

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, practice in e-classroom

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term exam(s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Multimedia Systems Course code: SPSII25-2

Teacher: Stojemnović I. Miloš

Course Status: elective Year: IV Semester: VII

Number of classes (l+p):3+2

ECTS credits: 8

Requirement: /

Course Objective:

Introducing students to the opportunities and the need to use modern multimedia technology. Providing

basic principles, technology and multimedia standards and creating multimedia content on the Web.

Carrying out practical training in the use of modern multimedia technologies and the appropriate

application software for multimedia content.

Course Outcome:

Introducing students to the basic characteristics of signal and systems for multimedia signals. Enabling

students to use tools for audio, image and video signals.

Course Content:

Week Theme/ Activity

I Introduction to multimedia systems: coding, presentation, storage and transmission of data;

Computer architecture and hardware for multimedia systems

II Processors, network technology in multimedia systems, computer components

III Text, sound, images, psychoacoustics, time and frequency domain, A/D

IV Fundamentals of digital signal processing, production music signal, MIDI

V Basic technologies: video and virtual reality

VI Multimedia communications and networking (MIDTERM EXAM)

VII Distributed multimedia systems

VIII Image coding, image formats (GIF, TIFF, JPEG)

IX Image transformations

X Image restoration, image compression, digital video, basic formats

XI Video signal compression

XII Extracting edges and texture description (END OF TERM EXAM)

XIII Image segmentation; Digital watermarking

XIV Description of the image content and transmission of MPEG algorithms, H.26x

XV Processing images and video, animation.

Literature

1. R. Popović, D. Cvetković, D. Marković, Multimedija, Univerzitet Singidunum, 2010

2. М. Popović, Digitalna obrada slike, Akademska misao, Beograd, 2006

3. V. Miškovic, Multimedija- praktikum za laboratorijske vežbe, Singidunum, 2006

Number of active teaching units: 5 Lectures: 2 Practice: 3

Teaching Methods

Lectures, computer practice, consultations

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Fundamentals of Information theory and Coding Course code: SPSII26-1

Teacher: Veinović Đ. Mladen

Course Status: elective Year: IV Semester: VII

Number of classes (l+p): ): 3+1+1

ECTS credits: 8

Requirement: /

Course Objective:

Students are acquainted with the basic concepts of the theory of information and coding and its application

in modern computer systems. They will master Shannon’s concepts of the quantity of information,

entropy, mutual information, channel’s capacity, redundancy, source coding, secure coding, as well as the

basic concepts of information redundancy theory.

Course Outcome:

Students will acquire theoretical and practical knowledge about the theory of information and coding, with

the aim of understanding information flows and quantitative indicators in modern computer systems.

Course Content:

I The nature and process of communication;

II Information measure and entropy function;

III Information sources and coding methods;

IV Communication channels: General features and types;

V Mutual information concept and features;

VI Midterm exam

VII Shannon-Hartley capacity theorem;

VIII Communication over noisy channels;

IX Data compression and Huffman coding;

X The basics of secure coding;

XI Linear block codes;

XII End of term exam

XIII Cyclic and VSN codes;

XIV Convolutional codes;

XV Trellis codes and its cryptography applications.

Literature

1. Cover, T.M. & Thomas, J.A, Elements of information theory, New York: Wiley, 1991.

2. A.Bruen, M.Forcinito, Cryptography, Information Theory, and Error-Correction, Willey, 2005

3. M. Obradović, M. Milosavljević, J. Golić, D. Lazić, V. Šenk, Zaštitno kodovanje sa statističkim

prepoznavanjem oblika, VINC, Beograd, 1989.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, practice in e-classrooms

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term test(s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Functional programming Course code: SPSII26-1

Teacher: Adamović Ž. Saša, Matić Vladimir

Course Status: elective Year: IV Semester: VII

Number of classes (l+p): 3+1+1

ECTS credits: 8

Requirement: /

Course Objective: The aim of this course is that students become conversant with the functional

programming paradigm. They will be able to write programs in Scala programming language.

Course Outcome: After the completion of this course students are conversant with the functional

programming paradigm and capable of writing simple programs by using functional programming

paradigm and Scala programming language.

Course Content:

I Functional programming paradigm, functional programming languages, the basics. The advantages of

functional programming. Referential transparency, purity and substitution model.

II Scala programming language, syntax. Modules, objects, namespaces.

III Higher-order functions, polymorphic functions

IV Functional data structures: definition, pattern matching, data sharing.

V Functional data structures: recursion on lists and higher-order function generalization; trees.

VI Midterm exam 1

VII Error management without exception handling.

VIII Strictness and leniency

IX Pure function state

X Functional design and combinator libraries

XI Property based testing

XII Midterm exam 2

XIII Parser combinators

XIV Common functional design structures: monoids and monads

XV Project 2 –Creating a more compicated program in programming language by using subprograms.

Literature

1. Paul Chiusano and Rúnar Bjarnason. “Functional Programming in Scala“, Manning Publications

Co., 2015.

2. JohnHunt,“A Beginner's Guide to Scala, Object Orientation and Functional Programming”,

Springer Verlag, 2014

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, seminar paper, term exams, final exam.

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Activities during lectures 10 Exam (Written/Oral) 30

Practice

Term exam(s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: NoSQL databases Course code:SPSII27-1

Teacher: Jevremović D. Aleksandar, Stojmenović I. Miloš

CourseStatus:elective Year: IV Semester: VII

Number of classes (l+p):3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Introducing students to the principles, elements and working mode of contemporary non-relational

databases.

Course Outcome:

Enabling students to develop systems which use contemporary non-relational databases.

Course Content:

Week Theme/ Activity

I Problems of big data storage and scalability. Distribution of storage and data processing.

II Key/ value of data storage. Column-oriented databases.

III Document oriented databases. Graph databases.

IV Interface and interaction with NoSQL databases

V Storage architecture

VI Data operations (CRUD operations)

VII NoSQL databases inquiries

VIII Storage modifications and evolution management

IX Indexing

X Transactions management and data integrity management

XI NoSQL databases and cloud computing

XII Map/ Reduce

XIII Comparative analysis of system architecture for NoSWL databases management

XIV NoSQL databases performances

XV Auxiliary tools

Literature

1. Shashank Tiwari, Professional NoSQL, Wiley, 2011

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, midterm tests, projects (final exam)

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Decision Support Systems Course code: SPSII27-2

Teacher: Miškovic A. Vladislav

Course status: elective Year: IV Semester: VII

Number of classes (l+p): 3+0+2

ECTS: 8

Requirement: /

Course Objective: Enabling students to understand the process of making decisions in a business

environment and assess how decision support systems can help in resolving half-structured and non-

structured problems. Developing skills for creating decision support systems.

Course Outcome: Rendering students capable of defining decision support systems and acquainting them

with diverse managerial theories relevant for decision support systems. Identifying relevant procedures for

resolving social issues. Learning about the basics of architecture and DSS component functions.

Becoming familiar with the basics of hardware and software components of group decision support

systems. Noticing differences between DSS, experts systems and artificial neuron networks. Separating

important parts of executive information systems and their role in decision making. Taking critical stance

towards DSS systems.

Course content

Week Topic/activity

I Introduction to managerial decision making

II Introduction to decision support systems

III Data warehousing and intelligent agents

IV Group decision support systems

V Architecture and functional DSS components

VI Midterm exam

VII Implementation of the decision support system

VIII Concepts and theories relevant for decision making

IX Expert system and DSS

X Machine learning methods and DSS

XI Intelligent support to e-trade

XII End of term exam

XIII Practical DSS models, economic balance models (EOQ)

XIV Assessment criteria for decision support systems

XV Assignments, topics, testing

Literature

1. Miskovic V., Sistemi za podrsku odlucivanju, Univerzitet Singidunum, Beograd, 2013.

2. Turban E., Decision Support and Business Intelligence Systems, 9thEd, Perentice Hall, 2010

3. Hillier F.S., Lieberman G.J., Introduction to Operations Research, 9th Ed, McGraw-Hill, 2010

4. Witten I.H., Frank E., Hall. M.A., Data Mining: Practical machine Learning Tools and

Techniques, 3rd

Ed, Elsevier Inc, 2011

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching methods

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Data mining Course code: SP-SII-20

Teacher: Milosavljević Milan, Miškovic Vladislav, Matić Vladimir

Course Status: elective Year: IV Semester: VII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Enabling students to implement techniques, methods and tools in the field of data mining (DM) and to

design and maintain DM systems.

Course Outcome:

Knowing the principles, techniques and tools for data mining. Students are enabled to do data analysis, to

create predictive models, to design and maintain systems for data mining in business and engineering

environment.

Course Content:

Week Theme/ Activity

I Main concepts and overview of DM.

II Data pre-processing

III Exploratory data analysis and visualization

IV Main classification techniques: decision trees, naive Bayes method.

V Main classification techniques: k-nearest neighbours, supporting vector machines.

VI Midterm exam

VII Advanced classification techniques: ensembles of classifiers, bagging, boosting.

VIII Advanced classification techniques: semi-supervised learning

IX Evaluation of classifiers, automatic evaluation of parameters and selection of attributes

X Clustering techniques: k-means, hierarchical clustering.

XI Clustering techniques: dbscan algorithm.

XII End of term exam

XIII Association rule mining: apriori algorithm.

XIV Association rule mining: fp-growth algorithm.

XV Overview of the usage of data mining: business data analysis, web data analysis,

recommendation systems (films, books, etc), sports predictions.

Literature

1. Pang-Ning Tan, Michael Steinbach, Vipin Kumar (2005) Introduction to Data Mining. Addison-Wesley

2. Daniel T. Larose (2006) Data Mining Methods and Models. Wiley / IEEE Press

3. David Hand, Heikki Mannila, Padhraic Smyth (2001) Principles of Data Mining. MIT Press

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, term exams, practice in e-classrooms

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Cryptology 2 Course code: SPSII28-2

Teacher: Veinović Đ. Mladen, Adamović Ž. Saša

Course Status: compulsory Year: IV Semester: VII

Number of classes (lectures+practices+ laboratories): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

The students should become conversant with cryptologic mechanisms of public key infrastructure, modern

methods of information hiding, secret sharing, authentication and authorization. They should gain some

basic knowledge concerning security aspects of operating systems of software development, malicious

programmes and become conversant with the main postulates of modern cryptanalysis.

Course Outcome:

The students should gain theoretical and practical knowledge in the field of digital signatures, public key

infrastructure, secret sharing, authentification, authorization, operating systems security, application

software development and cryptanalysis.

Course Content:

I Hash functions

II Digital signatures

III Cryptology secret sharing systems

IV Public key infrastructure (PKI)

V Information hiding systems

VI Midterm exam

VII The notion and the main models of authentication

VIII Biometric authentication systems

IX Authorization systems

X Authentication protocols

XI Security Aspects in Software Development

XII End of term exam

XIII Operating systems security

XIV Malicious programs

XV Elements of Cryptanalysis

Literature

1. M. Stamp, „Information Security, Principles and Practice“, John Wiley&Sons, 2006

2. M.Milosavljević, G.Grubor, Osnovi bezbednosti i zaštite informacionih sistema, Univerzitet Singidunum,

2006

3. M.Milosavljević, G.Grubor, Osnovi bezbednosti i zaštite informacionih sistema-Praktikum, Univerzitet

Singidunum, 2006

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, term tests, practice in the electronic (computer) classroom

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term test(s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Electronic document management Course code: SPSII28-3

Teacher: Miškovic A. Vladislav, Marjanović-Jakovljević D. Marina

Course Status: Elective Year: IV Semester: VII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Introducing students to concepts and techniques of finding information and managing complex digital

documents. Enabling students to design software systems which handle structured and unstructured digital

documents.

Course Outcome:

Students are enabled to design and implement data storage, to implement Boolean model for data search,

to implement vector model for document search, to use probability methods for document search, to

implement techniques for interaction with the user and to promote search results and to use classification

techniques and documents clustering.

Course Content:

Week Theme/ Activity

I Document storage: principles and problems of document storage, documents transactions,

scalability of storage systems. Libraries for text search.

II Booleansearchmethod: the definition of Boolean search model, dictionary of terms, search

tolerance

III Boolean search method: index construction, index compression

IV Vector search model: ranking documents,weighting search results.

V Vector search model: defining vector model, calculating search results and documents’

ranks

VI Midterm exam

VII Search system performances: measures for search system performances, testing

peeformances

VIII Interaction with users and improvement of search performances, principles and techniques

for improving search results; interaction with users; manual and automatic reformulation

of inquiries, measures for improvings earch performances

IX Probability search models: overview of probability models of document search; Bayesian

model.

X Documents classification, concept and principles of document classification: supporting

vector machines and machine learning in document classification, flat clustering,

hierarchical clustering.

XI Documents classification, concept and principles of document classification: supporting

vector machines and machine learning in document classification, flat clustering,

hierarchical clustering.

XII End of term exam

XIII Search and web, web search characteristics, document collection, document indexing, link

analysis.

XIV Search and web, web search characteristics, document collection, document indexing, link

analysis.

XV Techniques for image, sound and video search

Literature

1. R. Baeza-Yates, B. RibeiroNeto (1999) ModernInformationRetrieval. Addison-Wesley, NewYork

2. L. Asprey, M. Middleton (2003) Integrative Document & Content Management: Strategies for Exploiting

Enterprise Knowledge. Idea Group Publishing

3. A. Rockley (2002) Managing Enterprise Content: A Unified Content Strategy. NewRiders

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, term exams, practice in e-classrooms

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 50

Midterm exam 20

End of term exam 20

Total: 50 Total: 50

Study Programme: Software and Data Engineering

Course title: Concurrent and Distributed Programming Course code: SPSII28-4

Teacher: Tanasković V. Marko, Marjanović-Jakovljević D. Marina, Matić M. Vladimir

Course Status: Elective Year: IV Semester: VII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Students are introduced to the main concepts of concurrent and distributed programming. Introduction to

concepts of various abstraction layers in concurrent and distributed programming. Students are enabled to

create concurrent and distributed programmes for the most common issues in various programming

languages.

Course Outcome:

Acquisition of general knowledge about the concepts, algorithms, principles, issues and solutions

regarding concurrent and distributed programming. Recognition of various abstraction layers in

concurrent and distributed programming. Students are enabled to independently write simple concurrent

and distributed applications in Java programming language and to independently solve the most common

synchronization issues.

Course Content:

I The concept of distributed systems, distributes systems design, coupled distributed systems.

II Logic and physical distribution, pseudoparallelism and true parallelism.

III Concurrent programmes and main assumptions of concurrent programming.

IV Indivisible operations and shared variables.

V Coroutines, bounded waiting, fork-join and cobegin.

VI Mutual exclusion in bounded waiting (Midterm exam)

VII Processes and synchronization. Declaration of processes, semaphores and semaphores' disadvantages.

VIII Conditional crticial regions and the example of batch operating system realized via conditional

critical regions.

IX Monitors and their mutual exclusion. Synchronization of conditions with monitors and nested monitor

calls.

X Pathnames and notation for defining path lists. Comunication between processes. Unidirectional and

bidirectional message forwarding.

XI Forms of communication and transaction. Direct and indirect naming. Disadvantages of direct process

briefing. Blocking and non blocking communication statements.

XII Selective communication, protected statements, alternative and iterative statements. Remote call

procedure. Remote call procedure, client- server relationship. Remote calls with the creation of processes

and process- procedure. Rendezvous, main advantages and implementation in Ad. Disadvantages of

rendezvous (End of term exam).

XIII Models of concurrent languages and mapping to designs of distributed systems. Emission processes.

Emission with or without buffers. Selective message reception.

XIV Example of philosophers having lunch and the presentation of the solution to the emission processes.

XV Examples of programming languages for distributed programming: Modula, CONIC, CSP, ADA,

LINDA.

Literature

1. Z. Radivojević, I. Ikodinović, Z. Jovanović, Concurrent and Distributed Programming, AМ, 2008.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods: lectures, computer-based practice, consultations

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term exam (s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Software project management Course code: SPSII28-5

Teacher: Marjanović-Jakovljević D. Marina, Trifunović V. Miroslav

Course Status: elective Year: IV Semester: VII

Number of classes (l+p):3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Acquiring knowledge and skills necessary for management of team development and exploitation of

complex software products and/or services in accordance with internationally renowned standards and

recommendations. Acquiring skills of implementing software applications for project management.

Course Outcome:

Acquired competencies for organizational, administrative, financial and technical management of the

development processes and exploitation of complex software products, IT services and information

systems in accordance with internationally renowned standards and recommendations in the field of

project management and usage of software applications for project management.

Course Content:

Week Theme/ Activity

I Introduction: course, software project management. Projects and participants.

II Project approval: project selection techniques (Payback, ROI, NPV, Scorematrices, SWOT

analysis). Feasibility studies.

III Formalizing the project goals. Similarities between project goals and software

requirements

IV Work Breakdown Structure (WBS), WBS types

V Estimation and allocation: algorithm techniques for estimation: functional points.

Allocation: assignment restrictions, AOA vs. AON, critical path, techniques for allocation

optimization.

VI COCOMO, budgeting and book keeping, introduction, direct and indirect expenditure,

structure of cost element, cash flow.

VII Software development activities: building blocks for software development,

implementation metric, testing.

VIII Software development process: Traditional software development process. Prototypical

software development

IX Agile software development: SCRUM methodology, SCRUM example.

X Changes management and risk management: Changes management and software

development. Changes management. Software evolution models. Risk management. Risk

management in software projects. Qualitative risk evaluation.

XI Quality management: Planning, quality control and quality assurance.

XII Project supervision: time, expenditures. Techniques for agile monitoring and project

control.

XIII Human resources management: motivation, character types, management styles.

Situational leadership. Ethics and project management.

XIV Organizational structure and management communication, Budgeting and projectpricing:

Management of project budget, pricing policy, Programmes management

XV Complex project example

Literature

1. Tom De Marco, Tim Lister, “People ware: Productive Projects and Teams”, Addison-Wesley Professional,

2013

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, computer practice, office hours

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Practicum-Intelligent software Course code: SPSII29-1

Teacher: Milosavljević M. Milan

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 1+0+5

ECTS credits: 8

Requirement: /

Course Objective:

Team realization of the project which includes designing and establishing prototypical web-based

intelligent software application (medium-level complexity), chosen in cooperation with the external user

with highlighted requirements for the usage of artificial intelligence method in solving specific domain

problems.

Course Outcome:

Students will be able to define, specify and develop intelligent software applications (medium level of

complexity) by using methods and techniques of artificial intelligence, software engineering

methodologies, methodologies of software project management, other technologies, standards and tools

acquired during previous education, as well as to recognize the need and to master new methodologies,

technologies, standards and/or tools if required.

Course Content:

I Revision of software engineering methodologies

II Revision of technologies for the implementation of complex web-based systems

III Revision of methods and techniques for artificial intelligence

IV The choice of external user and of specific task which will be the project subject

V Forming teams and allocating roles

VI Requirements specification

VII Models specification

VIII The choice of specific methods, technologies and tools for realization

IX Making a detailed plan for project realization

X Project development

XI Project development

XII Project development

XIII Project development

XIV Project development

XV Project presentation and defense

Literature

Scientific papers related to project assignment

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, practice, seminar paper, term exams, oral exam

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Project presentation and defense 40

Project 50

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Practicum - Cyber Security Course code: SPSII29-2

Teacher: Adamović Ž. Saša

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 1+0+5

ECTS credits: 8

Requirement: /

Course Objective:

Team realization of the project which includes designing and establishing a prototype of safety

infrastructure for web-based information system chosen in cooperation with the external user who

develops or uses web-based information system.

Course Outcome:

Students will be able to define, specify and develop safety infrastructures of web environment by using

standards, methods and techniques of information security, software engineering methodologies,

methodologies of software project management, other technologies, standards and tools acquired during

previous education, as well as to recognize the need and to master new methodologies, technologies,

standards and/or tools if required.

Course Content:

I Revision of software engineering methodologies

II Revision of technologies for the implementation of complex web-based systems

III Revision of methods, standards and techniques for information security

IV The choice of external user and of specific web-based information system which will be the project

subject

V Forming teams and allocating roles

VI Requirements specification

VII Models specification

VIII The choice of specific methods, standards, technologies and tools for realization

IX Making a detailed plan for project realization

X Project development

XI Project development

XII Project development

XIII Project development

XIV Project development

XV Project presentation and defense

Literature

Scientific papers related to project assignment

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, practice, seminar paper, term exams, oral exam

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Project presentation and defense 40

Project 50

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Practicum - Distributed Computing Course code: SPSII29-3

Teacher: Jevremović D. Aleksandar

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 1+0+5

ECTS credits: 8

Requirement: /

Course Objective:

Team realization of the project which includes designing and establishing prototypical distributed

environment for a real medium-level complexity task, chosen in cooperation with the external user (if

possible, with a software company or a different sector organization where the usage of distributed

computing environment is required). It is advisable that the representative of the external user is a member

of the team.

Course Outcome:

Students will be able to define, specify and establish distributed computing environments of medium level

of complexity by using methods, standards, techniques and technologies of distributed computing,

software engineering methodologies, methodologies of software project management, other technologies

and tools acquired during previous education, as well as to recognize the need and to master new

methodologies, technologies and/or tools if required.

Course Content:

I Revision of software engineering methodologies

II Revision of technologies for the implementation of complex web-based systems, revision of

technologies and methodologies for distributed computing

III The choice of external user and global specification of specific task of distributed environment which

is the project subject

IV Forming teams and allocating roles

V Requirements specification

VI Models specification

VII The choice of specific methods, standards, technologies and tools for realization

VIII Making a detailed plan for project realization

XI Project development

XII Project development

XIII Project development

XIV Project development

XV Project presentation and defense

Literature

Scientific papers related to project assignment

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, individual work, project, oral exam

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Project presentation and defense 40

Project 50

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Practicum - E-business Systems Course code: SPSII29-4

Teacher: Šarac K. Marko

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 1+0+5

ECTS credits: 8

Requirement: /

Course Objective:

Team realization of the project which includes designing and establishing prototypical web-based e-

business system chosen in cooperation with the external user which develops or uses web-based e-

business system.

Course Outcome:

Students will be able to define, specify and develop web-bases e-business systems by using methods,

standards and techniques of web-based e-business systems, software engineering methodologies,

methodologies of software project management, other technologies, standards and tools acquired during

previous education, as well as to recognize the need and to master new methodologies, technologies,

standards and/or tools if required.

Course Content:

I Revision of software engineering methodologies

II Revision of technologies for the implementation of complex web-based systems

III Revision of standards, methods and techniques for web-based e-business system

IV The choice of external user and of specific web-based e-business system which will be the project

subject

V Forming teams and allocating roles

VI Requirements specification

VII Models specification

VIII The choice of specific standards, methods, technologies and tools for realization

IX Making a detailed plan for project realization

X Project development

XI Project development

XII Project development

XIII Project development

XIV Project development

XV Project presentation and defense

Literature

Scientific papers related to project assignment

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, practice, seminar paper, term tests, oral exam

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Project presentation and defense 40

Project 50

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Practicum - Advanced Software Engineering Course code: SPSII29-5

Teacher: Tomašević R. Violeta, Kolarov M. Aleksandar

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 1+0+5

ECTS credits: 8

Requirement: /

Course Objective:

Team realization of the project which includes designing and establishing prototypical tools (medium-

level complexity) for software development chosen in cooperation with the external user (if possible, with

a software company or an organization from other sector with in-house software development or

organized outsourcing of IT functions). It would be desirable to have a representative of external user in

teams.

Course Outcome:

Students will be able to define, specify and develop tools (medium level of complexity) for software

developments by using methodologies and standards for software engineering, methodology for software

project management, other standards, technologies and tools acquired during previous education, as well

as to recognize the need and to master new methodologies, standards, technologies, and/or tools if

required.

Course Content:

I Revision of software engineering methodologies

II Revision of technologies for the implementation of complex web-based systems

III The choice of external user and of type of software tools which will be the project subject

IV Forming teams and allocating roles

V Requirements specification

VI Models specification

VII The choice of specific methods, technologies and tools for realization

VIII Making a detailed plan for project realization

IX Project development

XI Project development

XI Project development

XII Project development

XII Project development

XIV Project development

XV Project presentation and defense

Literature

Scientific papers related to project assignment

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, individual work, project, oral exam

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Project presentation and defense 40

Project 50

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Machine learning Course code: SPSII30-1

Teacher: Milosavljević M. Milan, Miškovic A. Vladislav

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p):3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Enabling students to design computer programmes which have the learning capability and implementation

of various models of machine learning for solving various practical assignments.

Course Outcome:

Gaining comprehensive theoretical knowledge in the field of machine learning. Ability to critically

analyze the techniques for machine learning and recognizing their applicability in solving specific

practical assignments.

Course Content:

Week Theme/ Activity

I Introduction: machine learning, basics of probability

II Classification and k-nearest neighbors algorithm

III Decision trees and learning the rules

IV Naive Bayes algorithm

V Linear regression, logistic regression

VI Midterm exam

VII Artificial neural networks: supervised learning

VIII Artificial neural networks: supervised learning

IX Supporting vector machines: basics

X Supporting vector machines: duality and cores

XI Classifiers: evaluation and comparison

XII End of term exam

XIII Bayes networks

XIV Hidden Markov chains

XV Dimensional ityreduction: analysis of the main components

Literature

1. Tom Mitchell (1997) Machine Learning. McGraw-Hill

2. TobySegaran (2007) Programming Collective Intelligence: Building Smart Web 2.0 Applications. O'Reilly

Media

3. Drew Conway, John Myles White (2012) Machine Learning for Hackers. O'Reilly Media

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, practice in e-classroom

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Security in computer networks Course code: SPSII30-2

Teacher: Aleksandar Jevremović

Course Status: elective Year: III Semester: VI

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

The objective of this course is that students acquire theoretical and practical knowledge in the field of the

computer and network data security. They will understand security problems and encrypted data

protection mechanisms. They will learn to correctly apply symmetric and asymmetric encryption systems

and comprehend algorithms and different types of keys. They will be able to identify security problems in

different network environments by using multi-layered security architecture.

Course Outcome:

Students are enabled to comprehend security problems and to apply appropriate security mechanisms in

modern computers and networks. The accent is on their own realizations and complete control over all of

the encrypted mechanisms during installations and system maintenance.

Course Content:

I Introduction to computer and network security

II Symmetric encryption systems (DES, 3DES, AES)

III Asymmetric encryption systems (RSA, SHA1, MD5)

IV PKI infrastructure (digital certificates, DSA)

V Application protection level (keys and algorithms management)

VI Transport protection level (SSL, TLS). Midterm exam

VII Network-level protection (IPsec, Transport and tunnel modes)

VIII Wireless security systems (802.11i, WEP)

IX File protection (application realization)

X E-mail service protection

XI Database protection (in data layer, in DBMS, communication)

XII Hardware protection. End of term exam

XIII Secure authentication (Kerberos, Radius)

XIV Access control (Firewall), VPN

XV Web protection (DNS protection, protected sockets)

Literature

1. William Stallings, Network Security Essentials, Prentice, 3rd Ed., 2007 2. Тanenbaum A.S., Računarske мreže, Prevod 4. izdanja, Mikro knjiga, Beograd, 2005.

3. G. Grubor, M.Milosavljevic, Osnovi zaštite informacija, Univerzitet Singidunum, Beograd 2010.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term exam(s) 30+30

Seminar paper (s)

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Agent technologies Course code: SPSII30-3

Teacher: Tanasković V. Marko, Stojmenović I. Miloš

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Enabling students to develop and apply software solutions based on agent technology.

Course Outcome:

Students will acquire knowledge in the field of technologies of distributed software components which

have characteristics of software agents. Students will become competent to use technologies of distributed

software components and to create agent environment and software agents.

Course Content:

Week Theme/ Activity

I Basic concepts in the field of agent technology: definition, basic characteristics of agents,

autonomy, communication, reactiveness, proactivity, mobility.

II Software agents: definition, typology, life cycle of agents

III Software agents: internal architecture (symbolic, reactive, hybrid)

IV Intelligent software agents: definition, structure, classification

V Intelligent software agents: knowledge representation and reasoning (ontology languages

and editors)

VI Midterm exam

VII Multiagent systems: definition, components and functions

VIII Multiagent systems: architectures and FIPA standard

IX Mobility: types (homogeneous, cross-platform, with agent regeneration, heterogeneous)

X Communication- cross-agent communication languages, transport mechanisms

XI Services. Agent and service directories

XII End of term exam

XIII Security in multi-generational environments

XIV Organization of agent environments in computer networks

XV Agent-oriented software engineering: programming languages, tools and platforms;

methodologies

Literature

1. Milan Vidaković (2007) Agentska okruženja. Zadužbina Andrejević

2. Nicholas R. Jennings , Michael J. Wooldridge (2002) Agent Technology: Foundations, Applications, and

Markets.

3. Michael J. Wooldridge (2009) An Introduction to Multi-Agent Systems, Second Edition. John Wiley &

Sons

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, term exams, practice in e-classroom

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Business process management and workflow management Course code: SPSII30-4

Teacher: Trifunović V. Miroslav

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p):3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

Acquisition of concepts and techniques for modeling, implementation, automatization and evaluation of

business processes.

Course Outcome:

Ability to model processes for direct implementation in business process management systems. Ability to

differentiate technologies for people-centric and computer-centric process automatization. Understanding

the differences between business process and business rules and the ability to choose the appropriate

information system. Awareness of various phases of life cycle of process management, additional

technologies and the way of functioning of all phases in the life cycle. Understanding technical

opportunities of business process management system and the connection with the concepts such as SOA

and EAL. Ability to develop implementation and integration strategy which improves organizational and

technical performances of a business system.

Course Content:

Week Theme/ Activity

I Introduction: course overview; defintion of business processes; overview of life cycle of

process management; overview of techniques for process modeling.

II Formal models of business processes: Petri nets, representation by graphic elements and

mathematical model. Extension of Petri net. Business processes modeling.

III Design of the implementation process: the difference between analytical and

implementable process model; the way of converting graphic models into XML;

components of workflow models; from BPMN to BPEL.

IV Process automatization: process support by information system; components of process-

aware application; BMPS and workflow systems (components and architectures).

V Implementation of the process design (change management; process implementation-

alternatives: manual implementation business process and workflow management systems,

complex adaptive work systems, process outsourcing

VI Midterm exam

VII Business rules management (BPMS and BRMS, decision rules and decision tables, SBVR)

VIII Allocating assignments and resources (Organisational models, strategies for allocation of

assignments, mobile implementation managers, external participants)

IX Implementation management (process metrics, supervision of business activities, process

tables)

X Additional evaluation (Business intelligence based on process data, process logging)

XI The usage of analysis and process data research (identification of process structures from

logs)

XII End of term exam

XIII Process simulation (probability allocation and frequencies, process simulation attributes,

the design of simulation models)

XIV Standards in process management (standars in process management and their significance;

WfMC reference model; standards for process design; BPMN, IDEF; standards for

exchange: BPMN, XPDL, BPEL; standards for integration: Wf-XML, WS-CDL)

XV Business process management maturity (maturity models, excellence centres,

organizational structure).

Literature

1. A.T.M. ter Hofstede, W.M.P. van derAalst, M. Adams, N. Russell (2009) Modern Business Process

Automation: YAWL andits Support Environment. Springer

2. W.M.P. van derAalst, C. Stahl (2011) Modeling Business Processes: A Petri Net-Oriented Approach. MIT

Press

3. W.M.P. van derAalst (2011) ProcessMining: Discovery, Conformance and Enhancement of Business

Processes. Springer

4. Harmon, Paul: Business Process Change (2007) A Guide for Business Managers and BPM and Six Sigma

Professionals, 2nd Edition. Morgan Kaufmann, San Francisco

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, computer practice, office hours

Course grade (maximum number of points :100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Software integration Course code: SPSII30-5

Teacher: Buturović J. Ljubomir, Marković M. Marko

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p): 3+0+2

ECTS credits: 8

Requirement: /

Course Objective:

The aim of this course is that students become conversant with the process of integration of various

software systems and applications, which includes: documenting integration requirements using business

process models, designing integration solution on the basis of pattern reusing, as well as implementing

solutions by using service-oriented architecture.

Course Outcome:

After the completion of this course, students are able to:

- Explain key challenges, concepts, drivers and strategies related to system integration projects

- Explain and apply organizational and managerial issues related to systems integration projects

- Explain and apply key systems integration architecture, methodologies and technologies

- Identify and assess current and emerging system integration tools

- Define and analyze system integration requirements using business process models

- Design feasible solutions for an integration problem that utilizes proven design solutions

described in integration patterns

- Apply advanced integration technologies to implement system integration solutions

- Prepare a research paper and deliver presentation on fundamental concepts studied in the course

Course Content:

I Introduction

II System integration: challenges and drivers

III System integration types

IV System integration technologies

V ERP systems and business process models

VI Integrations methodologies

VII Designing system integration solution and integration pattern

VIII XML and application integration

IX Service-oriented architecture and Web services

X Advanced technologies of Web services

XI Web service integration in applications

XII Selection of commercial off-the-shelf products

XIII Software integration tools

XIV Cloud-based integration

XV Project defense

Literature

1. Thomas Erl, “Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services”,

Prentice Hall, 2004

2. David S. Linthicum, “Next Generation Application Integration: From Simple Information to Web

Services”, Addison-Wesley Professional, 2003

3. Gregor Hohpe, Bobby Woolf “Enterprise Integration Patterns: Designing, Building, and Deploying

Messaging Solutions”, Addison-Wesley Professional, 2003

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, practice in e-classrooms, consultations.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Internet of things Course code: SPSII31-1

Teacher: Šarac K. Marko, Tanaskovic V. Marko

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p): 2+0+3

ECTS credits: 8

Requirement: /

Course Objective:

Acquisition of knowledge and skills required for designing and implementing IoT components and

systems.

Course Outcome:

Students are conversant with basic technologies and architectural framework of IoT paradigm. They are

familiar with components and software architecture of IoT system. They are enabled to analyze, design

and develop Internet-related products using adequate tools. They are able to identify, classify and describe

various concepts related to products connected to the Internet. They are able to analyze challenges and

apply adequate patterns to the user’s interaction to related objects.

Course Content:

I Introduction to Internet of things: IoT paradigm; smart objects; technology convergence.

II Internet of things – technologies: Radio frequency identification (RFID), near field communication

(NFC).

III Internet of things – technologies: wireless networks, wireless sensor networks.

IV Internet of things – technologies: Spacial locating (RTLS, GPS).

V Internet of things – technologies: Software infrastructure (agents and multiagent systems)

VI Internet of things – architectural issues: Referential architectural model, pattern design.

VII Internet of things – architectural issues: pattern design.

VIII Internet of things – open source development tools.

IX Internet of things – software architecture components: operating systems; platforms; hardware; middle

layer, connectivity software, databases.

X Internet of things – smart object development in open source environment: selected operating system.

XI Internet of things - smart object development in open source environment: selected database

XII Internet of things - smart object development in open source environment: selected platform, basic

programming.

XIII Internet of things - smart object development in open source environment: selected platform –

libraries.

XIV Internet of things - smart object development in open source environment: selected platform –

communication with Internet

XV Integration: XML, JSON, REST.

Literature

1. Mike Kuniavsky, “Smart Things: Ubiquitous Computing User Experience Design”, Morgan Kaufmann Publishers. 2010.

2. Sara Cordoba, Wimer Hazenberg, Menno Huisman, “Meta Products: Building the Internet of

Things”, SBIS Publishers. 2011.

3. Tom Igoe, Dan O'Sullivan, “Physical Computing: Sensing and Controlling the Physical World

with Computers”, Premier Press. 2004.

Number of active teaching units: 5 Lectures: 2 Practice: 3

Teaching Methods

Lectures, practice, seminar paper, term exams, final exam.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Social Computing Course code: SPSII31-2

Teacher: Šarac K. Marko, Alčaković S. Slavko

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p):2+0+3

ECTS credits: 8

Requirement: /

Course Objective:

The aim of this course is that students understand social concepts and technological infrastructure of social

computing and social networks; they should also acquire knowledge and skills needed for the

development of social networks software; they will acquire basic knowledge about ethical and legal

aspects of using social networks and developing social networks software, as well as analyses and

research of data on social networks.

Course Outcome:

(1) Students will understand social concept and technological infrastructure of social computing and

social networks

(2) Students will understand social computing courses of development

(3) Students will be able to develop social networks software

(4) Students will be able to analyze and research data on social networks

(5) Students will become aware of ethical and legal aspects of using and developing social networks

software and analysis and research data on social networks

Course Content:

I Social computing: concepts, methodologies, tools, applications, privacy and risks in social computing

II Social computing standards

III Web 2.0

IV Collaborative tagging and navigation

V Wikis, blogs, wiki and blog communication support platforms

VI Midterm exam – the basics of social computing

VII Identity management

VIII Social network presentation and analysis (graph and social networks theory, weak and strong ties,

central nodes identification)

IX Social network presentation and analysis (network segmentation, information diffusion

X Research and analysis of data on social networks (classification and recommendation systems)

XI Research and analysis of data on social networks (sentiment analysis and standpoint research and

analysis)

XII End of term exam – Social network technologies

XIII Crowd sourcing

XIV Crowd sourcing technologies

XV Web 3.0

Literature

1. Shashwat Srivastava and Apeksha Singh (2011) Facebook Application Development with Graph

API Cookbook. Packt Publishing

2. Matthew A. Russell (2011)Mining the Social Web: Analyzing Data from Facebook, Twitter,

LinkedIn, and Other Social Media Sites. O`Reilly

3. James Surowiecki (2008)The Wisdom of Crowds. Oxford University Press

4. David Easley and Jon Kleinberg (2010) Networks, Crowds, and Markets: Reasoning About a

Highly Connected World. Cambridge University Press

5. Subhasish Dasgupta (2010) Social Computing Concepts, Methodologies, Tools and Applications.

IGI Global

Number of active teaching units: 5 Lectures: 2 Practice: 3

Teaching Methods

Lectures, practice, seminar papers, term exams, final exam.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Project 60

Total: 70 Total: 30

Study Programme: Software and Data Engineering

Course title: Programmable hardware and embedded systems Course code: SPSII31-3

Teacher: Matić M. Vladimir

Course Status: elective Year: IV Semester: VIII

Number of classes (l+p): 2+0+3

ECTS credits: 8

Requirement: /

Course Objective:

Students are acquainted with hardware solutions using programmable logic devices. They are enabled to

use tools for project management, development, testing and implementation of solutions based on FPGA.

Course Outcome:

After completing this course students will be qualified for practical realizations and implementations using

programmable logic devices and embedded systems principle.

Course Content:

I Inroduction to FPGA ();

II FPGA technology;

III Digital signal processing and FPGA;

IV Introduction to embedded systems;

V System on a chip;

VI Embedded systems and FPGA; (Midterm exam 1)

VII Software tools for Xilinx and Altera;

VIII Simulation and testing;

IX FPGA programming;

X Midterm exam 2

XI Project realization;

XII Project realization (Midterm exam 2)

XIII Project realization

XIV Project realization

XV The analysis and evaluation of suggested solutions.

Literature

1. M. Petrovic, A. Simljanic, Programiranje alterinih FPGA cipova, Akademska misao, 2008.

Number of active teaching units: 5 Lectures: 3 Practice: 2

Teaching Methods

Lectures, practice, term exams, computer-based final exam

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Midterm exam 30

End of term exam 30

Total: 70 Total: 30

Study programme: Software and Data Engineering

Course Title: Digital signal and image processing Course code: SPSII31-4

Teacher: Stojmenović I. Miloš, Veinović Đ. Mladen

Course status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 2+0+3

Number of ECTS points: 8

Requirements: /

Course Objective:

Course objective is to introduce basic algorithms for digital signal and image processing: quality

adjustment, focusing, filtering, segmentation. The objective is to acquire mathematical tools for the usage

of operations in digital signal and image processing. Acquired knowledge should be used in Matlab.

Course Outcome:

Course outcome is to enable students to understand and implement basic operations of digital signal and

image processing.

Course Content

Week Topic/ activity

I Output transformation

II Impulse in variation transform

III Calculation of z transform based on Laplace transform

IV Bilinear transform

V Modified z transform. Relationships between LT- FT- ZT

VI Midterm exam 1

VII Digital filter structures

VIII Direct realization. Cascade realization. Parallel realization. Lattice- ladder realization.

Lattice realization. All pass realization.

IX Binary arithmetic. Effect of coefficient quantization on filter function

X Limit cycles. Product quantization and limit cycles effects. Limit cycles as the result of

exceeding the scope of addition.

XI System components for image processing. Photometry, acquisition and image digitization.

Image enhancement in spatial domain. Image histogram.

XII Midterm exam 2

XIII Linear spatial filtering- image focusing. Fast image filtering in frequency domain-

convolution theorem.

XIV

Non linear image filtering- example of median filter. Image restoration in the presence of

noise. Image segmentation-comparison with thresh holding. Morphological image

operations. Color image processing.

XV Syllabus overview and exam practice

Literature

1. Lj. Milić i Z. Dobrosavljević, Uvod u digitalnuobradusignala, Akdemskamisao, 2009.

2. S. Мitrа, Digital signal processing A computerbasedapproach, McGraw-Hill, 2006.

3. MiodragPopović, Digitalna obrada slike, Akademskamisao, 2006.

4. Rafael C. Gonzalez, Richard E. Woods, Digital ImageProcessing, 3rd ed., Prentice-Hall, 2008.

Number of active classes: 5 Lectures: 3 Practice: 2

Teaching methods: Lectures, computer and laboratory practice, consultations.

Final grade (maximum number of points: 100)

Pre-exam obligations points Final exam points

Attendance 10 exam 30

Midterm exam 30

End of term test 30

Overall: 70 Overall: 30

Study Programme: Software and Data Engineering

Course title: Practical Research and Business Skills Course code: SPSII33

Teacher: Đorđević-Boljanović Đ. Jelena

Dobrijević M. Gordana, Alčaković S. Slavko

Course Status: compulsory Year: IV Semester: VIII

Number of classes (l+p): 3+3

ECTS credits: 8

Requirement: /

Course Objective:

Students are acquainted with basic concepts and categories in the field of applied business skills with

regard to solving specific business issues and improving performances of the selected enterprise. Students

will be trained for independent work in the economy sector. They will be enabled to apply acquired

knowledge in the field of professional development and business skills, i.e. to apply theoretical knowledge

in specific case studies.

Course Outcome:

Students will be enabled to understand and apply essential business skills, basic principles for achieving

goals, the role of whole life learning for achieving success in business, as well as an individual aspect of a

person employed in the economy sector.

Course Content:

I The basic concepts of applicable business skills and theory of success

II Self-awareness and self-confidence; Stress management; Emotional and social intelligence

III Flexibility, Consistency and Persistence, Patience, Social skills

IV Written communication skills, Oral communication skills, Oratory skills

V Sales skills, Negotiation skills, Strategic thinking skills

VI Organizational skills, Project management skills, Risk management skills, Time management skills,

Meeting management skills

VII Midterm exam

VIII Enterprise as a business system, Organization, Documentation; Business

IX Leadership, System integration skills, Personal productivity skills

X Analysis of problem, weaknesses and challenges in an enterprise with the aim of business improving

XI Imagination skills, Inventiveness skills, Problem solving skills, Brainstorming skills, Communicating

vessels skills

XII CV writing, Job application writing, Communication with potential employer

XIII Job interview, Interview with an employer, Making a good impression techniques

XIV Critical observation in an enterprise and forming an opinion about it

XV End of term exam. Summarizing the results of activities

Literature

1. C. Viliams (2010) Principi menadzmenta, Data Status

2. J. Boljanovic Djordjevic, L. Drazeta, L. Babic, G. Dobrijevic (2013) Razvoj karijere i poslovnih

vestina,Univerzitet Singidunum

3. J. Boljanovic Djordjevic, Z. Pavic (2011) Osnove menadzmenta ljudskih resursa, Univerzitet

Singidunum

4. G. Dobrijevic (2011) Poslovno komuniciranje i pregovaranje, Univerzitet Singidunum

Number of active teaching units: 6 Lectures: 3 Practice: 3

Teaching Methods

Lectures, practice, project assignments, term exams, consultations, case studies.

Course grade (maximum number of points: 100)

Pre-examination requirements Points Final exam Points

Attendance 10 Exam (Written/Oral) 30

Practice

Term exam (s) 30+30

Seminar paper (s)

Total: 70 Total: 30