Sunday, 7 October 2012

Three years since my Master Degree in Computer Science Engineering

Tomorrow will be three years since my Master Degree in Computer Science Engineering.

I got my degree from the University of Pisa and I am writing this post to simply remember that unforgettable day.

The title of my degree thesis (translated in English) was "Modular architecture for testing smartcard-based solutions" and here you can find the original paper:

The following is a video of my formal presentation (obviously in Italian). I still can't believe how relaxed I was that day and how good the presentation was. Fortunately, being a speaker in DotNetToscana helped me a lot for that event.



It is impossible to forget the satisfaction of getting the maximum score: 110/110 with Honours and the unique certification of excellence. I order to get the certificate of excellence I had to do 5 additional exams with strict deadlines: Computer Science applied to biological systems, Dynamic Systems, Web Algorithms, Game Theory and Computational Intelligence. That was hard but extremely rewarding.





You can find the complete photo album here: Master Degree and Party.

Let me show few pictures from the project itself.

The SCOTT Architecture (Smart Card Open Test Toolkit):

An example of interaction with the SCOTT Shell:


The project was written in C++ with the ability to run on Windows and Linux.

I tested it with the Cryptoflex 8K Card and the TODOS Argos Mini Card Reader:


The following are the class diagrams of the simple and complex types. I had to define a type system and write the relative parser in the SCOTT shell (lots of fun!).



I like the macro I used to define a type naming convention for smart pointers and more complex data structures like maps and vectors of smart pointers. Unfortunately C++ is not like C# and I found this solution a good compromise to think like having List and Dictionary and almost forget about memory management.




The following code defines a smart pointer to vector/map of smart pointers to SValue:

This was also the first project where I started to use Unit Testing and understand the importance:


The entire project is almost 10000 lines of source code and I released it as open source but it is abandoned. If you are curious you can download the source code from the official repository.

3 comments:

  1. Nicely done! Let's put this into practice :)

    ReplyDelete
  2. I would like to congratulate you for finishing your Master Degree in Computer Science Engineering and also for scoring 110/110 in project. It was fun reading your blog and has freshen my college days memories. All the best for your future. I have bookmarked your blog, do write on more and keep us updating.
    California Computer Science degree

    ReplyDelete

What you think about this post? I really appreciate your constructive feedback (positive and negative) and I am looking forward to start a discussion with you on this topic.