| Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
| mds:lbi:start [04/06/2026 alle 16:01 (4 mesi fa)] – [Class calendar - (2025-2026)] Anna Monreale | mds:lbi:start [17/09/2026 alle 16:06 (38 ore fa)] (versione attuale) – [Software] Anna Monreale |
|---|
| ====== Decision Support Systems - Module II (6 ECTS): LABORATORY OF DATA SCIENCE (2025/2026) ====== | ====== Decision Support Systems - Module II (6 ECTS): LABORATORY OF DATA SCIENCE (2026/2027) ====== |
| This is the second module of [[mds:dss:start|Decision Support Systems]] (801AA, 12 ECTS), previously called Laboratory of Data Science (664AA, 6 ECTS). | This is the second module of [[mds:dss:start|Decision Support Systems]] (801AA, 12 ECTS), previously called Laboratory of Data Science (664AA, 6 ECTS). |
| |
| * Telephone +39-050-2213119 | * Telephone +39-050-2213119 |
| |
| **Cristiano Landi** | * **Cristiano Landi** |
| * KDD Laboratory, Univesità di Pisa | * KDD Laboratory, Univesità di Pisa |
| * [[cristiano.landi@phd.unipi.it]] | * [[cristiano.landi@phd.unipi.it]] |
| * Office hours: Wednesday: 14:00-16:00 online using Teams or at the Department of Computer Science, room 343 (Please ask for an appointment by email). | * Office hours: Monday: 11:00-13:00 online using Teams or at the Department of Computer Science, room 343 (Please ask for an appointment by email). |
| |
| **Always email both instructors and include [LDS] at the beginning of the subject line.** | **Always email both instructors and include [LDS] at the beginning of the subject line.** |
| |
| ^ Day of Week ^ Hour ^ Room ^ | ^ Day of Week ^ Hour ^ Room ^ |
| | Tuesday | 9:00 - 11:00 | Fib H-Lab | | | Tuesday | 11:00 - 13:00 | Fib H-Lab | |
| | Wednesday | 11:00 - 13:00 | Fib C1 | | | Wednesday | 11:00 - 13:00 | Fib C1 | |
| | Thursday | 11:00 - 13:00 | Fib C | | | Thursday | 14:00 - 16:00 | Fib C | |
| | Friday | 09:00 - 11:00 | Fib C | | | Friday | 09:00 - 11:00 | Fib C | |
| |
| |
| A [[https://teams.microsoft.com/l/channel/19%3Aead0080c194243dbabdc9ef2b826d701%40thread.tacv2/Module%20II%20-%20Laboratory%20of%20Data%20Science?groupId=a9d127ae-4a11-4a6b-a045-555d1bab8b85&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Teams channel]] is used to post news, Q&A, and other stuff related to the course. The lectures will be only in person and will **NOT** be live-streamed, but recordings of the lecture from this or the previous years will be made available for non-attending students. The recording publication could receive some delays (one week of delays). | A [[https://teams.microsoft.com/l/channel/TBD|Teams channel]] (TBD) is used to post news, Q&A, and other stuff related to the course. The lectures will be held in person only and will **NOT** be live-streamed, but recordings of the lectures from this or previous years will be made available to non-attending students. The recording publication could receive some delays (one week of delays). |
| |
| ====== Learning Material ====== | ====== Learning Material ====== |
| * Recordings of each lecture will be made available for non-attending students. | * Recordings of each lecture will be made available for non-attending students. |
| ===== Past Exams ===== | ===== Past Exams ===== |
| | To prepare yourself for the practical test, you can use these past exam exercises on: programming (using Python instead of Java), SSIS, and MDX. |
| |
| * {{ :mds:lbi:2016midterm1text.pdf |2016/17 text}}, {{ :mds:lbi:2015fallmidterm1text.pdf | 2015/16 text}} and {{ :mds:lbi:2015wintermidterm1.zip | 2015/16 solution}}, {{:mds:lbi:2015midterm1text.pdf | 2014/15 text}} and {{ :mds:lbi:2015midterm1.zip |2014/2015 solution}}, {{ :mds:lbi:2014midterm1text.pdf | 2013/14 text}},{{ :mds:lbi:2013midterm1.pdf | 2012/13 text }} and {{ :mds:lbi:2013midterm1.zip |2012/13 solution}}. | * {{ :mds:lbi:2016midterm1text.pdf |2016/17 text}}, {{ :mds:lbi:2015fallmidterm1text.pdf | 2015/16 text}} and {{ :mds:lbi:2015wintermidterm1.zip | 2015/16 solution}}, {{:mds:lbi:2015midterm1text.pdf | 2014/15 text}} and {{ :mds:lbi:2015midterm1.zip |2014/2015 solution}}, {{ :mds:lbi:2014midterm1text.pdf | 2013/14 text}},{{ :mds:lbi:2013midterm1.pdf | 2012/13 text }} and {{ :mds:lbi:2013midterm1.zip |2012/13 solution}}. |
| |
| * Anaconda | * Anaconda |
| * SQL Server 2019 Management Studio or newer:[[https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16|SQL Server 2019 Management Studio]]. | * Since SQL Server 2019 Management Studio or newer:[[https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16|SQL Server 2019 Management Studio]]. |
| * Visual Studio Community 2022. Install/include SSDT workload in the installation manager of Visual Studio: instructions Italian: [[https://learn.microsoft.com/it-it/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15#ssdt-for-visual-studio-2022|Data Tools Visual Studio 2022 IT]] English: [[https://learn.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15#ssdt-for-visual-studio-2022|Data Tools Visual Studio 2022 EN]]. | * Since Visual Studio Community 2022. Install/include SSDT workload in the installation manager of Visual Studio: instructions Italian: [[https://learn.microsoft.com/it-it/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15#ssdt-for-visual-studio-2022|Data Tools Visual Studio 2022 IT]] English: [[https://learn.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15#ssdt-for-visual-studio-2022|Data Tools Visual Studio 2022 EN]]. |
| * Microsoft Excel | * Microsoft Excel |
| * [[https://powerbi.microsoft.com/it-it/desktop/| Power BI Desktop]] | * [[https://powerbi.microsoft.com/it-it/desktop/| Power BI Desktop]] |
| * [[https://start.unipi.it/help-ict/vpn/ | Unipi VPN ]] | * [[https://start.unipi.it/help-ict/vpn/ | Unipi VPN ]] |
| * [[https://autenticazione.unipi.it/auth/auth.signin | Unipi Authentication]] to access the VPN, make sure that network access services are enabled on your profile. Follow this link to access your Unipi profile. | * [[https://autenticazione.unipi.it/auth/auth.signin | Unipi Authentication]] to access the VPN, make sure that network access services are enabled on your profile. Follow this link to access your Unipi profile. |
| ====== Class calendar - (2025-2026) ====== | * Access to the SQL server: please write an email to the teachers to get the info |
| ^N. ^ Day ^Room ^ Topic ^Lecture Material ^ Video Lectures ^ Refs ^ | |
| |1.|01.10| |Introduction to the Course. BI Architectures. File data access. |{{ :mds:lbi:2025-lds.01.introduction.pdf |}} {{ :mds:lbi:2025-lds.02.bi_architectures.pdf |}} {{ :mds:lbi:2025-lds.03.file_data_access.pdf |}} |[[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQDh0G1PpN6sT6CsDcFP6rcCARFDfU1sHLWvevsVzH__aYI?e=VVvwW7|Video]] |-** BI technology:** [[https://cacm.acm.org/magazines/2011/8/114953-an-overview-of-business-intelligence-technology/fulltext | An Overview of Business Intelligence Technology]] - **File access:** {{ :mds:lbi:filesystem.pdf | File System Interface}} | | |
| |2.|02.10| |File data access. Python Recap. | {{ :mds:lbi:2025-lds.04.python_no_hint.pdf | Python Recap}} {{ :mds:lbi:2024-lds.04_supplementary.code.zip | supplementary code}} | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQDpwaIIRE7kR59OFasMQnGrARRFlLnNYNHuccTtZXQ6vdU?e=3nhEFt|File data access]] [[https://tinyurl.com/337t8hxf|Python Recap (from previous years)]] | - **File Formats:** [[http://www.stat.auckland.ac.nz/~paul/ItDT | Introduction to data technologies(Chps. 5, 6)]], [[http://weka.wikispaces.com/ARFF+(stable+version)|Weka ARFF Format]], [[http://weka.wikispaces.com/XRFF|XRFF Format]] - **Python reference:** [[https://www.spronck.net/pythonbook/ | Free python book with exercises]] | | |
| |3.|22.10| |Project Presentation + Python Excercises + File Access in Python |{{ :mds:lbi:2025-lds.05.fileaccess-python.pdf |}} {{ :mds:lbi:2025-10-23-code.zip |}} |[[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQB5nDV9rjo7SrjShEp85YBPAbPYpxpTrq7LGKmthX-kE6w?e=KrlfP9|Project Presentation]] [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQBEFtKr75UVQYDVYHjE7LHYAbL0XEMoA2aCGHvphTEg73Q?e=M8fUNQ|File access Py]]| | |
| |4.|29.10| |Python File Access + Exercises | same slides used in the previous lecture{{ :mds:lbi:data1.zip | Data ex files}} | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQDMPfG7S6G0QKu3-hvN1pRNAZiDPUVuXhHlDjeQlD6-qX8?e=W2T6zj|Video]] | | |
| | |30.10| |Lecture canceled | | | |
| |5.|04.11| |RDBMS access protocols + Python DB Access | {{ :mds:lbi:2024-lds.06.relational_data_access.pdf | Slides}} | | |
| |6.|05.11| |Exercises correction + Stratified sampling Exercise | {{ :mds:lbi:lds05_fileaccesspython_solutions.zip |}} {{ :mds:lbi:ex-customers.pdf |}} {{ :mds:lbi:data-customers.zip|}} | | | |
| |7.|11.11| Fib H|Python DB Access: exercises | {{ :mds:lbi:stratifiedsampling.zip |}} | | | |
| |8.|13.11| Fib C |SQL Server + SSIS + ToCSV + FromCSV| {{ :mds:lbi:2024-lds.07.sqlserver.pdf |SQL SERVER}} {{ :mds:lbi:2024-lds.08.etlandssis.pdf | SSIS}} |[[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQD7nBKuQMn2T4uPA28VKrm_AfY_DcoRW8at7xwcPkfDHZA?e=vo3Lfi|SISS-Part1]] [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQD9kEOKGLhpToMk41gH9ikSAVKYBWiH3egoU888EmkVKh0?e=loKj3J|SSIS-Part2 includes SQL Server Connection by Management Studio]] | | |
| |9.|14.11| Lab H |SSIS: Pipeline + Stratified Sampling assignmt| | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQBmsWKTFkCPSbiCe2BaveyTATyy8FlAzaLqw60uwBpLhJo?e=3DOuJE|Pipeline-Worksflows]]| | |
| |10.|18.11|Lab H |Correction of exercise in python on customers | {{ :mds:lbi:2025_excustomer_sol.zip | ExCustomer sol}} |[[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQBHQr2Y2ZZSQrm9wm8FWwDZAZKDita_Y36dUWYoeeJ7LlM?e=jFgkBP|Correction Python Excercise on Customers]]| | |
| |11.|19.11|Lab I |SSIS:Update, Surrogate Keys | | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQBjYKiUz8BZR68-hqrdmrxUAcFto20QK4okEdRRlnKC4Tw?e=VNf9pv|Video]]| | |
| |12.|20.11| Fib C | Correction of Stratified Sampling + SCD workflow for new customers | | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQD4y5RXLCDAQZEMM9iJ0BbkAbJwUcYo-yZO1VmT9TnGWaw?e=x1bpzr|Video]]| | |
| |13.|21.11|Lab H | SCD workflow for update customers + SSIS practice |{{ :mds:lbi:ssis_dissimilarity_idx.pdf |Dissimilarity}} {{ :mds:lbi:2015midterm1text.pdf | MPD}} | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQD2Bb5-iJQaTorx40XlgsHjAdO_so2YLUVHCub0JIvp_5Y?e=mOReyv|Video]]| | |
| |14.|25.11|Lab H | SSIS practice + Solutions of Dissimilarity and MPD| | [[https://unipiit.sharepoint.com/:v:/s/a__td_69781/IQAS8i9_GYxyTax_x1t8OdgJARZVvDauNw62C8e4gdPN9zo?e=JcJ7ma|Video]]| | |
| |15.|26.11|Lab I | CDC Process | | | | |
| |16.|27.11|Fib C | Introduction to SSAS + DW | {{ :mds:lbi:2024-lds.09.dwandolap.pdf | SSAS Intro}} | |1) SSAS (olap): documentation; 2) S. Harinath et al. Professional Microsoft SQL Server Analysis Services 2012 with MDX and DAX, Wrox publisher, 2012. Chps. 4-6 | | |
| |17.|28.11|Lab H | Olap Cube| {{ :mds:lbi:2024-lds.09.ssas.pdf |slides}}{{ :mds:lbi:foodmart_monreale_full_2025.zip |}} Instructions for the SSAS project: to avoid conflicts in deployment/process follow this steps once the solution is opened: (1) rename the project as <your account>_foodmart (2) from project properties select 'Deployment', then rename the database as <your account>_foodmart; (3) click on the button “show all files” just above “Solution explorer” right click on “view code” on the .database file that is visualized, and then change the ID from current name into <your account>_foodmart, and finally save the file. (4) change the credentials of connection to database on SQL Server.| | |
| |18.|02.12|Lab H | PROJECT CHECK -MANDATORY | | | | |
| |19.|03.12| | Metrics + Excel power pivot integration | Same slides as in the previous lectures | | |
| |20.|05.12| Lab H | MDX Queries | Same slides as in the previous lectures | | |
| |21.|09.12|Lab H | MDX Queries | Same slides as in the previous lectures | | |
| |22.|10.12|Lab H | MDX Queries | Same slides as in the previous lectures |{{ :mds:lbi:2024-12-05-queries-demomdx.zip | MDXSolutions}} | | |
| | |12.12|Lab H | Strike | | | |
| |23.|17.12|Lab H | PowerBI + MDX practice| Same slides as in the previous lectures| | |
| |
| | ====== Class calendar - (2025-2026) ====== |
| | ^N. ^ Day ^ Topic ^ Lecture Material ^ Video Lectures ^ Refs ^ |
| | |1. |18.09| Introduction to the Course. BI Architectures. File data access. | | | - **BI technology:** [[https://t.ly/GzjU2 | An Overview of Business Intelligence Technology]] - **File access:** {{ :mds:lbi:filesystem.pdf | File System Interface}} | |
| | |2. |22.09| File data access. Python Recap. | | | - **File Formats:** [[https://t.ly/vemcp | Introduction to data technologies(Chps. 5, 6)]], [[https://t.ly/Ce3Ls|Weka ARFF Format]], [[https://t.ly/Es_Gv|XRFF Format]] - **Python reference:** [[https://t.ly/GGKbT | Free python book with exercises]] | |
| | |3. |23.09| Project Presentation + Python Excercises + File Access in Python | | | | |
| | |4. |24.09| Python File Access + Exercises | | | | |
| | |5. |06.10| RDBMS access protocols + Python DB Access | | | | |
| | |6. |13.10| Exercises correction + Stratified sampling Exercise | | | | |
| | |7. |20.10| Python DB Access: exercises | | | |
| | |8. |27.10| SQL Server + SSIS + ToCSV + FromCSV| | | |
| | |9. |28.10| SSIS: Pipeline + Stratified Sampling assignmt| | | |
| | |10. |29.10| Correction of exercise in python on customers | | | |
| | |11. |03.11| SSIS:Update, Surrogate Keys | | | |
| | |12. |11.11| Correction of Stratified Sampling + SCD workflow for new customers | | | |
| | |13. |17.11| SCD workflow for update customers + SSIS practice | | | |
| | |14. |18.11| SSIS practice + Solutions of Dissimilarity and MPD| | | |
| | |15. |19.11| CDC Process | | | |
| | |16. |24.11| Introduction to SSAS + DW | | | 1) SSAS (olap): documentation; 2) S. Harinath et al. Professional Microsoft SQL Server Analysis Services 2012 with MDX and DAX, Wrox publisher, 2012. Chps. 4-6 | |
| | |17. |25.11| Olap Cube| Instructions for the SSAS project: to avoid conflicts in deployment/process follow this steps once the solution is opened: (1) rename the project as <your account>_foodmart (2) from project properties select 'Deployment', then rename the database as <your account>_foodmart; (3) click on the button “show all files” just above “Solution explorer” right click on “view code” on the .database file that is visualized, and then change the ID from current name into <your account>_foodmart, and finally save the file. (4) change the credentials of connection to database on SQL Server.| |
| | |18. |27.11| PROJECT CHECK -MANDATORY | | | |
| | |19. |01.12| Metrics + Excel power pivot integration | | |
| | |20. |03.12| MDX Queries | | | |
| | |21. |04.12| MDX Queries | | | |
| | |22. |09.12| MDX Queries | | | |
| | |23. |10.12| PowerBI + MDX practice| | | | |
| |
| |
| ====== Exams ====== | ====== Exams ====== |
| |
| The exam of Decision Support Systems (801AA, 12 ECTS) consists of a written part and an oral part on the topics of the first module (50% of the final grade), and a lab project or written test with discussion on the topics of the second module (50% of the final grade). See [[mds:dsd:start|Module I: Decision Support Databases]] for the theory part. **The project of Module II can be discussed only after passing Module I and not later than one year since then.** | The exam of Decision Support Systems (801AA, 12 ECTS) consists of a written part and an oral part on the topics of the first module (50% of the final grade), and a lab project or written test with discussion on the topics of the second module (50% of the final grade). See [[mds:dsd:start|Module I: Decision Support Databases]] for the theory part. **The project of Module II can be discussed only after passing Module I and not later than one year since then.** |
| |
| The lab project has to be submitted within the specified deadline that will be communicated asap. | The lab project must be submitted by the specified deadline. |
| If the project is not submitted within the deadline, a practical test and a discussion on the topics of the second module will be required for the exam instead. | If the project is not submitted within the deadline, **a practical test and a discussion on the topics of the second module will be required for the exam instead**. |
| |
| |
| **PROJECT ** | **PROJECT ** |
| |
| A project consists of a set of assignments corresponding to a BI process: data integration, construction of an OLAP cube, querying of the OLAP cube, and reporting. | A project consists of a set of assignments corresponding to a BI process: data integration, construction of an OLAP cube, querying of the OLAP cube, and reporting. |
| |
| The project has to be performed by a team of 3 students. | The project has to be performed by a team of 3 students. |
| * Project assignments: {{ :mds:lbi:lds_project_2025-2026_-_20251218.pdf | LDS Project 2025-26 **Updated dec 18th 2025**}} | * Project assignments: |
| * Data: [[https://unipiit-my.sharepoint.com/:u:/g/personal/c_landi7_studenti_unipi_it/EZPEZTUo4ZBDqAbPfp3uGXUBFph9TafaN7o4oSlrz6GE6w?e=EZCAYM|Data]] | * Data: |
| |
| |
| Please indicate in the notes "Only Lab" for doing only the discussion of the lab project; "Only DSD" for doing only the written+oral part of the DSD module; or "DSD+Lab" for doing both. | Please indicate in the notes "Only Lab" for doing only the discussion of the lab project; "Only DSD" for doing only the written+oral part of the DSD module; or "DSD+Lab" for doing both. |
| |
| **Important:** The date of the discussion of the lab project will be communicated to you by the instructors. The dates reported in the | |
| | **Important:** The date of the lab project discussion will be communicated to you by the instructors. The dates reported in the |
| [[https://esami.unipi.it/esami2/|registration website]] refear **only** the written part of the DSD module. | [[https://esami.unipi.it/esami2/|registration website]] refear **only** the written part of the DSD module. |
| |
| **Oral Exam Date for LDS during the Winter Sessions:** TBD | **How to book a slot for the practical test?** For students who need to do the practical test during the exam session because they did not deliver the project, they must report their studentID in the dates listed in this shared document: [[https://docs.google.com/spreadsheets/d/1Gt-FQOY9EWt0rO82EnP97SAhks_bg78TL8Dq7X2vtQk/edit?gid=0#gid=0|Pratical Test booking]]. Available dates are: 5th June 20206, 19th June 2026, 7th July 2026. If you have important issues with these dates, please write an email to the teachers asap. |
| | |
| =====Past Editions ===== | =====Past Editions ===== |
| | * [[LDS 2025-2026]] |
| * [[LDS 2024-2025]] | * [[LDS 2024-2025]] |
| * [[LDS 2023-2024]] | * [[LDS 2023-2024]] |