blob: a045ad050e15bbf6ca25a74e9e2704dc18e56e06 [file] [log] [blame]
<html><link rel="stylesheet" href="default.css" type="text/css"><H1>Revision model for Papyrus</H1><H2 id ="_Ao4j0oU4EeSVSpmUeqlzmw">Table of Contents</H2><ul><a href="#_Ao4j1IU4EeSVSpmUeqlzmw">Requirements</a></ul><ul><a href="#_ApVPxYU4EeSVSpmUeqlzmw">Use Cases</a><li><a href="#_A0zf8oU4EeSVSpmUeqlzmw"> Review Tool</a></li><ul><li><a href="#_A09Q8YU4EeSVSpmUeqlzmw"> Add or change information about the current author for the versionning</a></li><ul><li><a href="#_A09Q9YU4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A09Q-4U4EeSVSpmUeqlzmw"> Respond to a review</a></li><ul><li><a href="#_A094A4U4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A094CYU4EeSVSpmUeqlzmw"> Add a review about the working model</a></li><ul><li><a href="#_A1Qy8YU4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A1Qy94U4EeSVSpmUeqlzmw"> Add, update or remove a review on the current model</a></li><ul><li><a href="#_A4iJYoU4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A4r6Y4U4EeSVSpmUeqlzmw"> Create, load or save a review model </a></li><ul></ul><li><a href="#_A4r6aYU4EeSVSpmUeqlzmw"> Close WorkingModel or close review editor </a></li><ul></ul></ul><li><a href="#_A41EU4U4EeSVSpmUeqlzmw"> Revision Tool</a></li><ul><li><a href="#_A41EVYU4EeSVSpmUeqlzmw"> Launch Revision mode</a></li><ul><li><a href="#_A41EWYU4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A4-1U4U4EeSVSpmUeqlzmw"> Register all modifications with Versioning information</a></li><ul></ul><li><a href="#_A_hiMoU4EeSVSpmUeqlzmw"> Stop RevisionMode</a></li><ul><li><a href="#_A_hiNoU4EeSVSpmUeqlzmw"> How to</a></li><ul></ul></ul><li><a href="#_A_rTMYU4EeSVSpmUeqlzmw"> Accept or refuse modifications</a></li><ul></ul><li><a href="#_A_rTNYU4EeSVSpmUeqlzmw"> See modifications in diagram</a></li><ul></ul><li><a href="#_A_rTOYU4EeSVSpmUeqlzmw"> See modifications in model explorer</a></li><ul></ul></ul></ul><ul><a href="#_A_0dI4U4EeSVSpmUeqlzmw">Design</a><li><a href="#_A_0dJYU4EeSVSpmUeqlzmw"> PapyrusVersioningExtensions</a></li><ul><li><a href="#_BCy4oYU4EeSVSpmUeqlzmw"> VersioningElement</a></li><ul></ul><li><a href="#_BCy4pYU4EeSVSpmUeqlzmw"> Author</a></li><ul></ul></ul><li><a href="#_BCy4qYU4EeSVSpmUeqlzmw"> ReviewProfile</a></li><ul><li><a href="#_BFBtRIU4EeSVSpmUeqlzmw"> ReviewRepository</a></li><ul></ul><li><a href="#_BFLeQoU4EeSVSpmUeqlzmw"> Comment</a></li><ul></ul><li><a href="#_BFLeRoU4EeSVSpmUeqlzmw"> Review</a></li><ul></ul><li><a href="#_BFLeSoU4EeSVSpmUeqlzmw"> Question</a></li><ul></ul><li><a href="#_BFVPQ4U4EeSVSpmUeqlzmw"> Todo</a></li><ul></ul></ul><li><a href="#_BFVPSYU4EeSVSpmUeqlzmw"> Plugin architecture</a></li><ul><li><a href="#_BJDRooU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.revisiontool</a></li><ul></ul><li><a href="#_BJMbkIU4EeSVSpmUeqlzmw"> org.eclipse.ui</a></li><ul></ul><li><a href="#_BJMbkoU4EeSVSpmUeqlzmw"> org.eclipse.core.runtime</a></li><ul></ul><li><a href="#_BJMblIU4EeSVSpmUeqlzmw"> org.eclipse.emf.ecore</a></li><ul></ul><li><a href="#_BJMbloU4EeSVSpmUeqlzmw"> org.eclipse.uml2.types</a></li><ul></ul><li><a href="#_BJMbmIU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.core</a></li><ul></ul><li><a href="#_BJMbmoU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.uml.tools</a></li><ul></ul><li><a href="#_BJWMkIU4EeSVSpmUeqlzmw"> org.eclipse.emf.transaction</a></li><ul></ul><li><a href="#_BJWMkoU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.uml.extensionpoints</a></li><ul></ul><li><a href="#_BJWMlIU4EeSVSpmUeqlzmw"> org.eclipse.ui.forms</a></li><ul></ul><li><a href="#_BJWMloU4EeSVSpmUeqlzmw"> org.eclipse.ui.views</a></li><ul></ul><li><a href="#_BJWMmIU4EeSVSpmUeqlzmw"> org.eclipse.emf.edit.ui</a></li><ul></ul><li><a href="#_BJWMmoU4EeSVSpmUeqlzmw"> org.eclipse.ui.views.properties.tabbed</a></li><ul></ul><li><a href="#_BJfWgYU4EeSVSpmUeqlzmw"> org.eclipse.e4.ui.workbench.renderers.swt</a></li><ul></ul><li><a href="#_BJfWg4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.widgets</a></li><ul></ul><li><a href="#_BJfWhYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.services.labelprovider</a></li><ul></ul><li><a href="#_BJfWh4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.emf</a></li><ul></ul><li><a href="#_BJfWiYU4EeSVSpmUeqlzmw"> org.eclipse.emf.compare</a></li><ul></ul><li><a href="#_BJfWi4U4EeSVSpmUeqlzmw"> org.eclipse.emf.compare.rcp</a></li><ul></ul><li><a href="#_BJf9kYU4EeSVSpmUeqlzmw"> org.eclipse.gmf.runtime.emf.type.core</a></li><ul></ul><li><a href="#_BJf9k4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.emf.facet.custom.metamodel</a></li><ul></ul><li><a href="#_BJf9lYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.emf.facet.custom.ui</a></li><ul></ul><li><a href="#_BJf9l4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.emf.facet.efacet.core</a></li><ul></ul><li><a href="#_BJf9mYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.emf.facet.query.java.core</a></li><ul></ul><li><a href="#_BJf9m4U4EeSVSpmUeqlzmw"> org.eclipse.gmf.runtime.diagram.ui</a></li><ul></ul><li><a href="#_BJzfkYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.uml.diagram.common</a></li><ul></ul><li><a href="#_BJzfk4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.gmfdiag.common</a></li><ul></ul><li><a href="#_BJzflYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.gmfdiag.commands</a></li><ul></ul><li><a href="#_BJzfl4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.infra.services.edit</a></li><ul></ul><li><a href="#_BJzfmYU4EeSVSpmUeqlzmw"> org.eclipse.papyrus.views.properties</a></li><ul></ul><li><a href="#_BJzfm4U4EeSVSpmUeqlzmw"> org.eclipse.papyrus.emf.facet.util.emf.core</a></li><ul></ul></ul><li><a href="#_BJ8pgYU4EeSVSpmUeqlzmw"> Class architecture</a></li><ul><li><a href="#_BNXw8YU4EeSVSpmUeqlzmw"> Activator</a></li><ul></ul><li><a href="#_BNXw9YU4EeSVSpmUeqlzmw"> advice</a></li><ul><li><a href="#_BQMbcYU4EeSVSpmUeqlzmw"> AdviceRemove</a></li><ul></ul></ul><li><a href="#_BQMbdYU4EeSVSpmUeqlzmw"> command</a></li><ul><li><a href="#_BSuyEoU4EeSVSpmUeqlzmw"> CreateDifferenceCommand</a></li><ul></ul><li><a href="#_BSuyFoU4EeSVSpmUeqlzmw"> CreateMatchCommand</a></li><ul></ul><li><a href="#_BS38A4U4EeSVSpmUeqlzmw"> CreateToDoReviewCommand</a></li><ul></ul><li><a href="#_BS38B4U4EeSVSpmUeqlzmw"> PreventRemoveCommand</a></li><ul></ul></ul><li><a href="#_BS38C4U4EeSVSpmUeqlzmw"> core</a></li><ul><li><a href="#_BZRe8oU4EeSVSpmUeqlzmw"> ReviewResourceManager</a></li><ul></ul><li><a href="#_BZbP84U4EeSVSpmUeqlzmw"> AddingDiffListener</a></li><ul></ul><li><a href="#_BZbP94U4EeSVSpmUeqlzmw"> RefreshFigureListener</a></li><ul></ul></ul><li><a href="#_BZbP-4U4EeSVSpmUeqlzmw"> ui</a></li><ul><li><a href="#_BcZrcoU4EeSVSpmUeqlzmw"> RevisonDiagLayer</a></li><ul></ul><li><a href="#_BcZrdoU4EeSVSpmUeqlzmw"> AddingFig</a></li><ul></ul><li><a href="#_Bci1YIU4EeSVSpmUeqlzmw"> RemovedFig</a></li><ul></ul><li><a href="#_Bci1ZIU4EeSVSpmUeqlzmw"> ReviewsEditor</a></li><ul></ul><li><a href="#_Bci1aIU4EeSVSpmUeqlzmw"> ReviewsTreeContentProvider</a></li><ul></ul><li><a href="#_BcsmYYU4EeSVSpmUeqlzmw"> ReviewsTreeLabelProvider</a></li><ul></ul><li><a href="#_BcsmZYU4EeSVSpmUeqlzmw"> SetFig</a></li><ul></ul></ul><li><a href="#_BcsmaYU4EeSVSpmUeqlzmw"> dialogs</a></li><ul><li><a href="#_BdScQoU4EeSVSpmUeqlzmw"> CreateAuthorDialog</a></li><ul></ul><li><a href="#_BdScRoU4EeSVSpmUeqlzmw"> CreateOrSelectReviewModelDialog</a></li><ul></ul></ul><li><a href="#_BdcNQoU4EeSVSpmUeqlzmw"> handlers</a></li><ul><li><a href="#_Bxqw0IU4EeSVSpmUeqlzmw"> AcceptReviewHandler</a></li><ul></ul><li><a href="#_Bxqw1IU4EeSVSpmUeqlzmw"> RevisionAbstractHandler</a></li><ul></ul><li><a href="#_Bxqw2IU4EeSVSpmUeqlzmw"> DeleteReviewHandler</a></li><ul></ul><li><a href="#_Bx0h04U4EeSVSpmUeqlzmw"> HookReviewHandler</a></li><ul></ul><li><a href="#_Bx0h14U4EeSVSpmUeqlzmw"> LaunchRevisionMode</a></li><ul></ul><li><a href="#_Bx0h24U4EeSVSpmUeqlzmw"> RefuseReviewHandler</a></li><ul></ul><li><a href="#_Bx-S04U4EeSVSpmUeqlzmw"> ReviewCreateHandler</a></li><ul></ul><li><a href="#_Bx-S14U4EeSVSpmUeqlzmw"> SaveSnapshotRevision</a></li><ul></ul></ul><li><a href="#_Bx-S24U4EeSVSpmUeqlzmw"> preference</a></li><ul><li><a href="#_ByHcwYU4EeSVSpmUeqlzmw"> ReviewPreferenceInitializer</a></li><ul></ul><li><a href="#_ByHcxYU4EeSVSpmUeqlzmw"> RevisionPreferenceConstants</a></li><ul></ul><li><a href="#_ByHcyYU4EeSVSpmUeqlzmw"> RevisionPreferencePage</a></li><ul></ul></ul><li><a href="#_ByRNw4U4EeSVSpmUeqlzmw"> queries</a></li><ul><li><a href="#_ByRNxYU4EeSVSpmUeqlzmw"> GetBackgroundColor</a></li><ul></ul><li><a href="#_ByRNyYU4EeSVSpmUeqlzmw"> GetStrike</a></li><ul></ul></ul></ul></ul><ul><a href="#_ByaXsYU4EeSVSpmUeqlzmw">Tests</a><li><a href="#_ByaXs4U4EeSVSpmUeqlzmw"> Review test</a></li><ul><li><a href="#_ByaXtYU4EeSVSpmUeqlzmw"> Create load a review</a></li><ul><li><a href="#_B2u3AoU4EeSVSpmUeqlzmw"> Load a model without stereotypes</a></li><ul></ul><li><a href="#_B24A84U4EeSVSpmUeqlzmw"> Load a model without dependency</a></li><ul></ul><li><a href="#_B24A94U4EeSVSpmUeqlzmw"> Load a file</a></li><ul></ul><li><a href="#_B24A-4U4EeSVSpmUeqlzmw"> Create a file</a></li><ul></ul></ul><li><a href="#_B3Bx84U4EeSVSpmUeqlzmw"> Close the editor</a></li><ul><li><a href="#_B5jhgoU4EeSVSpmUeqlzmw"> CloseandReopenReviewEditor</a></li><ul></ul><li><a href="#_B5tSgYU4EeSVSpmUeqlzmw"> CloseAndReopenWorkingModel</a></li><ul></ul></ul><li><a href="#_B5tSg4U4EeSVSpmUeqlzmw"> Add a review</a></li><ul><li><a href="#_B78HIoU4EeSVSpmUeqlzmw"> Add a Review without Model creation</a></li><ul></ul><li><a href="#_B8FREIU4EeSVSpmUeqlzmw"> Add A review in a existing model</a></li><ul></ul></ul><li><a href="#_B8FRFIU4EeSVSpmUeqlzmw"> Remove a review</a></li><ul><li><a href="#_B-6iooU4EeSVSpmUeqlzmw"> Remove a Review from a review model</a></li><ul></ul></ul><li><a href="#_B-6ipoU4EeSVSpmUeqlzmw"> Respond to a review</a></li><ul><li><a href="#_CAP_YoU4EeSVSpmUeqlzmw"> Respond to a review test</a></li><ul></ul></ul><li><a href="#_CAZwYIU4EeSVSpmUeqlzmw"> Review an element of the working model</a></li><ul><li><a href="#_CCL5EoU4EeSVSpmUeqlzmw"> Select and review an element in the model</a></li><ul></ul></ul></ul><li><a href="#_CCVqEYU4EeSVSpmUeqlzmw"> Revision test</a></li><ul><li><a href="#_CCVqE4U4EeSVSpmUeqlzmw"> Launch revision</a></li><ul><li><a href="#_CGDscoU4EeSVSpmUeqlzmw"> Launch revision with an opened model and the review model is not loaded</a></li><ul></ul><li><a href="#_CGDsdoU4EeSVSpmUeqlzmw"> Launch a revison on a opened model without revision editor</a></li><ul></ul><li><a href="#_CGDseoU4EeSVSpmUeqlzmw"> Launch the revision with an opened model and a review editor loaded </a></li><ul></ul></ul><li><a href="#_CGM2Y4U4EeSVSpmUeqlzmw"> Register modifications</a></li><ul><li><a href="#_CKhVsYU4EeSVSpmUeqlzmw"> Remove an element from the working model</a></li><ul></ul><li><a href="#_CKhVtYU4EeSVSpmUeqlzmw"> Add an element in to the working model</a></li><ul></ul><li><a href="#_CKhVuYU4EeSVSpmUeqlzmw"> Change an attribute of an element in the working model</a></li><ul></ul></ul><li><a href="#_CKqfoYU4EeSVSpmUeqlzmw"> See modification in the model explorer</a></li><ul><li><a href="#_CNMPMoU4EeSVSpmUeqlzmw"> See removed elements</a></li><ul></ul><li><a href="#_CNMPNoU4EeSVSpmUeqlzmw"> See addings</a></li><ul></ul><li><a href="#_CNWAMYU4EeSVSpmUeqlzmw"> See a set of value</a></li><ul></ul></ul><li><a href="#_CNWANYU4EeSVSpmUeqlzmw"> See modification in diagrams</a></li><ul><li><a href="#_CPul0oU4EeSVSpmUeqlzmw"> See removed elements</a></li><ul></ul><li><a href="#_CPul1oU4EeSVSpmUeqlzmw"> See addings</a></li><ul></ul><li><a href="#_CP3vw4U4EeSVSpmUeqlzmw"> See a set of value</a></li><ul></ul></ul><li><a href="#_CP3vx4U4EeSVSpmUeqlzmw"> Stop revision</a></li><ul><li><a href="#_CRW9goU4EeSVSpmUeqlzmw"> Stop revision test</a></li><ul></ul></ul></ul></ul><ul><a href="#_CRgugoU4EeSVSpmUeqlzmw">Requirements Coverage</a></ul><H2 id ="_Ao4j1IU4EeSVSpmUeqlzmw">Requirements</H2><pre id ="_ApLewIU4EeSVSpmUeqlzmw">- Versioning (id=Req_010): <BR/> Papyrus must integrate versioning in order to display in comment author and date.</pre><pre id ="_ApLewoU4EeSVSpmUeqlzmw">- VersionInfoReq (id=Req_011): <BR/> Papyrus must integrate versionning. This information comes from O"4.3.2 Pre-Defined Metadata Elements" of the OASIS standard, "Open Document Format for Office Applications (OpenDocument) Version 1.2-Part 1: OpenDocument Schema". </pre><pre id ="_ApLexIU4EeSVSpmUeqlzmw">- ReviewSystem (id=Req_020): <BR/> Papyrus must integrate a review system to add comments with the possibility to respond to this comment. Each comment must have information about the user the date.</pre><pre id ="_ApLexoU4EeSVSpmUeqlzmw">- RevisionMode (id=Req_030): <BR/> Papyrus must integrate a means to make revision mechanism to register, accept or refuse modification done by an user</pre><pre id ="_ApVPwYU4EeSVSpmUeqlzmw">- IndependantReview (id=Req_021): <BR/> It can exits several review models for one design “working model”. The working model is the current model edited by papyrus.</pre><pre id ="_ApVPw4U4EeSVSpmUeqlzmw">- LightRevisionMode (id=Req_040): <BR/> The revison mode must be light as word sofware, it must not use a client server system as gerrit.</pre><H2 id ="_ApVPxYU4EeSVSpmUeqlzmw">Use Cases</H2><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/ReviewSystem_UseCases.png alt=ReviewSystem UseCases ></P><P align="middle">ReviewSystem UseCases</P></BR><pre id ="_At9REoU4EeSVSpmUeqlzmw">The functionality revision can be divided into two parts: <BR/>- Management of review <BR/> <BR/></pre><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/ReviewSystem_UseCases.png alt=ReviewSystem UseCases ></P><P align="middle">ReviewSystem UseCases</P></BR><pre id ="_AxYYgoU4EeSVSpmUeqlzmw">- Management of revisions</pre><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Revision_mode_Use_Case.png alt=Revision mode Use Case ></P><P align="middle">Revision mode Use Case</P></BR><H3 id ="_A0zf8oU4EeSVSpmUeqlzmw">Review Tool</H3><H4 id ="_A09Q8YU4EeSVSpmUeqlzmw">Add or change information about the current author for the versionning</H4><pre id ="_A09Q84U4EeSVSpmUeqlzmw">When the user wants to add for the first time a review, the review system must ask the identity, the language and the wanted color of the user in order to add it in the associated review. <BR/>This information could be changed at any time in the preference of papyrus <BR/></pre><H5 id ="_A09Q9YU4EeSVSpmUeqlzmw">How to</H5><pre id ="_A09Q94U4EeSVSpmUeqlzmw">To do that the user can change this identidy by select Window menu --> preferences -->papyrus -->revision.</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\New_Author.PNG alt=Set new name in preferences ></P><P align="middle">Set new name in preferences</P></BR><H4 id ="_A09Q-4U4EeSVSpmUeqlzmw">Respond to a review</H4><pre id ="_A094AYU4EeSVSpmUeqlzmw">A user could have the possibility to respond to an existing review. Thanks to this, it is possible to see the discussion flow about a subject. </pre><H5 id ="_A094A4U4EeSVSpmUeqlzmw">How to</H5><pre id ="_A094BYU4EeSVSpmUeqlzmw">In order to respond to a review: <BR/>- Select the review <BR/>- Click right and select menu new review.</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\RespondComment.png alt=Respond to a review ></P><P align="middle">Respond to a review</P></BR><H4 id ="_A094CYU4EeSVSpmUeqlzmw">Add a review about the working model</H4><pre id ="_A1HB8IU4EeSVSpmUeqlzmw">The user can add review about element of the working model <BR/> <BR/> <BR/></pre><H5 id ="_A1Qy8YU4EeSVSpmUeqlzmw">How to</H5><pre id ="_A1Qy84U4EeSVSpmUeqlzmw">In order to reference an element from a review click right on review and choose hook menu. <BR/>It remains only to select the element in the dialog.</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\HookElement.png alt=Review references an element of the working model ></P><P align="middle">Review references an element of the working model</P></BR><H4 id ="_A1Qy94U4EeSVSpmUeqlzmw">Add, update or remove a review on the current model</H4><pre id ="_A1Qy-YU4EeSVSpmUeqlzmw">The user adds a review on an element of the model. This review will be not directly store in the model but into a new model that will contain all review comments. <BR/>In order to create a review, the review tool can create a review model if needed. <BR/>The review tool creates also a "user author". From all preferences, the system creates an author that will associated to a review. <BR/>Finally this created review contains all informations see in the version information. <BR/> <BR/>This review could be displayed on diagrams. A dedicated view must be displayed dedicated to review comment. (it can be sorted by date author, subject..) <BR/></pre><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Add_A_review_diagram.png alt=Add A review diagram ></P><P align="middle">Add A review diagram</P></BR><H5 id ="_A4iJYoU4EeSVSpmUeqlzmw">How to</H5><pre id ="_A4iJZIU4EeSVSpmUeqlzmw">In order to add a review: <BR/>- Launch the review editor. Window--> show view --> Review in the papyrus Category <BR/>- Click on the small comment with a plus.</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\AddReview_screen.png alt=Add a Review ></P><P align="middle">Add a Review</P></BR><pre id ="_A4iJaIU4EeSVSpmUeqlzmw">In order to remove a review click right on review and choose delete menu.</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\DeleteReview.png alt=Delete a review ></P><P align="middle">Delete a review</P></BR><H4 id ="_A4r6Y4U4EeSVSpmUeqlzmw">Create, load or save a review model </H4><pre id ="_A4r6ZYU4EeSVSpmUeqlzmw">When a model is opened in papyrus. The user can : <BR/>- create a new revision model <BR/>- load a new revision model <BR/>- save a revision model. <BR/>The revision model cannot be opened without the associated "working model".</pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\OpenSaveReview.png alt=Open save a review ></P><P align="middle">Open save a review</P></BR><H4 id ="_A4r6aYU4EeSVSpmUeqlzmw">Close WorkingModel or close review editor </H4><pre id ="_A41EUYU4EeSVSpmUeqlzmw">When user close the papyrus where the "working model" is edited, the review editor is closed</pre><H3 id ="_A41EU4U4EeSVSpmUeqlzmw">Revision Tool</H3><H4 id ="_A41EVYU4EeSVSpmUeqlzmw">Launch Revision mode</H4><pre id ="_A41EV4U4EeSVSpmUeqlzmw">The user can launch revision mode. <BR/>From this time all modifications will be register and associated to the user. <BR/>A modification could be: <BR/>- a deletion <BR/>- an adding <BR/>- a set of a property of the graphical model or the semantic model <BR/></pre><H5 id ="_A41EWYU4EeSVSpmUeqlzmw">How to</H5><pre id ="_A41EW4U4EeSVSpmUeqlzmw">In order to launch the revision model: <BR/>1. open a papyrus model <BR/>2. open the review editor window--> show view--> review editor <BR/>3. load or create a review model <BR/>4. launch the revision model Revision--> RevisionModel <BR/></pre><P align="middle"><img src=C:\git\org.eclipse.papyrus\extraplugins\revision\org.eclipse.papyrus.revisiontool\doc\imgDOC\launchRevisionMode.png alt=Launch the revision mode ></P><P align="middle">Launch the revision mode</P></BR><H4 id ="_A4-1U4U4EeSVSpmUeqlzmw">Register all modifications with Versioning information</H4><pre id ="_A4-1VYU4EeSVSpmUeqlzmw">All modifications are store and associated to the current user. <BR/>A modification can be registered by using EMF Compare model. In the way, the requirement about light review system is respected. Server and client is not needed. <BR/>Each modification of emf compare is referenced by a review. In this way, information about versioning is associated to the modification. <BR/></pre><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Register_modifications.png alt=Register modifications ></P><P align="middle">Register modifications</P></BR><H4 id ="_A_hiMoU4EeSVSpmUeqlzmw">Stop RevisionMode</H4><pre id ="_A_hiNIU4EeSVSpmUeqlzmw">When the user stop the revision mode, modifications are not registered and done directly on the model. <BR/></pre><H5 id ="_A_hiNoU4EeSVSpmUeqlzmw">How to</H5><pre id ="_A_hiOIU4EeSVSpmUeqlzmw">In order to stop the revision model: <BR/>1. go to the menu Revision--> RevisionModel <BR/>this menu is a check box. <BR/></pre><H4 id ="_A_rTMYU4EeSVSpmUeqlzmw">Accept or refuse modifications</H4><pre id ="_A_rTM4U4EeSVSpmUeqlzmw">Thanks to registered modification the user can accept or refuse the modification. <BR/>If the modification is accepted, the adding or the deletion or the set is really done on the model, and the modification is removed from the stack. <BR/>If the modification is not accepted, the adding or deletion or the set is not applied, and the modification is removed from the stack. <BR/></pre><H4 id ="_A_rTNYU4EeSVSpmUeqlzmw">See modifications in diagram</H4><pre id ="_A_rTN4U4EeSVSpmUeqlzmw">The user can see modifications that are done in the diagram <BR/></pre><H4 id ="_A_rTOYU4EeSVSpmUeqlzmw">See modifications in model explorer</H4><pre id ="_A_0dIYU4EeSVSpmUeqlzmw">Thanks to registered modification the user can accept or refuse the modification. <BR/>If the modification is accepted, the adding or the deletion or the set is really done on the model, and the modification is removed from the stack. <BR/>If the modification is not accepted, the adding or deletion or the set is not applied, and the modification is removed from the stack. <BR/></pre><H2 id ="_A_0dI4U4EeSVSpmUeqlzmw">Design</H2><pre id ="_BFVPR4U4EeSVSpmUeqlzmw">This tool uses two profiles: <BR/>- PapyrusVersioninExtension <BR/>- Review Profile</pre><H3 id ="_A_0dJYU4EeSVSpmUeqlzmw">PapyrusVersioningExtensions</H3><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/ProfileDiagram.png alt=ProfileDiagram ></P><P align="middle">ProfileDiagram</P></BR><pre id ="_BCpusoU4EeSVSpmUeqlzmw">This profile proposes the set of UML extenssions dedictated to annotate model and model elements with versionning information. <BR/>It is based on concepts defined in the chapter "4.3.2 Pre-Defined Metadata Elements" of the OASIS standard, "Open Document Format for Office Applications (OpenDocument) Version 1.2 <BR/>- Part 1: OpenDocument Schema". </pre><H4 id ="_BCy4oYU4EeSVSpmUeqlzmw">VersioningElement</H4><pre id ="_BCy4o4U4EeSVSpmUeqlzmw">An element under version contains a set of data: <BR/>- the generator attribute contains a string that identifies the OpenDocument producer that was used to create or last modify the document. <BR/>- the description attributes contains a description of a model element. <BR/>- the creationDate attribute specifies the date and time when a model element was created. <BR/>- the keyword attribute specifies a list of keywords pertaining to a model element. <BR/>- the date attribute specifies the date and time when the model elemeent was last modified. <BR/>- the language attribute specifies the default language of a document. <BR/>- the editingCycles attribute specifies the number of times a document has been edited. When a document is created, this value is set to 1. Each time a document is saved, the editing-cycles number is incremented by 1. <BR/>- the author attribute specifies the author that as create the element under version.</pre><H4 id ="_BCy4pYU4EeSVSpmUeqlzmw">Author</H4><pre id ="_BCy4p4U4EeSVSpmUeqlzmw">This author is a person that has created the element under versioning. <BR/>The author has 3 attributes: <BR/>- the language, attribute used specifies the language spoken by the author. <BR/>- the color attribute specifies the color associated to an element under version. <BR/>- the versioningElements attribute specifies the list of elements that are under version <BR/> <BR/>This stereotype can only applied on Actor.</pre><H3 id ="_BCy4qYU4EeSVSpmUeqlzmw">ReviewProfile</H3><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Review_profile.png alt=Review profile ></P><P align="middle">Review profile</P></BR><pre id ="_BFBtQoU4EeSVSpmUeqlzmw">This profile proposes the set of UML extensions dedictated to annotate model and model elements with review information. </pre><H4 id ="_BFBtRIU4EeSVSpmUeqlzmw">ReviewRepository</H4><pre id ="_BFLeQIU4EeSVSpmUeqlzmw">This stereotype is used to mark a model as a container of review. It is useful to distinguish a review model from another UML model.</pre><H4 id ="_BFLeQoU4EeSVSpmUeqlzmw">Comment</H4><pre id ="_BFLeRIU4EeSVSpmUeqlzmw">This stereotype is a comment in the context of reives model. <BR/>It inherits a a versioningElement. It has got all data about the versioning. <BR/>Moreover, a comment contains several data useful in the context of the review: <BR/>- the attribute status specifies the state of the comment. <BR/>- the attribute diffef specifies the path to reference a modification in a model <BR/>- the attribute subject specifies the subject of a given comment. </pre><H4 id ="_BFLeRoU4EeSVSpmUeqlzmw">Review</H4><pre id ="_BFLeSIU4EeSVSpmUeqlzmw">A review can be applied to express a critical assessment about a model element.</pre><H4 id ="_BFLeSoU4EeSVSpmUeqlzmw">Question</H4><pre id ="_BFVPQYU4EeSVSpmUeqlzmw">A question can be applied to express an interrogation about a model element.</pre><H4 id ="_BFVPQ4U4EeSVSpmUeqlzmw">Todo</H4><pre id ="_BFVPRYU4EeSVSpmUeqlzmw">A todo stereotype can be applied to express an action or modification about a model element.</pre><H3 id ="_BFVPSYU4EeSVSpmUeqlzmw">Plugin architecture</H3><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Plug-ins_architecture_.png alt=Plug-ins architecture ></P><P align="middle">Plug-ins architecture </P></BR><H4 id ="_BJDRooU4EeSVSpmUeqlzmw">org.eclipse.papyrus.revisiontool</H4><H4 id ="_BJMbkIU4EeSVSpmUeqlzmw">org.eclipse.ui</H4><H4 id ="_BJMbkoU4EeSVSpmUeqlzmw">org.eclipse.core.runtime</H4><H4 id ="_BJMblIU4EeSVSpmUeqlzmw">org.eclipse.emf.ecore</H4><H4 id ="_BJMbloU4EeSVSpmUeqlzmw">org.eclipse.uml2.types</H4><H4 id ="_BJMbmIU4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.core</H4><H4 id ="_BJMbmoU4EeSVSpmUeqlzmw">org.eclipse.papyrus.uml.tools</H4><H4 id ="_BJWMkIU4EeSVSpmUeqlzmw">org.eclipse.emf.transaction</H4><H4 id ="_BJWMkoU4EeSVSpmUeqlzmw">org.eclipse.papyrus.uml.extensionpoints</H4><H4 id ="_BJWMlIU4EeSVSpmUeqlzmw">org.eclipse.ui.forms</H4><H4 id ="_BJWMloU4EeSVSpmUeqlzmw">org.eclipse.ui.views</H4><H4 id ="_BJWMmIU4EeSVSpmUeqlzmw">org.eclipse.emf.edit.ui</H4><H4 id ="_BJWMmoU4EeSVSpmUeqlzmw">org.eclipse.ui.views.properties.tabbed</H4><H4 id ="_BJfWgYU4EeSVSpmUeqlzmw">org.eclipse.e4.ui.workbench.renderers.swt</H4><H4 id ="_BJfWg4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.widgets</H4><H4 id ="_BJfWhYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.services.labelprovider</H4><H4 id ="_BJfWh4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.emf</H4><H4 id ="_BJfWiYU4EeSVSpmUeqlzmw">org.eclipse.emf.compare</H4><H4 id ="_BJfWi4U4EeSVSpmUeqlzmw">org.eclipse.emf.compare.rcp</H4><H4 id ="_BJf9kYU4EeSVSpmUeqlzmw">org.eclipse.gmf.runtime.emf.type.core</H4><H4 id ="_BJf9k4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.emf.facet.custom.metamodel</H4><H4 id ="_BJf9lYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.emf.facet.custom.ui</H4><H4 id ="_BJf9l4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.emf.facet.efacet.core</H4><H4 id ="_BJf9mYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.emf.facet.query.java.core</H4><H4 id ="_BJf9m4U4EeSVSpmUeqlzmw">org.eclipse.gmf.runtime.diagram.ui</H4><H4 id ="_BJzfkYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.uml.diagram.common</H4><H4 id ="_BJzfk4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.gmfdiag.common</H4><H4 id ="_BJzflYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.gmfdiag.commands</H4><H4 id ="_BJzfl4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.infra.services.edit</H4><H4 id ="_BJzfmYU4EeSVSpmUeqlzmw">org.eclipse.papyrus.views.properties</H4><H4 id ="_BJzfm4U4EeSVSpmUeqlzmw">org.eclipse.papyrus.emf.facet.util.emf.core</H4><H3 id ="_BJ8pgYU4EeSVSpmUeqlzmw">Class architecture</H3><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Overview_of_the_package_architecture.png alt=Overview of the package architecture ></P><P align="middle">Overview of the package architecture</P></BR><H4 id ="_BNXw8YU4EeSVSpmUeqlzmw">Activator</H4><pre id ="_BNXw84U4EeSVSpmUeqlzmw">The activator class controls the revision plug-in life cycle</pre><H4 id ="_BNXw9YU4EeSVSpmUeqlzmw">advice</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Class_Diagram_of_advice_package.png alt=Class Diagram of advice package ></P><P align="middle">Class Diagram of advice package</P></BR><H5 id ="_BQMbcYU4EeSVSpmUeqlzmw">AdviceRemove</H5><pre id ="_BQMbc4U4EeSVSpmUeqlzmw">The purpose of this advice is to prevent remove during the running of the revision mode <BR/>When the remove is done during the activation of the revision model, a diff and a review are created in the review model <BR/> </pre><H4 id ="_BQMbdYU4EeSVSpmUeqlzmw">command</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Class_Diagram_of_the_command_package.png alt=Class Diagram of the command package ></P><P align="middle">Class Diagram of the command package</P></BR><H5 id ="_BSuyEoU4EeSVSpmUeqlzmw">CreateDifferenceCommand</H5><pre id ="_BSuyFIU4EeSVSpmUeqlzmw">This command is used to attach a diff Element into the EMF compare model <BR/> </pre><H5 id ="_BSuyFoU4EeSVSpmUeqlzmw">CreateMatchCommand</H5><pre id ="_BS38AYU4EeSVSpmUeqlzmw">This command is used to attach a Match Element into the EMF compare model <BR/> <BR/> </pre><H5 id ="_BS38A4U4EeSVSpmUeqlzmw">CreateToDoReviewCommand</H5><pre id ="_BS38BYU4EeSVSpmUeqlzmw">This command is used to create a comment stereotyped "ToDo" with filled information about author and versioning <BR/> <BR/> </pre><H5 id ="_BS38B4U4EeSVSpmUeqlzmw">PreventRemoveCommand</H5><pre id ="_BS38CYU4EeSVSpmUeqlzmw"> This class is used to register in the review model the proposition of a deletion <BR/> <BR/> </pre><H4 id ="_BS38C4U4EeSVSpmUeqlzmw">core</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Diagram_class_of_the_core_package.png alt=Diagram class of the core package ></P><P align="middle">Diagram class of the core package</P></BR><H5 id ="_BZRe8oU4EeSVSpmUeqlzmw">ReviewResourceManager</H5><pre id ="_BZbP8YU4EeSVSpmUeqlzmw">This class is used to manage the resource about the reviews and revisions. <BR/>It contains several important methods: <BR/>- load or get the current review model <BR/>- start and stop revision the connect or disconnect listener to register modification in the working model <BR/>- methods to access to the ServiceRegistry</pre><H5 id ="_BZbP84U4EeSVSpmUeqlzmw">AddingDiffListener</H5><pre id ="_BZbP9YU4EeSVSpmUeqlzmw"> This listener is used to register ADD ant SET about in the diff model during the launch of the revision mode. It also create review element in the review model. <BR/>See package commands for specification of review creation commands. <BR/> <BR/> </pre><H5 id ="_BZbP94U4EeSVSpmUeqlzmw">RefreshFigureListener</H5><pre id ="_BZbP-YU4EeSVSpmUeqlzmw">This listener is used to refresh figures when the revision mode has been used. <BR/> <BR/> </pre><H4 id ="_BZbP-4U4EeSVSpmUeqlzmw">ui</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/GUI_architecture.png alt=GUI architecture ></P><P align="middle">GUI architecture</P></BR><H5 id ="_BcZrcoU4EeSVSpmUeqlzmw">RevisonDiagLayer</H5><pre id ="_BcZrdIU4EeSVSpmUeqlzmw">This class is used to add figures in current diagrams for remove add or set during the revision mode. <BR/> <BR/> </pre><H5 id ="_BcZrdoU4EeSVSpmUeqlzmw">AddingFig</H5><pre id ="_BcZreIU4EeSVSpmUeqlzmw">This figure is about the adding of an element. <BR/> <BR/> </pre><H5 id ="_Bci1YIU4EeSVSpmUeqlzmw">RemovedFig</H5><pre id ="_Bci1YoU4EeSVSpmUeqlzmw">This figure represents a remove of an element. <BR/> <BR/> </pre><H5 id ="_Bci1ZIU4EeSVSpmUeqlzmw">ReviewsEditor</H5><pre id ="_Bci1ZoU4EeSVSpmUeqlzmw"> This class is the review editor that displays reviews or comments. This is an instance of a eclipse view. It references a content and label provider to display reviews. <BR/> <BR/> </pre><H5 id ="_Bci1aIU4EeSVSpmUeqlzmw">ReviewsTreeContentProvider</H5><pre id ="_Bci1aoU4EeSVSpmUeqlzmw">This is the content provider to display reviews in the review editor <BR/> <BR/> </pre><H5 id ="_BcsmYYU4EeSVSpmUeqlzmw">ReviewsTreeLabelProvider</H5><pre id ="_BcsmY4U4EeSVSpmUeqlzmw">This is the label provider to display reviews for the review editor <BR/></pre><H5 id ="_BcsmZYU4EeSVSpmUeqlzmw">SetFig</H5><pre id ="_BcsmZ4U4EeSVSpmUeqlzmw">This figure specifies that a change about an attribute has been done on an element <BR/> <BR/> </pre><H4 id ="_BcsmaYU4EeSVSpmUeqlzmw">dialogs</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/ClassDiagram_about_dialog_package.png alt=ClassDiagram about dialog package ></P><P align="middle">ClassDiagram about dialog package</P></BR><H5 id ="_BdScQoU4EeSVSpmUeqlzmw">CreateAuthorDialog</H5><pre id ="_BdScRIU4EeSVSpmUeqlzmw">This dialog is used to create an author that will add review or make revision.</pre><H5 id ="_BdScRoU4EeSVSpmUeqlzmw">CreateOrSelectReviewModelDialog</H5><pre id ="_BdcNQIU4EeSVSpmUeqlzmw"> This dialog is used to select or create a review model</pre><H4 id ="_BdcNQoU4EeSVSpmUeqlzmw">handlers</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Class_Diagram_of_the_handlers_package.png alt=Class Diagram of the handlers package ></P><P align="middle">Class Diagram of the handlers package</P></BR><H5 id ="_Bxqw0IU4EeSVSpmUeqlzmw">AcceptReviewHandler</H5><pre id ="_Bxqw0oU4EeSVSpmUeqlzmw">This handler is used to accept a ToDo revision.</pre><H5 id ="_Bxqw1IU4EeSVSpmUeqlzmw">RevisionAbstractHandler</H5><pre id ="_Bxqw1oU4EeSVSpmUeqlzmw">This is an abstract handler that can be used by other handlers. it provides methods to get list of selected elements. <BR/> <BR/> </pre><H5 id ="_Bxqw2IU4EeSVSpmUeqlzmw">DeleteReviewHandler</H5><pre id ="_Bx0h0YU4EeSVSpmUeqlzmw">This handler is used to remove a review from the review editor. <BR/> </pre><H5 id ="_Bx0h04U4EeSVSpmUeqlzmw">HookReviewHandler</H5><pre id ="_Bx0h1YU4EeSVSpmUeqlzmw">This handler is used to connect a review to an element of the working model. <BR/> </pre><H5 id ="_Bx0h14U4EeSVSpmUeqlzmw">LaunchRevisionMode</H5><pre id ="_Bx0h2YU4EeSVSpmUeqlzmw">This handler is used to launch the revision mode <BR/> <BR/> </pre><H5 id ="_Bx0h24U4EeSVSpmUeqlzmw">RefuseReviewHandler</H5><pre id ="_Bx-S0YU4EeSVSpmUeqlzmw">This handler is used to refuse a review from the review editor. <BR/> </pre><H5 id ="_Bx-S04U4EeSVSpmUeqlzmw">ReviewCreateHandler</H5><pre id ="_Bx-S1YU4EeSVSpmUeqlzmw">This handler is used to create a review in the review editor <BR/> </pre><H5 id ="_Bx-S14U4EeSVSpmUeqlzmw">SaveSnapshotRevision</H5><pre id ="_Bx-S2YU4EeSVSpmUeqlzmw">This handler is used to save a EMF compare model.</pre><H4 id ="_Bx-S24U4EeSVSpmUeqlzmw">preference</H4><H5 id ="_ByHcwYU4EeSVSpmUeqlzmw">ReviewPreferenceInitializer</H5><pre id ="_ByHcw4U4EeSVSpmUeqlzmw">Initialize preference constants about revision mode.</pre><H5 id ="_ByHcxYU4EeSVSpmUeqlzmw">RevisionPreferenceConstants</H5><pre id ="_ByHcx4U4EeSVSpmUeqlzmw">Constant definitions for the revision plug-in preferences</pre><H5 id ="_ByHcyYU4EeSVSpmUeqlzmw">RevisionPreferencePage</H5><pre id ="_ByRNwYU4EeSVSpmUeqlzmw">This class is the preference page the revision tool. <BR/> </pre><H4 id ="_ByRNw4U4EeSVSpmUeqlzmw">queries</H4><H5 id ="_ByRNxYU4EeSVSpmUeqlzmw">GetBackgroundColor</H5><pre id ="_ByRNx4U4EeSVSpmUeqlzmw">This class is query that returns the color of the element by taking account information about Compare model.</pre><H5 id ="_ByRNyYU4EeSVSpmUeqlzmw">GetStrike</H5><pre id ="_ByRNy4U4EeSVSpmUeqlzmw">This class is query that returns the boolean. It returns true if the element is deleted from the Compare model</pre><H2 id ="_ByaXsYU4EeSVSpmUeqlzmw">Tests</H2><H3 id ="_ByaXs4U4EeSVSpmUeqlzmw">Review test</H3><H4 id ="_ByaXtYU4EeSVSpmUeqlzmw">Create load a review</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Test_about_load_a_review_model.png alt=Test about load a review model ></P><P align="middle">Test about load a review model</P></BR><H5 id ="_B2u3AoU4EeSVSpmUeqlzmw">Load a model without stereotypes</H5><pre id ="_B2u3BIU4EeSVSpmUeqlzmw"> The goal of this model is to test if a review model can be loaded even if it has no stereotypes have been applied on the comment of the review model <BR/>1. Open this model. <BR/>2. Load a review model named MyReview-lessModelStereo. <BR/>--> The review editor must display one review. <BR/></pre><pre id ="_B24A8YU4EeSVSpmUeqlzmw"> The goal of this model is to test if a review model can be loaded even if it has no stereotypes have been applied on the review model <BR/>1. Open this model. <BR/>2. Load a review model named MyReview. <BR/>--> The review editor must display one review.</pre><H5 id ="_B24A84U4EeSVSpmUeqlzmw">Load a model without dependency</H5><pre id ="_B24A9YU4EeSVSpmUeqlzmw">The goal of this model is to test if a review model can be loaded even if it has no dependency to the working model <BR/>1. Open this model. <BR/>2. Load a review model named MyReview. <BR/>--> The review editor must display one review.</pre><H5 id ="_B24A94U4EeSVSpmUeqlzmw">Load a file</H5><pre id ="_B24A-YU4EeSVSpmUeqlzmw">The goal of this model is to test if a review model can be loaded <BR/>1. Open this model <BR/>2. Click on the comment on the samm package in the review editor <BR/>3. Choose the review file in the project explorer <BR/>--> the review editor must display one review </pre><H5 id ="_B24A-4U4EeSVSpmUeqlzmw">Create a file</H5><pre id ="_B3Bx8YU4EeSVSpmUeqlzmw">The goal of this model is to test if a review model can be created <BR/>1. Open this model <BR/>2. Click on the comment with a plus. <BR/>3. Set the name for a review model <BR/>4. Save all. <BR/>--> the review editor must display one review and a review model must be created in the project explorer</pre><H4 id ="_B3Bx84U4EeSVSpmUeqlzmw">Close the editor</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/CloseEditors.png alt=CloseEditors ></P><P align="middle">CloseEditors</P></BR><H5 id ="_B5jhgoU4EeSVSpmUeqlzmw">CloseandReopenReviewEditor</H5><H5 id ="_B5tSgYU4EeSVSpmUeqlzmw">CloseAndReopenWorkingModel</H5><H4 id ="_B5tSg4U4EeSVSpmUeqlzmw">Add a review</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/AddaReview.png alt=AddaReview ></P><P align="middle">AddaReview</P></BR><H5 id ="_B78HIoU4EeSVSpmUeqlzmw">Add a Review without Model creation</H5><pre id ="_B78HJIU4EeSVSpmUeqlzmw">The goal of this test is create a review without a model review. <BR/>1. open this model <BR/>2. open review editor by using show view. <BR/>3. create directly a review <BR/> <BR/>--> a popup appears in order to set the name of review model <BR/>--> a review is added and can be seen in the review editor</pre><H5 id ="_B8FREIU4EeSVSpmUeqlzmw">Add A review in a existing model</H5><pre id ="_B8FREoU4EeSVSpmUeqlzmw">The goal of this test is create a review with a model review. <BR/>1. open this model <BR/>2. open review editor by using show view. <BR/>3. create directly a review <BR/> <BR/>--> a popup appears in order to choose the review file <BR/>--> a review is added and can be seen in the review editor</pre><H4 id ="_B8FRFIU4EeSVSpmUeqlzmw">Remove a review</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Remove_a_Review.png alt=Remove a Review ></P><P align="middle">Remove a Review</P></BR><H5 id ="_B-6iooU4EeSVSpmUeqlzmw">Remove a Review from a review model</H5><pre id ="_B-6ipIU4EeSVSpmUeqlzmw">The goal of this test is to remove a review with a model review. <BR/>1. open this model <BR/>2. load a review model named MyReviews <BR/>3. remove a review <BR/> <BR/>--> the review has to be removed</pre><H4 id ="_B-6ipoU4EeSVSpmUeqlzmw">Respond to a review</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/respond_to_a_review_Test.png alt=respond to a review Test ></P><P align="middle">respond to a review Test</P></BR><H5 id ="_CAP_YoU4EeSVSpmUeqlzmw">Respond to a review test</H5><pre id ="_CAP_ZIU4EeSVSpmUeqlzmw">The goal of this test is to be able to respond to review. <BR/>1. open this model <BR/>2. load a review model named MyReviews <BR/>3. add areview by selection an existing review <BR/>--> the review has to be created under the selected review</pre><H4 id ="_CAZwYIU4EeSVSpmUeqlzmw">Review an element of the working model</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Review_Element_test.png alt=Review Element test ></P><P align="middle">Review Element test</P></BR><H5 id ="_CCL5EoU4EeSVSpmUeqlzmw">Select and review an element in the model</H5><pre id ="_CCL5FIU4EeSVSpmUeqlzmw">The goal of this model is to test that a review model element can reference an element <BR/>1. open this model <BR/>2. load a review model named MyReviews <BR/>3. select a review form the review editor <BR/>4. select the menu hook and choose the class Car of the working model <BR/>--> the review must reference the Car</pre><H3 id ="_CCVqEYU4EeSVSpmUeqlzmw">Revision test</H3><H4 id ="_CCVqE4U4EeSVSpmUeqlzmw">Launch revision</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/testLaunchRevision.png alt=testLaunchRevision ></P><P align="middle">testLaunchRevision</P></BR><H5 id ="_CGDscoU4EeSVSpmUeqlzmw">Launch revision with an opened model and the review model is not loaded</H5><pre id ="_CGDsdIU4EeSVSpmUeqlzmw">The goal of this model is to test that a review model is loaded when the revision mode is activated <BR/>1. open this model <BR/>2. show the review editor with window --> show view--> review editor <BR/>3. launch revision model Revision--> Revision Mode <BR/> <BR/>--> The review editor launch a popup in order to choose or create the review model</pre><H5 id ="_CGDsdoU4EeSVSpmUeqlzmw">Launch a revison on a opened model without revision editor</H5><pre id ="_CGDseIU4EeSVSpmUeqlzmw">The goal of this model is to test if the revision mode can be launch with the review editor <BR/>1. open this model <BR/>2. ensure that the revuiew editor is not shown <BR/> <BR/>--> the menu revision is not visible. it is impossible to launch the revision mode</pre><H5 id ="_CGDseoU4EeSVSpmUeqlzmw">Launch the revision with an opened model and a review editor loaded </H5><pre id ="_CGM2YYU4EeSVSpmUeqlzmw">The goal of this model is to test if the revision mode can be launched <BR/>1. open this model <BR/>2. open the review editor window--> show view--> review editor <BR/>3. load a review model named MyReviews <BR/>4. launch the revision model Revision--> RevisionModel <BR/>--> the revision menu must checked</pre><H4 id ="_CGM2Y4U4EeSVSpmUeqlzmw">Register modifications</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/UseCaseDiagram.png alt=UseCaseDiagram ></P><P align="middle">UseCaseDiagram</P></BR><H5 id ="_CKhVsYU4EeSVSpmUeqlzmw">Remove an element from the working model</H5><pre id ="_CKhVs4U4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to register removing in the review model <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Remove a class "engine" <BR/>5. Save all <BR/>--> Review has been added with a ref (uri fragment to diff). The review resource msut contain a "Comparison model" with a Diff element about the deletion. </pre><H5 id ="_CKhVtYU4EeSVSpmUeqlzmw">Add an element in to the working model</H5><pre id ="_CKhVt4U4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to register adding the review model <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Create a class "seat" with an association <BR/>5. Save all <BR/>--> Review has been added with a ref (uri fragment to diff). The review resource msut contain a "Comparison model" with 2 Diff element about the adding. </pre><H5 id ="_CKhVuYU4EeSVSpmUeqlzmw">Change an attribute of an element in the working model</H5><pre id ="_CKhVu4U4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to register setting in the review model <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Rename the class "Engine" to "Engines" <BR/>5. Save all <BR/>--> Review has been added with a ref (uri fragment to diff). The review resource msut contain a "Comparison model" with a Match and Diff element about the setting.</pre><H4 id ="_CKqfoYU4EeSVSpmUeqlzmw">See modification in the model explorer</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/See_modifications_in_model_explorer.png alt=See modifications in model explorer ></P><P align="middle">See modifications in model explorer</P></BR><H5 id ="_CNMPMoU4EeSVSpmUeqlzmw">See removed elements</H5><pre id ="_CNMPNIU4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see remove in the model explorer <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Remove a class "engine" <BR/>5. Save all <BR/>--> The element engine is colored in red with a strikethrough</pre><H5 id ="_CNMPNoU4EeSVSpmUeqlzmw">See addings</H5><pre id ="_CNMPOIU4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see addings in the model explorer <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Create a class "seat" with an association <BR/>5. Save all <BR/>--> the element seat and the association is colored in green</pre><H5 id ="_CNWAMYU4EeSVSpmUeqlzmw">See a set of value</H5><pre id ="_CNWAM4U4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see settings in the model explorer <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Rename the class "Engine" to "Engines" <BR/>5. Save all <BR/>--> The class engine is colored in blue</pre><H4 id ="_CNWANYU4EeSVSpmUeqlzmw">See modification in diagrams</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/modificationInDiagramsTest.png alt=modificationInDiagramsTest ></P><P align="middle">modificationInDiagramsTest</P></BR><H5 id ="_CPul0oU4EeSVSpmUeqlzmw">See removed elements</H5><pre id ="_CPul1IU4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see remove in the diagram <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Remove a class "engine" <BR/>5. Save all <BR/>--> The element engine is paint whit a red cross</pre><H5 id ="_CPul1oU4EeSVSpmUeqlzmw">See addings</H5><pre id ="_CP3vwYU4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see addings in the diagram <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Create a class "seat" with an association <BR/>5. Save all <BR/>--> Borders of the element seat are colored in green</pre><H5 id ="_CP3vw4U4EeSVSpmUeqlzmw">See a set of value</H5><pre id ="_CP3vxYU4EeSVSpmUeqlzmw">The goal of this model is to test if it is possible to see settings in the diagram <BR/>1. Open this model <BR/>2. Show review editor <BR/>3. Launch the revision mode <BR/>4. Rename the class "Engine" to "Engines" <BR/>5. Save all <BR/>--> The border of the class engine is colored in blue</pre><H4 id ="_CP3vx4U4EeSVSpmUeqlzmw">Stop revision</H4><P align="middle"><img src=C:/git/org.eclipse.papyrus/extraplugins/revision/org.eclipse.papyrus.revisiontool/doc/imgDOC/Strop_revision_test.png alt=Strop revision test ></P><P align="middle">Strop revision test</P></BR><H5 id ="_CRW9goU4EeSVSpmUeqlzmw">Stop revision test</H5><pre id ="_CRgugIU4EeSVSpmUeqlzmw">The goal of this model is to test if the revision mode can be stopped <BR/>1. open this model <BR/>2. open the review editor window--> show view--> review editor <BR/>3. load a review model named MyReviews <BR/>4. launch the revision model Revision--> RevisionModel <BR/>5. stop the revision mode Revision--> RevisionModel <BR/>the menu must be unchecked</pre><H2 id ="_CRgugoU4EeSVSpmUeqlzmw">Requirements Coverage</H2><table style="border-collapse: collapse;"><caption style="caption-side: bottom;">RequirementsCoverageTable</caption><tr><th style="border: 1px solid black">Id</th><th style="border: 1px solid black">Satisfy by</th><th style="border: 1px solid black">Verify by</th></tr><tr><td style="border : 1px solid black"><a href="#_ApLewIU4EeSVSpmUeqlzmw" title="Versioning">Req_010</a></BR></td><td style="border : 1px solid black">Add or change information about the current author for the versionning,
</BR>Add, update or remove a review on the current model</BR></td><td style="border : 1px solid black"><a href="#_CKhVsYU4EeSVSpmUeqlzmw" title="Remove an element from the working model">Remove an element from the working model,
</a></BR><a href="#_CKhVuYU4EeSVSpmUeqlzmw" title="Change an attribute of an element in the working model">Change an attribute of an element in the working model,
</a></BR><a href="#_CKhVtYU4EeSVSpmUeqlzmw" title="Add an element in to the working model">Add an element in to the working model</a></BR></td></tr><tr><td style="border : 1px solid black"><a href="#_ApLewoU4EeSVSpmUeqlzmw" title="VersionInfoReq">Req_011</a></BR></td><td style="border : 1px solid black">Add a review about the working model</BR></td><td style="border : 1px solid black"><a href="#_CCL5EoU4EeSVSpmUeqlzmw" title="Select and review an element in the model">Select and review an element in the model</a></BR></td></tr><tr><td style="border : 1px solid black"><a href="#_ApLexIU4EeSVSpmUeqlzmw" title="ReviewSystem">Req_020</a></BR></td><td style="border : 1px solid black">Add, update or remove a review on the current model,
</BR>Add a review about the working model,
</BR>Respond to a review,
</BR>Add or change information about the current author for the versionning,
</BR>Close WorkingModel or close review editor </BR></td><td style="border : 1px solid black"><a href="#_B2u3AoU4EeSVSpmUeqlzmw" title="Load a model without stereotypes">Load a model without stereotypes,
</a></BR><a href="#_B24A84U4EeSVSpmUeqlzmw" title="Load a model without dependency">Load a model without dependency,
</a></BR><a href="#_B24A94U4EeSVSpmUeqlzmw" title="Load a file">Load a file,
</a></BR><a href="#_B24A-4U4EeSVSpmUeqlzmw" title="Create a file">Create a file,
</a></BR><a href="#_B5tSgYU4EeSVSpmUeqlzmw" title="CloseAndReopenWorkingModel">CloseAndReopenWorkingModel,
</a></BR><a href="#_B5jhgoU4EeSVSpmUeqlzmw" title="CloseandReopenReviewEditor">CloseandReopenReviewEditor,
</a></BR><a href="#_B8FREIU4EeSVSpmUeqlzmw" title="Add A review in a existing model">Add A review in a existing model,
</a></BR><a href="#_B78HIoU4EeSVSpmUeqlzmw" title="Add a Review without Model creation">Add a Review without Model creation,
</a></BR><a href="#_B-6iooU4EeSVSpmUeqlzmw" title="Remove a Review from a review model">Remove a Review from a review model,
</a></BR><a href="#_CAP_YoU4EeSVSpmUeqlzmw" title="Respond to a review test">Respond to a review test,
</a></BR><a href="#_CCL5EoU4EeSVSpmUeqlzmw" title="Select and review an element in the model">Select and review an element in the model</a></BR></td></tr><tr><td style="border : 1px solid black"><a href="#_ApLexoU4EeSVSpmUeqlzmw" title="RevisionMode">Req_030</a></BR></td><td style="border : 1px solid black">Launch Revision mode,
</BR>Stop RevisionMode,
</BR>Accept or refuse modifications,
</BR>Register all modifications with Versioning information</BR></td><td style="border : 1px solid black"><a href="#_CGDsdoU4EeSVSpmUeqlzmw" title="Launch a revison on a opened model without revision editor">Launch a revison on a opened model without revision editor,
</a></BR><a href="#_CGDscoU4EeSVSpmUeqlzmw" title="Launch revision with an opened model and the review model is not loaded">Launch revision with an opened model and the review model is not loaded,
</a></BR><a href="#_CGDseoU4EeSVSpmUeqlzmw" title="Launch the revision with an opened model and a review editor loaded ">Launch the revision with an opened model and a review editor loaded ,
</a></BR><a href="#_CKhVtYU4EeSVSpmUeqlzmw" title="Add an element in to the working model">Add an element in to the working model,
</a></BR><a href="#_CKhVuYU4EeSVSpmUeqlzmw" title="Change an attribute of an element in the working model">Change an attribute of an element in the working model,
</a></BR><a href="#_CKhVsYU4EeSVSpmUeqlzmw" title="Remove an element from the working model">Remove an element from the working model,
</a></BR><a href="#_CNWAMYU4EeSVSpmUeqlzmw" title="See a set of value">See a set of value,
</a></BR><a href="#_CNMPNoU4EeSVSpmUeqlzmw" title="See addings">See addings,
</a></BR><a href="#_CNMPMoU4EeSVSpmUeqlzmw" title="See removed elements">See removed elements,
</a></BR><a href="#_CPul0oU4EeSVSpmUeqlzmw" title="See removed elements">See removed elements,
</a></BR><a href="#_CPul1oU4EeSVSpmUeqlzmw" title="See addings">See addings,
</a></BR><a href="#_CP3vw4U4EeSVSpmUeqlzmw" title="See a set of value">See a set of value,
</a></BR><a href="#_CRW9goU4EeSVSpmUeqlzmw" title="Stop revision test">Stop revision test</a></BR></td></tr><tr><td style="border : 1px solid black"><a href="#_ApVPwYU4EeSVSpmUeqlzmw" title="IndependantReview">Req_021</a></BR></td><td style="border : 1px solid black">Create, load or save a review model </BR></td><td style="border : 1px solid black"><a href="#_B24A94U4EeSVSpmUeqlzmw" title="Load a file">Load a file,
</a></BR><a href="#_B24A-4U4EeSVSpmUeqlzmw" title="Create a file">Create a file</a></BR></td></tr><tr><td style="border : 1px solid black"><a href="#_ApVPw4U4EeSVSpmUeqlzmw" title="LightRevisionMode">Req_040</a></BR></td><td style="border : 1px solid black">Register all modifications with Versioning information,
</BR>Accept or refuse modifications</BR></td><td style="border : 1px solid black"><a href="#_CKhVsYU4EeSVSpmUeqlzmw" title="Remove an element from the working model">Remove an element from the working model,
</a></BR><a href="#_CKhVtYU4EeSVSpmUeqlzmw" title="Add an element in to the working model">Add an element in to the working model,
</a></BR><a href="#_CKhVuYU4EeSVSpmUeqlzmw" title="Change an attribute of an element in the working model">Change an attribute of an element in the working model</a></BR></td></tr></table><pre id ="_CRguhYU4EeSVSpmUeqlzmw">Unsatisfied requirements (0 out of 6) : </pre><pre id ="_CRguh4U4EeSVSpmUeqlzmw">Unverified requirements (0 out of 6) : </pre></html>