DE102007006773A1 - Verfahren zur Handhabe eines Kennwerteblocks - Google Patents

Verfahren zur Handhabe eines Kennwerteblocks Download PDF

Info

Publication number
DE102007006773A1
DE102007006773A1 DE200710006773 DE102007006773A DE102007006773A1 DE 102007006773 A1 DE102007006773 A1 DE 102007006773A1 DE 200710006773 DE200710006773 DE 200710006773 DE 102007006773 A DE102007006773 A DE 102007006773A DE 102007006773 A1 DE102007006773 A1 DE 102007006773A1
Authority
DE
Germany
Prior art keywords
versions
version
characteristic block
block
dimension
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
DE200710006773
Other languages
English (en)
Inventor
Thilo Wenzel
Matthias Gekeler
Igor Shapiro
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE200710006773 priority Critical patent/DE102007006773A1/de
Priority to EP08701334A priority patent/EP2118742A1/de
Priority to PCT/EP2008/050169 priority patent/WO2008098803A1/de
Publication of DE102007006773A1 publication Critical patent/DE102007006773A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Es wird ein Verfahren zur Handhabe eines Kennwerteblocks (106, 108, 110, 112), von dem mehrere Versionen vorliegen, vorgestellt, bei dem zum automatisierten Vergleichen dieser Versionen ein Kriterium, durch das bestimmt wird, ob die Versionen als unterschiedlich eingestuft werden, festgelegt wird. Weiterhin wird eine Einrichtung (114) zur Handhabe eines Kennwerteblocks (106, 108, 110, 112), ein Computerprogramm und ein Computerprogrammprodukt beschrieben.

Description

  • Die Erfindung betrifft ein Verfahren zur Handhabe eines Kennwerteblocks, eine Einrichtung zur Handhabe eines Kennwerteblocks, ein Computerprogramm und ein Computerprogrammprodukt.
  • Stand der Technik
  • Zur Verwaltung von Aktionen bei Diagnose-Funktionen in Steuergeräten kommen sog. Kennwerteblöcke zum Einsatz. Bei einer Entwicklung eines Kennwerteblocks werden von diesem über ein Applikationswerkzeug in Abhängigkeit von einem Software-Stand verschiedene Versionen bereitgestellt.
  • Derartige Kennwerteblöcke werden zur Verwaltung von Aktionen in elektronischen oder elektromechanischen Vorrichtungen, wie bspw. Steuergeräten für Kraftfahrzeuge, eingesetzt. Mit den Kennwerteblöcken können Funktionsabläufe von Steuergeräten kontrolliert und somit geregelt und/oder gesteuert werden. Kennwerteblöcke können als Elemente Daten und/oder Programme bzw. Programmteile umfassen. Demnach kann ein Kennwerteblock allgemein als ein Softwaremodul betrachtet werden, das eine Funktion der Vorrichtung beeinflusst.
  • Auf dem Markt befindliche Applikationswerkzeuge unterstützen derzeit das Vergleichen zwischen Software-Ständen und von Datenständen, sowie das Kopieren von einem Datenstand in einen anderen Datenstand.
  • So ist es mit dem Programmteil Calibration Data Manager (CDM) des Applikationswerkzeugs INCA der ETAS GmbH möglich, Kennwerteblöcke zu vergleichen und zu kopieren. Weitere ähnliche Applikationswerkzeuge sind CDM Studio, Canape, ATI Vision und CalDesk. Sobald sich die Dimension zwischen Ausgangsstand und Vergleichsstand jedoch ändert, werden die Kennwerteblöcke von diesen Applikationswerkzeugen als unterschiedlich ausgewiesen, so dass ein automatisiertes Kopieren nicht möglich ist.
  • Offenbarung der Erfindung
  • Die Erfindung betrifft ein Verfahren zur Handhabe eines Kennwerteblocks, von dem mehrere Versionen vorliegen. Hierbei wird zum automatisierten Vergleichen dieser Versionen ein Kriterium, durch das bestimmt wird, ob die Versionen als unterschiedlich eingestuft werden, festgelegt.
  • Somit ist es mit der Erfindung u. a. möglich, je nach anwendungsbezogener Anforderung zu definieren, wann zwei Versionen des Kennwerteblocks noch als gleich angesehen oder klassifiziert werden, obwohl sie sich im Detail möglicherweise unterscheiden. Weiterhin ist durch Festlegen des Kriteriums vorgesehen, welche Unterschiede die Versionen aufweisen müssen, so dass sie als unterschiedlich eingestuft bzw. klassifiziert werden. Dann ist es möglich, die unterschiedlich eingestuften Versionen einem Anwender als unterschiedlich anzuzeigen.
  • Bei dem automatisierten Vergleichen, das im Rahmen des Verfahrens durchgeführt werden kann, wird bspw. untersucht, worauf ein Unterschied zwischen den Versionen des Kennwerteblocks beruht. Bei einer Entwicklung des Kennwerteblocks werden in der Regel in einer Abfolge von mehreren Entwicklungsschritten verschiedenartige Software-Stände sowie Datenstände bereitgestellt. Auf Grundlage dieser Entwicklungsschritte können im Laufe der Zeit verschiedene Versionen des Kennwerteblocks bereitgestellt werden. Über die verschiedenen Software- und Entwicklungsstände ergeben sich verschiedene Datenstände, die die Versionen der Kennwerteblöcke umfassen.
  • Bei einer derartigen Weiterentwicklung des Kennwerteblocks von einer vorhergehenden Version zur nachfolgenden Version kann es typischerweise vorkommen, dass sich eine erste Version des Kennwerteblocks im Vergleich zu einer zweiten Version dieses Kennwerteblocks insbesondere hinsichtlich ihrer Größe und/oder Bedatung verändert. Mit dem Verfahren zur Handhabe des Kennwerteblocks ist es in Ausgestaltung möglich, herauszufinden ob und inwiefern sich zwei oder mehrere Versionen eines Kennwerteblocks inhaltlich voneinander unterscheiden. Je nachdem wie sehr die Versionen voneinander inhaltlich abweichen, werden sie noch als gleich oder bereits als unterschiedlich eingestuft.
  • Bei einer Variante der Erfindung kann mindestens ein Element, bspw. ein Datum oder eine Sequenz einer ersten Version des Kennwerteblocks, in mindestens eine zweite Version des Kennwerteblocks kopiert werden. Dies umfasst auch die Möglichkeit, dass die mindestens eine erste Version in mindestens eine zweite Version kopiert wird. Durch ein derartiges Kopieren können die beiden Versionen des Kennwerteblocks untereinander abgeglichen werden.
  • Die verschiedenen Versionen eines Kennwerteblocks können durch verschiedene, insbesondere inhaltliche, Merkmale charakterisiert sein. Als ein Merkmal kann auch eine Dimension und somit eine Größe einer Version eines Kennwerteblocks berücksichtigt werden. Unterschiede hinsichtlich der Dimension und Größe von Versionen des Kennwerteblocks können auch als ein mögliches Unterscheidungsmerkmal herangezogen werden.
  • Bei einer Entwicklung des Kennwerteblocks kann eine erste Version mit einer ersten Dimension als Quelle in ein Ziel und dabei in eine zweite Version mit einer zweiten Dimension überführt werden. Durch das Verfahren kann typischerweise eine Unterschiedlichkeit zwischen den Versionen in Abhängigkeit des Kriteriums bestimmt werden. Für den Fall, dass zwei Versionen des Kennwerteblocks aufgrund des Kriteriums voneinander unterschiedlich sein sollten, ist es mit einer Variante des Verfahrens trotzdem möglich, die erste Version in die zweite Version zu kopieren, da nunmehr vorhandene Unterschiede zwischen den Versionen genau bestimmbar und bekannt sind, so dass die Unterschiede beim Kopieren berücksichtigt werden können.
  • Demnach kann die erste Version des Kennwerteblocks, die eine erste Dimension aufweist, in mindestens eine zweite Version des Kennwerteblocks, die eine zweite Dimension aufweist, kopiert werden. Üblicherweise ist ein derartiges Kopieren bei Vorliegen unterschiedlicher Dimensionen der Versionen u. a. dann begünstigt, wenn die zweite Dimension der mindestens einen zweiten Version mindestens genauso groß wie die erste Dimension der ersten Version ist. Weiterhin kann in Ausgestaltung die zweite Dimension der mindestens einen zweiten Version kleiner als die erste Dimension der ersten Version sein, so dass auch ein Kopieren der ersten Version mit der ersten Dimension in die mindestens eine zweite Version mit der zweiten, kleineren Dimension durchgeführt werden kann.
  • Bei einer Ausführungsform des Verfahrens wird insbesondere für einen Inhalt der Versionen eine Mustererkennung durchgeführt. Dabei kann diese Mustererkennung unter Berücksichtigung einer beliebig einstellbaren Schärfe durchgeführt werden. Dabei wird diese Schärfe bspw. unter Berücksichtigung des festlegbaren Kriteriums eingestellt, wobei die Mustererkennung auch anhand eines Vergleichsfeldes ("Compare Array") erfolgen kann.
  • Wie bereits erwähnt, können die Versionen inhaltlich durch verschiedenartige Elemente charakterisiert sein. Dabei kann als ein einfachstes Element ggf. ein einzelnes Datum als kleinste Einheit jeweils einer Version des Kennwerteblocks definiert werden. Als Kriterium zum Vergleich der Unterschiedlichkeit oder Gleichheit der Versionen kann u. a. überprüft werden, ob jeweils ein Datum in beiden Versionen vorhanden ist. Ein Grad für die Schärfe des Kriteriums ist in Abhängigkeit einer jeweiligen Definition dadurch festgelegt, wie detailliert eine Gleichheit bzw. Unterschiedlichkeit zwischen den Versionen zu berücksichtigen ist. So ist es bspw. auch möglich, die Schärfe entsprechend der zu berücksichtigenden Details einzustellen. Bei einer vergleichsweise feinen Einstellung können einzelne Daten der Versionen miteinander verglichen werden. Bei einer im Vergleich hierzu gröberen Einstellung ist vorgesehen, dass lediglich Sequenzen der Versionen, wobei derartige Sequenzen mehrere Daten umfassen, miteinander verglichen werden. Mit dem festzulegenden Kriterium können z. B. qualitative Gesichtspunkte berücksichtigt werden, so dass geprüft wird, ob ein bestimmtes Datum in jeder Version zumindest einmal vorhanden ist. Bei Berücksichtigung qualitativer Gesichtspunkte ist in Ausgestaltung zu prüfen, wo das Datum innerhalb der Versionen zumindest einmal angeordnet ist. Außerdem können in Ausgestaltung der Erfindung die Dimensionen der Versionen miteinander verglichen werden.
  • Als ein Maß für eine Schärfe des Kriteriums und somit eine datenbezogene Auflösung von zu vergleichenden Inhalten von verschiedenen Versionen können bspw. Datenpakete bzw. Datenfelder herangezogen werden. Dabei umfasst ein Datenpaket in der Regel mehrere in einer Reihenfolge angeordnete Daten oder Elemente, im einfachsten Fall lediglich ein Datum oder Element. Datenpakete, die eine vergleichsweise große Anzahl an Daten in derselben Reihenfolge umfassen, können als Sequenzen bezeichnet werden. Somit ist es denkbar, aufgrund einer Anzahl und Größe von Datenpaketen, die in zwei Versionen eines Kennwerteblocks identisch sind, das Kriterium, wonach festgelegt ist, ob die Versionen als gleich oder unterschiedlich klassifiziert oder betrachtet werden, zu quantifizieren.
  • Das Verfahren kann in einer Ausgestaltung mit einem Applikationswerkzeug und somit einem Anwendungswerkzeug durchgeführt werden. Derartige Applikationswerkzeuge können üblicherweise zur Bereitstellung und/oder Entwicklung von Kennwerteblöcken benutzt werden. Dabei wird durch das Applikationswerkzeug mindestens ein Kennwerteblock in Abhängigkeit von Software- und Datenständen von Version zu Version automatisiert weiterentwickelt. Eine Variante des Verfahrens kann als mindestens eine optional durchführbare Funktion des Applikationswerkzeugs zur Anwendung kommen.
  • Die erfindungsgemäße Einrichtung weist mindestens ein Modul zur Handhabe eines Kennwerteblocks auf. Dabei ist vorgesehen, dass von dem Kennwerteblock mehrere Versionen vorliegen. Das mindestens eine Modul der Einrichtung ist dazu ausgebildet, diese Versionen unter Berücksichtigung eines festlegbaren Kriteriums, durch das bestimmt ist, ob die Versionen als unterschiedlich eingestuft sind, automatisiert zu vergleichen.
  • Die Einrichtung kann als das mindestens eine Modul eine Recheneinheit aufweisen. Das mindestens eine Modul ist zur Ausführung mindestens eines oder mehrerer Schritte des Verfahrens ausgebildet. Weiterhin kann die Einrichtung als das mindestens eine Modul das Applikationswerkzeug umfassen oder zur Realisierung und/oder Ausführung des Applikationswerkzeugs ausgebildet sein. Außerdem kann die Einrichtung insbesondere mit einem Steuergerät für ein Kraftfahrzeug verbunden werden, so dass eine Wechselwirkung zwischen der Einrichtung und dem Steuergerät, bspw. in einem Prüfstand, bereitgestellt wird.
  • Zudem betrifft die Erfindung ein Computerprogramm mit Programmcodemitteln, um alle Schritte eines voranstehend beschriebenen Verfahrens durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere in einer erfindungsgemäßen Einrichtung, ausgeführt wird.
  • Das weiterhin erfindungsgemäß vorgesehene Computerprogrammprodukt mit Programmcodemitteln, die auf einem computerlesbaren Datenträger gespeichert sind, ist zum Durchführen aller Schritte des erfindungsgemäßen Verfahrens geeignet, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere in einer voranstehend beschriebenen Einrichtung, ausgeführt wird.
  • Die Erfindung kann in Ausgestaltung in dem Applikationswerkzeug zur Anwendung kommen, mit dem dem Anwender mittels einer Option ermöglicht wird, das Kriterium, ob ein Kennwerteblock in zwei Versionen als unterschiedlich eingestuft bzw. angezeigt werden soll, unter beliebiger Abstufung und/oder Schärfe festzulegen. Zudem wird das Kopieren des Kennwerteblocks von einer Dimension in eine gleich große oder auch größere Dimension unterstützt.
  • In einer Variante kann dies durch Vorsehen der Mustererkennung mit einstellbarer Schärfe für Datenfelder und deren Muster innerhalb der Versionen des Kennwerteblocks beschrieben werden. In diesem Fall werden in dem Kennwerteblock Bedatungsmuster, die unter Berücksichtigung einer Anordnung der Daten, bspw. einem inhaltlichen Aufbau der Versionen, wiedergeben, innerhalb eines Datenfelds erkannt. Diese können dann mit Muster anderer Datenfelder verglichen werden.
  • Über eine bedarfsweise vorzunehmende Einstellung der Schärfe kann eine Prüfung von der Übereinstimmung der Werte des kompletten Datenfeldmusters über Sequenzen von Einzelwerten bis hin zu einem einzelnen Datum besonders detailliert durchgeführt werden. Die Mustererkennung erfolgt zwischen zwei oder mehreren Datenfeldern bzw. Datenpaketen, wobei als Basis ein beliebiges Datenfeld aus der zu vergleichenden Datenfeldmenge verwendet werden kann. Alternativ oder ergänzend kann ein explizites Datenfeld als Referenz verwendet werden.
  • Die Mustererkennung wird in Ausgestaltung für zumindest zwei Zwecke eingesetzt, nämlich um Vergleiche zwischen Versionen eines Kennwerteblocks und einzelnen Daten dieser Versionen durchzuführen, und um eine Freigabe für einen Kopiervorgang von einer ersten zu einer zweiten Version bereitzustellen.
  • Durch eine gezielte Festlegung, bis zu welcher Stufe des Kriteriums Versionen aus zwei Software- und/oder Datenständen als gleich angesehen werden sollen, ist es möglich, Änderungen in einer feineren Abstufung herauszufiltern und dadurch den Aufwand, dies auf andere Weise feststellen zu müssen, erheblich zu verringern.
  • Die Möglichkeit, Inhalte wie Daten aus einem kleineren Kennwerteblock in einen größeren Kennwerteblock durch einen Kopiervorgang abzuwickeln, reduziert den Aufwand, der bei bisherigen manuellen Vorgehensweisen notwendig war, deutlich.
  • In einer zukünftigen Version des Calibration Data Manager (CDM) des Applikationswerkzeugs INCA der ETAS GmbH, in dem die Erfindung bspw. zur Anwendung kommen soll, werden unterschiedliche Datenstände, die aus unterschiedlichen Software-Ständen stammen können, einerseits als Quelle und andererseits als Ziel ausgewählt, so dass ein 1:1-Vergleich durchgeführt werden kann. Der CDM kann auch den Vergleich einer Quelle mit mehreren Zielen unterstützen, so dass ein 1:n-Vergleich durchführbar ist, wobei das Ergebnis der aufeinanderfolgende Vergleich der Quelle mit jedem einzelnen Ziel ist. Bei derartigen Vergleichen ist als Quelle eine erste Version des Kennwerteblocks und als Ziel mindestens eine zweite Version des Kennwerteblocks vorgesehen.
  • Für den Vergleich von Kennwerteblöcken bzw. der vorliegenden Versionen eines Kennwerteblocks soll in Ausgestaltung die als Vergleichsfeld ("Compare Array") bezeichnete Option eingeführt werden, die hinsichtlich der Schärfe des Kriteriums verschiedene Einstellungen annehmen kann. Hierzu sind zumindest die fünf nachfolgend angeführten Varianten denkbar.
    • 1. Bei Vorliegen einer gleichen Sequenz mit gleicher Größe werden Quelle und Ziel als gleich angesehen, wenn die Kennwerteblöcke die gleiche Dimension und somit Größe aufweisen und die Elemente und somit die Daten darin in der gleichen Abfolge angeordnet sind. In diesem Fall kann die Abfolge derart definiert sein, dass zwei bestimmte Elemente unmittelbar aufeinander folgen. Die Abfolge ist hierbei üblicherweise durch die Elemente der Quelle definiert. Diese Option der Erfindung ermöglicht das Auffinden von identischen Kennwerteblöcken bzw. von identischen Versionen eines Kennwerteblocks.
    • 2. Weiterhin kann geprüft werden, ob eine gleiche Sequenz an einer gleichen Position angeordnet ist. Hierbei werden Quelle und Ziel als gleich angesehen, wenn die Elemente des Kennwerteblocks in der Quelle bspw. an der ersten Stelle beginnend auch in der gleichen Abfolge im Ziel vorhanden sind. Dabei kann das Ziel unter Umständen mehr Elemente als die Quelle aufweisen. Diese Option ermöglicht üblicherweise das Auffinden von Kennwerteblöcken, bei denen das Ziel lediglich am Ende erweitert wurde.
    • 3. Es ist auch denkbar, dass in zwei Versionen eine gleiche Sequenz mit Unterbrechungen gegeben ist. In diesem Fall werden Quelle und Ziel dann als gleich angesehen, wenn die Elemente des Kennwerteblocks in der Quelle und im Ziel in der gleichen Reihenfolge vorhanden sind. Die Reihenfolge kann dabei so definiert sein, dass zwei bestimmte Elemente aufeinanderfolgen, aber nicht unmittelbar aufeinanderfolgen müssen, weil sich zwischen diesen beiden Elementen mindestens ein drittes Element befindet. Diese Option ermöglicht bspw. das Auffinden von Kennwerteblöcken, bei denen das Ziel an einer beliebigen Stelle, insbesondere am Anfang oder zwischen den zwei Elementen, erweitert wurde.
    • 4. Gemäß einer weiteren Variante kann eine abweichende Sequenz in einer der Versionen aus gleichen Elementen bestehen. Dabei werden Quelle und Ziel als gleich angesehen, wenn die Elemente des Kennwerteblocks in der Quelle sowie im Ziel und somit dem mindestens einen zweiten Kennwerteblock wenigstens genauso häufig vorhanden sind. Diese Option ermöglicht das Auffinden von Kennwerteblöcken, bei denen zwar die Elemente alle im Ziel vorhanden sind, aber deren Reihenfolge geändert wurde.
    • 5. Bei einer abweichenden Sequenz, wobei jedes Element wenigstens einmal vorhanden ist, werden Quelle und Ziel als gleich angesehen, wenn jedes Element des Kennwerteblocks in der Quelle wenigstens einmal im Ziel vorhanden ist. Diese Option ermöglicht das Auffinden von Kennwerteblöcken, bei denen Quelle und Ziel zumindest eine Gemeinsamkeit haben.
  • In der nachfolgenden Tabelle 1 ist eine Übersicht zu Unterscheidungsmerkmalen bzw. -kriterien von zwei Versionen eines Kennwerteblocks dargestellt.
    Quelle/Ziel Kriterium Sequenz =, Größe = Sequenz =, Position = Sequenz =, mit Unterbrechungen Sequenz abweichend, gleiche Elemente Sequenz abweichend, Element mindestens einmal vorhanden
    AABC/AABC = = = = =
    AABC/ = = = =
    AABCX
    AABC/XAABC = = =
    AABC/AAXBC = = =
    AABC/ABAC = =
    AABC/AACBX = =
    AABC/AAXCB = =
    AABC/ABCBX =
    AABC/ABC =
    AABC/ACB =
    AABC/AAC
    AABC/AACX
    Tabelle 1
  • In der Tabelle 1 sind in den Feldern der ersten Spalte Elemente der ersten Version, d. h. der Quelle, sowie die Elemente der zweiten Version, hier auch als Ziel bezeichnet, aufgefürt. A, B, C definieren jeweils Einträge oder Daten, die in beiden Versionen des Kennwerteblocks vorliegen, X ist ein beliebiger anderer Wert, der nicht A, B oder C ist. Kriterien zur Festlegung der Gleichheit bzw. Unterschiedlichkeit der Versionen sind in der ersten Zeile der Tabelle eingetragen. Ist in einem Feld ein Gleichzeichen "=" eingetragen, werden beim Vergleichen der Versionen des Kennwerteblocks Quelle und Ziel als gleich angesehen. Falls in einem Feld ein Ungleichzeichen "≠" eingetragen ist, werden die Versionen des Kennwerteblocks beim Vergleich zwischen Quelle und Ziel als unterschiedlich angesehen.
  • Die hier beispielhaft aufgezeigten Kriterien für die Schärfe wurden so gewählt, dass die bekannten Praxisfälle bestmöglich abgedeckt sind, um somit mit möglichst wenigen Optionen eine sinnvolle Abgrenzung zwischen den relevanten Unterschieden zwischen den einzelnen Versionen zu erreichen. Eine andere Zahl von Optionen oder weitere Optionen, die zu einer anderen Unterscheidung führen, sind ebenfalls vorstellbar.
  • In einer neuen Version des als INCA bezeichneten Applikationswerkzeug können diese Optionen als mögliche Anwendereinstellungen verfügbar sein. Es ist jedoch auch denkbar, dies auf andere Weise zu realisieren, bspw. durch eine Benutzerführung (Wizzard), mit der die einzelnen Stufen der Reihe nach durchlaufen werden, oder indem stets alle Stufen automatisiert abgearbeitet werden und der Anwender dann für jede Größe angezeigt bekommt, wann zwischen zwei Versionen gegebenenfalls ein Wechsel von gleich nach unterschiedlich auftritt.
  • Nachdem der Anwender für einen Kennwerteblock einen Unterschied zwischen dem Ausgangsdatenstand und somit der Quelle und dem Vergleichsdatenstand und somit dem Ziel entdeckt hat, ist es oftmals erforderlich, den Inhalt zwischen den beiden Versionen des Kennwerteblocks innerhalb des Datenstands abzugleichen. Dies geschieht mittels eines Kopiervorgangs für verschiedene Elemente und somit Kenngrößen, wie bspw. für normale Kennwerte, Kennlinien oder Kennfelder, und auch für Kennwerteblöcke mit gleicher Dimension. Dabei wird für das zu kopierende Element oder zumindest ein Datum ein physikalischer Wert der Quelle in das Ziel übertragen.
  • Unterscheiden sich Quelle und Ziel in ihrer Dimension, so sind in Ausgestaltung des Verfahrens für normale Kenngrößen Optionen verfügbar, die das Kopierverhalten festlegen. Für Kennwerte mit unterschiedlicher Dimension können mit der Erfindung somit Optionen für den Kopiervorgang geschaffen werden. Der Anwender kann z. B. wählen, ob nur Kennwerteblöcke mit identischer Dimension kopiert werden können, oder ob im Zieldatenstand auch eine größere Dimension möglich sein darf. Das Kopieren in einen Zieldatenstand mit kleinerer Dimension wird typischerweise nicht unterstützt, es ist jedoch durchaus denkbar.
  • Im Bereich von sog. Diagnose-Funktionen werden zur Verwaltung von Aktionen, die ein Steuergerät in bestimmten Situationen durchführen soll, Kennwerteblöcke, z. B. das sog. ASAM Schlüsselwort "VAL_BLK" verwendet. Im Bereich anderer Funktionen können auch MAP und CURVE verwendet werden. Die Kennwerteblöcke dienen u. a. dazu, im Steuergerät für bestimmte Situationen festzulegen, in welcher Reihenfolge definiert Aktionen abzuarbeiten sind. Der Inhalt eines Kennwerteblocks wird für einen Anwender in der Regel durch eine Umrechnungsformel als Text dargestellt, z. B. als "VTAB". Die Dimension des Kennwerteblocks ist bspw. als "MATRIX_DIM" festgelegt.
  • Im Zuge einer Entwicklung von Kennwerteblöcken tritt häufig der Fall ein, dass sich dessen Dimension ändert. Der Anwender erhält dann beim Vergleichen derselben Kennwerteblocks mit dem gleichen Namen für zwei Versionen aus zwei unterschiedlichen Software-Ständen den Hinweis, dass deren Größen unterschiedlich sind.
  • In einem Software-Stand sind üblicherweise ca. 2000 derartige Kennwerteblöcke und/oder Inhalte von Kennwerteblöcken definiert. Für den Anwender ist es bislang mit großem Aufwand verbunden, diese Kennwerteblöcke und insbesondere deren Versionen zu handbaben. In einer Ausführungsform des Verfahrens kann für die als unterschiedlich angegebenen Versionen geprüft werden, worauf der Unterschied tatsächlich beruht.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt in schematischer Darstellung zwei Beispiele für Kennwerteblöcke.
  • 2 zeigt in schematischer Darstellung verschiedene Ausführungsformen einer Kopieraktion.
  • 3 zeigt in schematischer Darstellung eine Ausführungsform einer erfindungsgemäßen Einrichtung.
  • Ausführungsformen der Erfindung
  • 1 zeigt in schematischer Darstellung zwei Beispiele von Kennwerteblöcken 102 und 104. Dabei sind in beiden Kennwerteblöcken 102, 104 innerhalb der schematischen Darstellung in jeweils einer ersten Zeile 100 Positionen angegeben, wobei der erste Kennwerteblock 102 sieben Positionen von 0 bis 6 und der zweite Kennwerteblock 104 fünf Positionen von 0 bis 4 aufweist. In den zweiten Zeilen 200 beider Kennwerteblöcke 102, 104 sind Zellen zur Aufnahme von Daten vorgesehen.
  • Der erste Kennwerteblock 102 liegt hier in einer ersten Version vor, innerhalb dieser Version befindet sich in einem nullten Feld das Datum "2001", in einem ersten Feld das Datum "2002", in einem zweiten Feld das Datum "2003", in einem dritten Feld das Datum "2004", in einem vierten Feld das Datum "2005", in einem fünften Feld das Datum "2006" und in einem sechsten Feld das Datum "2007". Bei der Version, in der der zweite Kennwerteblock 104 in 1 beispielhaft dargestellt ist, sind die für die Daten üblicherweise vorgesehenen Zellen nicht kalibriert. Die beiden Kennwerteblöcke 102, 104 weisen unterschiedlich viele Zellen und somit Dimensionen auf. Bei einer Weiterentwicklung des zweiten Kennwerteblocks 104, wobei eine weitere, neue Version dieses zweiten Kennwerteblocks 104 bereitgestellt wird, werden in die einzelnen Zellen Daten eingefügt.
  • Die 2 ist zur Verdeutlichung von Kopieraktionen bei einer Ausgestaltungsform des erfindungsgemäßen Verfahrens vorgesehen. Dabei zeigt 2a einen Zustand vor der Kopieraktionen und die 2b und 2c jeweils einen Zustand nach den Kopieraktionen, die unter verschiedenen Optionen durchgeführt werden.
  • Dabei zeigt 2a als zu kopierende Quelle links dreimal untereinander jeweils eine erste Version eines Kennwerteblocks 106, der drei mal vier (3 × 4) und somit zwölf Zellen zur Aufnahme von Daten, die hier mit den Ziffern 1 bis 12 bezeichnet sind, aufweist. Als Ziele, in die die erste Version des Kenntwerteblocks 106 zu kopieren ist, sind drei unbesetzte Kennwerteblöcke 108, 110 und 112 vorgesehen. Dabei weist ein zweiter als Ziel vorgesehener Kennwerteblock 108 dreimal vier (3 × 4) Zellen und somit dieselbe Dimension wie der erste Kennwerteblock 106 auf. Der dritte Kennwerteblock 110 umfasst vier mal fünf (4 × 5) Zellen und somit eine größere Dimension als der erste Kennwerteblock 106 auf. Der vierte Kennwerteblock 112 weist zwei mal drei (2 × 3) Zellen und somit eine kleinere Dimension als der erste Kennwerteblock 106 auf.
  • Weiterhin zeigt 2b die Situation für den Fall, dass ein Kopieren der ersten Version des ersten Kennwerteblocks 106 nur dann möglich ist, wenn ein als Ziel vorgesehener Kennwerteblock 108, 110, 112 dieselbe Größe wie die erste Version des ersten Kennwerteblocks 106 aufweist. Demnach wird die erste Version des ersten Kennwerteblocks 106 lediglich in den zweiten Kennwerteblock 108 kopiert und somit eine zweite Version des ersten Kennwerteblocks 106 bereitgestellt. Der dritte und der vierte Kennwerteblock 110, 112 bleiben in dem anhand von 2b gezeigten Beispiel unverändert.
  • 2c zeigt alternativ zu der in 2b dargestellten Ausgestaltung des Kopiervorgangs jene Situation, nach der vorgesehen ist, dass der erste Datenblock 106 dann in einen weiteren Datenblock 108, 110, 112 kopiert wird, sofern der weitere Kennwerteblock 108, 110, 112 mindestens dieselbe Größe wie der erste Kennwerteblock 106 aufweist und demnach auch größer als dieser sein kann. Somit wird der erste Kennwerteblock 106 in den zweiten Kennwerteblock 108 kopiert. Weiterhin wird der erste Kennwerteblock 106 in den dritten Kennwerteblock 110 kopiert. Da dieser dritter Kennwerteblock 110 mehr Zellen und somit eine größere Dimension als der erste Kennwerteblock 106 aufweist, ist dieser Kopiervorgang durchführbar. Dabei bleiben die überschüssigen Zellen des dritten Kennwerteblocks 110 unbesetzt. Im Fall des vierten Kennwerteblocks 112 ist ein Kopieren nicht möglich, da dieser eine kleinere Dimension als der erste Kennwerteblock 106 aufweist.
  • Je nach vorzunehmender Benennung kann der zweite Kennwerteblock 108, wie in den 2a und 2c dargestellt, auch als eine zweite Version des ersten Kennwerteblocks 106 bezeichnet werden. Entsprechend kann der dritte Kennwerteblock 110 aus 2c auch als eine dritte Version des ersten Kennwerteblocks 106 bezeichnet werden.
  • Bei der Kopie des ersten Kennwerteblocks 106 in den zweiten Kennwerteblock 108 haben Quelle und Ziel die gleiche Dimension. Ein Kopieren ist somit möglich und ergibt bei beiden Optionen das gleiche Ergebnis.
  • Falls die Dimension der Quelle, also des ersten Kennwerteblocks 106, kleiner als die des Ziels und somit des dritten Kennwerteblocks 110 ist, so ist das Kopieren hier mit der erweiterten Option möglich. Dabei werden für Zellen, für die es keinen Gegenpart in der Quelle gibt, die bereits im Ziel vorhandenen Werte belassen.
  • Ist vorgesehen, dass die Dimension der Quelle, hier des ersten Kennwerteblocks 106, größer als die des vierten Kennwerteblocks 112 als Ziel ist, so wird das Kopieren in dieser Ausgestaltung nicht unterstützt. Das Ziel bleibt unverändert. Falls alternativ hierzu in einer Ausgestaltung des Verfahrens zum Kopieren ein sog. Leerdatennachweis bzw. "Empty Data Detection" vorgesehen sein sollte, kann die sog. "NULL-Bedatung" erkannt werden und sogar für Fall drei ein begrenztes Kopieren erlaubt sein, obwohl der erste Kennwerteblock 106 als Quelle eine größere Dimension als der als Ziel vorgesehene vierte Kennwerteblock 112 hat.
  • 3 zeigt in schematischer Darstellung eine Ausführungsform einer erfindungsgemäßen Einrichtung 114, die ein Applikationswerkzeug 116 sowie mindestens ein Modul 118 zur Durchführung mindestens eines Schrittes einer Variante des erfindungsgemäßen Verfahrens aufweist. Weiterhin ist diese Einrichtung 114 mit einem Steuergerät 120 verbunden. Das Modul 118 der Einrichtung 114 ist dazu ausgebildet, eine erste Version 122 eines Kennwerteblocks 124 mit einer zweiten Version 126 dieses Kennwerteblocks 124 zu vergleichen. Dabei wird in der vorliegenden Ausführungsform bei einem Vergleich überprüft, in welchem Umfang die beiden Versionen 122, 126 des Kennwertemoduls 124 gleich oder unterschiedlich sind. Ob die Versionen 122, 126 als gleich oder unterschiedlich angesehen werden, hängt von einem beliebig einstellbaren Kriterium ab, das bei Durchführung des Verfahrens herangezogen wird. Dabei wird in vorliegender Ausführungsform berücksichtigt, inwiefern in beiden Versionen 122, 126 identische Daten vorliegen, wie oft diese identischen Daten vorliegen oder in welcher Reihenfolge dieser Daten innerhalb der Versionen 122, 126 abgelegt sind. Weiterhin ist vorgesehen, dass das Modul 118 dazu ausgebildet ist, die erste Version 122 des Kennwerteblocks 124 in die zweite Version 126 des Kennwerteblocks 124 zu kopieren. Auch diesbezüglich ist in der vorliegenden Ausführungsform eine Option festgelegt, durch die bestimmt ist, ob ein Kopieren von der ersten Version 122 in die zweite Version 126 möglich ist. In der vorliegenden Ausführungsform ist hierzu vorgesehen, dass das Kopieren dann möglich ist, wenn die zweite Version 126 des Kennwerteblocks 124 zumindest dieselbe Dimension und somit zumindest dieselbe Größe wie die erste Version 122 des Kennwerteblocks 124 aufweist. Aufgrund des zuvor durchgeführten Vergleichs wird u. a. analysiert, wie die beiden Versionen 122, 126 inhaltlich strukturiert sind, so dass bekannt ist, wie die Daten jeweils innerhalb der Versionen 122, 126 angeordnet sind, so dass das Kopieren gezielt durchgeführt werden kann.

Claims (15)

  1. Verfahren zur Handhabe eines Kennwerteblocks (102, 104, 106, 108, 110, 112, 124), von dem mehrere Versionen (122, 126) vorliegen, bei dem zum automatisierten Vergleichen dieser Versionen (122, 126) ein Kriterium, durch das bestimmt wird, ob die Versionen (122, 126) als unterschiedlich eingestuft werden, festgelegt wird.
  2. Verfahren nach Anspruch 1, bei dem beim Vergleichen automatisiert untersucht wird, worauf ein Unterschied zwischen den Versionen (122, 126) beruht.
  3. Verfahren nach Anspruch 1 oder 2, bei dem mindestens ein Element einer ersten Version des Kennwerteblocks (102, 104, 106, 108, 110, 112, 124) in mindestens eine zweite Version (122, 126) des Kennwerteblocks (102, 104, 106, 108, 110, 112, 124) kopiert wird.
  4. Verfahren nach einem der voranstehenden Ansprüche, bei dem die Versionen (122, 126) des Kennwerteblocks (102, 104, 106, 108, 110, 112, 124) miteinander abgeglichen werden.
  5. Verfahren nach einem der voranstehenden Ansprüche, bei dem eine erste Version (122, 126) des Kennwerteblocks (102, 104, 106, 108, 110, 112, 124), die eine erste Dimension aufweist, in mindestens eine zweite Version (122, 126) des Kennwerteblocks (102, 104, 106, 108, 110, 112, 124), die eine zweite Dimension aufweist, kopiert wird.
  6. Verfahren nach Anspruch 5, bei dem die zweite Dimension der mindestens einen zweiten Version (122, 126) mindestens so groß wie die erste Dimension der ersten Version (122, 126) ist.
  7. Verfahren nach Anspruch 5 oder 6, bei dem die zweite Dimension der mindestens einen zweiten Version (122, 126) kleiner als die erste Dimension der ersten Version (122, 126) ist.
  8. Verfahren nach einem der voranstehenden Ansprüche, bei dem für einen Inhalt der Versionen (122, 126) eine Mustererkennung mit einstellbarer Schärfe durchgeführt wird, wobei die Schärfe unter Berücksichtigung des Kriteriums eingestellt wird.
  9. Verfahren nach einem der voranstehenden Ansprüche, bei dem Sequenzen der Versionen (122, 126) miteinander verglichen werden.
  10. Verfahren nach einem der voranstehenden Ansprüche, bei dem Daten der Versionen (122, 126) miteinander verglichen werden.
  11. Verfahren nach einem der voranstehenden Ansprüche, bei dem die Dimensionen der Versionen (122, 126) miteinander verglichen werden.
  12. Verfahren nach einem der voranstehenden Ansprüche, das mit einem Applikationswerkzeug (116) durchgeführt wird.
  13. Einrichtung, die mindestens ein Modul (118) zur Handhabe eines Kennwerteblocks (102, 104, 106, 108, 110, 112, 124), von dem mehrere Versionen (122, 126) vorliegen, aufweist, wobei das mindestens eine Modul (118) dazu ausgebildet ist, diese Versionen (122, 126) unter Berücksichtigung eines festlegbaren Kriteriums, durch das bestimmt ist, ob die Versionen (122, 126) als unterschiedlich einzustufen sind, automatisiert zu vergleichen.
  14. Computerprogramm mit Programmcodemitteln, um alle Schritte eines Verfahrens nach einem der Ansprüche 1 bis 12 durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere in einer Einrichtung (114) nach Anspruch 13, ausgeführt wird.
  15. Computerprogrammprodukt mit Programmcodemitteln, die auf einem computerlesbaren Datenträger gespeichert sind, um alle Schritte eines Verfahrens nach einem der Ansprüche 1 bis 12 durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere in einer Einrichtung (114) nach Anspruch 13, ausgeführt wird.
DE200710006773 2007-02-12 2007-02-12 Verfahren zur Handhabe eines Kennwerteblocks Pending DE102007006773A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE200710006773 DE102007006773A1 (de) 2007-02-12 2007-02-12 Verfahren zur Handhabe eines Kennwerteblocks
EP08701334A EP2118742A1 (de) 2007-02-12 2008-01-09 Verfahren zur handhabe eines kennwerteblocks
PCT/EP2008/050169 WO2008098803A1 (de) 2007-02-12 2008-01-09 Verfahren zur handhabe eines kennwerteblocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200710006773 DE102007006773A1 (de) 2007-02-12 2007-02-12 Verfahren zur Handhabe eines Kennwerteblocks

Publications (1)

Publication Number Publication Date
DE102007006773A1 true DE102007006773A1 (de) 2008-08-14

Family

ID=39322396

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200710006773 Pending DE102007006773A1 (de) 2007-02-12 2007-02-12 Verfahren zur Handhabe eines Kennwerteblocks

Country Status (3)

Country Link
EP (1) EP2118742A1 (de)
DE (1) DE102007006773A1 (de)
WO (1) WO2008098803A1 (de)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7353510B2 (en) 2003-07-11 2008-04-01 Computer Associates Think, Inc. System and method for comparing objects
US7503038B2 (en) 2004-08-27 2009-03-10 Microsoft Corporation System and method for seamlessly comparing objects

Also Published As

Publication number Publication date
EP2118742A1 (de) 2009-11-18
WO2008098803A1 (de) 2008-08-21

Similar Documents

Publication Publication Date Title
WO2008064658A2 (de) Verfahren zum testen eines computerprogramms
DE102008041360A1 (de) Steuergerät für ein Fahrzeug und Verfahren für eine Datenaktualisierung für ein Steuergerät für ein Fahrzeug
EP3082000A1 (de) Verfahren und system zum testen eines mechatronischen systems
WO2017025644A1 (de) System zur überwachung einer technischen vorrichtung
DE102014019599A1 (de) Elektronische Vorrichtung und Anzeigesteuerungsverfahren derselben
DE102011016691A1 (de) Verfahren und System zur Unterstützung bei der Auswahl wenigstens eines Objektes aus einer Gruppe von gespeicherten Objekten
DE10219167A1 (de) Objektorientierter Rahmen für eine Abtasteinrichtung/Workstation-Konfiguration
EP2924522B1 (de) Verfahren zur Beeinflussung eines Steuerprogramms
EP1947567A2 (de) Verfahren und Vorrichtung zum automatischen Testen von modellbasierten Funktionen
DE102007006773A1 (de) Verfahren zur Handhabe eines Kennwerteblocks
EP2990941B1 (de) Computerimplementiertes verfahren zur erzeugung eines steuergeräteprogrammcodes und diesbezügliche meldungsverwaltungsumgebung
DE102014203346B4 (de) Messgerät und Messverfahren mit in Größe und Informationsgehalt anpassbaren Benutzerdialogen
DE10325513B4 (de) Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation
DE102019217427A1 (de) Steuern und/oder Überwachen einer Maschinenanordnung
DE102004037403B4 (de) Verfahren zur Bewertung der Güte eines Computerprogrammes
DE102010012307B4 (de) Verfahren und Vorrichtung zum Erstellen eines Verfahrensablaufs für eine speicherprogrammierbare Steuerung
DE10328237A1 (de) Verfahren zum Erzeugen von Testdaten zum Austesten der Funktionsfähigkeit einer datenverarbeitenden Schaltung
DE112010005924T5 (de) Verfahren und System zum Weitergeben von Änderungen an einer Master-Einheit zu Duplikaten
DE102016207768A1 (de) Vorrichtung und Verfahren zum Bereitstellen einer Menge von Modultypen
DE102019117839A1 (de) Verfahren, Vorrichtung, Computerprogramm und Computerprogrammprodukt zur Datenverarbeitung in einem Fahrzeug und Fahrzeug
DE10303684B4 (de) Verfahren und Vorrichtung zur formalen Schaltungsverifikation einer digitalen Schaltung
WO2021043956A1 (de) Verfahren zum datenabgleich einer webseite
EP3933600A1 (de) Verfahren zur automatisierten durchfuehrung von softwaretests an grafischen benutzeroberflaechen sowie vorrichtung zur durchfuehrung eines solchen verfahrens
DE102019132505A1 (de) Verfahren zum Betreiben einer elektronischen Recheneinrichtung für einen Produktentwicklungsprozess mit einem ein Kraftfahrzeugbauteil funktional charakterisierenden Algorithmus, sowie elektronische Recheneinrichtung
EP1770488A1 (de) Verfahren und System zur Unterstützung eines Funktionsaufrufs mittels einer Benutzeroberfläche

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20131025

R016 Response to examination communication