Software System Maintenance. In the design of the physical bridge great effort is taken to ensure ease of bridge maintenance during its estimated 100+ year's lifespan. In fact a major part of the software that is planned for the bridge is dealing with the planning of day to day maintenance of the bridge structure. Similar care should be taken to ensure that the software needed for operating and maintaining the bridge is maintainable. No software lasts forever and the bridge software systems will have to be maintained and, if necessary, exchanged with new software many times during the bridges lifespan. It is therefore of importance to formulate strategies that ensures sustainability. The loose coupling of individual components as sketched above will greatly help in this perspective as parts can be changed or enhanced without the direct necessity to change any other component in the system. There is also a need for having dedicated software components that will handle different IT related aspects of the System: • Portfolio management • IT Management System • Service management • Issue tracking • Helpdesk From a perspective of ease of software maintenance it is important to demand of any contractor that has to deliver specially developed software for the system (i.e. a web service) that certain principles are followed in this software development. All specially developed software must be multi-tiered and object oriented in its nature whatever technological platform is used. Figure 3.2.8 shows an example of a multi layered software architecture. The WSMS has here been used as an example and the C# coding language shown in the figure below has been used for illustrative purposes. The language used in building the multi layered software architecture is not locked to C#. Figure 3.2.8: Example of a multi layered software architecture developed using C#. Multi layered software architecture illustrated above can be described as following: