Professional Training Courses in Italy
During the years I spent in Italy, I designed and delivered, as an independent professional, a large number of courses for companies and institutions. Most of them were offered through my collaborations with Datamat, but there were also distinct clients, such as Olivetti Ricerca in Bari, CNR, Systech, Dataspazio, and Sincro Consulting. The courses were adapted to clearly defined professional roles—from programmers at the beginning of their careers to analysts, software architects, and project managers— and covered programming itself, UML modelling, distributed architectures, J2EE technologies, Web services, SOA, software engineering, and project management.
Navigation
Framework documents
Before the courses themselves, I have preserved here the offer documents and the training-path schemes. They explain the overall logic of the offer: the professional roles addressed, the progression paths, and the relationships among the courses.
Programming
Introduzione alla programmazione con Java. Corso base
The basic course for programmers who needed to acquire an effective command of the Java language after the introductory stage. Extensions toward advanced Java, distributed programming, and Web services were subsequently organized around this course. The introductory course is intended for those at the beginning of their Java learning path. It covers language features, programming fundamentals, elements of object-oriented programming, classes and objects, inheritance, polymorphism, interfaces, arrays, type conversions, graphical user interfaces, events, exceptions, and input/output.
Client: Datamat (probably)
Programmazione in Java. Argomenti avanzati
The natural continuation of the basic course, focused on abstract classes, interfaces, nested classes, collections, exceptions, concurrent programming, input/output, and networking in Java.
Client: Datamat (probably)
Programmazione distribuita in Java
A course devoted to distributed applications in Java. Its principal topics are distributed computing, RMI, JNDI, RMI-IIOP, CORBA and Java IDL, as well as persistent data access through JDBC in a distributed context.
Client: Datamat (probably)
Introduzione alla programmazione con C/C++
An introductory course for the C/C++ technology path, kept distinct from the more advanced version.
Client: Datamat (probably)
Programmazione in C/C++
A course intended for programmers working in the C/C++ environment or wishing to follow the technological path alternative to Java.
Client: Datamat (probably)
Service Computing in Java
Canonical node reserved for the Service Computing courses in Java.
Client: Datamat (probably)
The current archive contains only the canonical subfolder; the PDF course material has not yet been found.
Introduzione alla programmazione in Internet
An introductory Web/Internet programming course delivered for Olivetti Ricerca, Bari.
Client: Olivetti Ricerca, Bari
UML, analysis, and design
Introduzione al linguaggio UML
An introductory course in UML modelling, intended especially for analyst-programmers, senior programmers, and software designers.
Client: Datamat
Analisi e progettazione strutturate
A course devoted to structured analysis and design methods, preserved here as a distinct node of the professional training offer.
Client: Datamat (probably)
Analisi e progettazione ad oggetti in UML
A course devoted to object-oriented analysis and design methods, preserved here as a distinct node of the professional training offer.
Modelli di progettazione / Design Patterns
Canonical node for courses devoted to design patterns.
Client: Datamat (probably)
Progettare software con design patterns
A broader version, more strongly oriented toward the software design process: UML, responsibilities, collaboration, patterns, and their application in system construction.
Client: Systech / another specific client
Modellazione concettuale con UML
A conceptually focused course, different from a simple introduction to UML, delivered in the CNR context.
Client: CNR
Web, J2EE, and Web services
Sistemi distribuiti in Web. Architetture con servlet e JSP
A course on Web architectures based on servlets and JSP, in continuity with the enterprise Java branch.
Client: Systech
Architettura J2EE
A node reserved for courses devoted to J2EE architecture and to the role of Web and EJB components in distributed enterprise applications.
The current archive contains no separate PDF for this node; the content is integrated into other courses in this section.
Tecnologia a componenti EJB
A course on the Enterprise Java Beans model and the role of containers, business components, and declarative services in J2EE.
Client: Datamat (probably)
Servizi Web in Java
A course devoted to Web services in Java and on the J2EE platform: distributed architectures, J2EE, XML, SOAP, WSDL, UDDI, and the JAX-RPC, SAAJ, JAXR, and JAXP APIs.
Client: Systech
Tecnologia J2EE per i servizi Web
A family of later or extended versions of the course on Web services in J2EE.
Client: Datamat (probably)
Sviluppo di applicazioni Web con J2EE
A course on developing Web applications with J2EE, complementary to the architecture course and the Web services course.
Client: Datamat (probably)
Web Solutions
Complementary material on Web solutions, preserved here as a distinct documentary version.
Client: Datamat (probably)
CORBA and distributed middleware
CORBA: Architettura e programmazione
A course devoted to CORBA architecture and ORB-based distributed programming, in relation to the other middleware technologies discussed in the enterprise Java courses.
Client: Datamat (probably)
SOA and service-oriented architectures
Architetture orientate ai servizi
A course devoted to the transition toward service-oriented architectures and the organization of enterprise applications around reusable services.
Client: Datamat (probably)
SOA Dataspazio
A family of SOA course versions adapted for the client Dataspazio.
Client: Dataspazio
SOA – Sincro Consulting
A specific version of the SOA course adapted for another client.
Client: Sincro Consulting
Software engineering and management
Introduzione all’Ingegneria del Software
A node reserved for the introductory software engineering course, present in the course offer and in the training paths.
The current archive does not yet contain a separate PDF for this node.
Management di progetti software
A course on the organization and management of software projects, intended especially for analysts and project managers.
Client: Datamat (probably)
Metodologie agili
A course on lightweight and adaptive methodologies: XP, Scrum, Crystal, Adaptive Software Development, Feature Driven Development, DSDM, and their relationship with UP.
Client: Datamat (probably)
Case studies
Materials describing concrete project experiences can be grouped here, as useful support for the software engineering and management courses.





