Academic Projects

A selection of projects I completed during my Bachelor’s in Computer Science and Engineering and Master’s in Data Science and Business Informatics.

TEXT ANALYTICS

This project begins with data preparation and cleaning, followed by topic modeling with Latent Dirichlet Allocation (LDA) to uncover key themes of toxicity, including cyberbullying, racism and misogyny. For the classification tasks, we implemented both traditional machine learning algorithms, such as Support Vector Classifier (SVC), Naive Bayes and K-Nearest Neighbors (KNN), as well as state-of-the-art neural network models like BERT and EmoRoBERTa to improve emotion detection and classification accuracy.

LABORATORY OF DATA SCIENCE

This project began with the design and implementation of a Data Warehouse, integrating computer sales and geography data using SQL Server and SSIS for data flow management. The ETL process included extracting, cleaning, and transforming data with Python, automated via SSIS to ensure accuracy. A multidimensional cube was developed using SQL Server Analysis Services (SSAS) to analyze sales by time, product, and geography. MDX queries provided detailed insights, while interactive dashboards created in Power BI visualized trends and enabled actionable insights.

DATA MINING

This data mining project is focused on the RAVDESS dataset for emotional speech and song classification. The workflow started with data pre-processing, including handling missing values, outlier detection, and feature correlation analysis. Some clustering algorithms like K-Means, DBSCAN, OPTICS and Hierarchical Clustering were applied. For classification, algorithms such as Decision Trees, K-Nearest Neighbors (KNN) and Naive Bayes were used, alongside Logistic Regression, Support Vector Machines (SVM)Neural Networks. Dimensionality reduction was performed with techniques like PCA, MDS and IsoMap. Additionally, Pattern Miningwas done using the Apriori algorithm to extract frequent patterns and association rules. Explainability methods such as SHAP and LIME were applied to interpret model predictions. The project used Python libraries including scikit-learn, TensorFlow, matplotlib and pandas.

Business Process Modeling

The project models software development processes through the collaboration of a project manager and two programmers, using BPMN for flowchart creation. These diagrams were then converted into Petri nets for in-depth semantic analysis, employing tools like WoPeD and Woflan. The work also includes process variants, highlighting communication and decision management throughout the project lifecycle, ensuring properties like soundness and boundedness for process reliability.

Innovation and Entrepreneurship Management

This project focused on a case study centered around a fictional company, designed as a scenario to analyze and apply knowledge in innovation and market strategy. Starting from a predefined framework, the study expanded with tailored analyses, including market research tools, persona development and strategic innovation practices. Key concepts such as digital transformation, AI-driven solutions and gamification were integrated to propose adaptive, customer-focused strategies. The work emphasized combining theoretical foundations with practical applications, exploring approaches like open innovation and partnerships to deliver scalable and effective solutions in the E-learning market.

DATABASES

This project focused on designing and implementing a relational database using MySQL, aimed at managing complex datasets and performing advanced analyses. Starting with requirements analysis, I designed an Entity-Relationship (ER) model, which was later transformed into a normalized relational schema. I developed SQL queries to extract meaningful insights and optimize database performance. Additionally, a Java-based graphical interface was built to allow interactive data visualization and querying.

OBJECT ORIENTED PROGRAMMING (OOP)

In this project, a game application was created following the MVC (Model-View-Controller) architectural pattern. The team used Java as the programming language and implemented key functionalities such as managing the player, enemies, and interactions within the game world through well-defined classes and interfaces. Automated tests were created using JUnit to ensure the quality and proper functionality of the code. Collaboration was facilitated by using Git for version control. This project provided hands-on experience in object-oriented programming, enhancing technical skills, teamwork, and providing understanding of software development dynamics.

Torna in alto