Skip to content
Sep 17 - Oct 20 (3 yrs 1 mo)

🎓 BSc in Computer Science (unimib)

With a passion for innovation and a drive for excellence, I embarked on my Bachelor of Science in Computer Science at the University of Milan-Bicocca. My academic journey was marked by a GPA of 29/30 and a final grade of 110/110 summa cum laude, demonstrating my commitment to mastering the complexities of computer science. Below are some of the key courses that shaped my expertise and fueled my enthusiasm for the field:

📚 Key Courses

  • Algorithms and Data Structures: This foundational course covered essential algorithms and data structures, providing a deep understanding of algorithmic design and analysis.
  • Computer Architecture: Focused on the principles of computer organization, including hardware components, instruction sets (MIPS), and system architecture, which deepened my understanding of the hardware-software interface.
  • Database Systems: Explored the fundamentals of database design, implementation, and management, with an emphasis on SQL and data modeling techniques.
  • Distributed Systems: Covered the principles and design of distributed systems, emphasizing scalability, fault tolerance, and consistency, which are critical for modern cloud computing environments.
  • Probability and Statistics for Computer Science: Provided the statistical foundations and probabilistic models essential for machine learning, focusing on data analysis and predictive modeling.
  • Software Engineering: Emphasized software development methodologies, project management, and quality assurance practices, ensuring high standards in software delivery.
  • Algorithm Analysis and Design: An advanced study of algorithmic strategies and complexity, crucial for developing efficient and effective computational solutions.
  • Linear Algebra and Geometry: Provided a deep understanding of vector spaces, linear transformations, and geometric structures, fundamental to various computer science applications.

📝 Thesis: Automatic Computation of Architectural Smells Cost Solving

For my thesis, I focused on Automatic Computation of Architectural Smells Cost Solving, specifically addressing the Hub Like Dependency smell. Architectural Smells indicate poor design choices that negatively impact software quality and contribute to Technical Debt. My approach involved developing a technique for Java projects to automatically evaluate the cost of solving this smell.

I validated my approach using Open Source Java systems, manually refactoring instances of Hub Like Dependency to gather empirical data. Additionally, I utilized Arcan, a software analysis tool, to automate the detection of this smell. My work included developing a formula to estimate the cost of removing the smell and exploring the potential of using linear regression to predict this cost.

I successfully defended my thesis at unimib in October 2022, earning the summa cum laude distinction. This academic journey has equipped me with a solid technical foundation and prepared me to tackle complex problems and innovate in various environments 🔥💪.