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.
Further details at the web page http://www.dm.unibo.it/~frosini/programmi/programmacorso2023.shtml
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
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.
-
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.
-
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.
-
Standard environments
ISO OSI layered organization
network and transport layer
application layers: session, presentation, & application
Presentation of some standard applications.
-
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.
-
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
-
Distributed Operating Systems and tools
Distributed Operating Systems
Resource naming
Process granularity and their interaction
Resource management
File system
DNS and advanced name systems
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.
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.
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.