My industrial activity took shape in a series of software projects carried out mainly in Italy, in very different professional contexts: economic management, logistics, telecommunications, vehicle monitoring, Web applications, real-time systems, and applications close to medical informatics.
On this page I have kept both the thematic organization and a small expandable record for each project. The descriptions open by clicking on the title. Where a project touches or anticipates a direction later developed in research, I have also included useful links toward the relevant sections.
An important part of my industrial activity was connected with management applications and data modeling in concrete contexts: warehouses, subscriptions, trade fairs, vehicle fleets and other operational structures.
The Rebibbia clothing warehouse was the national supplier of uniforms for prison guards throughout Italy. Employed by a small software company, I was asked to develop an information system for managing purchasing, storage and shipment of uniform parcels.
This was my first project after settling in Italy and a direct entry into Italian industrial reality. The application was built around a database installed on an Olivetti minicomputer running XENIX.
Client: Rebibbia warehouse, Rome, Italy.
Technologies: Olivetti/XENIX, dBase III, Clipper, FoxBase.
Roles: project manager, analyst, programmer.
A management system for subscriptions to a weekly trade-union newspaper, including the generation of shipment documents. The system consisted mainly of a subscriber database. This type of application forced me to work carefully with persistent data, updates, reports and validation rules in an operational context rather than in a prototype environment.
Client: CISL, Italian Confederation of Workers’ Trade Unions, Rome.
Technologies: Windows, MS Access, MS Office, Visual Basic.
Roles: project manager, analyst, software architect and programmer.
A project aimed at modeling and managing a national fleet of agricultural machinery. Its importance lies not only in data management, but also in defining a coherent model for a heterogeneous domain with many types of equipment and categories of information.
A system for managing requests for exhibition space submitted by participants — manufacturers of agricultural machinery and equipment — at the International Fair of Bologna, AgriLevante in Bari/Puglia, and ExpoGarden in Bologna. I combined administrative, logistical and reporting requirements in a context with many actors and large data volumes.
Another important direction was that of distributed applications and telecommunications, where system architecture and cooperation between components became essential.
The ViaSat family of projects brought me into the area of vehicle monitoring and fleet management. Here the problem was not only one of databases or interfaces, but one of distribution, events, communications and integration of information flows coming from the field.
VASS belongs clearly to the family of distributed applications. Its orientation toward telephone Lotto made scalability, transaction correctness and the control of interactions between components especially important.
The CSLT project was a broad transactional system, with requirements, a UML/Rational Rose model, a three-tier architecture, CEZ/WIND interfaces and an execution plan reaching acceptance testing in January 2000. It also shows clearly my transition from structured analysis to object-oriented modeling, with use cases, components and deployment diagrams.
Smarten was one of the most technical industrial projects of this period. It was aimed at rating and billing for mobile telecommunications, a domain in which volumes, distribution of responsibilities and architectural robustness are essential.
Smarten was a general software platform inspired by Fowler’s analysis models and equipped with an internal metamodeling mechanism. Applications based on Smarten were obtained by adapting the platform through qualified integrators, by extending the structure and using metamodeling to generate the desired application.
The platform was written in C++ and Java, was highly scalable, used CORBA for distributed objects and an object-oriented database. It was used mainly by telecommunications companies for rating and billing processes, but its architecture made it adaptable to other service-based domains.
Client: Smarten S.p.A., Rome, Italy.
Technologies: Sun/Solaris, Versant OODBMS, C++, Java, CORBA, Rational Rose.
Roles: training manager, analyst, mentor.
As Web applications matured, part of my activity moved toward portals, online services and browser-accessible applications, often linked to commercial or institutional needs.
Toscano S.p.A. was a real-estate company with an extended network of agencies. The headquarters needed to communicate with all agencies in order to monitor peripheral transactions and to publish on the Web a daily report of the company’s offers. The project required a distributed system at national scale.
Client: Toscano S.p.A., Rome.
Technologies: SQL Server, Access, MTS, MSMQ, Visual Basic 6.0, ASP, ERwin.
Roles: project manager, analyst and software architect.
PiùCase was the portal component and public access point for real-estate services. The portal had to publish online property advertisements, provide search engines to users and interfaces for subscribers to place advertisements, and act as a gateway to other Web sites and applications.
Client: PiùCase S.p.A., Rome.
Technologies: MS Access, ASP, VBScript.
Roles: project manager, software analyst and architect.
A feasibility study carried out within ASSIOMA for the Italian Ministry of University and Research, concerning the definition of a centralized national database for university educational offerings and academic credits. My contribution was as technical director, architect and system analyst.
The Museum of Rome needed to develop its own information system and launched a consultancy selection. My task was to act as technical consultant for the beneficiary, interview the stakeholders, identify errors and suggest improvements in analysis, architecture and execution, while protecting the client’s interests.
Client: Museo di Roma.
Role: functional analyst.
A Web project for collecting and analyzing sales statistics for earth-moving, urban-service and road machinery. It belonged to a generation of browser-based applications focused on data aggregation, report generation and ease of use for beneficiaries.
Technologies: PHP, JavaScript, DHTML. Roles: manager, analyst, architect, programmer.
Some projects had a critical or real-time character, where requirements for reliability and architectural clarity were particularly high.
The famous Villa Borghese park in central Rome has a large underground parking facility that had to be illuminated when cars entered or left, while remaining at other times under surveillance lighting. I was asked to develop a real-time parking lighting system. Automatic control was based on a configurable software solution with a graphical window interface designed in Pascal.
Client: Villa Borghese parking facility, Rome.
Technologies: PC/DOS, OS/2 2.0, Windows 3.0, Turbo Pascal.
Roles: project manager, analyst, programmer.
A critical application for a controlled-access area associated with a former nuclear plant. ENEA Brasimone had been built as a nuclear power facility, then repurposed after the referendum that stopped nuclear research in Italy. The protected area still required a real-time security system against intrusion and fire. My task was to develop the central software “brain” monitoring the installed sensors.
Client: ENEA Brasimone, Italy.
Technologies: PC/OS/2, Presentation Manager, LAN Manager, C.
Roles: project manager, analyst and programmer.
At the boundary between industrial activity and my growing interest in medical informatics there are several applications that anticipated later digital-health projects.
Partial contribution to the design of the communication subsystem architecture in a middleware platform for integrating heterogeneous hospital applications, within the Italian National Research Program for Telemedicine.
This industrial project is close to my digital-health research line. It aimed at the economic evaluation of medical protocols and chronic diseases in an online form, combining modeling, economic calculations and Web interface design.
Technologies: PHP, JavaScript. Roles: manager, analyst, architect, programmer.
Seen together, these applications show that my industrial activity was not narrowly specialized, but crossed by the same constant that I also find in university and research: an interest in structure, method and the adequacy of the solution to the concrete problem.
Industry was, for me, the place where the concepts of analysis, design and software architecture had to resist direct contact with the reality of projects, beneficiaries and deadlines.