Assessing the Preservability of Systems

   

Gonçalo Antunes (INESC-ID)

One of the main results out of the preservability assessment task performed in TIMBUS is a method for the assessment of preservability of systems.

 

goncalo3

tiny_bar

Preservability can be defined in the following way:

•   the degree to which a system can be archived for the required amount of time,

•   redeployed and re-executed according to the expectations of its stakeholders,

•   in a future environment that may potentially be different from the original.

Looking at this definition, It is possible to envision the relationship between preservability and system/software qualities, as defined in the ISO 25010 [1] (Figure 1). First, it depends on the 'expectations of the stakeholders', which means that the end-users, owners, and maintainers of the system will have certain expectations that must be fulfilled by the system when it is redeployed and re-executed.

Fig1_ISO25010

Figure 1: ISO 25010 Product Quality Model [1]

Furthermore, this redeployment and re-execution must happen 'in a future environment, that might potentially be different from the original', meaning that the system will need to adapt to a technological environment that may be substantially different. Such adaptations may imply porting applications to new technology and/or performing modifications to the original code so that the compatibility with the new environment is achieved. Last but not least, 'the degree to which a system can be archived, redeployed and re-executed' assumes that the system and its constituent parts must be accessible in order to capture them and apply preservation actions. However, built-in security mechanisms often impose difficulties to preservation, either at the technical or at the organizational level. The use of encryption mechanisms or the existence of access restrictions can create constraints on preservation. Table 1 depicts the relationship between system/software qualities and the aforementioned preservability concerns:

Tab1_SystemSoftwareTable 1: System/software qualities vs. preservability concerns.

The system/software qualities mutually influence each other's preservability, as depicted in Figure 2. Compatibility influences the system portability, due to the fact that co-existence and interoperability issues might create problems for the system's ability to adapt to new environments. In its turn, the fact that the system is actually ported into a new environment in the future might influence its usability, functional suitability, performance efficiency, and security, since the degree of adaptability, installability, and replaceability might not be sufficient to satisfy the needs of the system stakeholders.

Portability, and in particular replaceability, influence how well a system can be maintained, as both factors might limit or enhance the ability to maintain the system. Maintainability, in turn, influences reliability, since it may limit or enhance the ability to maintain the integrity of the system. Security also influences the reliability of the system, but it also, less obviously, may influence portability, since the existence of security issues may constrain the ability to port the system to other environments.

Fig2_InfluenceRelationships

Figure 2: Influence relationships between software/system quality impacting preservability

One of the main results out of the preservability assessment task performed in TIMBUS is a method for the assessment of preservability of systems. The assessment process is based on the ISO 15504 [2] and includes the minimum elements of a documented assessment process. The process is composed of seven activities: initiation, planning, briefing, data collection, data validation, analysis, and reporting. The process also involves some relevant artefacts. Figure 3 depicts the process and the artefacts used in the different activities.

Fig3_PreservabilityAsssessment

Figure 3: Preservability assessment process (based on [2])

Those artefacts are materialized using different techniques. For the production of the requirements during the initiation activity, a model-based requirements engineering technique is used, together with a method for requirements gathering. The resulting requirements and their decomposition are displayed visually. We focus mainly on the quality characteristics related to adaptability and accessibility concerns since those qualities decisively impact all the other qualities and the ability to effectively preserve a system.

Based on the requirements produced, a checklist for the assessment is generated containing criteria for the assessment and an indication of the required evidence. This evidence is directly derived from the application of the requirements gathering method. The checklist is then used in the data collection activity for retrieving the necessary evidence manually. The retrieved evidence is then validated and analyzed, resulting in a final preservability report. The report can then be used for supporting the remainder of the TIMBUS process, namely for the selection of preservation actions.

Current work focuses on the ability to use the context model as a source of evidence for preservability assessment, together with the method and techniques just described above.

Keep checking back at the TIMBUS webpage for updates on the further development of this work.

References

[1] ISO/IEC (2010) ISO/IEC 25010 - Systems and software engineering - Systems and software Quality Requirements and Evaluation (SQuaRE) - System and software quality models, International Organization for Standardization and International Electrotechnical Commission Std.

[2] ISO/IEC (2004) ISO/IEC 15504 - Information technology — Process assessment, International Organization for Standardization and International Electrotechnical Commission Std.

You have no rights to post comments