WO2008132063A2 - Method for the quantitative evaluation of modifications in a software system and the effects thereof - Google Patents

Method for the quantitative evaluation of modifications in a software system and the effects thereof Download PDF

Info

Publication number
WO2008132063A2
WO2008132063A2 PCT/EP2008/054675 EP2008054675W WO2008132063A2 WO 2008132063 A2 WO2008132063 A2 WO 2008132063A2 EP 2008054675 W EP2008054675 W EP 2008054675W WO 2008132063 A2 WO2008132063 A2 WO 2008132063A2
Authority
WO
WIPO (PCT)
Prior art keywords
change
cif
changes
impact factor
software
Prior art date
Application number
PCT/EP2008/054675
Other languages
German (de)
French (fr)
Other versions
WO2008132063A3 (en
Inventor
Jürgen SALECKER
Original Assignee
Siemens Aktiengesellschaft
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Publication of WO2008132063A2 publication Critical patent/WO2008132063A2/en
Publication of WO2008132063A3 publication Critical patent/WO2008132063A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3616Software analysis for verifying properties of programs using software metrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Definitions

  • the invention relates to a method for the quantitative assessment of changes in a software system and their effects, in which a classification of the changes takes place.
  • test department In software development, there are many changes in very short periods of time. A test department now has to decide what should be intensively, or less intensively tested. Due to lack of time, most tests can not be completed. Therefore, the test department needs clear information which areas of a software product should be tested more intensively. This becomes even more important when the development department reports that a certain number of bugs have been fixed and it is up to you to decide which bug fixes should be tested first and how hard they should be tested.
  • Another change class is e.g. the implementations of system requirements.
  • the object underlying the application is now to provide a simple but most promising method for the quantitative assessment of changes in a software system and their effects, in which the abovementioned are completely or largely avoided.
  • the invention consists in a simple and very reliable way of classifying all changes according to the criterion of their influence on the system.
  • No information about the project structure is needed, only very limited information about the software architecture.
  • the respective change impact calculated factors (cross-impact-factors) and then presented in a, for example, by the size falling list.
  • the necessary values for the formula can easily be extracted from the data of the configuration management system used.
  • a prerequisite is that the IDs for the error flag, "Feature" IDs and similar IDs can be defined using a regular expression.
  • the invention calculates a change impact factor CIF (cross-impact factor) for each change-which can be identified by means of an ID, and then provides, for each ID type, a ranking of the respective changes, sorted according to falling CIF. That As many ranking lists as there are different ID types are calculated.
  • CIF cross-impact factor
  • a change in this context is either a bug fix, a new feature, or any other identifiable change.
  • the calculated change impact factor CIF (cross-impact factor) indicates in a simple numerical way the impact of the change on the whole system. The higher (numerical) the factor, the more influential the changes were to the software system, which will inevitably increase the likelihood of introducing new ones.
  • the change impact factor CIF (cross-impact-factor) is calculated according to the following formula:
  • n number of changes in which the same ID (error, feature ID, or similar) was detected.
  • c number of different software components that have changed with respect to this change
  • d number of different developers who were involved in this change
  • a further embodiment provides for inclusion of further influencing variables in the formula.
  • Change impact factor CIF for each request ID at a given time but considered the change in the cross-impact factor CIF for each request ID integrated over time or summed.
  • test effort should advantageously be more extensive, ie not only the elimination of the actual error should be considered, but it should be tested so that possible side effects can be detected.
  • CIF change impact factor
  • cross-impact-factor the test effort may be limited to the scenario of the error and need not be extended further.
  • the structure of a software package is shown by way of example, wherein the software package levels CIF-Ll, ... CIFL4, wherein the level CIF-Ll the entire software package SP, the level CIF-L2 immediately underlying components Cl and C2, the level CIF-L3 subcomponents SCl and SC2 and the lowest level CIF-L4 modules MIl, .. M23 includes.
  • the change impact factor CIF cross-impact-factor is calculated along the software architecture, ie typically at all levels, for each of these components and for the entire software package.
  • a baseline here in this context is meant the list of all necessary artifacts with their versions for a software system at any given time.
  • a baseline is usually calculated by configuration management and provided to the development department.
  • Baseline is strongly dependent on the culture of development and also the phase in which the product development is located and means, for example, daily or weekly.
  • the input data i. the names of the components, and the names developers for any more detailed analysis available. All of this information is calculated automatically from the data that usually provides a configuration management system. The only prerequisite is that every developer notes the changes related to an ID, an additional feature, error, or similar, using the configuration management system.
  • a change does not mean every file that has been modified for error correction, but a change can contain one or even several files. No matter how many files are needed for a developer to make a change, this change is considered a singular action, which is expressed by the parameter n in the formula.
  • the table shows the respective change impact factors of three different IDs "Bugzilla”, “ClearQuest” and the “Feature DB”
  • CIF cross-impact-factor

Abstract

According to the invention, a classification of all modifications is carried out in a simple and very reliable manner, according to the criterion of the impact of the modification on the system. No information is required about the project structure, only very limited information about the software architecture. To this end, cross-impact factors are calculated for each modification, and then represented in a list created, for example, according to the variable. A test section receives very clear indications as to the order in which the tests should be advantageously carried out, and qualitative information, such as severity levels inter alia, can be take into account.

Description

Beschreibungdescription
Verfahren zur quantitativen Beurteilung von Änderungen in einem Software-System und deren AuswirkungenMethod for the quantitative assessment of changes in a software system and their effects
Die Erfindung betrifft ein Verfahren zur quantitativen Beurteilung von Änderungen in einem Software-System und deren Auswirkungen, bei dem eine Klassifizierung der Änderungen erfolgt .The invention relates to a method for the quantitative assessment of changes in a software system and their effects, in which a classification of the changes takes place.
In einer Software Entwicklung gibt es sehr viele Änderungen in sehr kurzen Zeiträumen. Eine Test-Abteilung hat nun zu entscheiden was intensiv, bzw. weniger intensiv getestet werden sollte. Vollständige Tests können meistens auf Grund von Zeitmangel nicht ausgeführt werden. Daher benötigt die Test-Abteilung klare Informationen welche Bereiche eines Software-Produkts intensiver getestet werden sollten. Das wird umso wichtiger wenn die Entwicklungsabteilung meldet das eine bestimmte Anzahl Fehler beseitigt worden sind und zu entscheiden ist welche Fehler-Beseitigungen nun zuerst und wie intensiv diese getestet werden sollen.In software development, there are many changes in very short periods of time. A test department now has to decide what should be intensively, or less intensively tested. Due to lack of time, most tests can not be completed. Therefore, the test department needs clear information which areas of a software product should be tested more intensively. This becomes even more important when the development department reports that a certain number of bugs have been fixed and it is up to you to decide which bug fixes should be tested first and how hard they should be tested.
Nach dem derzeitigem Stand der Technik wird jedem Fehler ein sogenannter „Severity Level" zugewiesen, d.h. es wird auf Grund von qualitativen Aussagen von Software Architekten,According to the current state of the art, every error is assigned a so-called "Severity Level", that is, based on qualitative statements made by software architects,
Kunden, oder Projekt Managern eine Aussage über die mögliche Schwere, bzw. damit auch über die Wichtigkeit des Fehler gemacht. Dieser Level sagt aber gar nichts über die möglichen Schwierigkeiten aus, die sich bei der Beseitigung des Fehlers ergeben. Schwerwiegende Fehler können und haben sogar meistens eine sehr einfache Ursache, einmal erkannt ist die Lösung aber sehr oft trivial bzw. sogenannte leichtgewichtige Fehler können hingegen eine komplexe Fehlerbeseitigung zur Folge haben. Mit jeder Fehlerbeseitigung, bzw. eigentlich mit jeglicher Änderung in einem Software System besteht die Gefahr das unbeabsichtigt neue Fehler eingebaut werden. Nach dem derzeitigen Stand der Technik wird versucht - meistens mehr schlecht als recht - die jeweilige Fehlerbeseitigung oder ähnliche Änderungen mit Software Qualitäts-Methoden wie "pair debugging", "code -reviews" und "pair coding" zu verifizieren. Diese Methoden führen allerdings nur mit sehr großem Aufwand zu befriedigenden Resultaten. Vielfach sind diese Methoden aber aus Zeitgründen nicht vollständig durchführbar, was wiederum zur Folge hat, dass oft unbeabsichtigt neue Fehler in das System eingebaut werden.Customers, or project managers made a statement about the possible severity, and therefore also about the importance of the error. However, this level does not say anything about the possible difficulties that arise in eliminating the error. Fatal errors can and often even have a very simple cause, once the solution is very often trivial or so-called lightweight errors, however, can result in a complex error correction. With every error correction, or actually with any change in a software system, there is a risk that unintentional new errors will be incorporated. In the current state of the art is trying - usually more bad than right - the respective error correction or similar changes with software quality methods such as "pair debugging", "code reviews" and "pair coding" to verify. However, these methods lead to satisfactory results only with great effort. In many cases, however, these methods are not completely feasible due to lack of time, which in turn means that new errors are often unintentionally incorporated into the system.
Eine weitere Änderungsklasse sind z.B. die Implementierungen von System Anforderungen. Hier liegt die Herausforderung möglichst frühzeitig zu erkennen welche - auch teilweise - implementierten System Anforderungen bedeuten das größte Risiko bezüglich Projekts Erfolg oder Miss-Erfolg.Another change class is e.g. the implementations of system requirements. Here is the challenge as early as possible to recognize which - even partially - implemented system requirements mean the greatest risk in terms of project success or failure.
Die der Anmeldung zu Grunde liegende Aufgabe liegt nun darin ein einfaches aber möglichstaussagefähiges Verfahren zur quantitativen Beurteilung von Änderungen in einem Software- System und deren Auswirkungen anzugeben, bei dem die oben genannten ganz oder weitgehend vermieden werden.The object underlying the application is now to provide a simple but most promising method for the quantitative assessment of changes in a software system and their effects, in which the abovementioned are completely or largely avoided.
Diese Aufgabe wird erfindungsgemäß durch die Merkmale des Anspruchs 1 gelöst. Die Merkmale der Unteransprüche betreffen vorteilhafte Ausgestaltungen der Erfindung sowie vorteilhafte Verwendungen.This object is achieved by the features of claim 1. The features of the subclaims relate to advantageous embodiments of the invention and advantageous uses.
Nachfolgend wird die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert.The invention will be explained in more detail with reference to an embodiment shown in the drawing.
Die Erfindung besteht im Wesentlichen darin, dass auf einfache und sehr zuverlässige Weise eine Klassifizierung aller Änderungen nach dem Kriterium erfolgt, welchen Einfluss diese auf das System hatten. Es wird keine Information über die Projekt-Struktur, sondern nur eine sehr begrenzte Information über die Software-Architektur benötigt. Hierzu werden für die Änderungen jeweilige Änderungsauswirkungs- faktoren (cross-impact-factors) berechnet und dann in einer bspw. nach der Größe fallenden Liste dargestellt. Damit bekommt eine Test-Abteilung sehr klare Hinweise in welcher Reihenfolge die Tests vorteilhafterweise durchgeführt werden sollen, wobei aber auch noch qualitative Aussagen, wie Severity Levels o. ä., mit berücksichtigt werden können. Die notwendigen Werte für die Formel können leicht aus den Daten des benutzten Konfiguration Management System extrahiert werden. Eine Vorbedingung ist das die IDs für die Fehler Kennzeichnung, "Feature" IDs und ähnliche IDs sich mittels jeweils eines regulären Ausdruckes definieren lassen.Essentially, the invention consists in a simple and very reliable way of classifying all changes according to the criterion of their influence on the system. No information about the project structure is needed, only very limited information about the software architecture. For this purpose, the respective change impact calculated factors (cross-impact-factors) and then presented in a, for example, by the size falling list. This gives a test department very clear indications in which order the tests should advantageously be carried out, but also qualitative statements such as severity levels or the like can be taken into account. The necessary values for the formula can easily be extracted from the data of the configuration management system used. A prerequisite is that the IDs for the error flag, "Feature" IDs and similar IDs can be defined using a regular expression.
Die Erfindung berechnet zu jeder Änderung -die über eine ID identifizierbar ist - einen Änderungsauswirkungsfaktor CIF (cross-impact-factor) und liefert dann für jeden ID-Typ eine Rangliste der jeweiligen Änderungen sortiert nach fallenden CIF. D.h. es werden so viele Ranglisten berechnet wie es verschiedene ID-Typen gibt.The invention calculates a change impact factor CIF (cross-impact factor) for each change-which can be identified by means of an ID, and then provides, for each ID type, a ranking of the respective changes, sorted according to falling CIF. That As many ranking lists as there are different ID types are calculated.
Eine Änderung ist in diesem Zusammenhang entweder eine Fehlerbeseitigung, ein neues "Feature", oder irgendeine andere identifizierbare Änderung.A change in this context is either a bug fix, a new feature, or any other identifiable change.
Der berechnete Änderungsauswirkungsfaktor CIF (cross-impact- factor) zeigt auf eine einfache numerische Weise den Einfluss ("Impact") der Änderung auf das gesamte System an. Je höher (numerisch) der Faktor desto mehr Einfluss hatte die Änderungen auf das Software System, daraus ergibt sich zwingend eine höhere Wahrscheinlichkeit bezüglich der Einführung von neuen Fehlern. Der Änderungsauswirkungsfaktor CIF (cross-impact-factor) wird nach der folgenden Formel berechnet :The calculated change impact factor CIF (cross-impact factor) indicates in a simple numerical way the impact of the change on the whole system. The higher (numerical) the factor, the more influential the changes were to the software system, which will inevitably increase the likelihood of introducing new ones. The change impact factor CIF (cross-impact-factor) is calculated according to the following formula:
n = Anzahl der Änderungen in denen dieselbe ID (Fehler-, Feature-ID, oder ähnliche) entdeckt wurden. c = Anzahl der verschiedenen Software Komponenten die bezüglich dieser Änderung verändert wurden d = Anzahl der verschiedenen Entwickler die be zügl ich dieser Ände rung involviert warenn = number of changes in which the same ID (error, feature ID, or similar) was detected. c = number of different software components that have changed with respect to this change d = number of different developers who were involved in this change
Damit wird eine Klassifizierung der Fehler-Beseitigungen nach ihrem tatsächlich Einfluss auf das Software System erreicht.This classifies the error eliminations according to their actual influence on the software system.
Ein weiteres Ausführungsbeispiel sieht vor noch weitere Einflussgrößen in die Formel mit aufzunehmen. Vorteilhaft sind Einflussgrößen, wie: s = Anzahl der verschiedenen Entwicklungsstandorte die an diese Änderung mitgewirkt haben a = Anzahl der verschiedenen Entwicklungsabteilungen die an dieser Änderung mitgewirkt haben.A further embodiment provides for inclusion of further influencing variables in the formula. Advantageous are influencing variables, such as: s = number of different development sites that contributed to this change a = number of different development departments that contributed to this change.
In einem Verwendungsbeispiel wird nicht derIn a usage example is not the
Änderungsauswirkungsfaktor CIF für jede Anforderungs-ID zu einem bestimmten Zeitpunkt, sondern die Veränderung des cross-impact-factors CIF für jede Anforderungs-ID über die Zeit integriert bzw. summiert betrachtet. Zeigt die Integration des cross-impact-factors CIF für eine spezifische Anforderungs-ID, z.B. monoton steigende Werte, so wird dies erfindungsgemäß als ein Indiz für eine besonders risikoreiche Anforderung gewertet. Wenn für eine Anforderung die entsprechenden Implementierungen immer einen relativ großen Einfluss haben, ist die Gefahr gegeben, das erstens neue Fehler in das System eingebaut werden und zweitens die Anforderung eventuell noch einmal analysiert werden sollte, z. B. in Bezug auf technische Eindeutigkeit, d.h. ob diese Anforderung so definiert ist, dass die Umsetzung in eine Implementierung wirklich erfolgen kann, und in Bezug auf ihre wirkliche Notwendigkeit.Change impact factor CIF for each request ID at a given time, but considered the change in the cross-impact factor CIF for each request ID integrated over time or summed. Shows the integration of the cross-impact factor CIF for a specific request ID, e.g. monotonically increasing values, this is considered according to the invention as an indication of a particularly risky requirement. If, for a requirement, the corresponding implementations always have a relatively large impact, there is a risk that, firstly, new errors will be built into the system, and second, that the requirement may need to be re-analyzed, e.g. In terms of technical uniqueness, i. whether this requirement is defined in such a way that the implementation into an implementation can really take place and in relation to its real necessity.
Sind alle Änderungen klassifiziert nach ihrem Einfluss dann können die üblicherweise limitierten Test-Ressourcen erheblich zielgerichteter eingesetzt werden. Bei Fehler- Beseitigungen mit einem hohen Änderungsauswirkungsfaktor CIF (cross-impact-factor) soll der Test-Aufwand vorteilhafterweise umfangreicher sein, d.h. es soll nicht nur die Beseitigung des eigentlichen Fehlers berücksichtigt werden, sondern es soll so getestet werden das mögliche Seiteneffekte erkannt werden können. Wiederum bei Fehler- Beseitigungen mit einem sehr niedrigen Änderungsauswirkungs- faktor CIF (cross-impact-factor) kann sich der Test Aufwand auf das Szenario des Fehlers beschränken und braucht nicht weiter ausgedehnt zu werden. Damit wird eine dem "Impact" der Änderung angemessener Test Aufwand erreicht und das genau passend auf die jeweilige Änderung im Software System.If all changes are classified according to their influence then the usually limited test resources can be used much more purposefully. For fault eliminations with a high change impact factor CIF (Cross-impact-factor), the test effort should advantageously be more extensive, ie not only the elimination of the actual error should be considered, but it should be tested so that possible side effects can be detected. Again, for error eliminations with a very low change impact factor CIF (cross-impact-factor), the test effort may be limited to the scenario of the error and need not be extended further. Thus, a test appropriate to the "impact" of the change is achieved, and that exactly fits the particular change in the software system.
In der Zeichnung ist beispielhaft die Struktur eines Software-Paketes dargestellt, wobei das Softwarepaket Ebenen CIF-Ll, ... CIFL4 aufweist, wobei die Ebene CIF-Ll das gesamte Softwarepaket SP, die Ebene CIF-L2 unmittelbar darunterliegende Komponenten Cl und C2, die Ebene CIF-L3 Subkomponenten SCl und SC2 und die unterste Ebene CIF-L4 Module MIl,.. M23 beinhaltet. Der Änderungsauswirkungsfaktor CIF (cross-impact-factor) wird entlang der Software Architektur, also typischerweise auf allen Ebenen, für jede dieser Komponenten und für das gesamte Software Paket berechnet .In the drawing, the structure of a software package is shown by way of example, wherein the software package levels CIF-Ll, ... CIFL4, wherein the level CIF-Ll the entire software package SP, the level CIF-L2 immediately underlying components Cl and C2, the level CIF-L3 subcomponents SCl and SC2 and the lowest level CIF-L4 modules MIl, .. M23 includes. The change impact factor CIF (cross-impact-factor) is calculated along the software architecture, ie typically at all levels, for each of these components and for the entire software package.
Diese Berechnungen werden mit jeder neuen sogenannten Baseline berechnet. Als eine Baseline ist hier in diesem Zusammenhang gemeint die Liste aller notwendigen Artefakte mit ihren Versionen für ein Software System zu einem bestimmten Zeitpunkt. Eine Baseline wird üblicherweise von einem Konfigurationsmanagement berechnet und der Entwicklungsabteilung zur Verfügung gestellt.These calculations are calculated with each new baseline. As a baseline here in this context is meant the list of all necessary artifacts with their versions for a software system at any given time. A baseline is usually calculated by configuration management and provided to the development department.
Die Frequenz der Berechnung, bzw. wann gibt es eine neueThe frequency of the calculation, or when there is a new one
Baseline gibt ist stark abhängig von der Entwicklungskultur und auch der Phase in der sich die Produkt Entwicklung befindet und bedeutet bspw. täglich oder wöchentlich.Baseline is strongly dependent on the culture of development and also the phase in which the product development is located and means, for example, daily or weekly.
Mit Hilfe dieser berechneten Änderungsauswirkungsfaktor CIF Ranglisten ergibt sich eine sehr fein abgestufte aber auch gleichzeitig sehr übersichtliche Darstellung welche Änderung welchen Einfluss in der Software hatte. Für jede eindeutig definierbare ID, wie Fehlerbeseitigungs-ID, "Feature"-ID, oder ähnliches wird ein eigener CIF berechnet, der aber dann auch wieder in einem globalen Änderungsauswirkungsfaktor CIF, der alle IDs mit einschließt wieder zusammengeführt wird. Damit ist es möglich je nach dem Reife-Zustand der Produktentwicklung entweder auf spezielle IDs mit deren Änderungsauswirkungsfaktor CIF sich zu konzentrieren, oder aber mehr den globalen Änderungsauswirkungsfaktor CIF zu beobachten .With the help of these calculated change impact factor CIF ranking lists results a very finely graduated however also at the same time very clear presentation which change had which influence in the software. For each unique ID, such as debugging ID, "feature" ID, or similar, a separate CIF is calculated, but then re-merged into a global change impact factor CIF, which includes all IDs. Depending on the maturity state of the product development, it is possible either to concentrate on specific IDs with their change impact factor CIF or to observe more the global change impact factor CIF.
Weiter stehen für jeden berechneten Änderungsauswirkungs- faktor CIF die Eingangsdaten, d.h. die Namen der Komponenten, und die Namen Entwickler für eventuelle genauere Analysen zur Verfügung. All diese Informationen werden vollautomatisch aus den Daten die üblicherweise ein Konfigurations-Management- System zur Verfügung stellt berechnet. Die einzige Vorbedingung ist das jeder Entwickler die Änderungen die mit einer ID, also einem zusätzlichen Leistungsmerkmal (Feature) , Fehler, oder ähnliches, zusammenhängen mit Hilfe des Konfigurations-Management-Systems an notiert hat.Further, for each calculated change impact factor CIF, the input data, i. the names of the components, and the names developers for any more detailed analysis available. All of this information is calculated automatically from the data that usually provides a configuration management system. The only prerequisite is that every developer notes the changes related to an ID, an additional feature, error, or similar, using the configuration management system.
Eine Änderung bedeutet in diesem Zusammenhang nicht jede Datei die zu einer Fehlerbeseitigung verändert wurde, sondern eine Änderung kann eine, oder aber auch mehrere Dateien enthalten. Egal wie viele Dateien für eine Änderung von einem Entwickler notwendig sind, diese Änderung wird als eine singuläre Aktion betrachtet, was durch den Parameter n in der Formel zum Ausdruck kommt.In this context, a change does not mean every file that has been modified for error correction, but a change can contain one or even several files. No matter how many files are needed for a developer to make a change, this change is considered a singular action, which is expressed by the parameter n in the formula.
Beispielhaft ist in der folgenden Tabelle ein Ausschnitt aus einer typischen „Entwicklungs-Baseline" von CIF Ranglisten zu sehen :By way of example, the following table shows a section from a typical "development baseline" of CIF ranking lists:
Figure imgf000008_0001
Figure imgf000008_0001
Figure imgf000009_0001
Figure imgf000009_0001
Die Tabelle zeigt die jeweiligen Änderungsauswirkungsfaktoren von drei verschiedenen IDs „Bugzilla", „ClearQuest" und der „Feature-DB" an. Zusätzlich wird auch der globale Änderungsauswirkungsfaktor CIF (cross-impact-factor) in Zeile 1 dargestellt. Die Zahlen in den "Summary" Zeilen sind keine einfachen mathematischen Summen von den Werten unterhalb. Diese Zahlen stellen die Anzahl der unterschiedlichen "Änderungen", "Anzahl der Entwickler" und "Anzahl der Komponenten" die im Rahmen dieser Datenbank erfasst wurden. Es ist sehr leicht zu sehen das in dem o.a. Beispiel der Schwerpunkt der Änderungen sich auf die IDs die in der „Bugzilla"-Datenbank erfasst wurden beziehen. Weiter ist auch eindeutig zu sehen dass die IDs in den Zeilen 3 bis 6 die mit Abstand höchsten Änderungsauswirkungsfaktoren aufweisen. Was dem Test-Team eindeutige Hinweise bezüglich der durchzuführenden Testumfänge gibt. The table shows the respective change impact factors of three different IDs "Bugzilla", "ClearQuest" and the "Feature DB" In addition, the global change impact factor CIF (cross-impact-factor) is also shown in line 1. The numbers in the " Summary "Rows are not simple mathematical sums of values below These numbers represent the number of different" Changes "," Number of Developers "and" Number of Components "collected in this database It is very easy to see this in the above example, the focus of the changes is on the IDs captured in the "Bugzilla" database. Next is also to see clearly that the IDs in lines 3 to 6 by far the highest change impact factors. Which gives the test team clear indications regarding the test scopes to be performed.

Claims

Patentansprüche claims
1. Verfahren zur quantitativen Beurteilung von Änderungen in einem Software-System (SP) und deren Auswirkungen, - bei dem für eine Änderung mit einer bestimmten Änderungs-ID jeweils ein Änderungsauswirkungsfaktor CIF nach der Formel CIF = n * c * d berechnet wird, wobei n die Anzahl der Änderungen ist in denen dieselbe Änderungs- ID festgestellt wird, c die Anzahl der verschiedenen Software Komponenten ist die bezüglich dieser Änderung verändert wurden und d die Anzahl der verschiedenen Entwickler ist die bezüglich dieser Änderung involviert waren und - bei dem zur Beurteilung mindestens eine nach den Änderungsauswirkungsfaktoren CIF sortierte Rangliste der Änderungen erstellt wird.1. A method for the quantitative assessment of changes in a software system (SP) and their effects, - in which for a change with a particular change ID each a change impact factor CIF is calculated according to the formula CIF = n * c * d, where n is the number of changes in which the same change ID is detected, c is the number of different software components that have been changed with respect to this change, and d is the number of different developers involved in this change and at least a ranked list of changes sorted by the change impact factors CIF is created.
2. Verfahren nach Anspruch 1, bei dem für eine Änderung mit einer bestimmten Änderungs-ID jeweils ein Änderungsauswirkungsfaktor CIF nach der erweiterten Formel CIF = n * c * d * s * a berechnet wird, wobei s die Anzahl der verschiedenen Entwicklungsstandorte ist die an dieser Änderung mitgewirkt haben und a die Anzahl der verschiedenen Entwicklungsabteilungen ist die an dieser Änderung mitgewirkt haben.2. The method of claim 1, wherein for a change with a particular change ID each a change impact factor CIF is calculated according to the extended formula CIF = n * c * d * s * a, where s is the number of different development sites is the and a is the number of different development departments involved in this change.
3. Verfahren nach Anspruch 1 oder 2, bei dem der m Änderungsauswirkungsfaktor CIF entlang der Software Architektur für alle Komponenten (MIl,.. M23, SCl, SC2, Cl, C2) und schließlich für das gesamte Software-Paket (SP) berechnet wird.3. The method of claim 1 or 2, wherein the m change impact factor CIF along the software architecture for all components (MIl, .. M23, SCl, SC2, Cl, C2) and finally for the entire software package (SP) is calculated ,
4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem eine Änderung entweder eine Fehlerbeseitigung oder eine Einbringung eines zusätzlichen Leistungsmerkmals darstellt . 4. A method according to any one of the preceding claims, wherein a change is either debugging or introducing an additional feature.
5. Verwendung des Verfahren nach einem der vorhergehenden Ansprüche, bei der die Veränderung des Änderungsauswirkungs- faktors CIF für jede Anforderungs-ID über die Zeit integriert bzw. summiert betrachtet und durch einen stetigen Anstieg dieses Wertes besonders kritische Anforderungs-IDs identifiziert werden.5. Use of the method according to one of the preceding claims, in which the change in the change impact factor CIF for each request ID is integrated or summed over time and identified by a steady increase in this value particularly critical request IDs.
6. Verwendung des Verfahren nach einem der vorhergehenden Ansprüche, bei der der Testaufwand für die jeweilige Änderungen entsprechend des jeweiligen Änderungsauswirkungs- faktors CIF erfolgt, wobei Änderungen mit einem hohen Änderungsauswirkungsfaktor umfangreicher getestet werden als Änderungen mit einem niedrigem Änderungsauswirkungsfaktor . 6. Use of the method according to one of the preceding claims, in which the test effort for the respective changes according to the respective change impact factor CIF is carried out, wherein changes with a high change impact factor are tested more extensively than changes with a low change impact factor.
PCT/EP2008/054675 2007-04-25 2008-04-17 Method for the quantitative evaluation of modifications in a software system and the effects thereof WO2008132063A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE102007019532.1 2007-04-25
DE102007019532 2007-04-25
DE102007026226.6 2007-06-05
DE102007026226A DE102007026226A1 (en) 2007-04-25 2007-06-05 Method for the quantitative assessment of changes in a software system and their effects

Publications (2)

Publication Number Publication Date
WO2008132063A2 true WO2008132063A2 (en) 2008-11-06
WO2008132063A3 WO2008132063A3 (en) 2009-01-22

Family

ID=39809743

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2008/054675 WO2008132063A2 (en) 2007-04-25 2008-04-17 Method for the quantitative evaluation of modifications in a software system and the effects thereof

Country Status (2)

Country Link
DE (1) DE102007026226A1 (en)
WO (1) WO2008132063A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495790A (en) * 2011-10-20 2012-06-13 镇江睿泰信息科技有限公司 Version change difference identifier and version change identification method

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352914B2 (en) 2008-12-15 2013-01-08 Accenture Global Services Limited Impact analysis of software change requests
EP2199901A1 (en) * 2008-12-15 2010-06-23 Accenture Global Services GmbH Impact analysis of software change requests

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ARNOLD R S ET AL: "Impact analysis-Towards a framework for comparison" SOFTWARE MAINTENANCE ,1993. CSM-93, PROCEEDINGS., CONFERENCE ON MONTREAL, QUE., CANADA 27-30 SEPT. 1993, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, 27. September 1993 (1993-09-27), Seiten 292-301, XP010125809 ISBN: 978-0-8186-4600-3 *
GRAVES, T.L.; KARR, A.F.; MARRON, J.S.; SIY, H.: "Predicting fault incidence using software change history" IEEE TRANSACTIONS ON SOFTWARE ENGINEERING,, Bd. 26, Nr. 7, 7. Juli 2000 (2000-07-07), Seiten 653-661, XP002499575 *
RYDER B G, TIP F: "Change impact analysis for object-oriented programs" PROCEEDINGS OF THE 2001 ACM SIGPLAN-SIGSOFT WORKSHOP ON PROGRAM ANALYSIS FOR SOFTWARE TOOLS AND ENGINEERING, Bd. -, Nr. -, Juni 2001 (2001-06), Seiten 46-53, XP002499576 *
TIE FENG ET AL: "Applying change impact analysis and design metrcs in CBR based software design improvement" COMMUNICATIONS AND INFORMATION TECHNOLOGY, 2005. ISCIT 2005. IEEE INTE RNATIONAL SYMPOSIUM ON BEIJING, CHINA OCT. 12-14, 2005, PISCATAWAY, NJ, USA,IEEE, Bd. 1, 12. Oktober 2005 (2005-10-12), Seiten 169-172, XP010875641 ISBN: 978-0-7803-9538-1 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495790A (en) * 2011-10-20 2012-06-13 镇江睿泰信息科技有限公司 Version change difference identifier and version change identification method

Also Published As

Publication number Publication date
DE102007026226A1 (en) 2008-11-06
WO2008132063A3 (en) 2009-01-22

Similar Documents

Publication Publication Date Title
Dreßler et al. Empirical evaluation of interest barrier effects
DE202020104075U1 (en) Software inspection platform for real-time display of inspection progress
WO2008132063A2 (en) Method for the quantitative evaluation of modifications in a software system and the effects thereof
Schäfer et al. SAP solution manager
DE112015004557B4 (en) Requirements monitoring
DE102012210482A1 (en) Method and system for migrating business process instances
Jirjahn et al. Betriebsräte und Arbeitszufriedenheit/Works Councils and Job Satisfaction
DE102020206327A1 (en) Method and device for testing a technical system
DE102006007791A1 (en) Process optimization method, involves analyzing process definition to discover control sequence dependencies, and control sequences are transformed in step into corresponding Petri network, and in another step, Petri network is analyzed
WO2018028851A1 (en) Data processing device and method for determining the weights of constituents of a target portfolio
DE112016002709T5 (en) Assistance device for multi-dimensional data analysis
Baumeister Sample size and error containment judgments in non-statistical audit sampling-the sensivity of auditors to a revision of professional standards
DE102022115532A1 (en) COMPUTER-IMPLEMENTED METHOD, COMPUTER PROGRAM AND/OR COMPUTER-READABLE MEDIUM AND DATA PROCESSING DEVICE
Ismail Khan et al. Ownership structured firms in Malaysia: audit committee characteristics and audit fees
Ruhland et al. Evaluierung des „Förderungsprogramms für Studien für den kommerziellen, internationalen Technologie-transfer “(kit4market, kit4market 2.0). Endbericht.
DE102021211830A1 (en) Procedure for reviewing a complex regulatory situation
Löb Sustainability Reporting & Control in the Construction Industry (EU)/eingereicht von Hanna Löb
Fafchamps Human Capital, Exports, and Wages.
DE102020215292A1 (en) Method for storing program data in a database
DE102014016676A1 (en) Method for the computer-aided selection of applicants from a large number of applicants for a given requirement profile
DE102020209420A1 (en) Computer-implemented method and device for update management of different versions of distributed software using machine learning methods
DE202023106004U1 (en) An artificial intelligence and machine learning based system to automate employee management and work information in the organization
DE102022104865A1 (en) Aircraft maintenance procedures
DE102019209541A1 (en) Method and device for fulfilling a development task
DE102021130822A1 (en) AUTOMATICALLY BUILD AND RUN A TEST SYSTEM FOR WORKFLOWS

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08736334

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08736334

Country of ref document: EP

Kind code of ref document: A2