Course 2019-2020 a.y.

20591 - COMPUTER PROGRAMMING AND DATABASE SYSTEMS

Department of Decision Sciences

Course taught in English
Go to class group/s: 23
DSBA (8 credits - I sem. - OB  |  SECS-S/01)
Course Director:
CARLO LUCIBELLO

Classes: 23 (I sem.)
Instructors:
Class 23: CARLO LUCIBELLO


Mission & Content Summary

MISSION

Scope of the course is to provide the students with a wide range of skills and knowledge in computation and data management/analysis, which are extensively used throughout the whole education program. While not strictly mandatory, some previous exposure to computer programming (and in particular to the Python language) is highly recommended for this course.

CONTENT SUMMARY

  • Fast and furious introduction to Python.
  • Advanced programming techniques.
  • Scientific libraries (Numpy, Scipy).
  • Data manipulation with Pandas.
  • Relational databases (SQLite).
  • Non-relational databases (MongoDB).
  • The Google Cloud Platform.
  • Parallel and distributed computation.
  • Large scale data analysis (PySpark).

Intended Learning Outcomes (ILO)

KNOWLEDGE AND UNDERSTANDING

At the end of the course student will be able to...
  • Describe fundamental programming strategies and the functioning principles of database systems.

APPLYING KNOWLEDGE AND UNDERSTANDING

At the end of the course student will be able to...
  • Read/write advanced Python codes.
  • Master object-oriented programming.
  • Develop codes for algorithmic problem solving.
  • Handle large scale databases.

Teaching methods

  • Face-to-face lectures
  • Exercises (exercises, database, software etc.)

DETAILS

Exercises consist in programming assignments to be done in class under the supervision of the Instructor and Teaching Assistants.


Assessment methods

  Continuous assessment Partial exams General exam
  • Oral individual exam
    x
  • Individual assignment (report, exercise, presentation, project work etc.)
    x

ATTENDING AND NOT ATTENDING STUDENTS

  • The written exam consists in programming exercises to be performed at the PC in the computer room. This contributes to 70% of the final grade.
  • The individual assignment consists in a programming code to solve a concrete database problem, to be developed individually and described through a written report, which is evaluated by the teachers. This contributes to 30% of the final grade.

Both parts are used to asses both the "knowledge and understanding" and the "applying knowledge and understanding" learning   objectives.


Teaching materials


ATTENDING AND NOT ATTENDING STUDENTS

The textbooks are communicated prior to the start of the course. Handouts of each lecture and sample codes are provided.

Last change 05/06/2019 21:14