23
jUCMNav Updates Daniel Amyot March 26, 2012

JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Embed Size (px)

Citation preview

Page 1: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

jUCMNav Updates

Daniel Amyot March 26, 2012

Page 2: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Contributors

• Mainly: – Jason Kealey – Andrew Miga– Etienne Tremblay– Daniel Amyot

• Also:– Azalia Shamsaei– Gunter Mussbacher– Hao Luo (open source, Masters project)– Dominique Blouin (open source, Industry - France)– Stéphane Leblanc (open source, Masters project)

jUCMNav Update, p. 2

Page 3: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

URN Links (#688, #815)

jUCMNav Update, p. 3

• Important new feature (4.4.0)

• See demo online: http://jucmnav.softwareengineering.ca/ucm/bin/view/ProjetSEG/JUCMNavRelease440

Page 4: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Bilingual Models (#786)

jUCMNav Update, p. 4

Page 6: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

ID Summary782 Gray coloring of GRL IEs with <<NO>> tag783 Legal profile804 Gray coloring of GRL IEs with <<IgnoreNodeInEvaluation>> ...805 New symbol for representing conditions in GRL806 Gray coloring of GRL contribution links807 A pop up menu for selecting class type for GRL IEs and St...

GRL Legal Compliance Profile

jUCMNav Update, p. 6

MEDATADA Runtime Contribution = 99MEDATADA Runtime Contribution = 99

Page 7: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

GRLmodelElement(from URNcore)

QualitativeLabel

- Denied- WeaklyDenied- WeaklySatisfied- Satisfied- Conflict- Unknown- None

<<enumeration>>

StrategiesGroupGRLspec

0..*

1 -groups

0..*

-grlspec1

New (0.24): Strategies can now include other strategies.

GRLspec ContributionContextGroup

0..*1

-contributionGroups

0..*

-grlspec

1

Contribution changes, contexts & groups are now used. (0.24)

New: ContributionContexts can include others.

Strategies still belong to only one group, for backward compatibility.

IntentionalElement

- type : IntentionalElementType- decompositionType : DecompositionType = And- importance : ImportanceType = None- importanceQuantitative : int = 0- lineColor : String- fillColor : String- filled : boolean = false

0..*

1

-intElements 0..*

-grlspec 1EvaluationStrategy

- author : String

0..* 1

-strategies0..*

-group11

0..*

-grlspec1 -strategies

0..*

0..* 0..*

-includedStrategies

0..*-parentStrategies

0..*

Evaluation

- evaluation : int = 0- qualitativeEvaluation : QualitativeLabel = None

1

0..*

-intElement1

-evals 0..*

0..*

1

-evaluations 0..*

-strategies1

EvaluationRange

- start : int- end : int- step : int = 1

1

0..1

-eval1

-evalRange0..1

ContributionContext

0..*

1

-contributionContexts

0..*

-grlspec 1

0..*

0..*

-contribs0..*-groups0..*

0..*0..*-parentContexts

0..*

-includedContexts

0..*

Contribution

- contribution : ContributionType = Help- quantitativeContribution : int = 25- correlation : boolean = false

ContributionRange

- start : int- end : int- step : int = 1

ContributionChange

- newContribution : ContributionType = Unknown- newQuantitativeContribution : int = 0

0..*

1

-changes0..*

-context1

1

0..*

-contribution 1

-changes

0..*

0..1

1

-contribRange0..1

-change1

New Metamodel (#800) (1)

jUCMNav Update, p. 7

Page 8: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

New Metamodel (2)

jUCMNav Update, p. 8

Indicator

KPIInformationElement

StrategiesGroup(from GRL)

KPIInformationConfig

- levelOfDimension : String- valueOfDimension : String

1

0..*

-kpiInfoElement 1

-configs 0..*

IntentionalElement

- type : IntentionalElementType- decompositionType : DecompositionType = And- importance : ImportanceType = None- importanceQuantitative : int = 0- lineColor : String- fillColor : String- filled : boolean = false

(from GRL)

KPIEvalValueSet

- targetValue : double = 0- thresholdValue : double = 0- worstValue : double = 0- evaluationValue : double = 0- unit : String = ""

EvaluationStrategy

- author : String

(from GRL)

10..*

-group

1

-strategies

0..*

0..*

1

-kpiInfoConfig0..*

-strategies1

0..*0..*

-includedStrategies0..*

-parentStrategies

0..*

EvaluationRange

- start : int- end : int- step : int = 1

(from GRL)Evaluation

- evaluation : int = 0- qualitativeEvaluation : QualitativeLabel = None

(from GRL)

1

0..*

-intElement1

-evals 0..*

0..1

1

-kpiEvalValueSet

0..1

-eval1 0..*

1

-evaluations0..*

-strategies 1

0..1

1-evalRange

0..1 -eval

1

KPINewEvalValue

- evaluationValue : double = 0

0..1

1

0..1

1 -eval

-kpiNewEvalValue

KPINewEvalValue is meant to override the one from KPIEvalValueSet (likely inherited from an included strategy). Limited to Indicators. The Evaluation.evaluation is not considered in that context.

Mutually exclusive with EvaluationRange.

Page 9: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Strategy Diff (#785/776)

jUCMNav Update, p. 9

Current Strategy - Base Strategy

Difference

Important feature to compare the current situation with past ones or predicted ones, or to compare alternative global solutions.

Page 10: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

[0..100] GRL Evaluation Scale

jUCMNav Update, p. 10

New visualization option with [0..100] for evaluations

Suddenly, 25 is no longer good (orange)!

Applies to new models.

Right-click on URNspec (in the Outline view) to switch between [0..100] and [-100..100]. The menu for quantitative values will change too.

Page 11: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Strategy Inclusion (#797, #632)

jUCMNav Update, p. 11

• A strategy can include other strategies.• Useful for strategy management:

• A base strategy can be defined. • Other strategies can include it.• If the model changes, only the base needs updating.

Page 12: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

jUCMNav Update, p. 12

Contribution Overrides (#795)

For models where we need to change existing contribution levels (or explore different ones).

Contribution overrides can also include other ones, for improved maintainability.

Integrated with strategy evaluation.

Page 13: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Sensitivity Analysis (#790) – Evaluation Values

• Activate/select a strategy. • Set an evaluation value to an intentional element.

(Must have value set for following to work)• Right click - edit the range. • Change the range value. Clicking finish will

automatically run that range.

jUCMNav Update, p. 13

• Note the [X..Y] values listed next to the evaluation. This shows the range of values.

• A metadata entry was added to show all the runtime values.

Page 14: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Sensitivity Analysis (#790) – Contribution Overrides

• Activate/select a strategy.• Activate/select a Contribution Override • Set a contribution• Right click - edit the range. • Change the range value. Clicking finish will

automatically run that range.

jUCMNav Update, p. 14

• Note the [X..Y] values listed next to the evaluation. This shows the range of values.

• A metadata entry was added to show all the runtime values.

Page 15: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

CSV Import/Export of Strategies (#754, #792)

jUCMNav Update, p. 15

Preference (in Report) for number of columns when exporting

# means it’s a computed value (will also be skipped when importing)

Important feature to separate models from strategies.

Page 16: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Searching (#772)

jUCMNav Update, p. 16

Page 18: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Model Diff (#798)

jUCMNav Update, p. 18

Install EMF Compare from the Eclipse Marketplace if not already there:(Help Eclipse Marketplace … type EMF Compare)

Select two .jucm files

Right-click Compare With Each Other

User guide:http://wiki.eclipse.org/EMF_Compare/User_Guide#Installing_EMF_Compare

Page 19: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

jUCMNav Update, p. 19

"Small"

Bug

s Fi

xed

ID Summary Opt.760 Can set a GRL strategy of one model based on elements of ... N717 Undoing a new GRL evaluation leaves it created, but with ... N700 UCEd import broken N780 Null Pointer Exception when deleting an intentional eleme... N764 responsibility definition can be deleted even if used in ... N755 Install through update site KO N506 scenarios: enumeration value naming conflicts with variables N769 sub-menu icon problem Y774 problem with include order of scenarios Y762 highlight in/out-path of stub after double-clicking on st... Y675 Preventing respRef to have metadata might break something... Y655 Java code contains deprecated calls to Eclipse Y631 move scenario definitions Y763 default fill color of comment is shown as 0/0/0 but that'... Y756 Enumeration types should allow for elements with mixed cases Y696 Images of Diagrams are replaced without question (Export) Y759 Export to .dot for Graphvis produces 0 length file Y757 The import/export of GRL catalogues, export of CSM/CSV, a... Y801 Exception when the outline view opens when the locale is ... New802 It would be nice to have the URN Ecore packages registere... New803 Package ucmscenarios.ecore does not validate New809 Scenarios and Strategies View: the GRL Evaluation Strateg... New810 Cannot generate MSC (.jucmnavscenario) file New812 URN links can be created across models New814 deletion of unneeded GUI source file URNLinksDialog.java New818 Unitialized variable creates an exception when used in a responsibility New819 MSC Viewer broken in version 4.4.0 New

Page 21: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

Relevant Bugs Unaddressed

jUCMNav Update, p. 21

ID Summary761 GRL propagation does not handle dependency loops correctly734 User should be able to set the default contribution level...645 Link online documentation and Eclipse "?" icon563 RTF export has small images507 Improve selection of visibility of some GRL/UCM elements777 GRL visualization of trends765 improved visualization of bindings720 GRL intentional element: Show Linked Elements719 GRL intentional element: Show Containing Actor718 GRL actor: Show Bound Intentional Elements424 problem with automatically adding links between nodes

Page 22: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

New but Unaddressed Bugs

jUCMNav Update, p. 22

808 GUI for managing model tags

811 widget is disposed - metadataeditor?

813 Extract translatable strings from HTMLReport

816 NPE when updating the initializations of a scenario with included scenario

Page 23: JUCMNav Updates Daniel Amyot March 26, 2012. Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter

jUCMNav Update, p. 23

656Java code still 1.4 compliant. Move to 1.5 or 1.6784Crash on Mac OS X Lion770refactoring into stub problem768expand templating to anything that can be defined on a pl...767custom-defined stubs766comment should be linked to individual element, not diagram752Z.151 import/export: need to handle differences in the da...750Handle new concern relationships in Z.151 export/import692Belief one line text box676GRL evaluations of dependencies with dependum or initial ...674Verify compliance of jUCMNav's data model with Z.151's672UCM waiting kinds should be supported for waiting places ...671UCM singleton maps not handled669UCM ComponentType should be supported661GRL actor collapsing/expanding659MacOS user interface bugs644Centralize Performance menus to minimize pop-up clutter635MacOS refresh problem while drawing/moving components634Autolayout problems on MacOS633Incorrect handling of dependency in GRL qualitative algor...629MSC of start point with condition created incorrectly560Need to refactor access to Problems view547scenarios: limitation with triggering paths545Image export in MSC Viewer521mac bug: perspective not reset518scenarios: create extension point(s) for scenario traversal517refactor: DelegatingCommandStack executer/redo/undo516refactor: create a DisconnectTimeoutPathCommand513Create a DetachBranchCommand493scenarios: plugin selection window refinement487scenarios: add intellisense in code-editor480platform issues: property sheet problems422ExportDXL: CompRefs have no descriptions, while they shou...406palette preferences376refactor: DevDocProperties374refactor & improve: CutPathCommand370refactor: attempt alternate solution in DevDocConnectionO...368refactor: AddPluginCommand367refactor: query infrastructure365refactor: seg.jUCMNav.figures.util361refactor: clean rotation code323asynch connect: improve figure position321connects: if change x,y in properties, connected element ...267new element position (fork/join) enhancements265add/delete map command stack management264ParentFinder getPossibleParents bug261multipage editor / outline: should be able to open only ...

Outs

ide o

f Sco

pe in t

his

It

era

tion