three-year bachelor study at faculty of …integral calculus of single variable real functions i:...

82
UNIVERSITY IN SARAJEVO FACULTY OF ELECTRICAL ENGINEERING SARAJEVO THREE-YEAR BACHELOR STUDY AT FACULTY OF ELECTRICAL ENGINEERING

Upload: others

Post on 04-Mar-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

UNIVERSITY IN SARAJEVO

FACULTY OF ELECTRICAL ENGINEERING

SARAJEVO

THREE-YEAR BACHELOR STUDY

AT

FACULTY OF ELECTRICAL ENGINEERING

Page 2: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 2 of 82

Programme: ACE, PE, CI, TC

Year First year

Semester First semester

Courses

N Title Code ECTS H/S P L T

1. Mathematics for Engineers 1 ETF IM1 I-1175 7,0 75 49 0 26

2. Fundamentals of Electrical Engineering ETF OE I-1180 7,0 80 48 4 28

3. Physics for Engineers 1 ETF IF1 I-1160 5,0 70 39 0 21

4. Linear Algebra and Geometry ETF LAG I-1160 5,0 60 39 0 21

5. Fundamentals of Computing ETF OR I-1170 6,0 70 44 0 26

TOTAL: 30 345 219 4 122

Programme: ACE, PE, CI, TC

Year First year

Semester Second semester

Courses

N Title Code ECTS H/S P L T

1. Mathematics for Engineers 2 ETF IM2 I-1280 7,0 80 52 0 28

2. Programming Techniques ETF TP I-1270 6,0 70 44 26 0

3. Elective course 1.1 7,0

4. Elective course 1.2 5,0

5. Elective course 1.3 5,0

TOTAL: 30 345

Elective course 1.1, Elective course 1.2, Elective course 1.3

N Title Code ECTS H/S P L T

1. Electrical Circuits 1 (ACE, PE, TC) ETF EK1 I-1275 7,0 75 45 10 20

2. Physics for Engineers 2 (ACE, PE, TC) ETF IF2 I-1260 5,0 60 39 0 21

3. Electronic elements and circuits (ACE, PE, TC) ETF EES I-1260 5,0 60 39 0 21

4. Mathematical Logic and Computability (CI) ETF RIO ML I-1270 7,0 70 42 0 28

5. Probability and Statistics (CI) ETF RIO VS I-1260 5,0 60 38 0 22

6. Operating Systems (CI) ETF RIO OS I-1260 5,0 60 38 22 0

Page 3: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 3 of 82

Programme: Computing and Informatics

Year Second year

Semester Third semester

Courses

N Title Code ECTS H/S P L T

1. Algorithms and Data Structures ETF RIO ASP I-2360 5,0 60 38 22 0

2. Logic Design ETF RIO LD I-2360 5,0 60 38 10 12

3. Software Development ETF RIO RPR I-2360 5,0 60 35 25 0

4. Fundamentals of Database Systems ETF RIO OBP I-2360 5,0 60 38 22 0

5. Discrete Mathematics ETF RIO DM I-2360 5,0 60 39 0 21

6. Elective Course 3.1 5,0 50

TOTAL: 30 350

Elective course 3.1

N Title Code ECTS H/S P L T

1. System Programming ETF RII SP I-2350 5,0 50 36 14 0

2. Numerical Algorithms ETF RII NA I-2350 5,0 50 35 10 5

Legend:

H/S - Hours per semester

P - Lectures per semester

L - Laboratory exercises

T - Tutorials

Page 4: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 4 of 82

Programme: Computing and Informatics

Year Second year

Semester Fourth semester

Courses

N Title Code ECTS H/S P L T

1. Computer Architecture ETF RIO RA I-2460 5,0 60 40 20 0

2. Fundamentals of Computer Networks ETF RIO ORM I-2460 5,0 60 40 1 6

3. Object-oriented Analysis and Design ETF RIO OOAD I-2460 5,0 60 38 22 0

4. Automata and Formal Languages ETF RIO AFJ I-2460 5,0 60 38 0 22

5. Elective course 4.1 5,0 50

6. Elective course 4.2 5,0 50

TOTAL: 30 340

Elective course 4.1, Elective course 4.2

N Title Code ECTS H/S P L T

1. Mobile Application Development ETF RII RMA I-2450 5,0 50 35 15 0

2. CAD-CAM Engineering ETF RII CCI I-2450 5,0 50 35 15 0

3. Embedded Systems ETF RII US I-2450 5,0 50 28 22 0

4. Digital Signal Processing ETF RII DPS I-2450 5,0 50 28 10 12

Legend:

H/S - Hours per semester

P - Lectures per semester

L - Laboratory exercises

T - Tutorials

Page 5: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 5 of 82

Programme: Computing and Informatics

Year Third year

Semester Fifth semester

Predmeti

N Title Code ECTS H/S P L T

1. Web Technologies ETF RIO WT I-3560 5,0 60 40 20 0

2. Computer Graphics ETF RIO RG I-3560 5,0 60 22 30 8

3. Fundamentals of Information Systems ETF RIO OIS I-3560 5,0 60 40 10 10

4. Introduction to Operations Research ETF RIO OOI I-3560 5,0 60 40 14 6

5. Elective course 5.1 5,0 50

6. Elective course 5.2 5,0 50

TOTAL: 30 340

Elective course 5.1, Elective course 5.2

N Title Code ECTS H/S P L T

1. Software Verification and Validation ETF RII VVS I-3550 5,0 50 30 20 0

2. Business Web Systems ETF RII PWS I-3550 5,0 50 35 15 0

3. Programming Languages and Compilers ETF RII PJP I-3550 5,0 50 36 14 0

4. Computer Modeling and Simulation ETF RII RMS I-3550 5,0 50 35 15 0

Legend:

H/S - Hours per semester

P - Lectures per semester

L - Laboratory exercises

T - Tutorials

Page 6: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 6 of 82

Programme: Computing and Informatics

Year Third year

Semester Sixth semester

Predmeti

N Title Code ECTS H/S P L T

1. Software Engineering ETF RIO SI I-3660 5,0 60 35 25 0

2. Design of Information Systems ETF RIO PIS I-3660 4,0 60 38 11 11

3. Artificial Intelligence ETF RIO VI I-3660 5,0 60 35 25 0

4. Elective course 6.1 4,0 50

5. Final Thesis ETF RIO ZR I-36130 12,0 300

TOTAL: 30 340

Elective course 6.1

N Title Code ECTS H/S P L T

1. Software Project Organization ETF RII OSP I-3650 4,0 50 30 20 0

2. Computer Network Administration ETF RII ARM I-3650 4,0 50 35 15 0

3. Design and Architecture of Software Systems ETF RII ASS I-3650 4,0 50 30 20 0

4. Digital System Design and Synthesis ETF RII PDS I-3650 4,0 50 30 20 0

5. Elective from other faculty 4,0

Legend:

H/S - Hours per semester

P - Lectures per semester

L - Laboratory exercises

T - Tutorials

Page 7: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 7 of 82

MODULE CONTENTS

Module title Mathematics for Engineers 1

Module code ETF IM1 I-1175

Programme ETF-B

Module coordinator Dr Muharem Alispahić, Professor

Teaching staff

Dr Muharem Alispahić, Professor

Mehmed Brkić, MoE, Senior Teachnig Assistant

Zlatan Tucaković, MoE, Teaching Assistant

Vedran Karahodžić, MoE, Teaching Assistant

Year of study 1

Semester 1

Module type Mandatory

ECTS 7

Lectures 49

Laboratory

exercises 0

Tutorials 26

Workload –

Independent Study 100

Module outcomes

At the end of the module students should:

develop skill of deductive reasoning;

know and comprehend the concepts of limits and continuity; be

familiar of how to synthesize intuitive concepts into precise mathematical

formulation;

apply standard tests and criterions for convergence of both

sequences and series, as well as methods for evaluating limits of sequences

and single variable real functions;

comprehend the role of linearization in mathematical modeling of

actual physical and other problems;

know and comprehend the concepts of derivative, primitive

function (anti-derivative), indefinite and definite (Riemann) integral and

their basic properties;

apply the basic techniques of differential and integral calculus of

single variable real functions;

further develop the notion of convergence through examination of

sequences and series of functions.

Module content

1.Numbers and general concepts about numeric functions:

Algebraic operations involving real numbers. Decimal representation of real

numbers. Triangle inequality. Bounded and unbounded intervals. General

concepts on real-valued functions of a single real variable. Bounded,

monotone, symmetric (even and odd), periodic functions. Functions

composition, identity maps, injective functions, inverses. Elementary

functions:

power function (with real exponent), exponential and logarithmic functions,

hyperbolic and their inverse functions, trigonometric and their inverse

functions.

2. Single variable real functions I:

Limits and asymptotes: Neighborhood and infinity on real axis. Limit (finite

and infinite) of a function at a point and at infinity.

One-sided limits: from the left and from the right. Inequalities for limits of

functions. Algebraic operations with limits. Indefinite expressions. Limit

existence of a monotone function. Limit inferior and limit superior of a

Page 8: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 8 of 82

monotone function. Techniques for evaluating a limit. Limits for common

functions (power, exponential, logarithmic and trigonometric functions).

Hierarchy of infinity: logarithms, power functions, exponential functions.

Application of asymptotic expansions for evaluations of limits. Asymptotes:

horizontal, vertical and oblique (slant).

3. Single variable real functions II: Mean-value theorem and Bolzano’s theorem for continuous functions on an

interval. Definition of continuous functions on an interval. Continuity of

inverse function to a continuous monotone function on an interval.

Continuity of elementary functions and algebraic combinations of

continuous functions. Point of absolute maximum and minimum of a

function. Weierstrass theorem about minimum and maximum of continuous

functions on a segment.

4. Complex numbers

Algebraic form: real and imaginary part, modulus, conjugated complex

numbers and their properties. Triangle inequality. Argument. Trigonometric

form. De Moivre’s theorem about product, quotient and power of complex

numbers, nth

root of a complex number.

5. Infinite sequences and series of numbers and functions: Concept of an (infinite) series, n

th partial sum. Convergence and divergence,

regular and alternating series. Geometric series. Necessary condition for

convergence of series; harmonic series. Series with non-negative terms,

(limit) comparison test, (limit) ratio test, (limit) root test. General harmonic

series. Absolute and conditional convergence of infinite series. Absolute

convergence is sufficient for ordinary convergence. Leibniz criterion for

alternating series. Complex sequences and series. Infinite sequences and

series of functions: uniform convergence, Cauchy and Weierstrass’ criterion

of uniform convergence; power series with complex terms, Taylor and

Laurent series.

6. Differential calculus of single variable real functions I: Differentiability and properties of differentiable functions. Derivate of a

function at a point. Left and right derivatives. Tangent line to the graph of a

function. Differentiation rules of elementary functions. Derivatives of

compositions and inverses. The connection between continuity and

differentiability of functions at a point. Theorems of Fermat, Rolle's

theorem and Lagrange's theorem (mean-value). Properties of monotone

differentiable function at an interval determined with the sign of derivative.

Function with zero derivative at an interval.

7. Differential calculus of single variable real functions II:

Derivatives of higher order, finding extrema and linear approximations.

Concavity and convexity. Flexion: definition and application of second

derivative. Application of first and second derivatives to examination of a

graph of a function. L’Hospital rule. Taylor series. Remainder of an

approximation of second order in Peano’s and Lagrange’s form.

8. Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems.

Riemann integral single variable real functions defined of closed intervals.

Basic properties of definite integrals. Mean-value theorem. Primitive and

integral functions defined on an interval. Fundamental theorems of integral

calculus. Definition and basic properties of indefinite integral.

8. Integral calculus of single variable real functions II: (Methods of integration and improper integrals). Methods for evaluation of

definite and indefinite integrals. Integration by substitution and integration

by parts. Techniques for finding integrals of some classes of functions

(rational, trigonometric, irrational). Definition of improper integral.

Integrability criterion: (limit) comparison criterion.

Literature

Recommended

1. H. Fatkić: Inženjerska matematika 1, Slajdovi i bilješke, Sarajevo, 2013,

http://www.etf.unsa.ba/.

2. H. Fatkić: Inženjerska matematika 1, Štamparija Fojnica d.d., Fojnica-

Sarajevo, 2012. (University book)

3. M. Merkle: Matematička analiza, Akademska misao, Beograd, 2001.

Page 9: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 9 of 82

4. H. Fatkić, B. Mesihović: Zbirka riješenih zadataka iz matematike I, ETF,

Sarajevo, 1973.; Corons, Sarajevo, 2002.

5. M. P. Ušćumlić, P. M. Miličić: Zbirka zadataka iz više matematike I i II,

Građevinska knjiga, Beograd, 2004.

Additional

1. D. Adnađević, Z. Kadelburg, Matematička analiza I, Nauka, Beograd,

1995.

2. T. M. Apostol: Calculus I, Blaisdell Publ. Co., New York, 1961.

3. T. M. Apostol: Mathematical Analysis (2nd ed.), Addison – Wesley Publ.

Co., London, 1974.

4. A. Croft, R. Davison, M. Hargreaves: Engineering Mathematics,

Addison- Wesley Publishing Company Inc. Harlow,1996.

5. V. Dragičević, H. Fatkić: Određeni i višestruki integrali,Svjetlost, Zavod

za udžbenike, Sarajevo, 1979; 2. izd. 1987. (Textbook)

6. D. Jukić, R. Scitovski: MatematikaI, Elektrotehnički fakultet &

Prehrambeno-tehnološkifakultet – Odjel za matematiku, Sveučilište J. J.

Strossmayera u Osijeku, Osijek, 2000.

7. J. Lewin, An interactive introduction to mathematical analysis. With CD-

ROM, Cambridge: Cambridge University Press, 2003.

8. Ž. Marković: Uvod u višu analizu, I. dio, Školska knjiga, Zagreb, 1956.

9. M. Pašić: MatematikaI. S više od 800 primjera i zadataka, Merkur

ABD, Zagreb, 2005.

10. R. Živković, H. Fatkić, Z. Stupar: Zbirka zadataka iz matematikesa

rješenjima,uputama i rezultatima (Matematička logika i skupovi, Relacije i

funkcije, Algebarske strukture, Brojevi, Jednačine i nejednačine, Polinomi,

Aritmetički niz i geometrijski niz), Svjetlost - OOUR Zavod za udžbenike i

nastavna sredstva, Sarajevo, 1987. (Book)

Didactic methods

The course is carried out through theoretical lectures that serve to present

the concepts of differential and integral calculus for real functions of

a real variable. These lectures are supported by solving of mathematical

problems by lecturers with the goal of having the students master the

instruments and methods introduced in lectures.

Under guidance and monitoring by academic tutors, other mathematical

problems, including the ones from pervious exam terms, are solved as well.

These activities are organised in a way that the level of students’

preparedness to master the knowledge and skills they need to acquire during

the course is continuously checked through the curriculum which includes

homework and partial exams.

Assessment

Student collects points during the course based on the following system*):

• attendance at lectures and tutorials carries 10 points; student who

misses three or more lectures and/or tutorials cannot collect points on this

basis;

• homework carries maximum 10 points; students need to prepare 3

to 5 homework assignments that are equally distributed during semester;

• Partial exams: two partial exams, out of which each carries

maximum 20 points.

Partial exams (90 minutes long) carry tests comprised of multiple choice

answers, out of which only one is the correct one (student who answers

correctly to all the multiple choice tests achieves maximum 10 points), as

well as one open answer test (correct answer to this test brings 10 points).

Students who passed both partial exams in a semester (achieved 10 or more

points at each test) takes the final oral exam; this exam is comprised of

discussion on assignments from partial exams, homework, and answers to

simple questions which refer to the topic of the course (definitions,

formulations, and presentation of simpler evidence of the most important

Page 10: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 10 of 82

traits and/or theorems. Final oral exam is focused on integral matter of the

course stipulated by study programme. The goal of this exam is to check

whether students achieved adequate understanding of concepts and practical

matters presented during the course.

Final oral exam carries maximum 40 points. In order to achieve passing

grade, students have to achieve minimum 15 points at this exam. Students

who don’t achieve minimum number of points will take oral part of makeup

exam.

Students who fail both partial exams will take makeup exam.

Makeup exam is organised in the following way:

• written part, which is structured the same way as partial written

exam; within this exam students will take the tests from partial exam in

which they failed to achieve a passing grade (10 or more points);

• oral part, which is structured the same way as oral part of the final

exam.

Students who achieved total score of 10 or more points in each of the two

partial exams after taking the written part of makeup exam are eligible to

take the oral part of makeup exam; the score is comprised of points

collected through passing of partial exams and passing of written part of

makeup exam.

Oral makeup test carries maximum 40 points. In order to get a passing

grade, students need to achieve minimum 15 points in this exam and at the

same time achieve minimum 55 points out of possible 100 (including the

points for attendance, homework, and two partial exams passed). Students

who do not achieve these minimums have to retake the course.

----------------

*) Attendance at all aspects of teaching is mandatory.

Prerequisites

Although there are no official prerequisites for this course, basic knowledge

in elementary mathematics is required for students to be successful.

Page 11: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 11 of 82

Module title Fundamentals of Electrical Engineering

Module code ETF OE I-1175

Programme ETF-PGS

Module

coordinator Dr Senad Smaka, Associate Professor

Teaching staff

Dr Senad Smaka, Associate Professor

Dr Tarik Uzunović, Assistant Professor

Mirza Hamza, MSc, Senior Teaching Assistant

Meliha Dulić, MoE, Teaching Assistant

Year of study 1

Semester 1

Module type Mandatory

ECTS 7

Lectures 48

Laboratory

exercises 4

Tutorials 28

Workload –

Independent Study 95

Module outcomes

Module has a goal to present basic concepts of electro-magnetism to the

students, with appropriate mathematical apparatus. Students gain knowledge

related to scientific methodology and natural laws in such manner to meet

electro-magnetic phenomena and problems related, from qualitative and

quantitative aspect.

Module content

1. Electric charge: insulators and conductors, Coulomb's law of force,

distributions of electric charge.

2. Electric field: Gauss’s theorem for electric field in integral and

differential form, divergence of electric field, examples of application of

Gauss’s theorem.

3. Electric potential: work of electric field forces, conservative nature

of electric field, curl of electric field. Potential and difference of potentials,

Electric field as gradient of potential, equipotent planes. Poisson’s and

Laplace's equations.

4. Electric capacity: Definition of electric capacity, capacity in system

of conductors, examples of capacity calculation. Combinations of capacitors.

Electro-static energy and calculation of force using electrostatic energy.

5. Dielectrics: matter polarization, electric susceptibility and nature of

polarization vector. Dielectric displacement and its connection with dielectric

electrostatic field and polarization. Boundary conditions between two linear

dielectric environments. Stored energy in dielectric medium.

6. Electric current: definition of electrical conductivity and stationary

electric current, Ohm’s law of electrical conductivity, electric resistance,

serial and parallel connected resistors. Joule’s law. Exchange of energy in

electrical circuit. Kirchhoff's laws. Energy conservation law in electrical

circuit.

7. Magnetic field: magnetic interaction, electricity and magnetism.

Magnetic force to electric charge in motion, magnetic force to conductor

conducting electricity, mechanical moments. Hall’s effect. Motion of charged

particle in magnetic field.

8. Sources of magnetic field, Ampere’s law in basic and general form,

magnetic properties of matter, electrically induced magnetic field, Biot-

Savart-Laplace's law, electro-dynamic force, magnetic properties of matter:

permeability and susceptibility of material, hysteretic loop, Gauss’s law for

magnetic field.

9. Basic magnetic circuits: Analogy with electric circuits.

10. Time-variable electric and magnetic fields: Properties of

Page 12: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 12 of 82

electromagnetic field, Faraday’s law of electromagnetic induction, Lenz's

principle, induced electromotive force. Application of Faraday’s law:

alternating current generators, electric motors. Self-induction, inductive

electric circuit, magnetic energy in linear and non-linear environments.

Mutual induction, calculation of mutual inductivity.

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. N. Behlilović, Osnove Elektrotehnike, Univerzitet u Sarajevu,

ISBN 978-0058-629-24-2, COBISS.BH-ID 16925446, Sarajevo 2008.

Additional

1. Ejup Hot, Osnovi elektrotehnike knjiga prva, Ejup Hot, Osnovi

elektrotehnike knjiga druga, ETF Sarajevo 2003.

2. Umran S. Inan, Aziz S. Inan, Engineering Electromagnetic, Addison

Wesley Longman, Inc. 1998, California, USA.

Didactic methods

Lectures are presented directly in lecture-hall and are being supported with

typical problems solving (48 hrs) in such manner for students to comprehend

and adopt knowledge and skills defined in module outcomes.

Throughout laboratory exercises (4 hrs), under guidance of tutor, experiments

are carried out in laboratory. Goal of laboratory exercises is for students to

practically verify (by forming some simple DC circuits) some fundamental

laws presented in lectures (such as: Ohm’s law, I&II Kirchoff’s law, energy

conservation law, etc.).

Throughout tutorials (28 hrs), under guidance of tutor, typical problems are

solved (from topics treated in lectures), including problems from previous

exams. In this manner students will be prepared for final exam.

Assessment

The contributions of all activities are rated according to the following scale:

• Regular attendance (max. 10 points)

• Homeworks / Laboratory exercises (max. 10 points)

• 1st midterm exam (max. 20 points)

• 2nd

midterm exam (max. 20 points)

• Final exam (max. 40 points)

Regular attendance means that student must be present on all forms of the

module’s delivery. Student earns 10 x (Number of presence hours) / 60 points

for attendance.

By solving of homework and/or laboratory exercises (HW/LE), student can

earn up to 10 points. Homework is done in the form of preparation and

implementation of laboratory exercises under the guidance of assistant (2x2

points) and two short tests (2x3 points).

Midterm exams: There are two midterm exams, and both are in written form.

At each midterm exam student can earn a maximum of 20 points. Midterm

exam is considered to be passed by a student if he earned at least 10 points.

First midterm exam is in the 8th

week, and second midterm exam is in the 16th

week of the semester. Students who failed first and/or second midterm exam

are allowed to go through the makeup exam at the end of the semester.

Duration of midterm and makeup exams is from 90 to 120 minutes. During

midterm and makeup exams students solve the problems that are of the same

type as those solved during the lectures and tutorials.

Final exam: At final exam, a student can earn a maximum of 40 points.

Student will be allowed to take final exam if he/she meets all of the following

conditions:

if student passes both midterm exams,

if student earns at least 40 points through: regular attendance, and

homework/laboratory, and midterm exams.

Final exam is considered to be passed if a student earns a minimum of 15

points. Otherwise, student must take makeup final exam (which is just as

structured as the final exam.). Final exam can be written or oral and most

frequently is in oral form. At final exam students get three questions related

to course topics.

Makeup exams and makeup final exam: Students who fail the midterm

exam(s) must take the makeup exam. Also, students who fail to earn 40 points

Page 13: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 13 of 82

(through: regular attendance, and homework/laboratory, and midterm exams),

regardless of whether they have passed the midterm exams or not, must take

makeup exam.

Students who failed final exam must take makeup final exam. Also, students

will be allowed to take makeup final exam if they meet all of the following

conditions:

if student passes makeup exam,

if student earns at least 40 points through: regular attendance, and

homework/laboratory, and midterm exams.

Students who fail to earn at least 20 points (through: regular attendance, and

homework/laboratory, and midterm exams), regardless of whether they have

passed the midterm exams or not, must retake this module next academic

year. Also, students who do not achieve a minimum of 15 points at makeup

final exam must retake this module next academic year.

Prerequisites

Page 14: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 14 of 82

Module title Physics for engineers 1

Module code ETF IF1 I-1160

Programme ETF-PGS

Module

coordinator Dr Hasnija Šamić, Professor

Teaching staff

Dr Hasnija Šamić, Professor

Dr Selma Hanjalić, Assistant Professor

Adnan Osmanović, MoE, Assistant

Nedis Dautbašić,MoE, Assistant

Vahid Helać, MoE, Assistant

Year of study 1

Semester 1

Module type Mandatory

ECTS 5

Lectures 39

Laboratory

exercises

Tutorials 21

Workload –

Independent Study 65

Module outcomes

The course aims to provide an introduction to classical mechanics necessary

for basic formation of future engineers, and its preparation for advanced

courses

At the end of the module students should:

understand the basic concepts of mechanics of material point, system

of points and fluids and apply them in specific cases,

be able to define, discuss, analyze, and solve simple problems of

classical mechanics, correctly applying the basic concepts of vector algebra

and mathematics analyzes.

Module content

Matter is systematized and divided into the following chapters:

1. Physical fundamentals of mechanics:

Physical values and measurements; measure units and unit systems;

measurement errors; scalar and vector values; material point and system of

material points (solid).

2. Kinematics:

Kinematics of material point; space and time; movement and referent

systems; displacement, velocity and acceleration of material point; types of

kinematic movements, rectilinear movement, curvilinear movement.

3. Dynamics:

3.1. The fundamental equation of dynamics:

Causes that lead to movement of the body; the first, second and third

Newton's principle of dynamics; differential equations of motion under force

in gravitational, electric and magnetic field; torque force and impulse; work

and energy; power; laws of conservation of energy and impulse; body

collisions.

3.2. Dinamycs of solid body:

Inertia moment; Steiner theorem; force momentum; impulse momentum;

work and energy of rotation; law of conservation of impulse momentum.

4. Oscillations:

Oscillatory movement; harmonic oscillations; energy of the harmonic

oscillation; composition of harmonic movements; mathematical, physical and

torsional pendulum; damped oscillations; forced oscillations; resonance.

5. Waves:

5.1. Mechanical waves

Definition of wave motion; plane and spherical waves; the general wave

equation; energy of elastic waves; wave interference; standing waves; wave

reflection; refraction of waves.

Page 15: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 15 of 82

5.2. Sound:

Sound waves; propagation speed of sound waves; Doppler effect; volume

level; sound absorption; ultrasound.

6. Mechanics of fluids:

6.1. Fluid statics:

The pressure; hydrostatic pressure; atmospheric pressure; Archimedes law.

6.2. Fluid dynamics:

Ideal fluid flow; equation of continuity; Bernoulli's equation; viscosity;

laminar and turbulent motion; movement in the pipes with variable cross-

section; measuring the speed and flow.

Literature

Recommended

1. H.Šamić, Inženjerska fizika 1, Slajdovi i bilješke, ,

http://www.etf.unsa.ba/

2. S.Marić, “Fizika”, Svjetlost, 2001

3. H.Šamić, B.Nikolić, S.Hanjalić “Inženjerska fizika 1 – odabrani

problemi sa rješenjima“, Sarajevo, 2013

4. D.Halliday, R.Resnick, J.Walker, “Fundamenatls of Physics”, John

Wiley & Sons, 2001.

Additional 1. D.Giancoli, “Physics for Scientists and Engineers”, Prentice Hall,

New Jersey, 2000

Didactic methods

Course material is presented in following ways: lectures and tutorials.

Lectures performed in an aula for all students by the teacher. During those

lectures, fundamental theoretical and experimental aspects of matter will be

explained. In addition, numerical problems will be solved. After completion

of the presentation for each logical unit rounded curriculum, teacher will

formulate and solve problems, and examples that allow students to

understand the tools and methodologies provided during lectures.

In tutorials, under the guidance of the teaching assistant, more numerical

problems and examples are solved in order to achieve a better theoretical

understanding of the presented topics. Students are divided into small groups

and can be prepared for tutorial classes and present the planned tasks for such

activity to get extra points.

During the semester, students are obliged to do five homeworks.

In addition, students are expected to participate in lectures and tutorials, as

well as to work individually all the time.

Assessment

During the course, students earn points according to the following system:

1. Attendance to lectures and tutorials: 10 points. Student with more

than three absences during semester will not get there points.

2. Homeworks – maximum of 10 points. Students will have five

homeworks equally distributed throughout the semester.

3. Two written exams, midterm and final, each written exam with a

maximum of 40 points.

Partial exam lasts 90 minutes and the student responds to three theoretical

issues and solves three numerical problems.

To successfully complete a course the student should gain at least 60 points

during the course.

The final oral exam is optional and applies only to students who are not

satisfied with the proposed final grade. The proposal of the final grade is

formed on the basis of evidence of the presence of all forms of teaching,

performance on written exams and activities in tutorials. In the oral

examination students answer the theoretical questions related to the topic

from the course.

Student who earns less than 20 points must retake the course.

Student who earns less than 60 points during one semester and less than 20

points on the one partial exam will have to take a partial makeup exam, for

the part that he failed. If student failed both partial exams, will have to take

an integral makeup exam, maximum of 80 points, which consists of four

theoretical issues and four numerical problems. Makeup integral exam lasts

150 minutes.

Page 16: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 16 of 82

Prerequisites

Module title Linear algebra and geometry

Module code ETF LAG I-1160

Programme ETF-B

Module

coordinator Dr Almasa Odžak, Assistant Professor

Teaching staff Dr Almasa Odžak, Assistant Professor

Nermin Čolo, MoE, Assistant

Year of study 1

Semester 1

Module type Mandatory

ECTS 5

Lectures 39

Laboratory

exercises 0

Tutorials 21

Workload –

Independent Study 65

Module outcomes

At the end of the module students should be able:

to understand idea of vector space, linear dependence and

independence, vector space basis and dimension, linear mapping of vector

spaces,

to overwhelm the techniques of matrices and vectors calculations,

to analyze a solvability of linear equation systems and to be able to

find their solutions using different techniques,

to overwhelm the concept of straight line and plain, as well as the

concept of curves and surfaces in the space,

to use achieved knowledge in order to solve particular practical

problems.

Module content

1. Elements of mathematical logics and set theory: Operations.

Algebraic structures. Group, rings and modules.

2. Vector spaces theory elements: Vector spaces and subspaces.

Calculation properties. Linear combinations. Linear dependence and

independence. Basis, dimension and generators.

3. Matrices: Definition and types of matrices. Operations (addition,

multiplication by scalars, multiplication, transposition). Matrix rank. Inverse

matrix. Determinants (presenting, Sarrus rule, Laplace rule, properties).

4. Systems of linear equations: Definitions of systems of linear

equations and solutions. Determined, undetermined and impossible system.

Cramer’s rule. Method for solving quadratic systems using matrices. Gauss

elimination method. Kronecker-Capelli method.

5. Linear operators: Definition of linear operator. Kernel and image

of an operator. Linear operators and matrices. Linear functionals and dual

vector spaces. Polynomials. Eigenvalues and Eigenvectors. Diagonalization.

6. Vector algebra: Definition of vectors. Magnitude and direction.

Basic vector operations. Dot, cross and triple product of vectors.

7. Analytical geometry in plane: Concept of line and surface

equation. Equations of a line in the plane. Parallel and perpendicular lines.

The distance between two points. Set of lines passing through specific point

in the plane.

8. Second order curves: Ellipse, hyperbola, parabola. Second order

curves identification.

9. Analytical geometry in space: Equations of a plane in space.

Equations of a line in space. Mutual relations between two lines, two planes,

and plane and line in space. Set of plains containing specific line.

Page 17: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 17 of 82

10. Second order surfaces: Ellipsoid. Hyperboloid. Elliptical

paraboloid. Hyperbolic paraboloid. Cylinder. Cone. Surface of revolution.

Literature

Recommended

1. A. Odžak: Lecture notes, Sarajevo, 2013, http://www.etf.unsa.ba/

2. D. S. Mitrinović, D. Mihailović, P. M. Vasić: Linearna algebra,

polinomi i analitička geometrija, Građevinska knjiga Beograd,1990.

3. B. Mesihović, Š. Arslanagić: Zbirka riješenih zadataka i problema iz

matematike sa osnovma teorije i ispitni zadaci, Svjetlost, Sarajevo, 1988.

4. P. Miličić, M. Ušćumlić: Zbirka zadataka iz matematike I, Beograd,

1989.

Additional

1. G. Strang: Introduction to Linear Algebra. 4th ed. Wellesley-

Cambridge Press, 2009.

2. L.E. Spence, A.J. Insel, S.H. Friedberg: Elementary Linear

Algebra:

3. A Matrix Approach, 2nd ed , Pearson, 2008.

4. O. Bretcher: Linear Algebra with Applications, Pearson, New Jersey,

2009.

5. M. Bračković: Matematika – determinante, sistemi linearnih

jednačina, elementi vektorske algebre i analitičke geometrije, Svjetlost, Sara-

jevo, 1990.

6. N. Elezović: Linearna algebra, Element, Zagreb, 1996.

7. N. Elezović, A. Aglić: Linearna algebra, Zbirka zadataka, Element,

Zagreb, 1996.

Didactic methods

The main goal of lectures is to give exhaustive overview of all topics covered

by this module. Monologue, dialog and demonstrative methods are being

used here. After introducing the terms, their mutual relationships, results and

methods of particular topic the lecturer solves carefully selected examples in

order to demonstrate previously theoretically lectured material. During

tutorials, under the tutor guidance, theoretical elements of particular topic are

being resumed and carefully selected examples and problems are solved in

details. During tutorials students are able to use an opportunity for interactive

discussion about issues that are subject of the course. Besides that, small

number of students in groups for tutorials gives an insight of student’s

achievement during the course.

Students are obligated to attend lectures and tutorials. It is expected that each

student is properly prepared for all forms of classes using teaching materials

available to be downloaded from the faculty courseware, and to actively

participate during classes and to maintain continuous independent study.

Assessment

The assessment activities and their allocated points are given in details below.

Activity: Mark (%):

Class Participation & Attentiveness 10 %

Homework assignments 10 %

Partial examination 1 (week 8) 20 %

Partial examination 2 (week 16) 20 %

Final examination 40 %

Class participation and attentiveness:

Attentive participation in all forms of classes is mandatory.

Homework assignments:

Two homework assignments are anticipated during the course. Each

homework consists of 5-10 problems to be solved. Solving homework

problems student needs to demonstrate certain competency for independent

usage of methods and techniques displayed during the hours of lectures and

tutorials.

Partial examination:

The partial examination in this course are standard closed-book, 2 hours

written examination, covering all aspects of the course that have been

presented in the lectures and tutorials during previous seven weeks. The

exams consist of some questions of a descriptive nature (e.g. explaining a

concept, main results and techniques) and the rest are problem-solving

Page 18: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 18 of 82

questions.

Through this exam analytical and critical thinking and general understanding

of the course material is verified in a controlled fashion.

Assessment is a graded according to the correct fraction of the answers to the

exam questions. A satisfactory performance (50% or greater) in the both

partial exams is a necessary requirement to pass this course, irrespective of

the marks obtained in the other components.

Final examination:

The final oral exam covers all topics of the module. The objective is to ensure

that the student has an appropriate understanding of the concepts, results and

methods of the course.

Prerequisites

Module title Fundamentals of Computing

Module code ETF OR I-1170

Programme ETF-B ACE, PE, CI, TC

Module

coordinator Dr Vedran Ljubović, Assistant Professor

Teaching staff Dr Vedran Ljubović, Assistant Professor

Emir Cogo, MoE, Teaching Assistant

Year of study 1

Semester 1

Module type Mandatory

ECTS 6

Lectures 44

Laboratory

exercises 26

Tutorials 0

Workload –

Independent Study 80

Module outcomes

A student who successfully completes the course will have the ability to:

understand fundamental concepts in computing and informatics

involving: number systems, basics of computer architecture, and information

technology applications;

conceptually understand problem solving strategies using

algorithmic approach;

understand the basic terminology used in computer programming;

design simple programs in C language involving: program control

statements, arrays, structures, functions, pointers, and input-output

operations.

write, compile and debug simple programs in C language.

Module content

1. Introduction: Problem analysis, problem solving methods,

algorithms, flow diagrams, program development, top-down and bottom-up

development methodology, programming languages.

2. Number systems, basics of Boolean algebra, basics of

microprocessor technology, basics of computer architecture, processor

structure and function, bus and registry, RAM and ROM memory, input and

output, peripheral memories.

3. Basic survey of computing and informatics: local and global

computer networks, human-computer communication, network services,

internet, electronic mail; Software: structure and organization of computer

programs, system software, operating systems, application software

4. Programming language C: syntax, data types, local and global

variables.

Page 19: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 19 of 82

5. Control structures, operators, arrays, pointers, pointer declaration

and initialization, strings

6. Functions, function definitions, function prototype, function

arguments, function calls and passing arguments to functions: passing by

value and passing by reference, recursive functions

7. Structures, arrays of structures, accessing array elements, operations

on structures

8. Files, work with files, modular programming in C, library functions,

dynamic allocation.

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. Mark Burel, Fundamentals of Computer Architecture, Palgrave

Macmillan, 2003.

3. Brian W. Kernighan, Dennis M. Ritchie, C Programming Language,

Prentice Hall Inc., 1988.

4. Al Kelley, Ira Pohl, A Book on C, Addison-Wesley, 1998

Additional

Didactic methods

Lectures introduce fundamental concepts of computing and programming. In

this way students are introduced with different components of the computer,

different number systems and its conversions and problem-solving strategies.

Besides presentation of the fundamental concepts in computing and

programming, lectures also consist of the presentations of appropriate

examples illustrating introduced concepts. Laboratory exercises and home

assignments include additional examples and problems closely coordinated

with the lectures. In this way, the laboratory exercises and home assignments

contributes to the development of the student ability to understand basic

concepts in computing and programming, and ability to design and

implement programs in C programming language to solve simple computing

problems.

Assessment

The grading of the course is as follows:

Attending lectures and laboratory exercises (maximum 10

points). Student with more than three absences from lectures

and/or laboratory exercises cannot get these points.

5 home assignments equally distributed throughout the semester

(maximum 10 points)

Two partial exams:

- First partial exam (maximum 20 points)

- Second partial exam (maximum 20 points)

The partial exams cover all material presented in the lectures,

laboratory work and home assignments. During the partial

exams students are tested for understanding of fundamental

concepts in computing and programming, and their ability to

solve simple programming problems in C programming

language.

Final exam (maximum 40 points)

Students who passed both partial exams (minimum 10 points) can get access

to the final exam. The final exam covers material from the entire semester,

including lectures, laboratory exercises and home assignments. Passing the

final exam is necessary for passing the course. In order to get positive final

grade, students must earn minimum of 55 points including attending, home

assignments, two partial exams and final exam. Students who have not passed

only the second partial exam must repeat a failed exam. Students who have

not passed both partial exams must pass integral exam covering material from

entire semester.

Prerequisites

Page 20: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 20 of 82

Module title Mathematics for Engineers 2

Module code ETF IM2 I-1280

Programme ETF-B ACE, PE, CI, TC

Module

coordinator

Dr Muharem Alispahić, Professor

Teaching staff

Dr Muharem Alispahić, Professor

Mehmed Brkić, MoE, Senior Teachnig Assistant

Zlatan Tucaković, MoE, Teaching Assistant

Vedran Karahodžić, MoE, Teaching Assistant

Year of study 1

Semester 2

Module type Mandatory

ECTS 7

Lectures 52

Laboratory

exercises 0

Tutorials 28

Workload –

Independent Study 95

Module outcomes

After completing the course the student should:

• develop a sense of creativity;

• master the standard techniques of solving basic types of simple

differential equations of the first and higher order and system of linear

differential equations;

• understand the concepts of the Laplace transform, Fourier series,

Fourier transform, Fourier integral and a good knowledge of their basic

components and important applications;

• grasp the basic techniques of differential and integral calculus of

real and vector functions of several real variables and enable them for their

application in physics and other natural sciences;

• acquire the necessary knowledge about optimization problems

applying standard and conditional extrema of functions of multiple

variables;

• understand basic terms of theory of scalar and vector fields as well

as knowing their basic properties;

• understand the role which differential equations and the theory of

functions of several variables have in mathematical modelling of concrete

physical and other problems.

Module content

1. Ordinary differential equations of the first order : Basic concepts and ideas. Geometrical consideration. Isoclines. Separation

of variables. Linear differential equations of the first order. Variation of

constants.

2. Ordinary differential equations of the higher order: Homogeneous linear differential equations of second order with constant

coefficients. General solution. Cauchy's equation. Homogeneous

differential equations of higher order with constant coefficients.

Nonhomogeneous linear differential equations. General method for solving

nonhomogeneous equations. Systems of differential equations.

3. Laplace transform: Direct and inverse Laplace transform. Basic properties. Laplace transform

Page 21: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 21 of 82

of derivatives and integrals. Transformation of ordinary differential

equations. Unit step function. Periodic functions.

4. Fourier series, integrals and transforms: Periodic functions. Trigonometric series. Fourier series. Euler's formulas.

Functions with arbitrary period. Even and odd functions. Fourier integrals.

Fourier transform

5. Basis of differential calculus of functions of several real variables: Functions of several real variables. Continuity. Limits. Polar coordinates in

the plane. Calculating limits using a coordinate transformation. Directional

derivative. Higher order partial derivatives. Gradient. Derivative of a

composite function.

6. Taylor’s formula – Optimization I : Local extrema. Necessary condition for existing local extremes (Fermat's

theorem). Second order derivative of scalar function of two variables.

Quadratic forms, classification. Necessary condition for the local extrema

to have an inner point. Sufficient condition for local extrema.

7. Optimization II (Relative extrema-relative maximum or minimum):

Presentation of curve and surface in implicit form. Tangent space and

normal space on the curve given by the equation f (x, y) = 0. Equation of a

tangent, equation of a tangent plane and equation(s) of the normal line.

Points in which there is related extrema. Critical points. Gradient in a

critical point. Necessary condition for the local extrema of function defined

on the curve or surface (interpretation of the Lagrange multipliers and

applications to optimization problems).

8. Vector field theory: Scalar and vector fields. Vector calculus. Curves. Arc length. Tangent.

Curvature and involution. Speed and acceleration. Directional derivative.

Gradient of a scalar field. Divergence and rotor of vector fields.

9. Integral calculus of functions of several real variables: Line integrals of the first and second kind. Double integrals and double

integrals as iterated integrals. Transformation of double integrals into line

integrals. Surfaces. Tangent plane. Surface integrals of the first and second

kind. Triple integrals, triple integrals as iterated integrals and multiple

integrals. Gauss’ divergence theorem. Stokes’ theorem. Consequences and

applications of Gauss' and Stokes'theorems. Line integrals & independence

of path.

Literature

Recommended

1. H. Fatkić: Inženjerska matematika 2, Slajdovi i bilješke, Sarajevo,

2013, http://www.etf.unsa.ba/.

2. H. Fatkić, V. Dragičević, Diferencijalni račun funkcija dviju i više

promjenjivih, I.P. Svjetlost, Sarajevo, 2006. (University book)

3. D. Mihailović, D. Đ. Tošić, Elementi matematičke analize II,

(Funkcije više promjenljivih, vektorska analiza, višestruki integrali i teorija

polja), Naučna knjiga, Beograd, 1976; 1988; 1991. (Textbook)

4. P. M. Miličić, M. P. Ušćumlić: Zbirka zadataka iz više matematike

II, Građevinska knjiga, Beograd, 1971; ..., 1988.

5. M. Pašić, Matematika 2 sa zbirkom riješenih primjera i zadataka,

Merkur A.B.D., Zagreb, 2006.

Additional

1. T. M. Apostol, Calculus, Vol. II, Second Edition, (1967), and the

additional course notes by James Raymond Munkres, Professor of

Mathematics, Emeritus (at MIT).

2. A. Dautović, Laplaceova transformacija - Zbirka riješenih

zadataka, ETF, Sarajevo, 2010.

3. B. P. Demidovič i dr., Zadaci i riješeni primjeri iz više

matematike s primjenom na tehničke nauke (prijevod), Tehnička knjiga,

Zagreb, 1971; Danjar, Zagreb, 1995.

4. V. Dragičević, H. Fatkić, Određeni i višestruki integrali, IGKRO

Svjetlost, Zavod za udžbenike, Sarajevo, 1979. (I. izd.); 1987. ( II izd.).

(Textbook))

5. M. Galić, E. Osmanagić, Matematika III, Normirani i metrički

prostori, diferencijalne jednačine i redovi, Elektrotehnički fakultet,

Page 22: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 22 of 82

Sarajevo, 1977.

6. S. Kurepa, Matematička analiza. Treći dio. Funkcije više varijabli,

Tehnička knjiga, Zagreb, 1975.

7. M. Nurkanović, Z. Nurkanović, Laplaceova transformacija i

primjena, PrintCom d.o.o. grafički inženjering, Tuzla, 2010.

8. F. Vajzović, M. Malenica, Diferencijalni i integralni račun

funkcija više promjenljivih, Univerzitetska knjiga, Studentska štamparija

Univerziteta u Sarajevu, Sarajevo, 2002. (University book)

9. M. Vuković, Diferencijalne jednačine, Prvi dio, Univerzitetska

knjiga, Studentska štamparija Univerziteta u Sarajevu, Sarajevo, 2000.

(University book)

Didactic methods

The course is carried out through theoretical lectures that serve to present

the concepts of differential and integral calculus for real functions of

a real variable. These lectures are supported by solving of mathematical

problems by lecturers with the goal of having the students master the

instruments and methods introduced in lectures.

Under guidance and monitoring by academic tutors, other mathematical

problems, including the ones from pervious exam terms, are solved as well.

These activities are organised in a way that the level of students’

preparedness to master the knowledge and skills they need to acquire

during the course is continuously checked through the curriculum which

includes homework and partial exams.

Assessment

Student collects points during the course based on the following system*):

• attendance at lectures and tutorials carries 10 points; student who

misses three or more lectures and/or tutorials cannot collect points on this

basis;

• homework carries maximum 10 points; students need to prepare 3

to 5 homework assignments that are equally distributed during semester;

• Partial exams: two partial exams, out of which each carries

maximum 20 points.

Partial exams (90 minutes long) carry tests comprised of multiple choice

answers, out of which only one is the correct one (student who answers

correctly to all the multiple choice tests achieves maximum 10 points), as

well as one open answer test (correct answer to this test brings 10 points).

Students who passed both partial exams in a semester (achieved 10 or more

points at each test) takes the final oral exam; this exam is comprised of

discussion on assignments from partial exams, homework, and answers to

simple questions which refer to the topic of the course (definitions,

formulations, and presentation of simpler evidence of the most important

traits and/or theorems. Final oral exam is focused on integral matter of the

course stipulated by study programme. The goal of this exam is to check

whether students achieved adequate understanding of concepts and

practical matters presented during the course.

Final oral exam carries maximum 40 points. In order to achieve passing

grade, students have to achieve minimum 15 points at this exam. Students

who don’t achieve minimum number of points will take oral part of

makeup exam.

Students who fail both partial exams will take makeup exam.

Makeup exam is organised in the following way:

• written part, which is structured the same way as partial written

exam; within this exam students will take the tests from partial exam in

which they failed to achieve a passing grade (10 or more points);

• oral part, which is structured the same way as oral part of the final

exam.

Students who achieved total score of 10 or more points in each of the two

partial exams after taking the written part of makeup exam are eligible to

take the oral part of makeup exam; the score is comprised of points

collected through passing of partial exams and passing of written part of

Page 23: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 23 of 82

makeup exam.

Oral makeup test carries maximum 40 points. In order to get a passing

grade, students need to achieve minimum 15 points in this exam and at the

same time achieve minimum 55 points out of possible 100 (including the

points for attendance, homework, and two partial exams passed). Students

who do not achieve these minimums have to retake the course.

----------------

*) Attendance at all aspects of teaching is mandatory.

Prerequisites

Mathematics for Engineers 1 – ETF IM1 I-1175

Module title Programming Techniques

Module code ETF TP I-1270

Programme ETF-B ACE, PE, CI, TC

Module

coordinator Dr Željko Jurić, Associate Professor

Teaching staff

Dr Željko Jurić, Associate Professor

Kerim Hodžić, MoE, Teaching Assistant

Nina Slamnik, MoE, Teaching Assistant

Year of study 1

Semester 2

Module type Mandatory

ECTS 6

Lectures 44

Laboratory

exercises 26

Tutorials 0

Workload –

Independent Study 80

Module outcomes

The student that completes the course successfully will get the following

competences:

Knowledge about common programming techniques.

Understanding of different approaches to solving programming

problems (imperative, object based and object oriented approach).

Ability of analyzing of the stated problem and judgement abouv

what approach is the best one for its solving.

Ability of solving the analysed problem and its implementation in

some programming language derived from programming language C (C++,

Java, C#, etc.).

Module content

1. Basic imperative programming in C++: Basic elements of C++

language; Input and output stream; Standard C++ libraries; Types in C++;

Logical and enumerated data types; Vectors, deques and strings;

Exceptions; References; Default function parameters; Function

overloading; Generic functions and remplates; Concepts and models.

2. Advanced imperative programming in C++: Dynamic memory

allocation; Dynamic variables; Memory leaks; Dynamic arrays; Exceptions

during dynamic memory allocation; Complex pointer types (pointers to

arrays, arrays of pointers, pointers to pointers); Application of complex

pointer types to the dynamic allocation of multidimensional arrays; Indirect

data access; Pointers to functions; Standard library algorithms; Blocks and

Page 24: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 24 of 82

iterators; Usage of standard algorithms for sorting and searching; Structs;

Pointers to structs; Dynamic allocation of structs; Arrays and vectors of

pointers to structs; Generic structs; Structs with pointer data members;

Shallow copying; Nodes; Linked lists.

3. Object based programming in C++: Limitations of structs for data

modeling; Object based philosophy; Classes and class instances (objects);

Methods and member functions; Information hiding; Encapsulation; Class

interface; Friend functions and classes; Constructors; Destructors;

Interaction between destructors and shallow copies; Deep copying; Copy

constructor; Overloaded assignment operator; Techniques for memory

management; Generic classes; Operator overloading; Function objects

(functors); Standard library functors; Binders and adaptors.

4. Object oriented programming in C++: Inheritance; Base and

derived classes; Object slicing; Inheritance and pointers; Static and

dynamic types; Virtual member functions; Polymorhism; Heterogenic

container objects; Type identification; Class hierarchies; Pure member

functions; Abstract base classes; Polymorphic copying; Files; Serialization

of container classes

5. Example of object oriented design; Arithmetical expression trees;

Why object oriented approach is necessary; Problem of memory

management; Handle classes; Expanding of the functionality

Literature

Recommended

1. Ž. Jurić: “Principi programiranja (kroz programski jezik C++)”,

ETF Sarajevo, in preparation, working version available

2. J. Šribar, B. Motik: “Demistificirani C++ (2nd

edition)”, Element,

Zagreb, 2003.

3. B. Eckel: “Misliti na jeziku C++, Prvi tom: Uvod u standardni

C++ (translation of 2nd

edition)”, Prentice Hall Inc, translated by Mikro

Knjiga, Beograd, 2003.

Additional

1. L. Kraus: “Programski jezik C++ (sa rešenim zadacima)”,

Elektrotehnički fakultet Univerziteta u Beogradu, 1997.

2. S. Oualline: “Kako ne treba programirati na jeziku C++

(translation)”, translated by Mikro Knjiga, Beograd, 2003.

3. B. Stroustrup: “The C++ Programming Language (2nd Edition)”,

Addison-Wesley, Reading, MA, 1991.

4. M. Harmann, R. Jones: “First Course in C++: A Gentle

Introduction”, Univ. of North London, McGraw-Hill Companies, 1997.

Didactic methods

The lectures covers various programing techniques and approaches to the

solving programming problems through the programming language C++.

Students are also prepared for studying the literature independently. The

lectures include simpler examples that illustrate covered theoretical

concepts. On the lab excerises, various simpler to moderately hard

problems are analysed and solved that are related to the topics covered on

the lectures, also in the programming language C++. Harder problems

and case studies are covered through homeworks.

Assessment

The valuation of the student success is as follows:

Active participation in lectures and laboratory exercises (presence,

discussion, testing of factual knowledge), 10 points. On the beginning of

each lab exercise, the student get a short 5-minute quiz that checks whether

the student is prepared for the exercise or not. The student which did not

pass the quiz can not access the exercise. The student that have 4 or more

absences will not get these points.

I partial written exam, 20 points, 4-7 easy to moderately difficult

programmings tasks, exam duration 2 hours

II partial written exam, 20 points, 1-3 moderately difficult

programming tasks, exam duration 2 hours

Homeworks, 20 points, 25-35 moderately difficult to hard

Page 25: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 25 of 82

programming tasks, divided in 6-9 blocks (in average every 10 days), the

time limit for solving one block is 8 days

Final oral examination, checking of factual knowledge and

understanding of the theoretical concepts, exam duration 20 min.

Only students that pass both partial exams may approach to the final

examination. For the overall pass, the student must pass the oral exam and

must achieve at least 55 points in summary.

Prerequisites

Fundamentals of Computing – ETF OR I-1170

Module title Mathematical Logic and Computability Theory

Module code ETF ML I–1270

Programme ETF-B CI

Module

coordinator Dr Dinko Osmanković, Assistant Professor

Teaching staff Dr Dinko Osmanković, Assistanr Professor

Zlatan Tucaković, MoE, Teaching Assistant

Year of study 1

Semester 2

Module type Mandatory (for Computing and Informatics)

ECTS 7

Lectures 42

Laboratory

exercises –

Tutorials 28

Workload –

Independent Study 105

Module outcomes

The student that completes the course successfully will get the following

competences:

• Ability of identification of problems from computer science with

background in mathematical logic, set theory and computability theory.

• Ability of analysing and solving problems from the branches

mentioned above, after their successful identification.

• Ability of evaluation of the quality of obtained solution of the

problems mentioned above, and their generalization.

Module content

1. Introduction and motivation: Mathematical logic as a branch of the

discrete mathematics; Continuous (analog), digital and discrete quantities;

Connection between continuous and discrete quantities; Importance of

mathematical logic for studying discrete quantities.

2. Elements of the propositional logic and propositional algebra:

Propositions; Laws of the propositional logic; Transformations of

propositional expressions; Tautologies and mathematical way of deriving

conclusions; Abstract formal logic; Standard forms of logical expressions;

Quine’s method for deriving minimal Sum of Products and Product of Sums;

Sheffer’s and Pierce’s operations; Bases of the logical algebra.

3. Elements of the set theory: Basic concepts of the set theory;

Operations with sets; Laws of the algebra of sets; Ordered n-tuples and

Cartesian product of sets; Binary and n-ary relations; Relational database

models; Functions; Equivalence and ordering relations; Natural numbers as

sets; Cardinal numbers; Contraverses of naive set theory and axiomatic set

theory.

4. Boolean algebra and related topics: Concept and important

examples of Boolean algebra; Switching functions; Arithmetization of

switching functions; Zhegalkin algebra; Ternary logics; Fuzzy logic; Fuzzy

sets and relations; Principles of approximate reasoning.

5. Elements of the predicate logic: Concept of predicate;

Page 26: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 26 of 82

Quantificators; Free and bound variables; First order predicate logic;

Interpretations of the first order predicate logic; Valid expressions and logical

consequences; Reducing of predicate expressions to the prenex normal form;

Positive test for validity of predicate expressions; Second order predicate

logic.

6. Elements of the computability theory: Concept of the algorithm;

Algorithmically unsolvable problems; Turing machine as a model of

universal computing machine; Universal register machines; Kleene’s concept

of recursive functions; Post’s rewritting systems; Normal algorithms of

Markov; Church’s λ-calculus.

Literature

Recommended

1. Ž. Jurić: “Diskretna matematika za studente tehničkih nauka”, ETF

Sarajevo, 2011.

2. D. M. Cvetković, S. K. Simić: “Diskretna matematika – Matematika

za kompjuterske nauke”, Prosveta, Niš, 1996.

3. K. H. Rosen: “Discrete Mathematics and Its Applications”, McGraw

Hill Companies, 1998.

Additional

1. R. Johnsonbaugh: “Discrete Mathematics”, Pearson Prentice Hall,

2005.

2. J. Gruska: “Foundations of Computing”, International Thomson

Computer Press, 1997.

3. M. J. Atallah et al.: “Algorithms and Theory of Computation

Handbook”, CRC Press LLC, 1999.

4. M. Sipser: “Introduction to the Theory of Computation”, 2nd

edition,

Thompson Learning Inc., Boston, 2006.

Didactic methods

The lectures covers theoretical concepts from the mathematical logic and the

computability theory. They are illustrated through simpler examples. Also,

students are prepared for studying the literature independently. On the

tutorials, various simpler and moderate complex problems related to lectures

are analysed and solved. Harder problems and case studies are covered

through homeworks.

Assessment

The valuation of the student success is as follows:

• Active participation in lectures and tutorials (presence, discussion),

10 points. The student that have 4 or more absences will not get these points.

• I partial written exam, 20 points, 6-8 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

• II partial written exam, 20 points, 5-7 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

• Homeworks, 10 points, 20-40 moderately difficult to hard problem

solving tasks, divided in 5 blocks (in average every 2 weeks), the time limit

for solving one block is 7 days

• Final oral examination, checking of factual knowledge and

understanding of the theoretical concepts, exam duration 20 min.

Only students that pass both partial exams may approach to the final

examination. For the overall pass, the student must pass the oral exam and

must achieve at least 55 points in summary.

Prerequisites

Mathematics for Engineers 1 – ETF IM1 I-1175

Linear Algebra and Geometry – ETF LAG I-1160

Module title Probability and Statistics

Module code ETF RIO VS I-1260

Programme ETF-B CI

Module

coordinator Dr Amela Muratović Ribić, Associate Professor

Teaching staff

Dr Amela Muratović Ribić, Associate Professor

Vedran Karahodžić, MoE, Teaching Assistant

Meliha Dulić, MoE, Teaching Assistant

Page 27: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 27 of 82

Year of study 1

Semester 2

Module type Mandatory (for Computing and Informatics)

ECTS 5

Lectures 38

Laboratory

exercises 0

Tutorials 22

Workload –

Independent Study 65

Module outcomes

After successful completion of the course, student will be able to:

Explain concepts at high levels and implement basic operations in

probability and statistics.

Use the methods of hypothesis testing and parametric estimation for

some statistical problems.

Develop mathematical models using probability and statistics.

Apply statistical and computational methods to a range of problems

in science and engineering involving probability and statistics.

Module content

1. Introduction to statistics and data analysis. The sample mean,

median, variance, standard deviation. Discrete and continuous data,

Graphical diagnostics.

2. Combinatorics: combinations, permutations, definition of the

probability. Additive rules.

3. Conditional probability, independence and Bayes' rule.

4. Random variables. Distributions.

5. Mathematical expectation, mean, median, variance and covariance

of random variables.

6. Means and variances of linear combinations of random variables.

Chebyshev's theorem.

7. Some discrete probability distributions: binomial, multynomial,

hypergeometric , Poisson

8. Some continuous probability distributions: normal, Gamma,

exponential, Chi-square.

9. Fundamental sampling distributions and data description. Central

limit theorem.

10. One and Two-Sample estimation problems: mean, prediction

intervals, proportion, variance

11. Statistical hypothesis. Testing statistical hypothesis.

12. Simple linear regression and correlation.

Literature

Recommended

1. Slides available on the web page

2. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, Keying

Ye, Probability&Statistics, Pearson

Additional

Didactic methods

During the lectures, main theoretical concepts of probability and statistics are

explained with a lot of examples and applications. Interactive teaching

process implies that students solve simple problems and understanding.

Group project includes sampling, analysis the data and making statistical

hypothesis. Homework contains additional problems and examples.

Therefore, project and homework make students eligible to implement

learned tools of probability and statistics. Data analysis on project and

homework should be done by use of computers.

Assessment

The final score is obtained as follows

• 10 points for attendance and activities during lecture and recitations

10 points for homeworks and group project.

Page 28: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 28 of 82

20 points first partial written exam, problem solving, 10 points is considered

pass

20 points second partial written exam, problem solving, 10 points is

considered pass

• 40 points for final oral exam (where 15 points is considered passed

the exam), checking the facts.

Only the students who have achieved the above criteria by at least 40 points

can participate. Students who did not pass required parts of the course have

two chances for remedial exam.

Final score: Below 20 points retake course, score 21-54 grade 5, score 55-64

grade 6, score 65-74 grade 7, score 75-84 grade 8, score 85-94 grade 9, score

95-100 grade 10.

Prerequisites

Mathematics for Engineers 1 – ETF IM1 I-1175

Module title Operating Systems

Module code ETF RIO OS 1260

Programme ETF-B

Module

coordinator Dr Samir Ribić, Associate Professor

Teaching staff

Dr Samir Ribić, Associate Professor

Kerim Hodžić, MoE, Teaching Assistan

Lamija Ćemalović, Teaching Assistant

Year of study 1

Semester 2

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 65

Module outcomes

After successful completion of the course, student will be able to:

Identify the major components of an operating system and explain

their functions individually.

Discuss the operating system features required for a particular target

application.

Understand the various levels of system and application software.

Get familiar with the major Operating System services such as file

systems, memory management, process management, device control and user

interface.

Understand how design decisions in Operating Systems affect users

of the system.

Use and modify operating systems.

Module content

1. Introduction: Role, functions and structure of operation system,

historical development of operation systems: batch, multiprogramming, time

sharing

2. Structure of computer system, interrupts and interrupt management,

input-output operations, dual mode of processor work,

3. Structure of operating system: layered structure of operation system,

monolithic and microkernel, functional organization of UNIX operation

system.

4. Resource management, I/O manager, methods for stoppage

management, banker's algorithm.

5. Process management: Concept and condition of processes context

switching, operation over processes, process representation, threads and

Page 29: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 29 of 82

thread management, process management in UNIX/Windows, inter-process

communication using message transfer: direct, indirect, buffering, usage of

pipes and signals.

6. Shared memory usage: process synchronization problem, critical

section and mutual exclusion, semaphores and hardware techniques for

synchronization: test and set.

7. Processor scheduling: General concepts and criteria of distribution,

dispatcher scheduling algorithms: FCFS, SJF, priority, Round Robin, MFQ,

scheduling examples from UNIX and WINDOWS operation systems.

8. Memory management: Loaders, general concepts address translation

from logical to physical, memory allocation, continual: with one or more

partitions, static and dynamical and non-continuous: paging and segmenting,

virtual memory, memory management in UNIX.

9. File management: Structures of file system, free space management,

file and directory implementation, file systems in Unix and Windows

operation systems: logical organization of files, file/directory access

management, file protection,

10. User interface, textual, graphical and network

11. DOS, Windows and Linux system architecture, using customizing i

and participating in development of Linux systems

Literature

Recommended

1. Slides and lecture notes available at web page and in printed form

2. Silberschatz A., "Operating System Principles", 7th Edition, Addison

Wesley, 2006.

Additional

1. Ribić S, “Linux distribucija BHLD”, priručnik, Elektrotehnički

fakultet u Sarajevu, 2011

2. Đorđević B., Pleskonjić D, Maček N, “Operativni sistemi, teorija,

praksa i rešeni zadaci”, Mikro knjiga, Beograd 2005

3. Tanenbaum A., "Modern Operating Systems", 3rd Edition Prentice Hall,

2008.

4. Stallings W., "Operating Systems: Internals and Design Principles,”, 6th

Edition, Prentice Hall, 2009.

Didactic methods

Lectures, self-usage of literature, numerical problem solving, practical usage

of operating systems.

The lectures include basic operating systems principles. The students are

informed about different kernel subsystems and their relationships. In

addition to basic principles of the operating systems, the lectures include

quantitative principles that illustrate introduced concepts and algorithms. The

labs include workings with operating systems from user and system

perspective. The homework might include additional examples and problems

closely related with lectures or contributions in open source OS development.

Therefore labs and home works contribute to students competencies of

operating systems understandings and competences for usage and

customizing of operating systems.

Assessment

The final score is obtained as follows:

10 points for attendance and activities during lecture and laboratory

exercises

10 points for homeworks. The students choose beween problem-

solving assignements or group project in development of local operational

systems

20 points first partial written exam, problem solving, 10 points is

considered pass

20 points second partial written exam, problem solving, 10 points is

considered pass

40 points and a final oral exam (where 15 points is considered

passed the exam), checking the facts. Only the students who have achieved

the above criteria by at least 40 points can participate. Students who did not

pass required parts of the course have two chances for remedial exam.

Final score: Below 20 points retake course, score 21-54 grade 5, score 55-64

Page 30: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 30 of 82

grade 6, score 65-74 grade 7, score 75-84 grade 8, score 85-94 grade 9, score

95-100 grade 10.

Prerequisites

Fundamentals of Computing – ETF OR I-1170

Module title Algorithms and Data Structures

Module code ETF RIO ASP I-2360

Programme ETF-B

Module

coordinator

Dr Haris Šupić, Professor

Teaching staff

Dr Haris Šupić, Professor

Emir Cogo, MoE, Teaching Assistant

Orhan Ljubunčić, MoE, Teaching Assistant

Year of study 2

Semester 3

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 65

Module outcomes

A student who successfully completes the course will have the ability to:

understand time and space algorithm complexity terminology and

notations;

analyse some fundamental algorithms and estimate their time and

space complexities;

understand a common techniques and principles for designing

algorithms;

understand some fundamental algorithms and data structures used in

computing and solve computational problems using them;

design and implement in C++ programming language appropriate

algorithms and data structures for solving computing problems;

determine which algorithm and data structure to use in different

situations.

Module content

1. Introduction to algorithms: algorithm analysis, complexity and

evaluation of algorithm complexity, complexity notations.

2. Definition, memory representation and classification of data

structures.

3. Arrays: one-dimensional arrays and multidimensional arrays.

4. Lists: single-linked, double-linked, rings and special cases like

stacks and queues.

5. Trees: binary trees, balanced trees, search trees.

6. Heap, hashing, hash tables, graphs.

7. Classic sequential sorting algorithms (bubble sort, selection sort,

insertion sort, shell sort, quick sort, radix sort, heap sort, external sorting) and

searching algorithms (sequential search, binary search, binary tree search,

hashing, external searching).

8. Techniques (paradigms) in algorithm design: divide and conquer

dynamic programming algorithms, greedy algorithms, backtracking

algorithms, branch and bound algorithms, randomized algorithms.

9. Graph algorithms, shortest path algorithms, minimum spanning tree

algorithms, network flow algorithms.

10. Practical work: implementation of specific data structures and

algorithms in C++ programming language.

Literature

Page 31: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 31 of 82

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. T. Cormen, C.Leiserson, R. Rivest, C. Stein Introduction to

Algorithms", MIT Press Cambridge, MA, USA, 2009

3. R. Sedgewick, Algorithms in C++, Addison-Wesley Professional,

1998

4. H. Šupić, Algoritmi i strukture podataka, ETF Sarajevo, 2010 (in

Bosnian)

Additional 1. A. Drozdek, Data Structures and Algorithms in C++, Course

Technology; 3 edition , 2004

Didactic methods

Lectures introduce fundamental algorithms and data structures. Students are

introduced with algorithm analysis, time and space complexity notation, and

some fundamental algorithms and data structures. Besides presentation of

fundamental algorithms and data structures, lectures also consist of

presentation of illustrative examples. Laboratory exercises and home

assignments include additional examples and problems closely coordinated

with the lectures. In this way, the laboratory exercises and home assignments

contributes to the development of the student ability to analyse algorithm

space and time complexities, and to design and implement algorithms and

data structures in C++ programming language.

Assessment

The grading of the course is as follows:

• Attending classes and laboratory exercises (maximum 10 points).

Student with more than three absences from lectures and/or laboratory

exercises cannot get these points.

• 5-10 home assignments equally distributed throughout the semester

(maximum 10 points)

• Two partial exams:

◦ First partial exam (maximum 20 points)

◦ Second partial exam (maximum 20 points)

• The partial exams cover all material presented in the lectures,

laboratory exercises and home assignments. During the partial exams

students are tested for their understanding of fundamental algorithms and

data structures. Students are also tested for the ability to design and

implement algorithms and data structures in C++ programming language.

• Final exam (maximum 40 points)

In order to get access to the final exam student must earn minimum of 40

points and pass both partial exams (minimum 10 points). The final exam

covers material from the entire semester, including lectures and assignments.

Passing the final exam is necessary for passing the course. In order to get

positive final grade, students must earn minimum of 55 points including

attending, home assignments, two partial exams and final exam. Students

who have not passed one ore both partial exams must repeat the failed partial

exams (less than 10 points).

Prerequisites

Programming Techniques – ETF TP I-1270

Module title Logic Design

Module code ETF RIO LD I-2360

Programme ETF-B

Module

coordinator Dr Novica Nosović, Professor

Teaching staff Dr Novica Nosović, Professor

Hana Haseljić, MoE, Teaching Assistant

Year of study 2

Semester 3

Page 32: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 32 of 82

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 10

Tutorials 12

Workload –

Independent Study 65

Module outcomes

After successful finish of the course student should be able to:

understand the principles of Boolean algebra

analyze and design combinational and sequential structures of

medium complexity

understand the principles of building complex logic – sequential and

memory structures out of basic building blocks

understand the functionality of programmable sequencer (processor)

as a complex sequential structure – the core of digital computer

Module content

1. Numbering systems: binary, hexadecimal and other codes,

representation of negative and real numbers; arithmetics.

2. Boolean algebra: basic logic gates and logic operators, theorems,

methods for logic functions minimization, Karnaugh maps.

3. Basic components of combinational and sequential structures,

procedure for design of complex combinational and sequential structures.

4. Logic design of memory structures and basic principles of cache

memory.

5. Computer buses fundamentals, types, control methods, synchronous

and asynchronous data transfer and bus arbitration.

6. Basic input-output computer devices, their connection and control

methods (programs and interrupt system).

7. Realization of a programmable sequencer – simple processor with

microprogrammed control structure.

Literature

Recommended

1. Notes and lecture slides (see the faculty web page)

2. Nosović, N,:"OSNOVE DIGITALNIH RAČUNARA" University

textbook, Mag-Plus, Sarajevo 2003,

3. Željko Jurić, Novica Nosović, “Logičke osnove digitalnih i

računarskih sistema”, Textbook, Štamparija “Fojnica”, 2012.

Additional

1. Andrew S. Tanenbaum, "Structured Computer Organization",

Prentice Hall, New Jersy, 1976/84/90/99

2. Thomas L. Floyd, “Digital Fundamentals”, Prentice-Hall, 1997.

3. Vincent P. Heuring, Harry F. Jordan, “Computer Systems Design

and Architecture”, Pearson Education, Inc., 2004.

Didactic methods

The lectures cover the basic concepts of logic structures design. Students are

introduces to different number systems and their inter-conversions. Lessons

include design cases that illustrate introduced concepts. Tutorials, laboratory

exercises and homeworks include additional examples and problems closely

related to lecture materials, boosting student competences to understand the

basic concepts of logic design.

Assessment

Assessment of students achievements at the course are:

Presence at lectures and exercises (max. 10 points). Student that fail

to attend lectures and/or labs for more then three times, does not get this

points.

5 homeworks equally spread throughout the semester (max. 10

points)

Two midterm exams:

Page 33: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 33 of 82

◦ The first midterm exam ( max. 20 points)

◦ The second midterm exam ( max. 20 points)

Midterm exams reflect entire course materials covered on

lectures, tutorials and lab exercises. Midterm exams assess the

understanding of the basic principles of logic design, as well as

the abilities to design combinational and sequential structures

of medium complexity.

Final exam (max. 40 points).

Students that pass both midterms (min. 10 points each) can take the final

exam. Final exam cover all the course materials, including lectures, tutorials

and laboratory exercises. To pass the course, it is compulsory to pass the final

exam. To get passing final mark, student must collect minimally 55 points,

including: presence, homeworks, two midterm exams and final exam.

Student that fail one midterm exam, takes remedially exam. Student that fail

both midterms repeats the whole exam including the entire course materials.

Prerequisites

Module title Software Development

Module code ETF RIO RPR I-2360

Programme ETF-B

Module

coordinator Dr Dženana Đonko, Professor

Teaching staff

Dr Dženana Đonko, Professor

Kerim Hodžić, MoE, TeachingAssistant

Haris Hasić, MoE, TeachingAssistant

Year of study 2

Semester 3

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 65

Module outcomes

At the end of this course students have the following knowledge, skills and

competencies:

Ability to identify and define the requirements of simple systems

that require computational support

Ability to implement parts of computer based systems, including

programming of the necessary solutions

The ability to apply an iterative software development process

Understanding of basic and advanced object-oriented concepts

The ability of the individual organizing and implementation of the

parts of the project

The ability to design and implement graphical user interfaces and

event driven programming

Practical knowledge of .NET Framework and. NET languages

The ability to implement threads

Module content

1. Advanced concepts of object-oriented programming.

2. Principles and methods of organizing and decomposition of projects

Page 34: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 34 of 82

/ programs.

3. Software environments-introduction to software framework, .NET

framework and the C-based programming languages.

4. The basic principles of object-oriented design-design for simple

systems.

5. Graphical user interface (GUI) - basic GUI controls and

components.

6. Event driven programming.

7. Human-computer interaction, the principles of good design of

graphical user interfaces.

8. Design and implementation of graphical user components.

9. Exception handling: techniques of error handling, exception

handling mechanisms in the object-oriented languages.

10. Programming of persistent data manipulation.

11. Multithreading.

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. Ivor Horton ,Beginning Visual C++ 2010, Wrox, 2010

3. Jeff Johnson, Designing with the Mind in Mind: Simple Guide to

Understanding User Interface Design Rules, Morgan Kaufmann, 2010

Additional

Didactic methods

Theoretical concepts related to these topics are presented during the lectures.

The presented concepts are illustrated by examples and they are discussed

along with the students.

Throughout the semester students will be getting homework that is

thematically consistent with the lectures and tutorials related to the

implementation of software components of simple systems.

Concrete tasks related to the course and continuous monitoring of homework

will be worked on in the lab.

Assessment

During the course student earns points according to the following system:

attending classes and tutorials: 10 points, the student with more than

three absences from lectures and/or exercises cannot get these points;

homework: maximum of 25 points; assuming solving up to 5

assignments equally distributed throughout the semester;

partial exams: two partial exams, each partial exam earns a maximum of

20 points (pass mark is 10 points and more); exams are composed of a

theoretical part and a practical part that is done on the computer.

oral exam: maximum 25 points, consisting of questions related to

the course thematic units.

A student who does not pass the partial exams has to retake an exam.

Final grade is made on the basis of points collected for all activities during

the semester, based on the scale:

95-100 grade 10

85-94 grade 9

75-84 grade 8

65-74 grade 7

55-64 grade 6

Prerequisites

Programming Techniques - ETF TP I-1270

Module title Fundamentals of Database Systems

Module code ETF RIO OBP I-2460

Programme ETF-B CI, ACE

Module

coordinator Dr Emir Buza, Assistant Professor

Teaching staff Dr Emir Buza, Assistant Professor

Haris Hasić, MoE, TeachingAssistant

Page 35: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 35 of 82

Hana Haseljić, MoE, TeachingAssistant

Year of study 2

Semester 3

Module type Mandatory

ECTS 5

Lectures 40

Laboratory

exercises 20

Tutorials 0

Workload –

Independent Study 65

Module outcomes

The goal of this module is to provide fundamental knowledge of database

management systems. Students who successfully complete this course will

have the following competencies:

Understand the basic concepts of relational databases, including:

basic architecture relational databases, relational model, the entity

relationship diagrams, relational query language - SQL;

Develop the ability to analyze and apply the basic principles to

control transactions;

Develop the ability to design a database schema that includes tables,

views, triggers, store procedures, functions and packages;

Understand normalization form in order to overcome the functional

dependencies among data;

Module content

1. Introduction to databases: Historical overview of database

management systems (DBMS). Types of database management systems.

Architecture of database management systems. Basic elements of database

management systems.

2. Relation data model: Elements of relation data model. Types of

relation among tables. Entity relationship diagram.

3. Relational query language: Standards of the relational query

language. Structured Query Language - SQL. SQL commands for creation

objects in the database. SQL commands for: query, insert and delete data in

the database.

4. Advanced data search: General principles of joining tables.

Cartesian product. Inner join versus outer join. Joining two or more tables

under equality condition. Joining two or more tables on any condition except

under equality condition.

5. Data integrity: definition of data integrity. Basic ways of defining of

integrity conditions. Domain attributes and its implementation through data

integrity.

6. Stored procedures, functions and packages into the database. The

general difference among stored objects. Single row functions. Group

functions. User defined stored functions and procedures.

7. Data dependence: Functional dependence. Multiple dependences.

8. Normalization: anomalies of insertion, modifications and deletion.

Normal forms, normalization procedures

Literature

Recommended

1. Ramez Elmasri, Shamkant B. Navathe [2000], Fundamentals of

Database Systems, Addison-Wesley, 2000

2. C.J. Date, Database in Depth: The Relational Model for

Practitioners, O’Reilly, 2005

3. ANSI/ISO/IEC International Standard (IS), Database Language

SQL, 1999

Additional

1. H. Garcia-Molina, J. D. Ullman, J. D. Widom: Database Systems:

The Complete Book, Prentice-Hall, 2001.

2. Silberschatz, H. F. Korth, S. Sundarshan: Database System

Concepts, McGraw Hill, 2001.

Didactic methods

Page 36: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 36 of 82

The course is conducted through theoretical lectures in which concepts of

database management systems are presented. These lectures are supported by

creating tasks and presenting many examples in order for student to better

acquire knowledge from this course.

On laboratory exercises students solve practical assignments where it is

required from them to analyze the problem and compare it with theoretical

and practical examples from lectures. These activities are organized to enable

continuous Assessment through term paper and practical exercise of level of

preparedness of students required to comprehend knowledge and skills

required from them to reach in this course.

Assessment

During the course students earn points according to the following system:

Attending classes and tutorials: 10 points, student with more than

three absences from laboratory exercises cannot get these points.

Term paper: maximum of 10 points. Student is required to prepare

one term paper uniformly distributed throughout the semester.

Partial exams: two partial exams; each positively evaluated partial

exam with 20 points.

Students who gained less than 20 points during the semester must

repeat the course.

Students who earned 40 or more points during the semester will take a final

exam; the exam consists of discussion of problems from partial exams, home

assignments and answers to simple questions related to course topics. Final

oral exam provides maximum of 40 points. In order to get positive final

grade, students must earn minimum of 20 points in this exam. Student failing

to earn the minimum must take the repeat oral exam. Student, who earned 20

or more, and less than 40 points during the semester, will have to take the

repeat exam. The repeat exam is organized in the following manner:

Written part is structured similarly to partial written exam, during

which students solve problems in topics they failed on partial exams (less

than 10 points);

Oral part is structured the same as the oral part of the final exam.

Only students who managed to earn total score of 40 or more points in

written part of the repeat exam will be allowed to take the oral part of the

repeat exam, where the mentioned score consists of points earned through

attending lectures, solving home assignments, passing partial exams and

passing the written part of repeat exam. Oral repeat exam provides maximum

of 40 points. In order to achieve positive final grade students must earn

minimum of 20 points in this exam. Student failing to earn the minimum will

have to retake the module.

Prerequisites

Module title Discrete Mathematics

Module code ETF RIO DM I-2360

Programme ETF-B CI, ACE

Module coordinator Dr Željko Jurić, Associate Professor

Teaching staff Dr Željko Jurić, Associate Professor

Year of study 2

Semester 3

Module type Mandatory (CI), Elective (ACE)

ECTS 5

Lectures 39

Laboratory

exercises 0

Tutorials 21

Workload –

Independent Study 65

Module outcomes

Page 37: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 37 of 82

The student that completes the course successfully will get the following

competences:

Ability of identification of problems from computer science with

background in mathematical logic, set theory, number theory, combinatorics,

probability theory, graph theory, theory of discrete systems and

computability theory.

Ability of analyzing and solving problems from the branches

mentioned above, after their successful identification.

Ability of evaluation of the quality of obtained solution of the

problems mentioned above, and their generalization.

Module content

1. Introduction and motivation: What is discrete mathematics;

Continuous (analog) and discrete quantities; Connection between continuous

and discrete quantities.

2. Elements of the propositional logic and propositional algebra:

Propositions; Laws of the propositional logic; Transformations of

propositional expressions; Tautologies and mathematical way of deriving

conclusions; Standard forms of logical expressions; Quine’s method for

deriving minimal Sum of Products and Product of Sums; Sheffer’s and

Pierce’s operations; Bases of the logical algebra.

3. Elements of the set theory: Basic concepts of the set theory;

Operations with sets; Laws of the algebra of sets; Ordered n-tuples and

Cartesian product of sets; Relations; Functions; Equivalence and ordering

relations; Natural numbers as sets; Cardinal numbers; Contraverses of naive

set theory and axiomatic set theory.

4. Boolean algebra and related topics: Concept and important

examples of Boolean algebra; Switching functions; Arithmetization of

switching functions; Zhegalkin algebra; Ternary logics; Fuzzy logic.

5. Elements of the predicate logic: Concept of predicate;

Quantificators; Free and bound variables; First order predicate logic;

Interpretations of the first order predicate logic; Valid expressions and logical

consequences; Reducing of predicate expressions to the prenex normal form;

Positive test for validity of predicate expressions; Second order predicate

logic.

6. Introduction to the elementary number theory; Divisibility and

criteria for divisibility; Prime numbers; Greatest common divisor and least

common multiplier; Euclid algorithm; Diophantine equations; Euler totient

function and Fermat-Euler’s theorem; Congruences and modular arithmetics;

Linear and quadratic congruences; Some applications of the number theory

in cryptography.

7. Introduction to the combinatorics: Basic concepts; Permutations,

variations and combinations without and with repetitions; Sample selection

problem; Permutations of total disorder (dearrangements); Partitions and

compositions.

8. Introduction to the theory of discrete probability; Algebra of events;

Concept and calculation of probability; Conditional (relative) probability and

independent events; Total probability and Bayes’s theorem; Experimental

calculation of the probability and statistical interpretation of the meaning of

the probability.

9. Elements of the graph theory: Basic concepts and notations; Paths

and connectivity of graphs; Methods for the representations of graphs; Graph

isomorphism; Operations with graphs; Planar graphs; Eulerian and

Hamiltonian paths; Graph coloring; Trees, spanning trees and searching in

graphs; Minimal spanning trees; Shortest path problem; Transport networks

and maximal flow problem; Matching; Rooted trees and binary trees

10. Introduction to the theory of discrete systems: Discrete signals and

systems; Linear time-invariant systems; Discrete convolution; Transfer

function; Z-transform; Inverse z-transform; Applications of z-transform.

11. Elements of the computability theory: Concept of the algorithm;

Algorithmically unsolvable problems; Turing machine as a model of

universal computing machine; Universal register machines; Kleene’s concept

of recursive functions; Post’s rewritting systems; Normal algorithms of

Page 38: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 38 of 82

Markov; Church’s λ-calculus.

Literature

Recommended

1. Ž. Jurić: “Diskretna matematika za studente tehničkih nauka”, ETF

Sarajevo, 2011.

2. D. M. Cvetković, S. K. Simić: “Diskretna matematika –

Matematika za kompjuterske nauke”, Prosveta, Niš, 1996.

3. K. H. Rosen: “Discrete Mathematics and Its Applications”,

McGraw Hill Companies, 1998.

4. R. P. Grimaldi: “Discrete and Combinatorial Mathematics (An

Applied Introduction)”, Addison-Wesley Publishing Company, 1994.

Additional

1. D. Veljan: “Kombinatorika (s teorijom grafova)”, Školska knjiga,

Zagreb, 1989.

2. D. M. Cvetković, M. Milić: “Teorija grafova i njene primjene”,

Naučna knjiga, Beograd, 1990.

3. S. Muftić: “Matematske osnove kompjuterskih nauka”, Veselin

Masleša, Sarajevo, 1984.

4. R. Johnsonbaugh: “Discrete Mathematics”, Pearson Prentice Hall,

2005.

Didactic methods

The lectures covers theoretical concepts from the discrete mathematics.

They are illustrated through simpler examples. Also, students are prepared

for studying the literature independently. On the tutorials, various simpler

and moderate complex problems related to lectures are analysed and solved.

Harder problems and case studies are covered through homeworks.

Assessment

The valuation of the student success is as follows:

Active participation in lectures and tutorials (presence, discussion),

10 points. The student that have 4 or more absences will not get these points.

I partial written exam, 20 points, 9-11 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

II partial written exam, 20 points, 8-9 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

Homeworks, 10 points, 40-60 moderately difficult to hard problem

solving tasks, divided in 4-7 blocks (in average every 2 weeks), the time

limit for solving one block is 7 days

Final oral examination, checking of factual knowledge and

understanding of the theoretical concepts, exam duration 20 min.

Only students that pass both partial exams may approach to the final

examination. For the overall pass, the student must pass the oral exam and

must achieve at least 55 points in summary.

Prerequisites

Mathematics for Engineers 1 – ETF IM1 I-1175

Linear Algebra and Geometry – ETF LAG I-1160

Module title System Programming

Module code ETF RII SP I-2345

Programme ETF-B

Module

coordinator Dr Samir Ribić, Associate Professor

Teaching staff

Dr Samir Ribić, Associate Professor

Kerim Hodžić, MoE, TeachingAssistant

Lamija Ćemalović, Teaching Assistant

Year of study 2

Semester 3

Module type Elective

ECTS 5

Lectures 36

Laboratory

exercises 14

Page 39: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 39 of 82

Tutorials 0

Workload –

Independent Study 75

Module outcomes

After successful completion of the course, student will be able to:

Identify and explain the functions of the primary CPU components

of as registers, ALU, control unit, memory, input-output devices and also the

characteristics of instructions sets of typical microprocessors.

Demonstrate the ability to write simple assembly language programs

Explain the process of translating a program from high-level

language to low-level language codes

Understand the code generation and optimization process in

producing the low-level program codes.

Module content

1. Programmers view of the processor organization: Processor,

Arithmetic-logic unit. Control unit. N-address machines. Memory and

memory address. Registers. Program counter. Instructions.

2. Data addressing at system level: Access to data in registers.

Constants. Direct and indirect addressing. Index addressing. Data access

through stack. Linear memory and its alternatives (segments, pages).

3. Machine code and its generation. Assembler and binary presentation

of instructions. Data transfer instructions. Instructions for arithmetic and logic

operations. Instructions on non-conditioned jump. Conditioned jump. Stack.

Sub-programs. Coding and rotating. Assemblers.

4. Input and output: Memory and I/O mapped input output. Principle of

keyboard, disc, screen and communication devices functioning, at low and

OS API levels.

5. Interrupts / events and their service routines: Interrupt table.

Hardware interrupts. Software traps. Processor exemptions. Data storing

during the service routine processing. Most important routines.

6. Compilers: syntax, lexical and semantic analysis. LL and LR

parsing. Simple compiler. Presentation of syntax diagrams using syntax

procedures.

7. Code generating: memory, stack, global variables, dynamic and

static data, Compiler code generation. Realization of statements, operators,

procedures, local and global variables, program structures.

8. Builders, linkers: Principles of linker functioning, Make builder.

Principle of assembler function, single-pass and double-pass.

9. Runtime environment: loaders, executive file format, role of

registers, system functions, static and dynamic libraries. Virtual machines.

10. Program environment and tools for design and programming.

Command line compilers, interpreters, integrated environment, visual

environment.

11. Concurrency control techniques: parallel execution, threads,

semaphores, cross exclusion.

12. Valuation and optimization of performances. Profilers. Benchmarks.

Algorithm Assessment.

Literature

Recommended 1. Lecture notes available at web page and printed form

Additional

1. IA-32 Software developers manual, Intel corporation

2. Hyde R. The Art of Assembly language Programming

3. Crenshaw J., Let's build compiler

4. Patt and Pattel, Introduction to Computing Systems: From bits &

gates to C & beyond , McGraw Hill, 2003

Didactic methods

The lectures inform the students about low level languages programming

principles, assembly language, system calls and system programs like

compilers and software libraries. The lecture also include code examples that

illustrate given concepts. The labs and homework include additional program

and quantitative examples and problems closely tied with lectures. In that

way, the labs and homework contribute to competencies to learn about high

Page 40: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 40 of 82

level language transformation, into low level languages, system calls, IA-32

architecture, Win32 API and POSIX API.

Assessment

The final score is obtained as follows:

10 points for attendance and activities during lecture and laboratory

exercises

10 points for homeworks. The students choose beween problem-solving

assignements or group project in development of local operational systems

20 points first partial written exam, programming and problem solving, 10

points is considered pass

20 points second partial written exam, programming and problem solving, 10

points is considered pass

40 points and a final oral exam (where 15 points is considered

passed the exam), checking the facts.

Only the students who have achieved the above criteria by at least 40 points

can participate.Students who did not pass required parts of the course have

two chances for remedial exam.

Final score: Below 20 points retake course, score 21-54 grade 5, score 55-64

grade 6, score 65-74 grade 7, score 75-84 grade 8, score 85-94 grade 9, score

95-100 grade 10.

Prerequisites

Fundamentals of Computing – ETF OR I-1170

Module title Numerical Algorithms

Module code ETF RII DM I–3560

Programme ETF-B CI

Module

coordinator Dr Željko Jurić, Associate Professor

Teaching staff Dr Željko Jurić, Associate Professor

Year of study 2

Semester 3

Module type Elective

ECTS 5

Lectures 35

Laboratory

exercises 10

Tutorials 5

Workload –

Independent Study 75

Module outcomes

The student that completes the course successfully will get the following

competences:

• Conceptual understanding of problematics of working with numbers

with finite precision on the computer.

• Knowledge of theoretical basis of numerical mathematics that is

necessary for solving real problems.

• Knowledge of basic numerical algorithms and ability of solving real

problems using these algorithms.

• Ability of implementation of basic numerical algorithms on the

computer in some standard programming languages and solving the

numerical problems using the computer.

Module content

1. General notes about numerical algorithms: Significance of

numerical algorithms in computer science; Imposibility of exact

representation of continuous quantities in the computer; Rounding and

rounding errors.

2. Algorithms with integers: Classical algorithms; Algorithms for fast

multiplication; Algorithms for fast exponentiation and modular

exponentiation.

Page 41: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 41 of 82

3. Algorithms with quasi-real numbers: Polynomial and rational

approximations; Continuous fractions; Algorithms for evaluation of

polynomials and rational functions; Algorithms for evaluation of basic

elementary functions; Interpolation algorithms.

4. Algorithms of Linear Algebra: Matrix multiplication; Strassen’s

algorithm; Algorithms for matrix inversion and similar problems; Gaussian

elimination; LU factorization.

5. Algorithms of Calculus: Algorithms for finding limits; Richardson’s

princple of extrapolation towards the limit; Algorithms for numerical

derivation; Dual numbers and automatic diferentiation; Algorithms for

numerical integration; Trapezoid rule; Simpson’s rule; Romberg’s method;

Algorithms for solving differential equations; Applications in Physics and

Technics.

6. Algorithms of equations theory: Algorithms for approximate solving

of equations; Algorithms for approximate solving of systems of equations.

7. Fast Fourier transform and its applications: Fast convolution;

Algorithms for fast multiplication based on fast Fourier transform;

Approximate harmonic analysis.

8. Algorithms of Number Theory: Algorithms for primality testing;

Algorithms for factorization; Cryptographics algorithms.

Literature

Recommended

1. Ž. Jurić: “Numerički algoritmi”, working textbook, ETF Sarajevo,

available in electronic form

2. W. H. Press, S. A. Teukolsky, W. T. Vetterling, B. P. Flannery:

“Numerical Recipes – The Art of Scientific Computing”, 3rd

edition,

Cambridge University Press, 2007.

Additional

1. R. L. Burden, J. D. Faires: “Numerical Analysis”, Brooks/Cole Pub.,

7th

edition, 2001.

2. M. T. Heath: “Scientific Computing. An Introductory Survey”,

McGraw-Hill, 2nd

edition, 2001.

Didactic methods

The lectures covers theoretical concepts from numerical mathematics, which

are illustrated through simpler examples, with emphasize on the algorithmic

aspects. Also, students are prepared for studying the literature independently.

On the tutorials, various simpler and moderate complex problems related to

lectures are analysed and solved, with more detailed explanation of

presented algorithms. Harder problems and case studies are covered through

homeworks. On the lab exercises, students implement various algorithms

and solve problems which are presented on the lectures and the tutorials

using the computer.

Assessment

The valuation of the student success is as follows:

• Active participation in lectures and tutorials (presence, discussion),

10 points. The student that have 4 or more absences will not get these points.

• I partial written exam, 20 points, 3-4 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

• II partial written exam, 20 points, 3-4 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

• Homeworks, 20 points, 15-30 moderately difficult to hard problem

solving tasks, divided in 5 blocks (in average every 2 weeks), the time limit

for solving one block is 7 days.

• Final oral examination, 40 points, checking of factual knowledge

and understanding of the theoretical concepts, exam duration 20 min.

Only students that pass both partial exams may approach to the final

examination. For the overall pass, the student must pass the oral exam and

must achieve at least 55 points in summary.

Prerequisites

Mathematics for Engineers 1 – ETF IM1 I-1175

Linear Algebra and Geometry – ETF LAG I-1160

Programming Techniques – ETF TP I-1270

Page 42: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 42 of 82

Module title Computer Architecture

Module code ETF RIO RA I-2460

Programme ETF-B

Module coordinator Dr Novica Nosović

Teaching staff Dr Novica Nosović,

Alvin Huseinović, MoE, Teaching Assistant

Year of study 2

Semester 4

Module type Mandatory

ECTS 5

Lectures 40

Laboratory

exercises 20

Tutorials

Workload –

Independent Study 65

Module outcomes

After successful completion of the course student should be able to:

understand the principles of computer architecture of different kind

and for different use

analyze throughput, latency and parallelisms in modern computer

components

understand principles of instruction set architecture in modern

processor

understand operation of modern general purpose and special

purpose processors (microprocessors, microcontrollers, digital signal

processors, graphic processors).

Module content

1. Introduction to computer architecture – performances and

taxonomy, technological trends and economics of computer components.

2. Quantitative approach to computer design, Amdhal`s Law,

parallelisms, principles of locality.

3. Instruction set architecture, classification of instructions, addressing

modes, operand sizes, instruction encoding techniques.

4. Pipelines, hazards and ways of overcoming hazards, pipeline

control.

5. Instruction level parallelisms, basic compiler techniques for

exposing instruction level parallelism, branch prediction. Dynamic

instruction scheduling.

6. Memory hierarchy, cache-memory organizations, memory

technologies and optimizations, virtual memory.

7. Control over computer input-output devices, interconnections and

control methods (programmed and interrupt based).

8. The basics of parallel computer architecture design, multiprocessor

and multicomputer systems, shared and distributed memory.

Literature

Recommended

1. Lecture notes and slides (see the faculty web page)

2. Novica Nosović, Željko Jurić, “Osnove računarskih arhitektura",

Univerzitetski udžbenik, ETF-Sarajevo, 2012,

Additional

1. J.L. Hennessy, D.A. Patterson, “Computer Architecture – A

Quantitative Approach”, 5. Edition, Elsevier Inc. 2012.

2. D.A. Patterson, J.L. Hennessy, “Computer Organization and Design

– The Hardware/Software Interface”, Elsevier Inc. Last edition.

Didactic methods

The lectures cover basic concepts of contemporary computer architecture.

Students are introduced to computer components characteristics – their

throughput and latency. Lectures include examples of modern components

that illustrate the introduced concepts. Laboratory exercises and homeworks

include additional examples and problems that are closely related to lecture

Page 43: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 43 of 82

materials, supporting students competence development to understand the

fundamental problems of contemporary computer architecture.

Assessment

Assessment of students achievements at the course are:

• Presence at lectures and exercises (max. 10 points). Student that fail

to attend lectures and/or labs for more then three times, does not get this

points.

• 5 homeworks equally spread throughout the semester (max. 10

points)

• Two midterm exams:

◦ The first midterm exam ( max. 20 points)

◦ The second midterm exam ( max. 20 points)

• Midterm exams reflect entire course materials covered on lectures,

tutorials and lab exercises. Midterm exams assess the understanding of basic

principles of computer architecture, as well as abilities to understand

advantages and disadvantages of different architectures.

• Final exam (max. 40 points).

Students that pass both midterms (min. 10 points each) can take the final

exam. Final exam cover all the course materials, including lectures and

laboratory exercises. To pass the course, it is compulsory to pass the final

exam. To get passing final mark, student must collect minimally 55 points,

including: presence, homeworks, two midterm exams and final exam.

Student that fail one midterm exam, takes remedially exam. Student that fail

both midterms repeats the whole exam including the entire course materials.

Prerequisites

Module title Fundamentals of Computer Networks

Module code ETF RIO ORM I-3560

Programme ETF-B CI

Module coordinator Dr Kemal Hajdarević, Associate Professor

Teaching staff Dr Kemal Hajdarević, Associate Professor

Meliha Dulić, MoE, Teaching Assistant

Year of study 3

Semester 5

Module type Mandatory

ECTS 5

Lectures 40

Laboratory

exercises 14

Tutorials 6

Workload –

Independent Study 65

Module outcomes

After completion of the course, students will acquire competencies:

ability to choose and apply appropriate engineering principles and

mathematical and computational methods to problems in the field of

computer networks

ability to identify, analyze and disclosure issues in the area of

computer networks that are not encountered during previous training

ability to solve these problems by applying acquired knowledge in

engineering, general knowledge of mathematics, physics and electrical

engineering, and specialized knowledge of computer networks with the help

of relevant literature that are trained to find

ability to design and conduct tests and experiments in the field of

computer networks from which to draw conclusions and verify hypotheses

Page 44: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 44 of 82

ability to analyze, design and implementation of computer network

components (programs, applications, hardware and communication

equipment, etc.), using appropriate methods and techniques taking into

account the scientific, technical, social, environmental and economic

conditions and standards

knowledge of the use of computer networks in practice, the

standard of knowledge and understanding of the impact of computer

networks, their operation and maintenance have on the environment

understanding of the needs and achieve steady development

monitoring computer networks and learning new principles, techniques and

technologies in all the above mentioned areas

ability to work in different professional fields acquired through

general, specialist and methodological competencies

ability to communicate with colleagues and the public on issues and

problems related to all aspects of computer networks

the ability of individual and team work, organization and execution

of projects and the training requirements of the industry or academia when

they are engaged upon graduation

Module content

1. Introduction to computer communications and computer networks

2. Physical layer, communications data and transmission medium for

computer networks

3. Network Operations / Network Functioning

4. Detection and correction of errors

5. Computer communication protocols

6. networking Technology

7. Data link layer

8. Network / Internet layer and routing techniques

9. Transport layer TCP / IP protocol

10. application Layer

11. Network modeling - theory of queues

12. Designing computer networks

13. Management of computer networks

14. Internet and network interconnection

Literature

Recommended

1. Lecture Notes (to download from Faculty WEB site);

2. William Stallings, Data & Computer Communications,

3. Halsall, F., Data Communications, Computer networks and OSI.

Addison-Wesley, 1988.

4. Tanenbaum, A., Computer Networks. Prentice-Hall, 1988

Additional

1. Warland, J., Communication Networks, Akson Ass. Inc. Publishers,

1991.

2. L. L. Peterson and B.S. Davie, Computer Networks, Morgan Kaufmann

Publishers, 2003.

Didactic methods

Lectures take place in the lecture hall, using a projector, so that the student

can easily and clearly monitor the given lectures. Each teaching unit would

be presented to the students through the university's website to help students

in advance to prepare for attending classes. Certain topics to illustrate

through examples and simulation. Exercise would be organized in the

laboratory and would be designed so that the individual thematic units

handled in a manner that students easily master this theory from lectures.

Tutorial would consist of development projects, as well as certain tasks with

the help of a tutor.

Assessment

During the course students earn points according to the following system:

Attending classes, exercises and tutorials: 10 points, the student

with more than three absences from lectures, exercises and / or tutorials can

not get these points;

Homework: maximum 10 points, assuming solving 5 to 10

assignments evenly distributed throughout the semester;

Page 45: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 45 of 82

Partial exams: two partial exams, each positively evaluated partial

exam 20 points;

A student who has achieved during the semester, less than 20 points enter

that course again. A student who during the semester earned 40 or more

points will take a final exam, the exam consists of discussion of problems

with partial exams, homework and answer simple questions related to course

topics. For final oral exam student can score a maximum of 40 points. To

achieve a positive final grade, students in this examination must achieve a

minimum of 20 points. Students who do not achieve this minimum, takes the

makeup oral exam.

A student who during the semester earned 20 or more points, and less than

40 points, must have the makeup exam. The makeup exam is structured as

follows:

A written test that is structured in the same way as partial written

exam, during which students solve problems in topics that did not achieve a

passing grade (10 or more points) a partial written exams, oral-that is

structured in the same way as part of the final oral examination.

Oral makeup exams can be taken by students who after passing the

written part of the exam correctional managed things down total score of 40

or more points, the score consists of points achieved through: attending

classes, homework, and pass the written part of the makeup exam . For

makeup oral exam a maximum of 40 points can be earned. To achieve a

positive final grade student at this exam must achieve at least 20 points.

Students who do not achieve this minimum must repeat that course.

Prerequisites

Module title Object Oriented Analysis and Design

Module code ETF RIO OOAD I-2460

Programme ETF-B

Module

coordinator

Dr Dženana Đonko, Professor

Teaching staff

Dr Dženana Đonko, Associate Professor

Haris Hasić, MoE, TeachingAssistant

Kerim Hodžić, MoE, TeachingAssistant

Adnan Dželilhodžić, MoE, TeachingAssistant

Year of study 2

Semester 4

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 65

Module outcomes

At the end of this course students have the following knowledge, skills and

competencies:

The ability to analyze, identify and define the requirements of the

real environment systems that require computing support

The ability to design and implement a computer-based system,

including the necessary programming solutions

The ability of individual and team work, organizing and executing

projects

Good professional knowledge in the field of software engineering

related to the analysis, design and implementation

The ability to apply an iterative software development process

Page 46: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 46 of 82

Understanding the basic object-oriented concepts

Understanding the basic steps of object-oriented analysis and design.

Practical knowledge of UML diagrams and notations

The ability to apply object-oriented patterns

The ability to build an object-oriented model for the system

The ability to associate an object-oriented analysis and actual

programming

Module content

1. Basic concepts of object orientation.

2. Software development process and basic development

methodologies

3. Introduction to the fundamental concepts of UML, UML principles

and diagrams, UML and modeling of object-oriented systems.

4. The process of gathering user requirements collecting user

requirements, scenarios, use cases, UML use case diagram.

5. Analysis and design of logical views of the system diagrams to show

the structure and behaviour of systems, UML class, object, interaction, state

diagrams.

6. Modeling process view of a system, process view diagrams, UML activity

diagram.

7. Implementation view of the system, representation of implementation

view, UML deployment diagram.

8. Developmental view of the system, representation of development view,

UML package diagrams and components.

9. Metrics and principles of object-oriented design.

10. Design patterns.

11. Mapping UML models to an implementation level of object-oriented

languages (Java, C + +, C #).

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. Dženana Đonko, Samir Omanović, Object oriented analysis and

design applying UML notation, ETF Sarajevo, 2009

3. J. Rumbaugh, I. Jacobson, G Booch, The Unified Modeling Language

Reference Manual, Pearson Education, July 2004

Additional 1. E. Gamma, R. Helm, R. Johnson, John Vlissides, Design Patterns:

Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994

Didactic methods

Theoretical concepts related to the topics of the course are presented during

lectures. The presented concepts are illustrated by examples and they are

discussed with the students.

Throughout the semester students will implement a project- software

solution; that is based on the model that has been built up with the assigned

homework.

Concrete tasks related to the course and continuous monitoring of the project

will be worked on in the lab.

Assessment

During the course students earn points according to the following system:

attending classes and tutorials: 10 points, the student with more than

three absences from lectures and/or tutorials cannot get these points;

homework: maximum of 10 points; assuming solving up to 5

assignments equally distributed throughout the semester;

project: maximum 30 points; implementation of the system is based on

the model;

partial exams: two partial exams, each partial exam a maximum of 20

points (pass mark 10 points);

oral exam: maximum 10 points, consisting of a presentation of the project

(5 points) and simple questions related to thematic units of the course (5

points).

A student who does not pass the partial exams has to retake an exam.

Page 47: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 47 of 82

Final grade is made on the basis of points collected for all activities during

the semester, based on the scale:

95-100 grade 10

85-94 grade 9

75-84 grade 8

65-74 grade 7

55-64 grade 6

Prerequisites

Software Development - ETF RIO RPR I-2360

Module title Automata and Formal Languages

Module code ETF RIO AFJ I-3545

Programme ETF-B CI

Module

coordinator Dr Haris Šupić, Associate Professor

Teaching staff Dr Haris Šupić, Associate Professor

Orhan Ljubunčić, MoE, Teaching Assistant

Year of study 2

Semester 4

Module type Mandatory

ECTS 5

Lectures 30

Laboratory

exercises 0

Tutorials 15

Workload –

Independent Study 65

Module outcomes

A student who successfully completes the course will have the ability to:

understand the basic terminology in theory of computation;

understand the limits of different models of computation;

understand different types of finite automata, their formal

specification and properties;

understand regular expressions and their connections to finite state

machines;

design simple deterministic, and nondeterministic finite automata;

design simple Turing machines;

understand the hierarchy of formal languages;

understand the basic complexity classes.

Module content

1. Introduction to theory of computation.

2. Finite automata. Deterministic finite automata. Nondeterministic

finite automata. Formal grammars and languages.

3. Regular expressions. Regular languages and regular grammars.

Properties of regular languages.

4. Finite automata with output.

5. Pushdown automata. Deterministic and nondeterministic pushdown

automata. Context-free languages and context-free grammars. Parsing

techniques.

6. Turing machines. Universal Turing’s machine. Nondeterministic

Turing’s machines. Turing’s thesis.

7. Recursive and recursively enumerable languages. Linear bounded

automata.

8. Context-sensitive languages and context-sensitive grammars.

Chomsky’s language hierarchy.

9. Decidable and undecidable problems.

10. Introduction to computational complexity. Complexity classes: P

and NP.

Page 48: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 48 of 82

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. J. E. Hopcroft, R. Motwani, J. D. Ullman, Introduction to Automata

Theory, Languages, and Computation, Addison-Wesley; 2000;

3. M.Sipser, Introduction to the Theory of Computation, Course

Technology, 2005

Additional

1. P. Linz, An Introduction to Formal Languages and Automata, Jones

and Bartlett Publishers, 2000

2. M.John, Introduction to Languages and Theory of Computation,

McGraw-Hill, 1997

Didactic methods

Lectures introduce fundamental concepts of automata and formal languages.

In this way students are introduced with general models of computation.

Besides presentation of the theory of computation, lectures also consist of the

presentations of appropriate examples illustrating introduced concepts.

Tutorials and home assignments include additional examples and problems

closely coordinated with the lectures. In this way, the tutorials and home

assignments contributes to the development of the student ability to

understand general models of computation, and to build simple finite state

machines and formal languages.

Assessment

The grading of the course is as follows:

Attending classes and laboratory exercises (maximum 10 points).

Student with more than three absences from lectures and/or laboratory

exercises cannot get these points.

Home assignments equally distributed throughout the semester

(maximum 10 points)

Two partial exams:

◦ First partial exam (maximum 20 points)

◦ Second partial exam (maximum 20 points)

Final exam (maximum 40 points)

The partial exams cover all material presented in the lectures, tutorials and

home assignments. During the partial exams students are tested for their

understanding of different types of finite automata and the ability to construct

simple finite state machines satisfying specified requirements.

Students who passed both partial exams (minimum 10 points) can get access

to the final exam. The final exam covers material from the entire semester,

including: lectures, tutorials and home assignments. Passing the final exam is

necessary for passing the course. In order to get positive final grade, students

must earn minimum of 55 points including: attending, home assignments,

two partial exams and final exam. Students who have not passed one or both

partial exams must repeat the failed partial exams (less than 10 points).

Prerequisites

Fundamentals of Computing – ETF OR I-1170

Module title Mobile Application Development

Module code ETF RII RMA I-2450

Programme ETF-B RI

Module

coordinator Dr Vensada Okanović, Assistant Professor

Teaching staff Dr Vensada Okanović, Assistant Professor

Irfan Prazina, MoE, TeachingAssistant

Year of study 2

Semester 4

Module type Elective

ECTS 5

Lectures 28

Page 49: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 49 of 82

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 75

Module outcomes

Upon successful completion of this course, student will have the following

competencies:

• an understanding of basic concepts for mobile application

development, with emphasis on the differences between mobile and desktop

applications;

• an understanding of the specificities of human-computer interaction

for mobile devices;

• knowledge of common issues and problems in mobile application

development and approaches to their solution;

• basic experience and independence in development of applications

for Android platform.

Module content

1. Introduction: Hardware and software architecture of mobile devices.

Mobile hardware features. Mobile operating systems: overview, comparison.

Mobile vs. desktop vs. web apps: similarities and differences.

2. Principles of mobile application development: Languages and

paradigms. Tools. Multithreading: foreground vs. background, garbage

collection. Intents. Data storage.

3. Mobile user interface: Declarative UI. Tactile UI and gestures.

UI/UX design patterns in mobile app development, MVC. Trends: tangible

computing, wearable computing.

4. Communication: Characteristics of wireless networks, application

design for variable network performance. Client/server architecture, web

services for mobile apps. Common protocols and data formats. Cloud.

5. Mobile hardware integration: Location services. Camera, image

processing, sound processing. Tracking (barcode, RFID...) Sensors

(acellerometer, gyroscope...) 3D acceleration on mobile devices. Libraries

and APIs.

6. Issues in mobile application development: Energy conservation.

Mobile application security. App stores. Crossplatform mobile apps and

HTML5.

Literature

Recommended

1. Notes and slides from lectures (available on course web page).

2. Jeff McWherter, Scott Gowell, Professional Mobile Application

Development, John Wiley & Sons Inc, 2012.

3. Jakob Nielsen, Raluca Budiu, Mobile Usability, New Riders, 2012.

Additional

1. Steven Hoober, Eric Berkman, Designing Mobile Interfaces,

O'Reilly Media, 2011.

2. Rex Hartson, Pardha Pyla, The UX Book: Process and Guidelines

for Ensuring a Quality User Experience, Morgan Kaufmann, 2012.

Didactic methods

The module is conducted through theoretical lectures during which the

concepts of mobile application development are presented. These concepts

are demonstrated using sample applications on leading mobile platforms.

In laboratory exercises, students are introduced to Android platform, which

they use to solve practical assignments. Students are expected to analyse a

given problem and develop a simple mobile application for Android platform.

Independent work consists of a more elaborate mobile application which

students develop individually througout the semester, and that represents the

project assignment.

Assesment

Students' success in this module is assessed in the following way:

• Attendance to the lectures and exercises (maximum 10 points).

Student with over three absences from lectures and/or exercises is awarded 0

Page 50: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 50 of 82

points.

• Independent project carries 10 points.

• Two partial exams:

◦ First partial exam (maximum 20 points)

◦ Second partial exam (maximum 20 points)

Partial exams cover the subject matter that is presented during

lectures and laboratory exercises. During exams students are

expected to understand the basic concepts and independently

solve simpler assignments that are similar to the ones that are

solved during exercises.

• Final exam (maximum 40 points) consisting of the oral presentation

of independent project and discussion of the topics that are subject matter for

this module.

Only the students that obtained a minimum of 10 points on each partial exam

as well as finished their independent project can approach the final exam.

Students that obtained a total of 55 points or more are awarded a final grade.

Students that have less than 55 points total or obtained less then 10 points on

one or both partial exams take the remedial exam. Remedial exams are

structured in the same way as regular partial exams. Student takes the

remedial partial exam as the one in which they have less then 10 points, or

both remedial partial exams.

Prerequisites

Programming Techniques – ETF TP I-1270

Module title CAD-CAM Engineering

Module code ETF RII CCI I-2445

Programme ETF-B RI

Module

coordinator Dr Ingmar Bešić, Assistant Professor

Teaching staff Dr Ingmar Bešić, Assistant Professor

Enil Pajić, MoE, TeachingAssistant

Year of study 2

Semester 4

Module type Elective

ECTS 5

Lectures 30

Laboratory

exercises

15

Tutorials 0

Workload –

Independent Study

75

Module outcomes

Upon completion of the course student will be able to:

describe, choose and apply engineering principles to problems in the

field of computer-aided design and manufacturing,

to solve engineering problems by applying acquired knowledge and

specialist knowledge in computer graphics,

to use computer systems in CAD-CAM practice,

to analyze, explain, modify and create short computer programs for

typical CAD-CAM tools.

Module content

1. Introduction to CAD-CAM systems: product cycle, design,

specifications, feasibility study, analysis, documentation, process planning,

CNC programming, production, quality control

2. Components of CAD-CAM systems: vector-refresh graphic devices,

Page 51: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 51 of 82

raster graphic devices, hardware configuration, input and output devices,

software components, collaboration

3. The basic concepts of graphics programming: graphics libraries,

virtual devices, coordinate systems

4. Projections and graphical primitives: parallel projection, perspective

projection, view port, view volume, lines, polygons, text, bitmaps

5. Display list and transformations: display list, graphical memory,

hierarchical organization, translation matrix, rotation matrix, other matrix

transformations

6. Hidden line and hidden surface removal: Back face removal

algorithm, depth sorting, hidden line removal algorithm, z buffer method

7. Graphical rendering: shading, ray tracing

8. computer aided drafting systems: drawing setup, basic drawing

functions, annotation, parametric programming

9. Geometric modeling systems: wireframe modeling systems, solid

modeling systems, assembly modeling, representation of curves and surfaces

10. FEM analysis, optimization, prototyping, virtual engineering

11. Rapid prototyping and manufacturing: specific processes, stereo

lithography, selective laser sintering, 3D printing, applications, software

technology

12. AutoCAD Visual LISP and VBA programming: coordinate systems,

expressions, branches, loops, 2D primitives, 3D primitives

Literature

Recommended

1. Lee, K.,: Principles of CAD/CAM/CAE Systems, Addison Wesley

Longman, Reading, MA., 1999

2. Zeid, Sivasubramanian: “CAD/CAM : Theory & Practice”, McGraw

Hill, 2009

Additional 1. Zeid: “Mastering CAD/CAM”, McGraw Hill, 2005

Didactic methods

Students attend lectures on topics which are presented above in the contents

of the module. Each session includes a short quiz that gives students the

opportunity to analyze, discuss and solve problems. Students have the

opportunity to prepare a group presentation cases and present them. During

laboratory exercises students modify and create short computer programs for

typical CAD-CAM tools.

Assessment

A student who has up to three absences from lectures and / or

laboratory exercises gets 10 points on the basis of presence.

Laboratory exercises include 10 assignments, which are evenly

distributed throughout the semester and each carries one point.

The partial exams test knowledge of subjects covered by lectures

and the student's ability to solve simple programming problems such as the

problem presented during laboratory exercises. The first partial exam carries

a maximum of 20 points. The second partial exam carries a maximum of 20

points.

Students who passed both partial exams (at least 10 points per partial

exam) can take the final exam. Final exam carries a maximum of 40 points.

Student involvement into solving quizzes during the lectures as well as

individual presentations within the group of students who worked on the case

studies is taken into consideration when evaluating the final exam.

Students who have not passed one partial exam are given second chance to

pass that particular exam. Students who have not passed both partial exams

have the opportunity to take integral exam. Student is required to have 55 or

more points in total in order to pass the course.

Prerequisites

Module title Embedded Systems

Module code ETF RII US I-2450

Programme ETF-B

Page 52: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 52 of 82

Module

coordinator Dr Samim Konjicija, Associate Professor

Teaching staff

Dr Samim Konjicija, Associate Professor

Dr Emir Sokić, Assistant Profesor

Jasmina Zubača, MoE, TeachingAssistant

Year of study 2

Semester 4

Module type Elective

ECTS 5

Lectures 28

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 75

Module outcomes

Course objective is to enable students to master application of

microcomputer systems as components of complex systems. After successful

completion of the course, students will acquire competencies:

• knowledge of specific application of microcomputers as embedded

components in a complex system,

• knowledge of architecutre, instruction set and specific peripheral

modules of a typical microprocessor used in embedded system,

• knowledge of methodology and procedure of development of

applications in assembly and high level programming languages used for

embedded computer systems,

• ability to develop hardware and software component of embedded

system.,

• ability to implement algorithms in an embedded system,

• skills and knowledge necessary to document procedures activities

and results.

Module content

1. Embedded systems: characteristics of a microcomputer as

embedded component, process of design of embedded system, requirements,

specification, hardware and software architecture of an embeded system,

formal design of embedded system.

2. Architecture of typical embedded computer system: ARM

architecture, CPU, memory, input/output devices.

3. Instruction set of typical embedded microprocessor: characteristics

of RISC and CISC, instruction set of ARM processor, arithmetic-logic

instructions, program flow control instructions, specific instructions for

embedded use.

4. Input/output modules of typical embedded microcomputer: digital

inputs/outputs, analog inputs/outputs, PWM, counters, timers, EEPROM for

data storage as input/output module.

5. Input/output devices: switches/tasters, keyboards, potentiometers,

sensors with voltage, current and pulse signal, relay, H-bridge, LED, 7-

segment display, graphic display (LCD, OLED), touchscreen.

6. Communication in embedded systems: serial communication and

standards, RS-232, RS-485, RS-422, SPI, I2C, USB, Ethernet, wireless

communication (Bluetooth, ZigBee), CAN, Modbus.

7. Design of hardware for embedded system: specification of

requirements, development of hardware, definition of interface with

microcomputer system.

8. Development of software for embedded system: components of an

embedded application, finite state machines, standard implementation of

finite state machines, queues, models of embedded application, use of

interrupts.

9. Operating systems for embedded computers: multitasking, real-time

execution, inter-process communication.

Page 53: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 53 of 82

Literature

Recommended

1. Notes and slides from lectures (from web site)

2. Wolf, W.: "Computers as Components: Principles of Embedded

Computing System Design", Morgan Kaufmann, 2012

3. Noergaard, T.: "Embedded Systems Architecture: A Comprehensive

Guide for Engineers and Programmers", Elsevier, 2012

Additional

1. Lipansky, E.: "Embedded Systems Hardware for Software

Engineers", McGraw-Hill Professional, 2011

2. Samek, M.: "Practical UML Statecharts in C/C++: Event-Driven

Programming for Embedded Systems", Elsevier, 2009

3. Simon, D.: "An Embedded Software Primer", Pearson, 1999/2005

Didactic methods

Course is performed in form of lectures and laboratory exercises. During

lectures, the students get acquainted with topics covered by the course, as

well as with assignments for laboratory exercises. Students realize

assignments in teams consisting of a couple of students, where formalization

of procedures of teamwork is in focus. Based on explanations of laboratory

exercises, the students preprare their solutions, which they realize during

laboratory exercises, whereby they individually study additional literature

needed for successful solution of the assignment. Each laboratory exercise

consists of several sessions. After successful completion of the assignment,

the students hand over a written report, and present results.

In the second part of semester, the students get a project assignment, where

they solve more complex problem. The project implies design of hardvare

and software of an appliance, and a formal approach is obligatory. Each

design step should be adequately documented, following the

recommendations and requirements elaborated during lectures.

Assessment

The Assessment of students' work is as follows:

• Attendance to lectures and laboratory exercises (max. 10 points).

Student with more than three absences frmo lectures and laboratory exercises

can't get these points.

• Two partial exams (max. 2x20 points)

• Preparation for laboratory exercises and presentation of results

(max. 10 points)

• Realization of final project (max. 10 points)

• Final exam (max. 30 points)

During semester, the students take two written partial exams, where they

solve the problems covered by the topics of the course. A student with less

than 10 points on a partial exam takes remedial exam.

During the final exam, the students answer questions from topics covered by

the course, and demonstrate solving simpler versions of problems similar to

those from laboratory exercises.

In order to pass the exam, a student has to collect min. 55 points, including:

attendance, preparations and defense of laboratory exercises and project,

partial exams and final exam.

Prerequisites

Fundamentals of Computing – ETF OR I-1170

Fundamentals of Electrical Engineering – ETF OE I-1180 Operating Systems –

ETF RIO OS I-1260

Module title Digital Signal Processing

Module code ETF RII DPS I-3545

Programme ETF-B CI

Module

coordinator Dr Amila Akagić, Assistant Professor

Teaching staff Dr Amila Akagić, Assistant Professor

Year of study 2

Page 54: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 54 of 82

Semester 4

Module type Elective

ECTS 5

Lectures 28

Laboratory

exercises 7

Tutorials 10

Workload –

Independent Study 75

Module outcomes

After successful completion of the course, students will:

know and understand basic characteristics of discrete-time signals

and systems and their mathematical representation,

develop ability to apply algorthms for transformation of signals and

analysis of signals, understanding their characteristics and implementation,

develop ability to design and apply systems for digital signal

processing, understand theri characteristics and implementation,

know examples of hardware design and application of digital signal

processing.

Module content

1. Signals and signal processing: Characterization and classification of

signals. Typical operations of signal processing, Examples of typical signals.

Typical application of signal processing. Why digital processing of signals?

2. Time discreet signals and systems in time domain: Time discreet

signals. Typical sequence and presentation of sequence. Sampling process.

Time discreet systems. Characterization in time domain. LTI of time discreet

systems. LTI time discreet systems with finite dimensions. Correlation of

signals. Random signals.

3. Presentation of time discreet signals in transformation domain: Time

discreet Fourier's transformation. Discreet Fourier's transformation. Relation

between DTFT and DFT and their inverse transformations. Features of

discreet Fourier's transformation. Calculating real sequence DFT. Linear

convolution using DFT. Z transformation. Convergence area for rational z

transformation. Inverse z transformation. Features of z transformation.

Presenting random signals in transformation domain.

4. LTI time discreet systems in transformation domain: LTI time

discreet systems with finite dimensions. Frequency response. Transfer

function. Transfer function with minimum phase and transfer function with

maximum phase. Complementary transfer function. Algebraic stability test.

Processing random signals in discreet time. Matched filter.

5. Digital processing of time continual signals. Sampling time

continual signals. Sampling band-permeable signals. Design of analogue

low-permeable filter. Design of analogue high-permeable, band permeable

and band-non-permeable filter. Design of anti-aliasing filter. Sample-and-

hold circuit. Analogue/digital converter. Digital/analogue converter. Design

of reconstruction filters. Sample-and-hold operation effects.

6. Digital filter structure: Presenting block diagrams. Equivalent

structures. Basic FIR structures of digital filters. Basic IIR filter structures.

Realization of basic structures using MATLAB. Fully-permeable filters.

Tunable IIR digital filters. IIR cascade lattice structures. FIR cascade lattice

structure. Realization of IIR transfer function using parallel fully permeable

functions. Digital sine-cosine generator. Calculation complexity in digital

filter structures.

7. Digital filter design: IIR filter design using bilinear transformation

method. Low permeable IIR digital filter design. High permeable, band

permeable and band-non-permeable IIR digital filters. Spectral

transformation of IIR filters. FIR filter design based on window Fourier's

series. Digital filter design using computers. FIR filter design with Least-

Mean Square Error method. Designing filters using MAATLAB.

8. Considering DSP algorithm implementation: Simulation and

verification using MATLAB. Calculating discreet Fourier's transformation.

Page 55: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 55 of 82

Number presentation. Arithmetic operations. Overflow. Tunable digital

filters. Parallelism in DS algorithm execution.

9. Analysis of finite word length effect: Quantization process and

errors. Quantization of Fixed point numbers. Floating point numbers

quantization. A/D noise conversion analysis. Round off arithmetic errors

analysis. Relation signal-noise with IIR filters of lower order. Low sensibility

digital filters. Limit cycles with IIR filters. Round-Off errors in FFT

algorithms.

10. Multi-rate digital processing of signals: Basic devices for sampling

speed change. Filters in systems with sampling speed change. Multi-level

design of decimators and interpolators. Poly-phase decomposition. Digital

filter banks. Nyquist's filters. Two-Channel Quadrature Mirror two channel

filter bank. Perfect reconstruction. FIR filter banks with L channels. Multi-

level filter banks. Applying digital processing of signals: Dual-Tone multi-

frequency signal detection. Spectral analysis of sine signals. Spectral analysis

of non-stationary signals. Spectral analysis of random signals. Music signal

processing. Generating digital FM stereo signal. Generating time discreet

analytical signal. Podband coding of speech and audio signal. Trans-

multiplexers. Discreet multi-sound transmission of digital data. Sampling

speed conversion using digital audio signals. Over-sampling A/D converter.

Over-sampling D/A converter.

Literature

Recommended

1. Notes and slides from lectures (from web site);

2. Sanjit K. Mitra, Digital Signal Processing, McGraw-Hill,

3. A.V. Oppenheim and R.W.Schafer, Discrete Time Signal Processing,

Prentice Hall,

4. Proakis and Manolakis, Digital Signal Processing, Prentice Hall

Additional 1. R. Crochiere and L. R. Rabiner, Multirate Digital Signal Processing,

Englewood Cliffs, NJ: Prentice-Hall, Inc.,

Didactic methods

Module is performed through theoretical lectures. These are supported by

solving of problems by the lecturer with goal to enable students to master

instruments and methods introduced during lectures. Lectures are also

followed by laboratory exercises where different theoretical concepts

presented during lectures are demonstrated using MATLAB software.

Lectures have a goal to provide students with comprehensive frame of all

program parts. Lectures are performed directly in classroom; so that students

may easily follow their rhythm and immediately recognize issues they deem

less clear. After the end of presentation for each logically rounded unit of the

curriculum, lecturer will formulate and solve examples and problems

enabling students to comprehend instruments and methodologies given

during lectures. Other examples and exam problems will be considered and

solved during tutorials (under tutor guidance), in a manner which will ensure

constant checks of readiness level which students reached in control of

knowledge and skills required to be gained through this course.

Assessment

During the course students earn points according to the following system:

Attending classes and tutorials: 10 points, student with more than

three absences from lectures and/or tutorials cannot get these points.

Home assignments: maximum of 10 points, assuming solving 5 to

10 assignments equally distributed throughout the semester.

Partial exams: two partial exams; each positively evaluated partial

exam 20 points.

Students who gained less than 20 points during the semester must repeat that

course. Students who earned 40 or more points during the semester will take

a final exam; the exam consists of discussion of problems from partial

exams, home assignments and answers to simple questions related to module.

Final oral exam provides maximum of 40 points. In order to get positive final

grade, students must earn minimum of 20 points in this exam. Student failing

to earn the minimum must take the makeup oral exam. Student, who earned

20 or more, and less than 40 points during the semester, will have to take the

Page 56: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 56 of 82

makeup exam. The makeup exam is organized in the following manner:

Written part structured similarly to partial written exam, during

which students solve problems in topics they failed on partial exams (less

than 10 points);

Oral part structured the same as the oral part of the final exam. Only

students who managed to earn total score of 40 or more points in written part

of the makeup exam will be allowed to take the oral part of the makeup

exam, where the mentioned score consists of points earned through attending

lectures, solving home assignments, passing partial exams and passing the

written part of makeup exam. Oral makeup exam provides maximum of 40

points. In order to achieve positive final grade students must earn minimum

of 20 points in this exam. Student failing to earn the minimum will have to

retake the course.

Prerequisites

Module title Web Technologies

Module code ETF RIO WT I-3560

Programme ETF-B

Module coordinator Dr Vensada Okanović, Assistant Professor

Teaching staff

Dr Vensada Okanović, Assistant Professor

Irfan Prazina, MoE, TeachingAssistant

Sumejja Porča, MoE, Teaching Assistant

Year of study 3

Semester 5

Module type Mandatory

ECTS 5

Lectures 38

Laboratory

exercises 22

Tutorials 0

Workload –

Independent Study 65

Module outcomes

By the end of the course, students should be able to:

understand the concepts of Internet and also its technologies

design web pages with various scripting languages

understand the concept and technologies of server programming

develop web applications with server-side programming and

database support

Module content

1. Introduction to Web technologies: standard architectures and modes

of programiming, thin-client model, based on Browser/WebServer,web

architecture

2. HTML, structure, paragraphs, formatting tags, forms, tables

3. Cascade Style Sheets, types of selectors, selectors of HTML

elements, class selectors, attribute selectors

4. JavaScript, language syntax, page level event handling, accesing

HTML document, HTML DOM

5. Web protocols: HTTP, HTTPS, methods, headers, URI, requests

and responses

6. Web server principles, CGI interfaca

7. Java web programming, servlets and servlet containers

8. Java Server Pages, scriptlets, JSTL tags, MVC separation,

comparison with Active Server Pages

9. PHP langugage, syntax, variables, arrays, page generation, regular

expressions, sessions

10. Accessing databases from web applications

11. XML, structure, application, XML validation, queries, XML data

Page 57: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 57 of 82

processing

12. Web services, SOAP and REST models, WSDL, web service

programming

Literature

Recommended

1. Slides available on web pages and lecture notes in printed form

2. Robert W. Sebesta, “Programming the World Wide Web”, 4th Edition,

Pearson Addison Wesley, 2008.

3. Harvey M. Deitel and Paul J. Deitel Internet & World Wide Web How to

Program, 5/e, Prentice Hal, 2011

Additional 1. Marty Hall and Larry Brown, “Core Web Programming”, Prentice Hall,

2nd

Edition, 2001

Didactic methods

The lectures include basic technologies required for dynamic web

application development. The students will get involved with basic client and

server programming languages and libraries used in application development

executed inside web browser. The lectures also include some examples

which illustrate said concepts. The labs and homework also include some

additional examples and problems closely related with lectures. Therefore,

labs and homework contribute to competencies to learn web protocols

principles and page description languages. In addition, students get

competencies to know how to develop software in programming languages

like JavaScript, PHP, and Java servlets in order to solve simple computing

web related problems.

Assessment

The final score is obtained as follows:

10 points for attendance and activities during lecture and laboratory

exercises

10 points for homeworks. Problem-solving assignements with

development of web applications

20 points first partial written exam, programming and problem

solving, 10 points is considered pass

20 points second partial written exam, programming and problem

solving, 10 points is considered pass

40 points and a final oral exam (where 15 points is considered

passed the exam), checking the facts. Only the students who have achieved

the above criteria by at least 40 points can participate.

Students who did not pass required parts of the course have two chances for

remedial exam.

Final score: Below 20 points retake course, score 21-54 grade 5, score 55-64

grade 6, score 65-74 grade 7, score 75-84 grade 8, score 85-94 grade 9, score

95-100 grade 10.

Prerequisites

Programming Techniques – ETF TP I-1270

Fundamentals of Database Systems – ETF RIO OBP I-2360

Fundamentals of Computer Networks - ETF RIO RM I-2460

Module title Computer Graphics

Module code ETF RIO RG I-3560

Programme ETF-B

Module

coordinator Dr Selma Rizvić, Associate Professor

Teaching staff

Dr Selma Rizvić, Associate Professor

Dr Vensada Okanović, Assistant Professor

Irfan Prazina, MoE, TeachingAssistant

Year of study 3

Semester 5

Module type Mandatory

ECTS 5

Lectures 22

Page 58: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 58 of 82

Laboratory

exercises 30

Tutorials 8

Workload –

Independent Study 65

Module outcomes

After completion of the course, the students will develop:

specialist knowledge from computer graphics field

ability of Graphics User Interface design and implementation

according to the graphics design and colour theory principles

understanding and basic knowledge from 3D modelling and

rendering techniques, web 3D technologies and game authoring

environments

Module content

1. Computer display systems: CRT displays, LCD displays, Touch

screen displays

2. Raster graphics: Pixel, picture resolution, color depth, raster image

formats, compression with and without loss

3. Vector graphics: Concept of Cartesian coordinates, camera

coordinate system, pinhole camera, cutting the camera view, frustum view

4. Basics of graphic design: Visual language, colour theory, colour

systems, basic colour harmonies, composition and layout, perspective,

typography

5. 3D Modelling: Wire frame model, border presentation, extruding,

ruled surfaces, Bezier's surface pieces, and volume presentation, schemes of

space division, procedural modelling, fractals, soft objects, procedural

manipulation, photogrammetry

6. Unity3D game authoring tool: Project, Scene, Package, Prefab,

Game object, components, Assets, Scripts

7. Web 3D technologies – x3Dom: VRML, JAVA applets, ActiveX,

O3D, WebGL, OSG4Web, x3D, x3Dom

8. Basics of HTML: Tags, text editing, lists, tables, forms, HTML5

9. Web design and development: Site planning and development,

interface design, navigation, site design, information organization, page

design, typography, web graphics

10. Rendering: Rendering pipeline steps and descriptions

11. Local illumination algorithms: Illumination models, reflection

models, ambient, diffuse and specular reflection, shading, anti aliasing, back

face culling

Literature

Recommended

1. J. F. Hughes, A. van Dam, M. McGuire, David F. Sklar, J. D. Foley,

S. K. Feiner, K. Akeley Computer Graphics: Principles and Practice (3rd

Edition), Addison-Wesley Professional; 3 edition (July 22, 2013), ISBN-10:

0321399528

2. P. Shirley,M. Ashikhmin, S. Marschner, Fundamentals of Computer

Graphics, A K Peters/CRC Press; 2009, ISBN-10: 1568814690

3. W. Goldstone, Unity 3.x Game Development Essentials, Packt

Publishing, 2011, ISBN-10: 1849691444

Additional

1. Shalini Govil-Pai – Principles of Computer Graphics, Theory and

Practice using OpenGL and Maya, Springer 2004.

2. J. Behr,Y. Jung, J. Keil, T. Drevensek, M. Zoellner, P. Eschler, D.

Fellner, A Scalable Architecture for the HTML5/ X3D Integration Model

X3DOM, Web3D '10 Proceedings of the 15th International Conference on

Web 3D Technology, Pages 185-194, ACM New York, NY, USA ©2010,

ISBN: 978-1-4503-0209-8

Didactic methods

Lectures, individual studying of recommended literature, analysis of

examples, comparison of notions and theories, discussions.

Tutorials to introduce students with 3D modelling and image processing

tools.

Laboratory projects where students apply their knowledge to practical

Page 59: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 59 of 82

projects.

Home assignments– final project, synthesis of gained knowledge.

Assessment

During the course students earn points according to the following system:

Attending classes and tutorials: 10 points, student with more than

three absences from lectures and/or tutorials cannot get these points.

Lab projects and home assignments (final project), max 60 points; 4

lab projects + final project

Partial exams: two partial exams; each positively evaluated partial

exam 20 points. Students who gained less than 20 points during the semester

must repeat that course.

Students who gained more than 10 points from each partial exam do

not have to take the final exam.

Oral exam consists of discussion of problems from partial exams,

home assignments and answers to simple questions related to course topics.

After successfully passed the oral exam the student gets a final

grade as sum of written exams, attendance, lab projects and final project

marks

Student, who less than 20 points during the semester, will have to

take the makeup exam.

The makeup exam is organized in the following manner: - Written

part structured similarly to partial written exam, during which students solve

problems in topics they failed on partial exams (less than 10 points);

Oral part structured the same as the oral part of the final exam.

After successfully passed the oral makeup exam the student gets a

final grade as sum of written exams, attendance, lab projects and final project

marks

Prerequisites

Module title Fundamentals of Information Systems

Module code ETF RIO OIS I-2460

Program ETF-B

Module

coordinator Dr Anel Tanović, Assistant Professor

Teaching staff Dr Anel Tanović, Assistant professor

Kenan Halilović, MSc, Teaching Assistant

Year of study 3

Semester 5

Module type Mandatory

ECTS 5

Lectures 30

Laboratory

exercises 20

Tutorials 10

Workload –

Independent Study 65

Module outcomes

Student who completed the module successfully has competencies as follow:

Understanding how IS integrated in organizations

including how knowledge its employees are supported and how

important IS for an organization’s success

Understanding differences between IS and IT, be able to

identify the components of IS, understanding the relationships

between the components of IS, understand the reasons for having an

IS, be able to assess the value of IS from the financial as well as

managerial points of view

Understanding why process management is important, be

able to explain what a process is and the different types of

Page 60: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 60 of 82

processes, state the difference between process orientation and other

organizational principles, understand the necessity of process

modeling, and be able to name and briefly summarize some

methods used for analysis of processes

Define in general terms what is a methodology, describe of

the role of methodology in IS and the main features of methodology,

break down methodology in its fundamental components; assess

methodology using an evaluation framework.

Module content

1. Introduction: IS, what is it? IT is not IS; 4 components of

IS: technology (hardware), process (software), structure, and people

2. Efficiency and effectiveness: IS budgeting and return on

investment (ROI); information usage; customer and employee

satisfaction

3. Development process of IS: technology and innovation;

overall development strategy; iterative development; alternative

approaches

4. Requirements: requirements analysis and prioritization;

functional and quality requirements formulation

5. Architecture of IS: importance of architecture; selecting,

extending or creating an architecture

6. Design of IS: external design; physical interaction;

interaction flow: data, media content; internal design

7. Code; test: why test it? The V model of verification,

validation, testing; how to test; prepare to test; execute the test and

record the results; find and correct errors

8. Prototyping, maintain

9. Business process modeling and process management

10. Information systems methodologies

Literature

Recommended

1. Notes and slides of lectures (taken from ETF website)

2. Fahrudin Oručević, Osnove informacionih sistema

3. David A. Bray, Being a System Innovator

4. Gabrielle Piccoli and Iris Liu, Achieving Efficiency and

Effectiveness through Systems

Additional

1. Fahrudin Oručević, Informacioni sistemi, Analiza, ETF

2. Per Flatten, Achieving Efficiency and Effectiveness

through Systems Design

3. Franz Lehner, Business Process Modeling and Process

Management

4. Salam Abdallah, Information Systems methodologies

Didactic methods

The module is taught through lectures on which are presenting the basic

concepts of IS development, design and implementation. These lectures are

supported with series of practical and empiric examples by lecturer with the

goal to enable students to understand better using tools and methods for

development of IS during lectures.

Other problems including practical issues and tasks from previous exams are

solved under tutor guidance during the tutorials. These activities are

organized to enable continuous checking through home works and midterm

exams of students’ capability level required to comprehend knowledge and

skills required from them to achieve as part of this module.

Assessment

During the module students earn points such as follow:

Attending classes, exercises and tutorials: 10 p (if the

student has no more than 3 absences)

Home assignments: 10 p

Two midterm exams: 2 x 20 = 40 p max

Student who gained less than 20 p during the semester must repeat the

module.

Student who earned 40 or more points during the semester will take a final

Page 61: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 61 of 82

examination. Final exam is oral and it consists of discussion of issues from

midterm exams, home assignments and answers questions related to module

topics.

Final oral exam provides up to 40 p max.

In order to get positive final grade, students must earn 20 p min in this final

oral exam. Student failing to earn the minimum must take the repeat oral

exam.

Student who earned 20 or more, and less than 40 p during the semester will

have to take the makeup exam.

The makeup exam is structured such as follow:

Written part of the makeup exam structured similarly to

midterm written exam, during which students solve issues in topics

they failed on midterm exam

Oral part of the makeup exam structured the same as the

oral part of the final exam

Only students who earned 10 p or more (midterm makeup exam) i.e. 40 p or

more (the whole exam) will be allowed to take the oral part of the makeup

exam.

Oral makeup exam provides up to 40 p max. In order to achieve positive

final grade student must earn 20 p min.

Student failing to earn the minimum will have to retake the module.

Prerequisites

Module title Introduction to Operations Research

Module code ETF RIO OOI I-3560

Programme ETF-B CI

Module

coordinator Dr Razija Turčinhodžić, Assistant Professor

Teaching staff Dr Razija Turčinhodžić, Assistant Professor

Hana Haseljić, MoE, TeachingAssistant

Year of study 3

Semester 5

Module type Mandatory

ECTS 5

Lectures 40

Laboratory

exercises 14

Tutorials 6

Workload –

Independent Study 65

Module outcomes

The student that completes the course successfully will get the following

competences:

Knowledge of theoretical basis and metodologies for algorithmic

solving of problems of optimization of activities and allocation of resources

where their amount is limited.

Ability of presentation of simpler real cases where optimization

problems are presented, using mathematical models of linear programming

and graph theory.

Ability of solving above mentioned problems using appropriate

algorithms.

Ability of implementation of algorithms for solving basic

optimization problems on the computer in some standard programming

languages.

Module content

1. Introduction to the problematics of the operations research: Subject

of operations research; Characteristics of operations research; Phases of

applications of operations research.

Page 62: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 62 of 82

2. Linear programming (LP): General notes about mathematical

programming and convex programming; General, canonical and standard

form of LP; Graphical interpretation and graphical method of solving LP;

Simplex algorithm; Criteria of optimality; Degeneration; Searching for initial

base solution; Dual problem and its interpretation; Dual simplex algorithm.

3. Special cases of LP: Transportation problem; Methods for solving

transportation problem; Assignment problem; Methods for solving

assignment problem;

4. Optimization on graphs: Basic algorithms of graph theory; Minimal

spanning trees; Shortest path problem; Maximal flow problem.

5. Project management: Network planning; CPM and PERT

techniques.

Literature

Recommended

J. Petrić: “Operaciona istraživanja”, Nauka, Beograd, 1997.

L. Neralić: “Uvod u matematičko programiranje 1”, Element,

Zagreb, 2003.

M. W. Carter, C. C. Price: “Operations Research – A Practical

Introduction”, CRC Press, 2011.

F. S. Hiller, G. J. Lieberman: “Introduction to Operations Research”,

McGrow-Hill, New York, 2005.

Additional

S. Krčevinac i dr.: “Operaciona istraživanja”, Fakultet

organizacionih nauka, Beograd, 1997.

D. Cvjetićanin: “Operaciona istraživanja”, Ekonomski fakultet,

Beograd, 1992.

K. R. Chandrasekhara: “Operations Research”, Alpha Science

International Ltd., 2005.

D. A. Pierre: “Optimization Theory with Applications”, Dover

Publications, New York, 1986.

Didactic methods

The lectures covers theoretical concepts based on linear programming and

graph theory. They are illustrated through simpler examples from the

practice, with emphasize on the algorithmic aspects. Also, students are

prepared for studying the literature independently. On the tutorials, various

simpler and moderate complex problems related to lectures are analysed and

solved, with more detailed explanation of presented algorithms. Harder

problems and case studies are covered through homeworks. On the lab

exercises, students implement various algorithms and solve problems which

are presented on the lectures and the tutorials using the computer.

Assessment

The valuation of the student success is as follows:

Active participation in lectures and tutorials (presence, discussion),

10 points. The student that have 4 or more absences will not get these points.

I partial written exam, 20 points, 3-5 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

II partial written exam, 20 points, 3-5 easy to moderately difficult

problem solving tasks, exam duration 2 hours.

Homeworks, 10 points, 15-30 moderately difficult to hard problem

solving tasks, divided in 5 blocks (in average every 2 weeks), the time limit

for solving one block is 7 days.

Final oral examination, 40 points, checking of factual knowledge

and understanding of the theoretical concepts, exam duration 20 min.

Only students that pass both partial exams may approach to the final

examination. For the overall pass, the student must pass the oral exam and

must achieve at least 55 points in summary.

Prerequisites

Linear Algebra and Geometry – ETF LAG I-1160

Programming Techniques – ETF TP I-1270

Discrete Mathematics – ETF RIO DM I-2360

Module title Software Verification and Validation

Page 63: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 63 of 82

Module code ETF RII VVS I-3650

Programme ETF-B CI

Module

coordinator Dr Dženana Đonko, Professor

Teaching staff

Dr Dženana Đonko, Professor

Haris Hasić, MoE, TeachingAssistant

Kerim Hodžić, MoE, TeachingAssistant

Year of study 3

Semester 5

Module type Elective

ECTS 5

Lectures 30

Laboratory

exercises 20

Tutorials 0

Workload –

Independent Study 75

Module outcomes

Students at the end of this course has the following knowledge, skills and

competencies:

good professional knowledge in the field of software engineering

related to assurance and software quality control

the ability to evaluate computer-based systems, processes and

components, the ability of classification errors and the use of statistical

evaluation of defects density

knowledge of the use of software systems in practice, knowledge of

standards and understanding the influence that computing systems, their

operation and maintenance have on the environment

understanding of the needs and achievement of continued tracking of

software systems development and learning new principles, techniques and

technologies

the ability of individual and team work, organization and execution

of projects

the ability to design testing plans and applying different techniques

of software testing

the ability to integrate software quality assurance techniques in the

life cycle of software development

ability to carry out checks and inspections of development

documents and program code, as well as process control and code control

using metrics

Module content

1. Software quality control - basic terms and definitions: quality,

software, software quality, control of quality, verification, validation, testing,

standards, quality attributes of the software.

2. Standardization of software quality assurance: Components of the

software quality assurance system; ISO standards, IEEE standards of the

software quality assurance and other commercial standards; Standardized

forms of reporting for individual software quality assurance activities; The

human components of software quality assurance

3. Integration of quality activities in the software development process:

Pre-project component of quality assurance; Development plan and quality

plan; Software development methodologies and software quality assurance;

Effectiveness and cost of removing defects in the software development

process

4. Review –formal design review, inspections, walk-through, peer

review of documents of certain phases of software development and code.

5. Testing - basic concepts, strategies and testing techniques: The

testing process; Design of test cases (Unit testing based on the assert method,

White-box testing techniques, Black-box testing techniques, Software

Page 64: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 64 of 82

testing tools, Automatic testing, Testing of user interfaces)

6. Software metrics: Metrics of code quality control; Metrics and

code refactoring; Metrics of quality control of software development process

7. Statistical methods - quantitative methods for monitoring and

improving software quality and process.

Literature

Recommended

1. Notes and slides from lectures (See Faculty WEB Site)

2. G. Gordon Schulmeyer, James I. Mcmanus, The Handbook of Software

Quality Assurance, Prentice Hall PTR (4rd Edition) 2007

3. Daniel Galin, Software Quality Assurance : From Theory to

Implementation, Addison Wesley 2003

Additional 1. Stephen H. Kan, Metrics and Models in Software Quality Engineering,

Addison-Wesley Professional; 2 edition 2002

Didactic methods

Theoretical concepts related to the topics of the course are presented during

lectures. The presented concepts are illustrated by examples and they are

discussed with the students.

Students organized in the teams will search the literature and will perform

synthesis of research for a selected topic related to technology and security

aspects of software quality in the form of a seminar paper.

Throughout the semester students will be getting homework which is

thematically consistent with the lectures and exercises.

Concrete tasks related to the course and continuous monitoring of homework

will be worked on in the lab.

Assessment

During the course students earn points according to the following system:

attending classes and tutorials: 10 points, student with more than

three absences from lectures and/or tutorials cannot get these points;

homework: a maximum of 30 points; assuming solving up to 4

assignments equally distributed throughout the semester;

seminar paper: maximum 10 points; research on a given topic, and a

synthesis study in writing form;

partial exams: two partial exams, each partial exam earns a maximum of

20 points (pass mark is 10 points and more);

oral exam: maximum of 10 points; consists of presentation of seminar

paper/homework (5 points) and questions related to the thematic units of the

course (5 points).

A student who does not pass the partial exams has to retake an exam.

Final grade is made on the basis of points collected for all activities during

the semester, based on the scale:

95-100 grade 10

85-94 grade 9

75-84 grade 8

65-74 grade 7

55-64 grade 6

Prerequisites

Software Development- ETF RIO RPR I-2360

Module title Business Web Systems

Module code ETF RII PWS I-3550

Program ETF-B

Module

coordinator Dr Anel Tanović, Assistant Professor

Teaching staff Dr Anel Tanović, Assistant Professor

Ajla Ćerimagić Hasibović, Teaching Assistant

Year of study 3

Semester 5

Module type Elective

ECTS 5

Page 65: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 65 of 82

Lectures 35

Laboratory

exercises 15

Tutorials 7

Workload –

Independent Study 75

Module outcomes

Student who completed the module successfully has competencies as follow:

Understand basic elements of electronic business in

Internet and WWW environments

The knowledge student’s gained allows him to differ in

models of Internet economy, electronic business classification, and

the importance of electronic business security

Describe opportunities of IS integrated in B2B systems and

its importance to B2B economy

Define integration concept of IS in B2B system

Describe ERP systems and describe several technologies of

B2B systems (EDI, eMarketplaces, Web services)

Module content

1. Introduction: what is Internet economy; electronic business

vs. electronic commerce

2. Electronic business models: classification by provider and

consumer

3. Electronic business security: key security concerns within

electronic business; common security measures, and security

solutions

4. Integration of IS in B2B systems: why is important

integration of IS in B2B systems

5. ERP systems: the means of internal integration

6. B2B systems: what is B2B system; B2B technologies;

challenges for B2B systems adoption

Literature

Recommended

1. Notes and slides of lectures (taken from ETF website)

2. Fahrudin Oručević, Internet ekonomija

3. Gary P. Schneider, Electronic Commerce

Additional

Didactic methods

The module is taught through lectures on which are presenting the basic

concepts development, design and implementation of electronic business

applications. These lectures are supported with series of practical and

empiric examples by lecturer with the goal to enable students to understand

better using tools and methods for development of eBusiness applications

during lectures.

Other problems including practical issues and tasks from previous exams are

solved under tutor guidance during the tutorials. These activities are

organized to enable continuous checking through home works and midterm

exams of students’ capability level required to comprehend knowledge and

skills required from them to achieve as part of this module.

Assessment

During the module students earn points such as follow:

Attending classes, exercises and tutorials: 10 p (if the

student has no more than 3 absences)

Home assignments: 10 p

Two midterm exams: 2 x 20 = 40 p max

Student who gained less than 20 p during the semester must repeat the

module.

Student who earned 40 or more points during the semester will take a final

examination. Final exam is oral and it consists of discussion of issues from

midterm exams, home assignments and answers questions related to module

topics.

Page 66: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 66 of 82

Final oral exam provides up to 40 p max.

In order to get positive final grade, students must earn 20 p min in this final

oral exam. Student failing to earn the minimum must take the repeat oral

exam.

Student who earned 20 or more, and less than 40 p during the semester will

have to take the makeup exam.

The makeup exam is structured such as follow:

Written part of the makeup exam structured similarly to

midterm written exam, during which students solve issues in topics

they failed on midterm exam

Oral part of the makeup exam structured the same as the

oral part of the final exam

Only students who earned 10 p or more (midterm makeup exam) i.e. 40 p or

more (the whole exam) will be allowed to take the oral part of the makeup

exam.

Oral makeup exam provides up to 40 p max. In order to achieve positive

final grade student must earn 20 p min.

Student failing to earn the minimum will have to retake the module.

Prerequisites

Module title Programming Languages and Compilers

Module code ETF RII PJP I-3550

Programme ETF-B

Module

coordinator Dr Samir Ribić, Associate Professor

Teaching staff Dr Samir Ribić, Associate Professor

Kerim Hodžić, MoE, Teaching Assistant

Year of study 3

Semester 5

Module type Elective

ECTS 5

Lectures 36

Laboratory

exercises 14

Tutorials 0

Workload –

Independent Study 75

Module outcomes

To become familiar with many of the common procedural languages

as well as representative functional, logic oriented and object-oriented

languages.

To understand components and features of programming languages

necessary for program development and maintenance across various

applications.

To develop skills to evaluate a language for its purposes, capabilities,

limitations, environment requirements.

To study the phases and components of typical programming

language translators.

To study relevant language theory and understand its use in

translation.

To design, develop and test a large software project, utilizing several

software tools, resulting in a compiler for a small programming

language.

Module content

1. Low level programming, Evolution of the major programming

languages

2. Describing syntax and semantics

Page 67: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 67 of 82

3. Lexical analysis, Syntactic analysis

4. Names and binding, Scope, lifetime, environments

5. Primitive data types, Arrays ,Other types and type checking

6. Arithmetic expressions , Boolean expressions, assignments, mixed

mode

7. Imperative programming and structured programming, Statement

control: selection ,iteration, branching

8. Subprograms and parameter passing , Subprogram issues ,

implementing subprograms , Implementing nested subprograms, blocks

9. Abstract data types and encapsulation

10. Object oriented programming , examples of object oriented

languages

11. Functional programming , examples of functional languages

12. Logical, declarative and domain specific languages

13. Exception handling, event driven programming and concurrency

Literature

Recommended

1. Slides and lecture notes available on the web page

2. Robert Sebesta, Concepts of Programming Languages, 10th edition,

Addison-Wesley, 2012

Additional

1. Michael L. Scott, Programming Language Pragmatics, Third

Edition, Morgan Kaufmann, 2009

2. Keith Cooper and Linda Torczon Engineering a Compiler, Second

Edition Morgan Kaufmann, 2011

Didactic methods

The lecture theoretically explain programming languages and paradigm

through comparative analysis. The labs are intended to solve simple problems

and understand the topics of programming language paradigms and

implementation. The group project is related to iterative implementation of

compiler and interpreter, while research paper evaluates one programming

language. The group project and research paper contribute to develop

competencies of high level programming language understanding, without

constrain to single development model.

Assessment

The final score is obtained as follows

• 10 points for attendance and activities during lecture and lecitations

• 10 points for research paper and group project

• 20 points first partial written exam, problem solving, 10 points is

considered pass

• 20 points second partial written exam, problem solving, 10 points is

considered pass

• 40 points and a final oral exam (where 15 points is considered

passed the exam), checking the facts.

Only the students who have achieved the above criteria by at least 40 points

can participate.Students who did not pass required parts of the course have

two chances for remedial exam.

Final score: Below 20 points retake course, score 21-54 grade 5, score 55-64

grade 6, score 65-74 grade 7, score 75-84 grade 8, score 85-94 grade 9, score

95-100 grade 10.

Prerequisites

System Programming – ETF RII SP I-2350

Automata and Formal Languages – ETF RIO AFJ I-2460

Module title Computer Modeling and Simulation

Module code ETF RII RMS I-3660

Programme ETF-B

Module coordinator Dr Kemal Hajdarević, Associate Professor

Teaching staff Dr Kemal Hajdarević, Associate Professor

Zoran Cico,MSc, TeachingAssistant

Year of study 3

Semester 5

Page 68: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 68 of 82

Module type Elective

ECTS 5

Lectures 35

Laboratory

exercises 15

Tutorials 0

Workload –

Independent Study 75

Module outcomes

Students who successfully complete the course will have the following

competencies:

• the ability to choose and apply appropriate engineering principles

and mathematical and computational methods to solve problems in the field

of computer modeling and simulation.

• ability to solve problems by applying queuing with acquired

engineering knowledge, general knowledge of mathematics, and electrical

engineering, computer communications, and specialized knowledge in

computer modeling and simulation with the help of appropriate literature

that are trained to find

• ability to design and implement tests and experiments in the field

of computer modeling and simulation from which they can draw

conclusions and verify hypotheses.

• the ability to analyze, design and implementation of system

components with the help of computer modeling and simulation (programs,

applications, hardware communication equipment, etc.) using appropriate

methods and techniques taking into account the scientific, technical, social,

environmental and economic conditions and standards

• knowledge of the use of computer modeling and simulation in

computer communications and data processing, knowledge of standards and

understanding the influence that computer modeling and simulation, their

operation and maintenance are in actual systems

Module content

1. Models and discrete event simulation. Discrete statics and dynamic

conditions of the system. Modeling paradigm. Method of programming

events, methods of interaction with the process.

2. Queuing theory and applications in computer communications, and

processing of data

3. The design of the experiment and the use of simulation as a tool for

decision making

4. The structure of the computer program for modeling and

simulation.

5. Using a modeling language. Interfaces and interpretation. Results

of modeling and simulation.

6. Software tools and packages for modeling and simulation system.

7. Algorithms and numerical integration methods used in software

packages for modeling and simulation.

8. Software support for creating models and algorithms in the target

hardware to work in real time.

Literature

Recommended

1. Lecture slides will be available on faculty WEB site;

2. Discrete event simulation, Udo W. Pooch, James A. Wall, Jr.CRC

PressINC, 1993

3. Protocols Modeling and Analysis by Mischa Schwartz, Addison-

Wesley, 1987;

4. Queueing Systems I by L. Kleinrock, John Wiley & Sons, 1975. 2.

Telecommunications

Additional

Didactic methods

Lectures take place in the lecture hall, using a projector, so that the student

can easily and clearly monitor the given lectures. Each teaching unit would

Page 69: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 69 of 82

be presented to the students through the university's website to help students

in advance to prepare for attending classes. Certain topics to illustrate

through examples and simulation. Exercise would be organized in the

laboratory and would be designed so that the individual thematic units

handled in a manner that students easily master this theory from lectures.

Tutorial would consist of development projects, as well as certain tasks with

the help of a tutor.

Assessment

During the course students earn points according to the following system:

• The student’s presence to lectures and exercises (maximum 10

points). Students who have more than three absences from lectures and / or

laboratory exercises will not get these points.

• 5 homeworks that are evenly distributed throughout the semester

(maximum 10 points)

• Two partial exams:

◦ The first partial exam (maximum 20 points)

◦ The second partial exam (maximum 20 points)

Partial exams cover the whole the lectures, laboratory exercises and

homework. On partial exams students knowledge is evaluated to test their

understanding of basic concepts in the field of computer modeling and

simulation.

• Final exam (maximum 40 points).

Students who have passed both partial exams (at least 10 points per partial

exam) can take the final exam. The final exam covers material from the

entire semester, including lectures, laboratory exercises and homework. For

taking the course it is required to pass the exam. To obtain a positive final

grade, students must score a minimum of 55 points, including: attendance,

homework, two partial exams and a final exam. Students who have not

passed one partial exam, the exam is taken at the reformatory. Students who

have not passed both exams on the partial correction of an integral graded

exam, which includes material from the entire semester.

Prerequisites

Module title Software Engineering

Module code ETF RIO SI I-3660

Programme ETF-B

Module

coordinator Dr Novica Nosović, Professor

Teaching staff Dr Novica Nosović, Professor

Hana Haseljić, MoE, TeachingAssistant

Year of study 3

Semester 6

Module type Mandatory

ECTS 5

Lectures 35

Laboratory

exercises 0

Tutorials 25

Workload –

Independent Study 65

Module outcomes

After successful finish of the course student should be able to:

• understand principles of software engineering (unite the knowledge

acquired during the previous 5 semesters of studies),

• understand different software processes (production) ,

• understand principles, methods and techniques for design and

development of complex software systems

• develop software products in teams, with short deadlines and

Page 70: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 70 of 82

constant requirements changes.

Module content

1. Introduction to software engineering – software crises and

technological trends – short historical background.

2. Software processes, waterfall and derivatives – incremental and

iterative models.

3. Agile software development methods, pair programming and

constant refactoring, extreme programming.

4. Requirements engineering, functional and non-functional

requirements, specification, documenting and validation of requirements.

5. System modeling, context modeling, interaction modeling,

structural modeling, behavioral modeling.

6. Software architecture, decisions that lead to architecture definition,

different architectural views, architectural patterns.

7. Software design and implementation, object-oriented design with

UML, design patterns, component reuse, open source software development.

8. Software testing, verification and validation, functional testing,

structural testing, test-driven software development.

9. Software evolution, processes and dynamics, software maintenance,

legacy system management.

10. Planning and software project management, risk Assessment, risk

management, team work and managing people.

Literature

Recommended

1. Lecture notes and slides (see the faculty web page)

2. Ian Sommerville, “Software Engineering”, 9. edition, Addison-

Wesley , 2012.

Additional

1. Bernd Bruegge, Alan H. Dutoit, “Object-Oriented Software

Engineering Using UML, Patterns and Java”, Prentice-Hall, 2004.

2. Roger Pressman, “Software Engineering: A Practicioner's

Approach”, 7. Edition, McGraw-Hill, 2009.

Didactic methods

The lectures cover basic concepts of software engineering. Students are

introduced to fundamental software processes, testing and maintenance.

Tutorials are project and team-work based on medium complexity software

development and include examples and problems that help better

understanding of lecture material. Work on projects support students

competences development to understand basic problems of software

engineering within limited resources environment and with constant changes.

Assessment

Assessment of students achievements at the course are:

Presence at lectures and exercises (max. 10 points). Student that fail

to attend lectures and/or labs for more then three times, does not get this

points.

Project assignments are equally spread throughout the semester

(max. 20 points)

Two midterm exams:

• The first midterm exam ( max. 20 points)

• The second midterm exam ( max. 20 points)

Midterm exams reflect entire course materials covered on lectures and

tutorials. Midterm exams assess the understanding of basic principles of

software engineering, as well as abilities to understand advantages and

disadvantages of different approaches to software production.

Final exam (max. 30 points).

Students that pass both midterms (min. 10 points each) can take the final

exam. Final exam cover all the course materials, including lectures and

tutorials. To pass the course, it is compulsory to pass the final exam. To get

passing final mark, student must collect minimally 55 points, including:

presence, project work, two midterm exams and final exam. Student that fail

Page 71: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 71 of 82

one midterm exam, takes remedially exam. Student that fail both midterms

repeats the whole exam including the entire course materials.

Prerequisites

Module title Design of Information Systems

Module code ETF RIO IS 3560

Programme ETF-B

Module

coordinator Dr Almir Karabegović, Associate Professor

Teaching staff Dr Almir Karabegovic, Associate Professor

Marina Miličević, MoE, TeachingAssistant

Year of study 3

Semester 6

Module type Mandatory

ECTS 4

Lectures 38

Laboratory

exercises 11

Tutorials 11

Workload –

Independent Study 40

Module outcomes

Students who successfully complete the course will have the following

competencies:

• knowledge and understanding of all phases of information systems

development;

• to be involved in developing the model of a complex information

system;

• to study an information system, define user requirements for a new

system, propose and evaluate alternative solutions, develop a design for the

new system, develop project documentation and deliver, maintain and

support corporate information system.

Module content

This course elaborates both structured and object oriented methods and

techniques used in development of information systems. The course

examines analysis and design techniques, feasibility analysis, information

systems development approaches, systems testing procedures, installation

and migration, and maintenance procedures. Organizational issues with

respect to information system development will be considered.

• Foundations for Systems Development: The Systems Development

Environment. The Origins of Software. Managing the Information Systems

Project.

• Planning: Identifying and Selecting Systems Development Projects.

Initiating and Planning Systems Development Projects.

• Analysis: Determining System Requirements. Structuring System

Process Requirements. Structuring System Data Requirements.

• Design: Business Process Reengineering. Designing Databases.

Designing Forms and Reports. Designing Interfaces and Dialogues.

Designing Distributed and Internet Systems

• Implementation and Maintenance: System Implementation.

Maintaining Information Systems.

Literature

Recommended

1. Lecture Notes (to download from Faculty WEB site);

2. Hoffer, J. A., George J., Valacich J., Modern Systems Analysis and

Design 7th Edition, Prentice Hall, 2013

Additional

1. Whitten, J.L., Bentley, L.D., Systems Analysis and Design Methods,

McGraw-Hill/Irwin, 7th Edition, 2007;

2. Dennis, A., Wixom, B.H., Tegarden, D., Systems Analysis and

Page 72: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 72 of 82

Design with UML 2.0: An Object-Oriented Approach, 3rd Edition, Wiley,

2009

Didactic methods

Theoretical part of module is done through lectures used for presentation of

basic concepts. Focus of module is on tutorials through which students

practically apply concepts presented through lectures. Students are divided in

groups with each group working on some specific example in precise

organization context. Flow of theoretical presentation of individual topics

during lectures, which are related to information systems development, is

followed by direct application of those acknowledgements in concrete

examples processed by each group. Students apply new knowledge in form

of homework which is done at home with consultations with tutors in the

laboratory.

Assessment

During the course students earn points according to the following system:

• Attending classes and tutorials: 10 points, student with more than

three absences from lectures and/or tutorials cannot get these points.

• Home assignments: maximum of 10 points, assuming solving 5 to

10 assignments equally distributed throughout the semester.

• Partial exams: two partial exams; each positively evaluated partial

exam 20 points. Students who gained less than 20 points during the semester

must repeat that course.

Students who earned 40 or more points during the semester will take a final

exam; the exam consists of discussion of problems from partial exams, home

assignments and answers to simple questions related to module.

Final oral exam provides maximum of 40 points. In order to get positive final

grade, students must earn minimum of 20 points in this exam. Student failing

to earn the minimum must take the makeup oral exam.

Student, who earned 20 or more, and less than 40 points during the semester,

will have to take the makeup exam. The makeup exam is organized in the

following manner:

• Written part structured similarly to partial written exam, during

which students solve problems in topics they failed on partial exams (less

than 10 points);

• Oral part structured the same as the oral part of the final exam.

Only students who managed to earn total score of 40 or more points in

written part of the makeup exam will be allowed to take the oral part of the

makeup exam, where the mentioned score consists of points earned through

attending lectures, solving home assignments, passing partial exams and

passing the written part of makeup exam.

Oral makeup exam provides maximum of 40 points. In order to achieve

positive final grade students must earn minimum of 20 points in this exam.

Student failing to earn the minimum will have to retake the course.

Prerequisites

Object-oriented Analysis and Design – ETF RIO OOAD I-2460

Fundamentals of Database Systems – ETF RIO OBP I-2360

Fundamentals of Information Systems – ETF RIO OIS I-3560

Module title Artificial Intelligence

Module code ETF RIO VI I-3660

Programme ETF-B

Module

coordinator Dr Zikrija Avdagić, Professor

Teaching staff

Dr Zikrija Avdagić ,Professor

Muamer Kafadar, Teaching Assistant

Vedad Letić, Teaching Assistant

Sabina Muratović, MoE, Teaching Assistant

Year of study 3

Semester 6

Module type Mandatory

Page 73: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 73 of 82

ECTS 5

Lectures 35

Laboratory

exercises 25

Tutorials 0

Workload –

Independent Study 65

Module outcomes

Students after finishing the course shall poses the following:

basics of knowledge engineering,

basics of artificial intelligence,

capabilities for development and system analysis based on knowledge

and genesis of artificial intelligence,

capabilities to integrate techniques and strategies required for design

and simulation and implementation of intelligent systems.

Module content

1. TERMINOLOGY AND DEFINITIONS OF ARTIFICIAL

INTELLIGENCE: intelligence, demonstrating intelligence, intuition,

common sense, heuristics, knowledge, cognitive psychology, artificial

intelligence tree, historic overview.

2. GENESIS OF ARTIFICIAL INTELLIGENCE: knowledge

engineering, games, expert systems, decision making support systems,

software intelligent agents, evolution machine, evolution tree of artificial

intelligence, fuzzy systems, artificial neuron networks, genetic algorithms.

3. FUZZY EXPERT SYSTEMS: fuzzy set, fuzzy logic, fuzzy

operators, modifiers and numbers, fuzzy relations, generalized modus

ponens, approximate reasoning, defuzzyfication methods, Mamdani

reasoning model, Sugeno reasoning model, Tsukamoto reasoning model.

4. EXPERT SYSTEMS: terminology and definitions, structures of

expert systems, development cycle of expert systems, actors, knowledge

acquisition, knowledge presentation, inherent machine, conclusion strategies,

proposition logic, predicative logic, production systems, uncertainty,

backward chaining, forward chaining, rule anomalies, solution search

techniques and state space, blind techniques, heuristic techniques, expert

system classes, specifications of expert systems.

5. ARTIFICIAL NEURAL NETWORKS: introduction, perceptron,

network topology, learning rules.

6. GENETIC ALGORITHMS: introduction, evolutionary computation

and classification, simple genetic algorithm.

7. INTELIGENT SOFTWARE AGENTS: terminology and definitions,

classification of agents, agent technology factors, functional learning agent

architecture, agent models, agent communication and migration.

Literature

Recommended 1. Fuzzy logika u inžinjerskim aplikacijama, Zikrija Avdagić,

Elektrotehnički fakultetu Sarajevu, 2008.

Additional

1. Artificial intelligence- Structures and Strategies for Complex

Problem Solving, George F.Luger˛&William A Stubblefield, Addison

Wesley Longman Inc.1999.

2. Expert systems, principles and programming, Giarratano˛Riley,

PWS Publishing Company, 1998.

3. Agent sourcebook, Caglayan, C. Harrison, JohnWiley &Sons,

Inc.,1997

4. Vjestacka inteligencija& fuzzy-neuro-genetika , Zikrija Avdagic,

Grafoart,2003.

Didactic methods

Students will be introduced with theory, problems and application examples

through topic of lectures. Lectures consist of theoretical part, presentation of

descriptive examples, genesis and explanation of specific problems. In this

way students can have the foundation for application of studied material in

engineering applications. Additional examples and exam problems are

Page 74: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 74 of 82

considered and solved during laboratory exercises. Laboratory exercises and

homework enable continuous work and knowledge testing using

MATLAB/Simulink/Fuzzy Logic Toolbox, Neural Network Toolbox,

Optimization Toolbox/Genetic Algorithms.

Assessment

Home assignments: maximum of 20 points, assuming solving 10 assignments

equally distributed throughout the semester.

Partial exams: two written partial exams; maximal grade per each exam is 20

points.

Final oral exam provides maximum of 40 points.

In order to get positive final grade, students must earn minimum of 55 points

in this exam.

Prerequisites

Linear Algebra and Geometry – ETF LAG I-1160

Discrete Mathematics – ETF RIO DM I-2360

Module title Software Project Organization

Module code ETF RII OSP I-3650

Programme ETF-B RI

Module

coordinator Dr Samir Omanović, Associate Professor

Teaching staff

Dr Samir Omanović, Associate Professor

Dr Razija Turčinhodžić, Assistant Professor

Lejla Kadrić, MoE, TeachingAssistant

Year of study 3

Semester 6

Module type Elective

ECTS 4

Lectures 30

Laboratory

exercises 20

Tutorials 0

Workload –

Independent Study 50

Module outcomes

Students who successfully complete the course will have the following

competencies:

• identify, select and implement organizational and communication

skills necessary for the implementation of the software project;

• adapt to the needs of the team, bearing in mind the circumstances of

the project, the psychological aspects of teamwork and emotional

intelligence;

• manage software as a product;

• have a professional attitude towards software engineering in terms of

accreditation, licensing and certification.

Module content

1. Introduction: The basic elements of a software project, the position

of project participants in the organization of the project.

2. Types of teams on the project, roles, tasks, work products, schedule.

3. Communication on the project: types, mechanisms, problems,

professionalism in communication, solving communication problems.

4. Organizational activities: forming teams, joining the team, meetings,

learning about ways to communicate on the project, reviews - client and

team.

5. Project Planning: work breakdown structure, task scheduling, cost,

schedule, agile aspects, and simple methods of assessment.

Page 75: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 75 of 82

6. Risks of the project: identification, assessment, behavior, reporting.

7. Teamwork: dynamics, cognitive problems, interaction, psychological

aspects, emotional intelligence, overcoming insecurity, overcoming

uncertainty, multicultural environment.

8. Project control: monitoring and reporting, measurement and analysis

results, discipline.

9. Manipulation software products, versioning, change management,

tracking errors.

10. Professionalism in the software engineering, training, accreditation,

licensing, certification.

Literature

Recommended

1. R. E. Fairley, Managing and Leading Software Projects, Hoboken,

NJ: Wiley-IEEE Computer Society Press, 2009.

2. F. Bott, et al., Professional Issues in Software Engineering, 3rd ed.

New York: Taylor&Francis, 2000.

3. B. Bruegge and A. H. Dutoit, Object-Oriented Software

Engineering, 2nd ed., poglavlja 3,13 i 14, Pearson Prentice Hall, 2004.

Additional 1. I. Sommerville, Software Engineering, 9th ed., poglavlja 22, 23 i

25, Addison-Wesley, 2010

Didactic methods

Lectures deal with the basic concepts of software projects organization and

professional behavior in the software engineering. Students are theoretically

and through examples familiarized with the elements of a software project,

organization, communication, planning, risk management, control, and team

work - all from the perspective of project participants. Through lectures are

analyzed problems of software projects organization and positive experiences

related to overcoming them in practice are presented to students. In addition,

students are theoretically and through examples familiarized with

professionalism in software engineering and software products manipulation.

Through lectures are analyzed problems related to professionalism in

software engineering and positive experiences related to overcoming them in

practice are presented to students. Lectures also theoretically handle aspects

related to software products manipulation as well as tools to be used for that

purpose. Laboratory exercises include additional examples of problems that

are closely related to the lectures. Through laboratory exercises are

implemented practical tasks related to: organization, communication, control,

planning, teamwork and manipulation software product, which contributes to

better develop students' competence.

Assessment

Evaluating the success of students in the course is as follows:

• Attendance on lectures and exercises (with maximum of 3 absences)

and / or participation in discussions in class (maximum 10 points).

• Standalone essay (maximum 10 points)

• Two partial exams:

- The first partial exam (maximum 20 points)

- The second partial exam (maximum 20 points)

• Partial exams cover the whole lectures and laboratory exercises.

• Oral exam or a team project (maximum 40 points).

Students that at both partial exams have in sum 20 points or more are allowed

to take the oral exam. Oral exam covers material from the entire semester,

including lectures and laboratory exercises. Instead of an oral exam, students

can choose the team project that demonstrates the practical application of

their knowledge and competences. Projects are presented in the front of other

students and the teacher. All team members must take part in the presentation.

For successful finishing the course it is necessary to have in sum of both

partial exams 20 or more points, pass the oral exam or finish and present a

project, and have in sum 55 or more points for all, including: attendance,

essay, two partial exams and oral exam / team project. Students who have not

passed one of the partial exams take it as the corrective exam. Students who

have not passed both partial exams take them as the corrective exam

composed of both partial exams separately, one after the other, and with the

Page 76: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 76 of 82

duration like on a regular exam.

Prerequisites

Module title Computer Network Administration

Module code ETF RII ARM I-3545

Programme ETF-B CI

Module coordinator Dr Saša Mrdović, Associate Professor

Teaching staff Dr Saša Mrdović, Assistant Professor

Haris Šemić, MoE, Teaching Assistant

Year of study 3

Semester 6

Module type Elective

ECTS 4

Lectures 35

Laboratory

exercises 15

Tutorials 0

Workload –

Independent Study 50

Module outcomes

After successfully passing the course, students should be able to:

identify and describe basic components of computer networks that

include hardware (cables, network devices and computers) and software (OS

and applications that provide network services)

analyze and test existing network systems and find their weaknesses

and a space for improvement

compare different implementations of network services and choose

and recommend the most appropriate one

analyze the need for network services and design a system that

provides them

Module content

1. Introduction and overview of courses Operation Systems and

Computer Networks.

2. Components and organization of computer network.

3. Network and system policy

4. Computer network configuration

5. Operating systems installation

6. Process and system devices management

7. User administration

8. Network services (directory services, DNS, mail, WWW...)

9. Computer network maintenance (updating problem solving...)

10. Security principles (confidentiality, integrity, availability)

11. Security implementation (backup, ssh, SSL, firewall, IDS...)

12. Automation of administration jobs (scripts)

13. Complete example of a computer network implementation.

Literature

Recommended

1. Lecture Notes (to download from Faculty WEB site);

2. Mark Burges, Principles of Network and System Administration,

John Wiley & Sons, 2004.

Additional

1. Thomas A. Limoncelli, Christine Hogan, The Practice of System

and Network Administration, Addison-Wesley Professional, 2007.

2. Creig Hunt, TCP/IP Network Administration, O'Reilly, 2002.

Didactic methods

Teaching activities include lectures and practical work in lab. Lectures

present theory and general principles of each area listed in course content.

During lab work, that is synchronized with lectures, students, monitored and

guided by teaching assistant, analyze practical examples, solve problems,

Page 77: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 77 of 82

install components and learn how to design network services, all based on

principles presented during lectures. Through lectures and lab work student

prepare for project implementation and seminar paper that describes it. There

is continuous evaluation of student preparedness to master knowledge and

skills within course through project implementation phases.

Assessment

During the course students collect point according to the following system:

• Attendance: 10 points

• Partial exams (2 x 10): 20 points

• Project: 20 points

• Seminar paper: 10 points

• Final exam: 40 points

Partial exams are written with short question in form of simple problems.

Project is group work (four students) where students design and implement a

computer network with predefined set of services.

Seminar paper is an essay with technical description of system component

implementation that student was in charge with as a part of the project.

Final exam is an oral exam where students present their participation and

experiences gained through project, and show ability to present and connect

knowledge and skills obtained during course.

Prerequisites

Operating Systems – ETF RIO OS I-1260

Computer Architecture – ETF RIO RA I-2460

Module title Design and Architecture of Software Systems

Module code ETF RII DSS I-3650

Programme ETF-B RI

Module

coordinator Dr Amila Akagić, Assistant Professor

Teaching staff Dr Amila Akagić, Assistant Professor

Zoran Cico, MsC, Teaching Assistant

Year of study 3

Semester 6

Module type Elective

ECTS 4

Lectures 30

Laboratory

exercises 20

Tutorials 0

Workload –

Independent Study 50

Module outcomes

Students who successfully complete the course will have the following

competencies:

• designing large software systems at a high level of abstraction;

• select and apply different architectural concepts in building large

software systems;

• configuration management of large software systems;

• selection and application of Commercial Off-The-Shelf (COTS)

software in building software systems;

• overcoming problems with the complexity, components distribution,

and components integration in large software systems.

Module content

1. Basic characteristics of large software systems (structure, elements,

interaction), aspects of distribution and complexity, integration problems.

2. Architecture of large software systems (characteristics, independent

Page 78: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 78 of 82

of implementation, algorithm and representation, architecture reuse).

3. Designing large software systems at a high level of abstraction,

specification and validation of the system, the impact of context on the

application design.

4. Application of COTS software for rapid construction of large

software systems, compatibility problems, configuration problems, analyzing

the possibilities of the COTS software, COTS software selection.

5. Components integration in large software systems, integration types,

development of software components for software integration.

6. Configuration management of large software systems, problems

caused by a large number of configuration parameters, problems with

interdependences.

Literature

Recommended

1. L. Bass et all., Software Architecture in Practice, 3rd ed., Addison-

Wesley Professional, 2012.

2. B. Bruegge and A. H. Dutoit, Object-Oriented Software

Engineering, 2nd ed., Pearson Prentice Hall, 2004.

3. G.Booch et all., Object-Oriented Analysis and Design with

Applications, 3rd ed., Addison-Wesley Professional, 2007.

Additional 1. I. Sommerville, Software Engineering, 9th ed., poglavlja 10, 13, 17,

18 i 25, Addison-Wesley, 2010.

Didactic methods

Lectures deal with the basic concepts of design and architecture of large

software systems. Students are theoretically and through examples

familiarized with: aspects of distribution and complexity of large software

systems, problems of integration, architectural styles, designing at high level

of abstraction, using COTS software in building software systems and

configuration management. Through lectures are analyzed various problems

related to the design and architecture of software systems and positive

experiences in overcoming them in practice are presented. Laboratory

exercises include additional examples of problems that are closely related to

the lectures. Through laboratory exercises are implemented practical tasks

related to: design, architecture selection, use of COTS software, configuration

management and software integration, which contributes to better develop

students' competence.

Assessment

Evaluating the success of students in the course is as follows:

• Attendance on lectures and exercises (with maximum of 3 absences)

and / or participation in discussions in class (maximum 10 points).

• Standalone essay (maximum 10 points)

• Two partial exams:

• - The first partial exam (maximum 20 points)

• - The second partial exam (maximum 20 points)

• Partial exams cover the whole lectures and laboratory exercises.

• Oral exam or a team project (maximum 40 points).

Students that at both partial exams have in sum 20 points or more are allowed

to take the oral exam. Oral exam covers material from the entire semester,

including lectures and laboratory exercises. Instead of an oral exam, students

can choose the team project that demonstrates the practical application of

their knowledge and competences. Projects are presented in the front of other

students and the teacher. All team members must take part in the presentation.

For successful finishing the course it is necessary to have in sum of both

partial exams 20 or more points, pass the oral exam or finish and present a

project, and have in sum 55 or more points for all, including: attendance,

essay, two partial exams and oral exam / team project. Students who have not

passed one of the partial exams take it as the corrective exam. Students who

have not passed both partial exams take them as the corrective exam

composed of both partial exams separately, one after the other, and with the

duration like on a regular exam.

Prerequisites

Page 79: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 79 of 82

Module title Digital System Design and Synthesis

Module code ETF RII PDS I-3650

Programme ETF-B

Module

coordinator Dr Amila Akagić, Assistant Professor

Teaching staff Dr Amila Akagić, Assistant Professor

Year of study 3

Semester 6

Module type Elective

ECTS 4

Lectures 30

Laboratory

exercises 20

Tutorials 0

Workload –

Independent Study 50

Module outcomes

The overall course objective of this module is to provide fundamental

knowledge of digital system design and synthesis to computer science

students with emphasis on a hardware description language approach. At the

end of this course, students are expected to:

• Describe the design of complex, high speed digital systems (not just

circuits) using a (VHDL based) behavioral synthesis approach.

• Understand the programmable implementation technologies and

modern electronic design automation (EDA) design flows and tools.

• Have hands-on experience in the implementation of digital systems

using programmable logic (e.g. FPGAs).

• Understand how digital building blocks (such as memory chips,

microprocessors, arithmetic circuits etc.) work.

• Understand how to interface microprocessors and computers (from

hardware point of view).

• Test complex digital systems.

• Familiarize with digital system design examples and applications.

Module content

1. Introduction to design methodologies and implementation

technologies. Programmable Logic Devices. PLD Technologies:

Floating Gate/Flash, SRAM and Antifuse Programming Technology.

Basic PLDs: PLAs and PALs. Complex Programmable Logic

Devices (CPLDs), Field Programmable Gate Arrays (FPGAs).

2. Overview of modern FPGA Architectures. Altera Stratix

II/III, Xilinx’s Virtex family, 6-input LUT. Programmable Power

Technology.

3. Review of hardware description languages (HDL) and

behavioural synthesis of digital systems. Basic Language Contructs

of VHDL. Concurrent Signal Assignment Statements of VHDL.

Sequential Statements of VHDL.

4. Simulation of HDL-based digital systems designs through

modern electronic design automation (EDA) software.

5. Synthesis of VHDL Code suitable for implementation on

programmable device technologies. Introduction to basic EDA tools.

VHDL Synthesis flow. Timing considerations. Combinational and

Sequential Circuit Design. Structuring of digital systems designs in

a hierarchical, reusable format.

6. Finite State Machine: Principle and Practice. Overview of

FSM, FSM representation. Timing and performance of an FSM.

VHDL description of an FSM.

7. Principle of register transfer methodology. Introduction to

FSM with a data path (FSMD). FSMD design of a

repetitive/addition multiplier. Timing and performance analysis of

Page 80: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 80 of 82

FSMD. Examples of register transfer methodology: One-shot pulse

generator, SRAM controller, GCD circuit, Square-root

approximation circuit.

8. Hierarchical Design in VHDL. Introduction to components,

generics, configuration, library, subprogram, package and partition.

9. Principles of Clock and Synchronization. Overview of a

clock distribution network. Overview of a multiple-clock system.

10. System-on-chip (SoC) design and intellectual property (IP)

cores. Digital Design Examples and Applications.

11. Reconfigurable Computing.

Literature

Recommended

1. Notes and slides from lectures (available through Faculty website).

2. Pong P. Chu: RTL Hardware Design Using VHDL, Coding for

Efficiency, Portability, and Scalability, Wiley-IEEE Press, 2006

3. Volnei A. Pedroni: Circuit Design with VHDL, Burlington-MA:

Elsevier / Morgan Kaufmann, 2008

Additional 1. Steve Kilts, Advanced FPGA Design: Architecture, Implementation,

and Optimization, Wiley-IEEE Press, June 2007

Didactic methods

The course is conducted through theoretical lectures in which concepts of

digital system design and synthesis are presented. The emphasize is on

presenting modern technologies for designing complex digital systems and

providing many digital desing examples and applications.

During laboratory exercises students solve practical assignments where it is

required from them to analyze the problem and

design complex digital system from scratch.

These activities are organized to enable continuous Assessment through term

paper and practical exercise.

Assessment

During the course students earn points according to the following system:

• Attending classes and tutorials: 10 points, student with more than

three absences from laboratory exercises cannot get these points.

• Term paper: maximum of 10 points. Student is required to prepare

one term paper uniformly distributed throughout the semester.

• Partial exams: two partial exams; each positively evaluated partial

exam with 20 points.

Students who gained less than 20 points during the semester must repeat the

course. Students who earned 40 or more points during the semester will take

a final exam; the exam consists of discussion of problems from partial exams,

home assignments and answers to simple questions related to course topics.

Final oral exam provides maximum of 40 points. In order to get positive final

grade, students must earn minimum of 20 points in this exam. Student failing

to earn the minimum must take the repeat oral exam. Student, who earned 20

or more, and less than 40 points during the semester, will have to take the

repeat exam. The repeat exam is organized in the following manner:

• Written part is structured similarly to partial written exam, during

which students solve problems in topics they failed on partial exams (less

than 10 points);

• Oral part is structured the same as the oral part of the final exam.

Only students who managed to earn total score of 40 or more points in

written part of the repeat exam will be allowed to take the oral part of the

repeat exam, where the mentioned score consists of points earned through

attending lectures, solving home assignments, passing partial exams and

passing the written part of repeat exam. Oral repeat exam provides maximum

of 40 points. In order to achieve positive final grade students must earn

minimum of 20 points in this exam. Student failing to earn the minimum will

have to retake the module.

Prerequisites

Module title Final Thesis

Page 81: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 81 of 82

Module code ETF RIO ZR 36130

Programme ETF-B CI

Module

coordinator

Teaching staff

Dr Zikrija Avdagić, Professor

Dr Haris Šupić, Professor

Dr Dženana Đonko, Professor

Dr Novica Nosović, Professor

Dr Željko Jurić, Associate Professor

Dr Selma Rizvić, Associate Professor

Dr Samir Ribić, Associate Professor

Dr Samim Konjicija, Associate Professor

Dr Saša Mrdović, Associate Professor

Dr Almir Karabegović, Associate Professor

Dr Kemal Hajdarević, Associate Professor

Dr Samir Omanović, Associate Professor

Dr Amila Akagić, Assistant Professor

Dr Vensada Okanović, Assistant Professor

Dr Emir Buza, Assistant Professor

Dr Ingmar Bešić, Assistant Professor

Dr Anel Tanović, Assistant Professor

Dr Vedran Ljubović, Assistant Professor

Dr Dinko Osmanković, Assistant Professor

Year of study 3

Semester 6

Module type Mandatory

ECTS 12

Lectures

Laboratory

exercises

Tutorials

Workload –

Independent Study 300

Module outcomes

In implementing and defending their final thesis students shall:

• master their skills in solving practical problems within the scope of

the study programme and by using theoretical knowledge and practical skills

gained during the study

• improve and demonstrate ability to search literature in the area of

their studies, to interpret relevant data, to make conclusions including

reflections on relevant social, scientific and ethical issues.

• validate their written and oral communication skills, and ability to

transfer information, ideas, and solutions in the written (final thesis) and oral

form (presentation and defence of the thesis

• demonstrate ability to decompose a complex problem, to model and

formally describe the problem, conduct an experiment, and write an expert

technical document

• demonstrate ability to perform a literature review and research

independently.

Module content

1. Problem definition. Hypothesis, task, project. Literature review. Method

selection.

2. Practical work plan. Practical work implementation (software, model,

device). Conducting the experiment. Developed solution verification and

validation.

3. Consultation, for-against debate, adopting suggestions, time planing and

meeting deadlines.

4. Interim text version drafting. Expert and technical writing. Literature

review. Citations. Methods assessment. Interpreting the results. Formal and

visual results presentation.

5. Completing the thesis, adoption of the adviser suggestions and comments.

Page 82: THREE-YEAR BACHELOR STUDY AT FACULTY OF …Integral calculus of single variable real functions I: (Definite/Riemann) integral, primitive functions and fundamental theorems. Riemann

Page 82 of 82

Text editing.

6. Results presentation. Writing presentation. Oral presentation. Presentation

techniques, time and content planning. Focus on important issues and on

personal achievements. Answering questions.

Literature

Recommended Defined in thesis description

Additional Defined in thesis description

Didactic methods

Problem/task/project/hypothesis definition. Guidance and advising.

Deadlines planning. Consultative work. Independent work. Guiding student

through independent literature review. Project/software/device

implementation. Technical paper writing. Validating/systematization/

presenting results. Conducting experiment / simulation.

Assesment

Plan and activities for timely completion: 20 points;

Practical and implementation: 30 points;

Final thesis: 20 points;

Writing presentation: 10 points;

Oral presentation: 20 points.

Prerequisites