mining4UML / UMLMiner

UML Miner - to make UML diagrams mining possibile
GNU General Public License v3.0
1 stars 0 forks source link

Installazione plug-in, avvio VP ed apertura prima volta di un progetto esistente: errata registrazione di diagrammi già presenti #39

Closed mining4UML closed 1 year ago

mining4UML commented 1 year ago

Scenario di malfunzionamento

Si supponga di aver appena installato il plug-in e, dopo tale installazione, si avvii per la prima volta Visual Paradigm compiendo i seguenti

  1. Avvio di VP
  2. Apertura di un progetto esistente
  3. Aggiunta di un solo elemento in uno dei diagrammi esistenti nel progetto (nell'esempio una LifeLine in un diagramma di sequenza)
  4. Salvataggio progetto
  5. Chiusura progetto
  6. Export dei Logs

Le attività registrate nell'esempio di cui sotto si riporta la TRACE sono:

  1. Project opened
  2. UseCaseDiagram added. (Registra erroneamente l'aggiunta di un Diagramma dei casi d'uso già presente)
  3. InteractionDiagram added (Registra erroneamente l'aggiunta di un Diagramma di sequenza già presente)
  4. InteractionLifeLine added to Project
  5. InteractionLifeLine added to InteractionDiagram

NOTA BENE Preciso che ogni qualvolta si apre per la prima volta un progetto sono registrate le attività di aggiunta dei diagrammi esistenti. Una qualunque successiva apertura non registrerà l'aggiunta (caricamento) dei diagrammi esistenti.

<?xml version="1.0" encoding="UTF-8" ?>
<!-- This file has been generated with the OpenXES library. It conforms -->
<!-- to the XML serialization of the XES standard for log storage and -->
<!-- management. -->
<!-- XES standard version: 1.0 -->
<!-- OpenXES library version: 1.0RC7 -->
<!-- OpenXES is available from http://code.deckfour.org/xes/ -->
<log xes.version="1.0" xes.features="nested-attributes" openxes.version="1.0RC7" xmlns="http://code.deckfour.org/xes">
    <extension name="Time" prefix="time" uri="http://code.deckfour.org/xes/time.xesext"/>
    <extension name="Concept" prefix="concept" uri="http://code.deckfour.org/xes/concept.xesext"/>
    <extension name="Identity" prefix="identity" uri="http://www.xes-standard.org/identity.xesext"/>
    <global scope="trace">
        <string key="identity:id" value="Case Id"/>
        <string key="concept:name" value="Case Name"/>
        <date key="CaseTimestamp" value="2023-06-04T09:29:31.823+02:00"/>
        <string key="AuthorName" value="Author Name"/>
        <string key="ProjectName" value="Project Name"/>
    </global>
    <global scope="event">
        <string key="concept:name" value="Activity Name"/>
        <string key="concept:instance" value="Activity Instance"/>
        <date key="time:timestamp" value="2023-06-04T09:29:31.823+02:00"/>
        <string key="DiagramId" value="Diagram Id"/>
        <string key="DiagramType" value="Diagram Type"/>
        <string key="DiagramName" value="Diagram Name"/>
        <string key="UMLElementId" value="UML Element Id"/>
        <string key="UMLElementType" value="UML Element Type"/>
        <string key="UMLElementName" value="UML Element Name"/>
    </global>
    <classifier name="concept:name Classifier" keys="concept:name"/>
    <classifier name="concept:instance Classifier" keys="concept:instance"/>
    <classifier name="time:timestamp Classifier" keys="time:timestamp"/>
    <classifier name="DiagramId Classifier" keys="DiagramId"/>
    <classifier name="DiagramType Classifier" keys="DiagramType"/>
    <classifier name="DiagramName Classifier" keys="DiagramName"/>
    <classifier name="UMLElementId Classifier" keys="UMLElementId"/>
    <classifier name="UMLElementType Classifier" keys="UMLElementType"/>
    <classifier name="UMLElementName Classifier" keys="UMLElementName"/>
    <string key="ProductBuild" value="20230401"/>
    <string key="concept:name" value="Visual Paradigm Community Edition-EE6BCEE8-FC6A-4176-86D3-10D1609376F2"/>
    <string key="ProductName" value="Visual Paradigm Community Edition"/>
    <string key="ProductVersion" value="17.0"/>
    <date key="CaseTimestamp" value="2023-06-04T09:29:36.897+02:00"/>
    <string key="identity:id" value="EE6BCEE8-FC6A-4176-86D3-10D1609376F2"/>
    <trace>
        <string key="concept:name" value="pasqualeardimento-EA4DF37C-404F-4D45-BCDD-EFC0C99133BB"/>
        <string key="AuthorName" value="pasqualeardimento"/>
        <string key="ProjectName" value="provola"/>
        <date key="CaseTimestamp" value="2023-06-04T09:29:36.897+02:00"/>
        <string key="identity:id" value="EA4DF37C-404F-4D45-BCDD-EFC0C99133BB"/>
        <event>
            <string key="concept:instance" value="Project opened - 609C93BF-9CC2-4409-A332-AFDC9215BB44"/>
            <string key="UMLElementName" value="provola"/>
            <string key="DiagramName" value="unknown"/>
            <date key="time:timestamp" value="2023-06-04T09:29:36.898+02:00"/>
            <string key="DiagramId" value="unknown"/>
            <string key="concept:name" value="Project opened"/>
            <string key="DiagramType" value="unknown"/>
            <string key="UMLElementType" value="Project"/>
            <string key="UMLElementId" value="PfPYARGGAqACCBPt"/>
        </event>
        <event>
            <string key="concept:instance" value="UseCaseDiagram added - E5677C9C-7334-47AC-A8B8-E038C9C4DF34"/>
            <string key="UMLElementName" value="Use Case Diagram1"/>
            <string key="DiagramName" value="Use Case Diagram1"/>
            <date key="time:timestamp" value="2023-06-04T09:29:36.984+02:00"/>
            <string key="DiagramId" value="K8_YARGGAqACCBdp"/>
            <string key="concept:name" value="UseCaseDiagram added"/>
            <string key="DiagramType" value="UseCaseDiagram"/>
            <string key="UMLElementType" value="UseCaseDiagram"/>
            <string key="UMLElementId" value="K8_YARGGAqACCBdp"/>
        </event>
        <event>
            <string key="concept:instance" value="InteractionDiagram added - D5DC395A-3C2F-4425-908D-25616755A9DF"/>
            <string key="UMLElementName" value="Sequence Diagram1"/>
            <string key="DiagramName" value="Sequence Diagram1"/>
            <date key="time:timestamp" value="2023-06-04T09:29:37.060+02:00"/>
            <string key="DiagramId" value="rJiMARGGAqACCAbp"/>
            <string key="concept:name" value="InteractionDiagram added"/>
            <string key="DiagramType" value="InteractionDiagram"/>
            <string key="UMLElementType" value="InteractionDiagram"/>
            <string key="UMLElementId" value="rJiMARGGAqACCAbp"/>
        </event>
        <event>
            <string key="concept:instance" value="InteractionLifeLine added to Project - 7D450E73-FC66-493C-A13A-77443FAB6246"/>
            <string key="UMLElementName" value="Lifeline9"/>
            <string key="UMLElementChildren" value="[]"/>
            <string key="DiagramName" value="unknown"/>
            <date key="time:timestamp" value="2023-06-04T09:29:40.289+02:00"/>
            <string key="DiagramId" value="unknown"/>
            <string key="concept:name" value="InteractionLifeLine added to Project"/>
            <string key="DiagramType" value="unknown"/>
            <string key="UMLElementType" value="InteractionLifeLine"/>
            <string key="UMLElementId" value="vfPyoRGGAqACBgeZ"/>
        </event>
        <event>
            <string key="concept:instance" value="InteractionLifeLine added to InteractionDiagram - 02127B63-ED4F-4591-B405-A70F0AAF7D60"/>
            <string key="UMLElementName" value="Lifeline9"/>
            <string key="UMLElementChildren" value="[]"/>
            <string key="DiagramName" value="Sequence Diagram1"/>
            <date key="time:timestamp" value="2023-06-04T09:29:40.399+02:00"/>
            <string key="DiagramId" value="rJiMARGGAqACCAbp"/>
            <string key="concept:name" value="InteractionLifeLine added to InteractionDiagram"/>
            <string key="DiagramType" value="InteractionDiagram"/>
            <string key="UMLElementType" value="InteractionLifeLine"/>
            <string key="UMLElementId" value="vfPyoRGGAqACBgeZ"/>
        </event>
    </trace>
</log>
berlinodeveloper commented 1 year ago

@mining4UML purtroppo non ho altri controlli da effettuare se non controllare che il diagramma sia stato gia' registrato all'interno di una delle trace precedenti nel file di log. Non saprei in che altro modo andare ad effettuare i controlli di esistenza perche' e' erroneamente registrato da VP stesso l'evento come "Aggiunta".

mining4UML commented 1 year ago

Considerata la rilevanza, minima, credo che al momento non valga la pena investire tempo su questo piccolissimo bug. Sarà risolto, forse, in seguito