29228 - Geometry and Algebra T

Learning outcomes

Knowledge of the main tools in linear algebra (matrices, vector spaces, linear systems, eigenvalues, quadratic forms) and their application in geometry, ensuring both the understanding of the links between the different parts of the theory, and operational capability.

Course contents

THEORETICAL PART

[Set theory] Recall of basic set theory. Set of complex numbers.

[Equations and linear systems] Some algebraic structures (groups, rings, fields). Standard operations on K^n. Linear systems.

[Matrices] Main definitions. Operations. Linear systems and matrices.

[Vector spaces] Main definitions. Vector subspaces. Linear combinations. Sum space. Row space and column space of a matrix.

[Bases] Linear dependence. Bases and dimension. Rank of a matrix. Linear systems.

[Linear maps] Linearity. Isomorphisms. Kernel and image of a linear map.

[Matrix representation of a linear map] Linear maps, bases, matrixes.

[Determinants] Permutations. Determinant and its main properties. Laplace expansion. Inverse matrix. Determinant of an endomorphism. Rank of a matrix. Linear systems.

[Representation of a vector subspace] Rank, kernel, image. Cartesian and parametric representations.

[Eigenvalues and eigenvectors] Eigenvalues and eigenspaces of an endomorphism. Similar matrices. Characteristic polynomial. Diagonalization of matrices.

[Euclidean vector spaces] Inner products and norms induced by inner products. Orthogonality. Orthogonal bases and orthonormal bases. Isometries. Orthogonal complement. Wedge product.

[Euclidean spaces] Euclidean subspaces. Representations of Euclidean subspaces. Parallelism and orthogonality in R^3.

PRACTICAL PART

Computation of determinants and ranks of matrices. Discussion and solution of linear systems. Computation of matrices associated with linear maps. Computation of equations for vector subspaces. Computation of eigenvalues and eigenvectors. Diagonalization of matrices. Exercises on parallelism and orthogonality in R^3. Computation of angles between lines.

Reading

27993 - Mathematical Analysis T-2

Learning outcomes

Refinement and enrichment of basic mathematical tools (series, curves, several types of integral, differential equations) for solving typical problems in applies sciences.

Course contents

The Euclidean space R^n. Differential calculus of functions of several real variables. Ordinary differential equations. Measure and integration in the sense of Lebesgue. Curvilinear integrals and vector fields. Sequences and series of functions. Surfaces and surface integrals. Formulas of Gauss-Green and Stokes.

28006 - Foundations of Informatics T-2

Learning outcomes

The course aims to provide an in-depth concptual & practical knowedlge about the basics concepts, methodologies, technologies and tools for the design and development of medium-size applications according to the object-oriented paradigm.

At the end, the student:

  • knows the methodological foundations for the analysis and development of object-oriented software applications

  • knows the corresponding techniques in depth both from the conceptual and practical viewpoints

  • is able to apply such knowledge and techniques to medium-size applications using the Java language

  • knows in depth the fundamental data structures and related algorithms

  • has the fundamental notions of functional programming in modern OO-blended languages (Java, Kotlin, Scala, C#)

-is able to develop simple graphical user interfaces in JavaFX according to the event-driven programming pattern

Throughout the course, while the Java language and platform are the main reference (and the only one required for assessment in the final examination), a multi-language approach is adopted when introducing concepts and constructs, presenting the Java approch in comparison with other object-oriented languages such as C#, Scala, Kotlin, so as to provide a broader view.

Course contents

Basic concepts of programming languages. Language families — imperative, functional, logic, and object-oriented languages (5hrs).

Introduction to Object-oriented software design in a multi-language perspective: singleton objects, abstract data types, classes and objects. Basic concepts of the Java language and architecture: classes, instances, object construction and deletion, inheritance, polymorphism. Abstract classes, interfaces, multiple inheritance. (30hrs + 12hrs lab)

Lambda expressions and functional interfaces. (12hrs + 6hrs lab)

Exceptions and exception handling. I/O streams and file access, object serialization. Data structures: lists, hashmaps, trees and related algorithms. (20hrs + 12hrs lab)

Introduction functional programming in general and specifically to Java streams. (3rhs)

Basic elements for GUI construction in Java on the JavaFX platform: event-driven programming, event listeners. (10hrs + 10hrs lab)

28011 - Logic Design T

Learning outcomes

Knowledge of models and methodologies to design digital systems.

Knowledge of methodologies for the analysis and design of conbinational circuits and asynchronous and synchronous sequential circuits

Course contents

The course is held in the second semester, from February to June.

Design layers of a digital machine: block description of a machine and verbal description of its behavior. Signal classification. Logic circuits as networks of switches. Logic gates.

Binary representation of information. Properties of codes. Codes to represents texts and numbers.Classification of digital systems: combinational, asynchronous and synchronous circuits.

Combinational logic circuits. Functions, truth tables, and logic diagram views. Commutation Algebra: operations, expressions, and equivalence theorems. Design and analysis through canonical forms and standard forms. Real combinatorial networks: transient and steady-state behavior.

Gate-level minimization with Karnaugh maps.

Standard combinational logic circuits: decoder and multiplexer. Design by means of decoders and OR gates. Shannon’s expansion theorem and design by means of multiplexers. Programmable circuits. ROM as programmable combinational circuits. Three-state buffer.

Binary arithmetic with unsigned and signed numbers. 2-complements representation for signed numbers. Half adder, full adder, and n-bit adder. Arithmetic-Logic Unit (ALU).

The asynchronous sequential logic circuit as a combinational circuit with direct feedback. Behaviors, constraints for correct use and techniques aimed at a priori removal of undesired behaviors. Finite state machine (FSM); description of the behavior by means of state diagram and state table. Design and analysis of asynchronous sequential logic circuits.

Asynchronous sequential logic circuits for binary memories: latches and flip-flops.

The synchronous sequential logic circuit as a combinational circuit with feedback loops based on flip-flops. Timing constraints to choose the clock period. Formal design method for circuits with D flip-flops.

Standard synchronous circuits: registers, shift registers, and counters. Examples of design of synchronous logic circuits containing registers, counters, and shift registers and not based on the conventional graph-based method.

28012 - Electronic Calculators T

Learning outcomes

The course aims at providing basic computer architecture principles focusing on RISC (Reduced Instruction Set Computer) processors such as DLX and ARM. The outcome of the course are methodologies to design systems based on modern microprocessors focusing on interfacing techniques for memory and input/output devices.

Course contents

Microprocessor evolution - Processor hierarchy and design methodologies - RISC architectures and comparison to CISC architectures - Memories and address decoding techniques - Sequential control units - Pieplined control units - I/O handling

30780 - General Physics T

Learning outcomes

Education in the scientific-experimental method; the meaning of the fundamental physical concepts concerning the principles of the mechanics of the point mass; the ability to apply such principles in solving simple physical problems.

Course contents

Introduction to the course

Physics as an experimental science. Physical laws. Physical quantities and their measurements: units and dimensions.

Kinematics

Concepts of space and time. Reference frames. Material point. Trajectory. Parametric equations of motion. Time law. Position, velocity, and acceleration vectors in Cartesian coordinates, polar coordinates, and intrinsic representation. Angular velocity and acceleration.

Dynamics

Concept of force. Weight force. Static measurement of forces. Inertial reference frames. Galilean transformations. The First Principle of dynamics. The Second Principle of dynamics. Support reactions. Study of some simple problems of dynamics of the point mass (motion with elastic force, projectile motion, simple pendulum, motion with friction forces, gravitational force).

Work and energy

Concept of work. Examples of work calculation. Power. Kinetic energy. Work-energy theorem. Potential energy and conservative fields. Conservation of mechanical energy. Non-conservative forces. Examples: calculation of the potential of weight force, elastic force, gravitational force.

Dynamics of systems of points

The third Principle of dynamics (conservation of momentum and angular momentum). Momentum and angular momentum. Impulse of a force. Impulse-momentum theorem. Collisions and impulsive forces. Cardinal equations. Brief outlines of the dynamics of the rigid body.

Electrostatics in vacuum

Triboelectricity. Brief outlines of the structure of matter. Electric charge. Coulomb’s law. Definition of electric field and its vector aspects: field lines, field sources. Gauss’s law in integral and differential form. The electric field as a conservative field: the electrostatic potential. Electrostatic energy density associated with the electric field. Energy of a system of point charges and a continuous charge distribution. Brief outlines of the electric dipole.

Electrostatics with conductors

Conductors and insulators. Electric field inside a conductor. Electrostatic induction. Conductors in equilibrium, hollow conductors, field and charges on the surface of the conductor. Electrostatic shielding. Electrostatic capacity. Capacity calculations: plane, cylindrical, and spherical capacitor. Brief outlines of

electrostatics with dielectrics.

Electric current

Conduction and electric current. Definition of current intensity and unit of measure. Current density vector. Charge conservation law: continuity equation. The two Ohm’s laws: resistance and resistivity. Joule effect.

Magnetic fields in vacuum in the stationary case

Magnetic interaction. Magnetic field lines. Gauss’s law for the magnetic field. Laplace’s second law: magnetic force on a current-carrying conductor. Lorentz force on a moving charge. Mechanical moments on plane circuits. Magnetic dipole moment of the coil. Potential energy of the coil in an external magnetic field. Equivalence between the current-carrying coil and a permanent magnet.

Stationary magnetic fields generated by currents

Laplace’s first law or Biot-Savart: magnetic field generated by a current. Calculations of magnetic fields produced by elementary circuits. Ampère’s law. Magnetic field in an indefinite solenoid. Properties of the magnetic field in vacuum. Brief outlines of

magnetic materials.

Time-varying magnetic and electric fields

Electromagnetic induction and Faraday-Neumann’s law. Lenz’s law and energy conservation. Applications of Faraday-Neumann-Lenz’s law. Self-induction and Inductances. Magnetic energy. Displacement current and Ampère-Maxwell’s law.

Maxwell’s equations

Discussion of Maxwell’s equations in integral and differential form. Brief outlines of electromagnetic waves and the energetic aspects of the electromagnetic field.

Readi

28032 - Applied Mathematics T

28027 - Information Systems T

Learning outcomes

Knowledge of models and tools for organizing, managing and designing relational databases.

Course contents

Database Management Systems (DBMSs)

Information Systems and the role of DBMSs. Basic functionalities of DBMSs: 3-tier architecture, languages, access and concurrency control, fault tolerance.

The Relational Data Model

Basic concepts: domains, attributes, tuples and relations, 1NF relations, null values. Data constraints: on domains, tuples, keys, referential integrity.

The Relational Algebra

Unary operators: selection, projection, and renaming. Binary operators: natural join, union, and difference. Derived operators: intersection, theta-join, and division. Algebra with null values: 3-valued logic, outer join. Expressions and basic equivalence rules.

The SQL (Structured Query Language) Language

Data definition language (DDL) and definition of constraints. The "Select-From-Where" block. Ordering the result. Insert, delete, and update data. Aggregate queries. Nested queries. Definition of views and recursive queries. Granting and revoking authorities and privileges. Triggers. Transactions.

Data Base Design

Data-oriented design. Design steps. Conceptual and logical data models. Basic abstraction primitives.

The Entity-Relationship (E-R) Model

Basic elements: entities, relationships, attributes. Internal and external identifiers. Hierarchies.

Conceptual Design (hints)

Collecting and analyzing requirements. Design strategies. Typical design patterns.

Logical Design

Mapping entities and relationships onto relational tables. Restructuring an E-R schema: dropping hierarchies, managing multi-valued attributes, choosing the principal identifiers. Optimization criteria: Workloads (data volumes and navigation schemas), redundancy analysis, partitioning and merging entities and relationships.

Normalization of Relational Schemas

Functional dependencies and data anomalies. Normal forms (3NF and BCNF). Schema decompositions. Lossless and dependency preservation decompositions. Functional dependencies and E-R schemas.

28029 - Electrotechnics T

Learning outcomes

Methodologies for studying electrical circuits in stationary, sinusoidal and transient operations.

Course contents

Electromagnetism

Magnitudes and equations of the electromagnetic field. Fundamental equations of Electromagnetism: laws of Maxwell, law of Gauss and law of divergence, law of conservation of the charge - laws of material bond.

Circuit Theory

Circuit element and electric circuit, Kirchhoff’s laws, and descriptive laws of the ideal elements: the resistor, the capacitor and the ideal inductor, the independent generators, and the piloted generators. Methods of circuit analysis: general method of analysis, method of elimination of tensions, method of nodes, principle of superimposing effects. Transfer function, Thèvenin theorem, Norton’s theorem. Tellegen’s theorem and power adversities. Transients, first (RC and RL) and second order circuits.

Sinusoidal Regime

Definition of amplitude, radian frequency and phase of sinusoidal quantities. Definition of phasors. Transformation from the time domain to the frequency domain: resistor, capacitor, and inductor and RLC circuit. Series and parallel resonance. Power in AC circuits. Three-phase system definition and properties; Y-connected and D-connected load. Use of the neutral wire. Power in three-phase systems.

Elements of Electrical Machines, Systems and Safety

Transformer; production, transmission and distribution of electricity. Electrical safety elements.

28014 - Foundations of Telecommunications T

Learning outcomes

Basic knowledge on Fourier analysis (continous- and discrete-time signals) and linear systems. Introduction to communication networks. Introduction to ISO-OSI model and TCP/IP protcols.

Course contents

Fourier Analysis (time-continuous signals)

Analysis in the frequency domain of deterministic time-continuous signals. Fourier Series; Fourier Transforms; Dirac’s Delta; Fourier transform of distributions (generalized functions), step signals and periodic signals.

Fourier Analysis (time-discrete signals)

Analysis in the frequency domain of deterministic time-discrete signals. Discrete-Time Fourier Transform (DTFT), Nyquist-Shannon’s sampling theorem, Shannon’s series, Discrete Fourier Transform (DFT), FFT.

Linear systems

Definition of linearity. Impulse response and transfer function of time-invarying linear systems. Non distortion conditions. Ideal, real and FIR filters.

Analog to digital conversion

Analog to digital conversion (PCM).

Generalized Fourier Analysis

Cross and auto correlation functions of deterministic signals. Energy and power spectra.

Modulation Theory

Introduction; analogue modulations (AM, PM, FM, DSB-SC, QAM).

Digital signals

Digital PAM signals. Power spectra of deterministic PAM signals. Extension to ergodic random signals. Bipolar and multi-level encoding, power spectra of multi-level PAM signals. Basic elements of digital modulations, including OFDM. General description of phisical layer of WiFi (IEEE 802.11n, ac and ax).

ISO-OSI model and TCP-IP protocols

Network architectures: layers, protocols and services. ISO-OSI and TCP-IP models.

Layer 2 (link)

Link layer services. Basics of Ethernet (10, 100 e 1000 Mbit/s); CSMA/CD protocol; basics of IEEE 802.11 (WiFi); CSMA-CA protocol, MAC addresses, hubs e switches. The ARP protocol.

Layer 3 (Network)

Network layer services; connection oriented and connectionless protocols (datagram); logical addresses, routing tables, IPv4, basics of IPv6; IP forwarding, NATs.

Layer 4 (Transport)

Transport services; UDP and TCP protocols (ACK, retransmission mechanisms, flow control, congestion control); ports.

DTN

Basics of “challenged networks” and of DTN (Delay-/Disruption-Tolerant Networking) architecture.

Re

28015 - Automatic Controls T

Learning outcomes

The course aims at providing the following basic skills in the area of control theory of dynamical systems: (i) describe a dynamical system via state-space and input-output mathematical models, (ii) analyze the output response of linear time-invariant (LTI) systems, (iii) analyze the stability of LTI systems, (iv) design a feedback controller for LTI systems with a special focus on single-input single-output (SISO) systems, (v) use software tools for the design of a control system.

Course contents

Introduction to automatic control: main objectives and concepts of a control system, and main application fields (automation, robotics, mechatronics, autonomous guidance systems).

Dynamical systems and state-space representation. Examples of state-space dynamical systems in different domains (automation, robotics, autonomous vehicles).

Classification of dynamical systems. Main properties of linear systems. Trajectories and equilibria of dynamical systems. Linearization of nonlinear systems.

Stability of trajectories and equilibria of a dynamical system. Stability of linear time-invariant systems. State feedback control.

Laplace transform and inverse transform. Transfer function. Step response. Response for first and second order systems.

Fourier series and transform. Frequency response. Bode diagrams. Filtering action of dynamical systems.

Introduction to control systems. Root locus. Phase and gain margins. Sensitivity functions. Control specifics and schemes. Frequency domain controller design. Design of main control schemes.

Simulation tools for analysis and design of control systems.

28016 - Electronics T

Learning outcomes

Basic elements of analog and digital electronics

Course contents

MOS transistor, technology and circuits

Elementary analog circuits based on opamps

AD and DA converters

28024 - Computer Networks T

Learning outcomes

This course faces most issues related with network and distributed systems, by examining most common solution methods in a typical industrial setting: the goal is to acquire a knowledge of the solution policies of typical problems, and good exposure to tools and widespread strategies. The knowledge objective is to understand which are the typical programming environments on which to develop some basic solutions with a system programming mindset.

The main ability is to keeping into account the usage of resources and their awareness in all systems layers so to propose solutions to small distributed problems that are acceptable, readable, with a good user interface, and correct.

Students must be capable of defining a complete working solution with some time limitation with the most common tools.

Students must have a good starting knowledge of the basics of operating systems and related tools, both for Windows and UNIX technologies. UNIX is the chosen environment.

In other words, we assume that students have a good knowledge derived from a first course on Operating Systems, apart from some programming capacities in C and Java.

Course contents

The course is organized around the Client /Server model and how to design small applications.

  1. Generalities and Basics Understanding

Some basic perspectives and general definitions

Decentralized and heterogeneous distributed systems

Assessment of standards and their meaning

Some basic models are presented:

client/server interaction

shared memory and message exchange

connection models, interaction models, etc.

  1. System programming

The design mindset keeps into account resorce usage at any system level so to produce in a very ordered way readable, with a good user interface, correct code  and protocols that answer specified requirements.

Students have to follow labs to improve their knowledge habits and complete their knowledge in system programming.

  1. Standard environments

ISO OSI layered organization

network and transport layer

application layers: session, presentation, & application

Presentation of some standard applications.

  1. TCP/IP protocols

Suite TCP/IP protocols: network and transport layer

Common applications:

synchronous services: remote virtual terminal, file transfer,

asynchronous services: mail, news, etc.

Some widely spread tools for Unix and WinXX.

  1. Some reference tools

At the communication level, we work on sockets as a standard tool, independent from the programming environment; at the application level, we present and work on Client/server tools.

Socket and related API for C (UNIX) and Java

Case studies for interactions client/server in Unix systems with TCP/IP protocols.

The client/server application cases are:

Remote Procedure Call RPC of SUN

RMI, remote operations in Java

  1. Distributed Operating Systems and tools

Distributed Operating Systems

Resource naming

Process granularity and their interaction

Resource management

File system

DNS and advanced name systems

28072 - Laboratory of System Administration T

38378 - Reliability and Quality Control

Learning outcomes

Fundamentals of quality control and reliability

Course contents

Requirements/Prior knowledge

A prior knowledge and understanding of the basic course od mathematics and physics is warmly recommended to attend with profit this course

Course Contents

Fundamentals of Probability and Statistics; fundamentals of metrology; definitions in the field of Reliability; Availability and Reliability functions, MTTF, MTBF, MTTR, reliability of mission; hazard models, reliability analysis of components and systems; degradation models; FMEA, FMECA, FTA, accelerated and truncated life tests, exponential and Weibull functions. Statistical Process Control, control charts for variables (x, R, S) and attributes (p, c, u). Capability process index, ARL, ATS

The course includes numerical exercises on the main topics.

B0832 - AMMINISTRAZIONE DI SISTEMI T

32099 - Computer Law T

Learning outcomes

The course aims at providing future engineers with the essential knowledge tools to:

a) become aware of the existence of legal issues related to information and communication technologies;

b) understand how to be able to develop and use such technologies in a law-abiding way;

c) develop the ability to autonomously manage projects with a wider perspective, which includes understanding the related legal aspects;

d) interact with lawyers and legal experts in a qualified way.

Course contents

Introduction to the course

Why should an engineer study law? Objectives of the course. Structure of the course and lecture plan.

Basic legal concepts

What is the law. The concept of legal norm. The sources of law. Effectiveness of the law in time and in space. Criteria for the application of the law. Interpretation of the law. Relevance of court decisions. Natural and legal persons. Legal capacity and capacity to act. Obligations. Liability. Guided analysis of laws and court decisions.

Access and consultation of legal sources

The search for legal information: what to search and where to search for. Official and non-official sources. On-line and off-line legal databases. Institutional websites. Legal portals. The sources of the Bologna University Library System (SBA, Sistema Bibliotecario di Ateneo). Legal journals, codes and manuals. Guided search in legal databases. Training in the search for legal sources.

Copyright

The legal framework on copyright in the Italian legal system. Software, databases, multimedia works, websites. Proprietary and Open Source software. The ownership of software developed within research projects/in a company/on the basis of a professional consulting contract. Musical and cinematographic rights. Peer to peer. Digital Rights Management. Protection of domain names. Sanctions. Guided analysis of case studies and court decisions.

Industrial property

The Consolidation act on industrial property. Trademarks, domain names and patents. Patent protection of software. Patent applications. The claims. National and international patent databases. Patent searches; guided analysis of patent examples.

Software contracts

The concept of contract. Legal requirements of the contract. Voidness and voidability of contracts. Nominate and innominate contracts. Main types of contracts useful for the engineer. Transfer of the economic rights on software. Software licenses, open source licenses. Creative commons. Software development contracts. Guided analysis of contracts and relevant clauses.

Data protection and security

The legal concepts of privacy and confidentiality. The processing of personal data in the Information Society: general principles. Information obligation and consent. Rights of the data subject. Sensitive Data. Minimum and adequate security measures. User profiling on the Internet. Sanctions.Guided analysis of information documents, privacy clauses.

Electronic/digital signatures and electronic documents

Documents and signatures: basic legal principles. Digital signatures and cryptography: some technical notes. Electronic signatures: types and legal discipline. The electronic document: definition, validity and legal relevance, admissibility as evidence before court. The legal validity of e-mails, web pages, electronic registers. The certification of digital signatures. Certified e-mail (PEC). Optical archiving and conservation of electronic documents. Guided analysis of cases and court decisions.

Electronic commerce

Types of electronic commerce. Information Society Services. Obligations and responsibilities of on-line service providers. Liability of intermediaries (mere conduit, caching, hosting). Commercial communications. Contracts made with electronic means. Electronic payments. The protection of consumers on-line. Right of withdrawal from on-line contracts for consumers. Vexatious clauses. Resolution of on-line disputes. Guided analysis of cases, e-commerce web sites and on-line contract clauses.

Computer crimes

Basic elements of criminal law: concepts of crime, fault and intentional wrongdoing, the principle of strict application. Illicit access to an IT system. Detention and diffusion of codes of access to IT systems. Damaging or interruption of an IT or distance-communication system. Illicit interference in electronic communications. IT fraud. Guided analysis of court decisions.

B0833 - LABORATORIO DI SICUREZZA INFORMATICA T

94442 - Design of Web Applications T

Learning outcomes

At the end of the course, the student masters the principles of the design and development of Web applications, with particular attention to data-intensive applications.

Course contents

Models for Designing Web Applications

Data model: E/R e UML

Hypertext model (WebML)

Content management model (WebML)

Design of Web Applications

Overview of the development process

Requirements specifications and data design

Hypertext design in WebML

Implementation of Web Applications

Architecture design and multilayer organisation: Services, Business Logic, and Application

Data implementation

Hypertext implementation

Tools for model-based development of Web applications: Web Ratio and IFML

Services: Models and technologies for the effective and efficient management of the impedance mismatch

Direct access to databases: Interfaces and abstractions

Object-based architectures vs. relational databases: The impedance mismatch

Methodologies for persistence designing and developing: The "brute force" approach (JDBC), pattern DAO, and Object-Relational Mapping (ORM) - Entity Beans - Hibernate library

Services: Transactional models

Isolation levels

Transactional models: JDBC, JTA e Hibernate

Data description and XML

Descrizione delle informazioni: XML e XHTML

Tipizzazione di XML: DTD vs. XML Schema

Accenni a XSL e XSLT

XML e Java: Parser XML (modelli DOM e SAX)

N.B. Significant part of the course is dedicated to carrying out guided laboratory exercises. A good knowledge of Java language and its application framework is required, as well as the fundamentals of Web Technologies and Databases.