[Alt key + 1] Skip to content
[Alt key + 2] Skip to main menu
[Alt key + 3] Skip to second level menu
School Research People Services Events
course units 2016-2017
bsc planning
computer science tools

Computer science tools

Course unit code: 40002453


The students will be introduced to some of the main methods and tools for automatic data processing and computer-based problem solving. More in detail, as a main outcomes of the course the students will be able: to develop computer programs for solving simple computational problems; to design and implement a database according to the relational model; to develop spreadsheets aimed at non-trivial data processing and analysis; to devise and implement models aimed at studying the dynamical behaviour of complex systems, using in particular the system dynamics and agent-based modelling approaches.


Knowledge of some relevant topics from the course of Mathematical Analysis and Geometry.


Introductory elements: information and data; problems involving automatic data processing; information encoding and decoding. Introduction to algorithms and computer programming. Introduction to the Snap! language: development and analysis of programs for solving simple computational problems (with particular reference to classical and elementary numerical analysis algorithms). Introduction to databases: DBMS; database models and the relational model; concepts on databases design. Introduction to computational simulation: the System Dynamics approach and its application to the simulation of complex systems; agent-based modeling (movement of pedestrians and road traffic) and development of relevant applications for urban planning and architecture design. Laboratory activity: development of numerical analysis algorithms; design and implementation of a relational database; advanced use of spreadsheets; development of dynamic models of complex systems with Anylogic; design and implementation of agent-based simulation models with Anylogic.

Teaching Methods

The course includes both lectures and practical activities to be performed on the student's laptop. Several lessons are dedicated to guided activities that allow students to explore and practice with the relevant topics and concepts using suitable software tools. The specific versions of the free software to be installed will be communicated at the beginning of the course unit. Among the proposed software environments, the students will be involved in using the Snap! programming Language, designed at the University of California, Berkeley. Snap! is a visual programming language designed to allow students to focus on concepts and skills rather than syntax when learning to program. Moreover, the students will learn basic and advanced concept of Anylogic, which is a powerful multimethod simulation software that supports Discrete Event, Agent Based, and System Dynamics Simulation. The typical Anylogic applications developed during the guided lessons include the simulation of system dynamics models (e.g. involving phenomena like demography, labour resources, real estate market, cycles in the construction sector, social sphere) as well as pedestrian simulation, crowd simulation and traffic simulation.

Verification of learning

The course includes three intermediate tests, which corresponds to three electronic documents to be submit to the teacher within the assigned deadline, plus an optional oral test. As an alternative to the aforementioned intermediate tests, students can opt for a written plus oral examination.


- Course notes (provided)
- The Snap! Reference Manual: http://snap.berkeley.edu/SnapManual.pdf
Snap! examples and extensions: http://snap.berkeley.edu/#help-examples
- Beauty and Joy of Computing curriculum: http://bjc.berkeley.edu/
- AnyLogic 7 in Three Days: A Quick Course in Simulation Modeling Author: Ilya Grigoryev Publication date: December 8, 2014
- Andrei Borshchev, The Big Book of Simulation Modeling. Multimethod Modeling with AnyLogic 6
- Material available on the Web (links provided during the lessons)

More Information

The lecturer is willing to offer individual assistance to incoming students and to accept examination also in English. Most of the supporting material and bibliographic references are in English.

increase font size
decrease font size
printable version
save page in PDF format
Computer science tools

1° year | 6 ECTS credits

Academic year:
Mode of delivery:
in presenza/face to face


Type of course unit:
A - Attività di base
Subject area:
MIS - Matematica, informatica e statistica
Scientific Disciplinary Sector:
ING-INF/05 Sistemi di elaborazione delle informazioni
Hours of lectures:
Total contact hours:
Hours of private study:
Language of instruction: