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
Top Related