Business Information, Communication Technologies, Decision Making, Information technology tools, Information literacy, Introduction to Databases. Two...
Introduction to logic and proof techniques; functions, relations, and sets; counting; trees and graphs; concepts are illustrated using computational...
A first course in computer science, focusing on the practice of problem solving, in the context of interesting software applications. Problem...
Introduction to disciplined programming; programming environments; debugging; imperative programming constructs; values and types; libraries; file...
Organization of microcomputers (hardware and operating systems) and overview of computer communications; introduction to information exchange using...
Searching, sorting, dynamic programming, greedy algorithms, abstract data structures, balanced trees, hashing, graphs, design principles, complexity,...
Measures of performance, instruction set architecture, computer arithmetic, datapath and control, pipelining, the memory hierarchy, I/O systems,...
Oral and written presentation skills; types and structure of technical documents; software documentation for the user; formulating and presenting...
Software development models; modularization; information hiding; specification and abstraction; software requirements; software maintenance; metrics;...
Basic computer technology: gates, registers, memory; machine programming; arithmetic: representations, arithmetic/logic unit, floating point systems;...
Finite state machines, regular languages, regular expressions, applications of regular languages, grammars, context-free languages, models of...
Fundamental concepts of imperative programming (procedures, statements, control structures, iteration, recursion, exceptions); basic data structures...
Physical networks, TCP/IP protocols, switching methods, network layering and components, network services.
Data modelling, integrity constraints, principles and design of relational databases, relational algebra, SQL, query processing, transactions,...
Formal specifications in software development; logical formalisms; functional and relational specifications; completeness and consistency of...
Mathematical foundations, the graphics pipeline, geometrical transformations, 3D visualization, clipping, illumination and shading models and the...
Basic principles of information security; threats and defences; cryptography; introduction to network security and security management. Three...
Design space of programming languages; abstraction and modularization concepts and mechanisms; programming in non-procedural (functional and logic)...
Software requirements gathering. Critical systems requirements gathering. Security requirements. Traceability of requirements. Verification,...
Processes and threads, synchronization and communication; scheduling, memory management; file systems; resource protection; structure of operating...