Research Article
A Cost Effective and Preventive Approach to Avoid Integration Faults Caused by Mistakes in Distribution of Software Components
Listing 1
Pseudocode: prerun monitoring.
) CompOfInve ← HashInventory.xml {inventory components} | () CompOfSta ← ⌀ {components of local station) | () OKList ← NOKList ← Inexist ← ⌀ {lists of artifacts} | () Appl_OK ← FALSE | () if (CompOfInve.inventory_version = VersionControl.inventory_online_version) then | () Appl_OK ← TRUE {the version is the most recent} | () else if | () Appl_OK ← FALSE {the version is not the most recent} | () end if | () CompOfSta = Application of Local Statio | () for each node CompOfInve do | () | {return node from CompOfSta that matches with , or | () ← Match(, CompOfSta) | () if () then | () if Hash() = Hash() then | {add to list of correct hash artifacts} | () OKList.Add(CompOfSta) | () else if | {add to list of incorrect hash artifacts} | () NOKList.Add(CompOfSta) | () end if | () else if | () Inexist.Add() {add to list of absence artifacts} | () end if | () end for | () if (Appl_OK = FALSE) ∣ (NOKList ≠⌀) ∣ (Inexist ≠ ⌀) then | {there are inconsistencies—generates alert and logs} | () Alert() {notify the user} | () LogGeneration(Appl_OK, OKList, NOKList, Inexist) | () end if |
|