Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Paul Lotz

Pages: [1] 2 3
1
General Board / attribute range and unit; best practice?
« on: November 17, 2017, 05:18:00 am »
I have asked related questions about profiles and showing attribute constraints before, but I will take a step back and ask a more basic question.

What is the best practice for showing attribute range (min, max) and unit in UML? (SysML has a somewhat different answer.)

For context, we are modeling signals in a publish-subscribe system. These signals have attributes, and some of these attributes have properties (e.g., a numeric value representing a reference input or a measured value has a range and a unit). I consider these to be invariant constraints defined on the attribute, but I suppose it practically is also possible to model these as tagged values. Does anyone have a suggested best practice?
___
For the record, my baseline is simply to add a set of invariant constraints to each attribute. (These are simple: {unit = m}, {min = 5}, {max = 15}. We parse this ourselves so we don't need to comply with OCL syntax.) The constraints show up fine in the exported UML. A drawback (discussed for years) is that these constraints do not appear on a class diagram in Enterprise Architect.
__

Paul

2
Build 1307 (hopefully updating this week):
The "Requirement Report - Summary" document template, for instance, does not produce desirable results with SysML 1.4 requirements, since the requirement ID and text are now in SysML tagged values (which is a good thing). It would be a good idea to create a new (or modified) system template that works well with SysML 1.4, if this has not already been done.

3
General Board / sysml requirements tag on diagram -- cannot turn off?
« on: August 08, 2017, 07:34:21 am »
I am working in build 1307. (Hopefully we will upgrade soon.)

On a SysML 1.4 requirement diagram I place a new Requirement element (from the Toolbox).
I enter the text of the requirement. (This is now in a SysML 1.4 'text' tagged value, rather than in the element Note. This itself is a major improvement.
The SysML 1.4 tags (id, text) automatically show in a compartment in the element on the diagram, which, in itself, is not a bad thing.
If I configure the diagram to show element tags, the tags appear again in a separate compartment.
If I configure the diagram not to show element tags, the second compartment disappears, but the first compartment with the requirement tagged values remains.

What makes the first set appear in the first place?  Is it possible not to display this information (if a user does not want this to display)?. Maybe this is defined in a shape script in the SysML profile?

I may just use this as is, but I would like to be sure I understand what is happening in the diagram.

Paul

4
On the Connectors tab of the Diagram Properties dialog, there is an option to Suppress All Connector Labels.
In the case at hand, however, I need at least some of the connector labels to be visible. I want to hide the labels on the required and provided interfaces between which I am drawing the connectors. Is there a way to hide interface labels in a diagram? If so, how? (I haven't found such an option in the pop-up dialog for the diagram, nor have I found such an option in the pop-up menu options for the interfaces themselves.)

5
Suggestions and Requests / QA Reports Filters do not function correctly
« on: February 24, 2017, 04:35:57 am »
I have tried to use this feature for some time, and it hasn't worked. I thought maybe I just wasn't understanding how to use it, but it seems pretty clear to me I am using it as one would expect it to work. I filed the following report.

"I want to filter the use cases that appear in the Use Cases in the QA Reports. I should be able to do this using the "Keyword like" button. (From the help: "Include Use Cases with a keyword that matches the wildcard value in the field.")
The actual behavior is not thus, however. For instance, entering a valid keyword in the "Keyword like" field (and clicking Reload) returns 0 results. This is true even if the value is '*'.'
This functionality would be very useful if it worked correctly. Please fix it."

6
I did a search on "operation parameter array" and found many threads  going back to 2009 discussing the same issue (including one I commented on in 2014), but I didn't see any threads with direct requests for a change, so I am creating one.

Among many others, these threads capture the issue and some workarounds:
http://sparxsystems.com/forums/smf/index.php/topic,7730.msg136609.html#msg136609
http://sparxsystems.com/forums/smf/index.php/topic,17799.msg172583.html#msg172583.

Naturally, I would prefer that the tool work implement a display feature rather than using a workaround. I did find some examples on line that did show the feature (e.g., http://www.uml-diagrams.org/operation.html), although I didn't find anything specific about this in the UML 2.5 specification.

The feature request is to be able to indicate on a diagram that an operation parameter is a collection (an array, for example) based on the multiplicity settings (much as EA already does for class attributes). (Presently EA permits one to configure multiplicity, but there is no representation of this on a diagram.)

Paul

7
In one diagram I have defined a Collaboration.
On another diagram I have a Collaboration Use for the previously defined classifier. I also added instances of classes that will perform the roles defined by the collaboration. I connect a role binding connector from the Collaboration Use to one of the classes. I can define the role by typing text in a field on the General tab. I don't see where I could select one of the roles defined in the Collaboration. Am I missing something? If not, it would be nice to be able to do that, to establish a proper link.

(The most relevant EA help page is: http://www.sparxsystems.com/enterprise_architect_user_guide/9.3/standard_uml_models/rolebinding.html.)

8
General Board / Signal attribute details in generated document?
« on: August 03, 2016, 09:47:09 am »
With the documentation generation tool, I have been able to include a table with attributes or operations of Classes, using a table I make myself or using the Features fragment within a custom template.

I have Signals that have attributes as well, but the attributes for these do not appear in the generated documentation. (The "Exclude details for" filter is set to None.)

Ideas?

Paul

9
General Board / Include note elements in RTF
« on: December 28, 2010, 10:20:03 am »
I'm trying to create a template for a requirements rtf document.  (I started with the existing requirements template.  It works OK except for one thing.

I have added some Note elements linked to the requirements elements or just free on the diagrams.  I want the notes to show up appropriately in the generated document, but the only way I seem to be able to get the notes to appear at all is by checking to include Connector...Element, but then the notes appear multiple places instead of just once.  I would think that just including Element would get them in the rtf document, but then they don't appear at all.

How do I get the notes to appear once in the appropriate place?

10
General Board / custom sort attributes or tags
« on: September 10, 2015, 03:32:35 pm »
Is there a way now to set the order of attributes or tags manually?  For my present purpose, that is critical.  (Also, inheriting types need to preserve the custom order.)  I have tried this with UML classes and SysML blocks, but I don't see a way.  For the record, Tools...Options...Objects...Sort Features Alphabetically is unchecked.  EA 12, build 1213.

11
General Board / Watermark in template does not appear in RTF
« on: May 23, 2015, 02:52:30 am »
Our team added a watermark to a cover page template.  It looks fine in the template, but when we generate a document (RTF in this case), the watermark isn't visible in the generated document.  Does anyone know how to resolve this?

The good news is, I found three threads on the same issue:
http://www.sparxsystems.com/cgi-bin/yabb/YaBB.cgi?num=1411463724/0#0
http://www.sparxsystems.com/cgi-bin/yabb/YaBB.cgi?num=1354736176/0#0
http://www.sparxsystems.com/cgi-bin/yabb/YaBB.cgi?num=1243950098/0#0

The bad news is, nobody replied.

Paul

12
General Board / How to make HTML Report updates show in browsers?
« on: November 21, 2014, 06:29:38 am »
I have been wondering about this issue for a while and I think it is time to see if there is a satisfactory solution.

I am creating (EA v 10.0.1009) HTML Reports of top-level models or packages, and placing the generated files on a server.  This works fine except that when I generate a new version of the same model or package the changes don't always show up in a browser.

I started with Internet Explorer (v 11 on Windows 8.1).  I went to the link for the model--fine.  I changed something in the model and put the new version of the HTML report on the server.  I refreshed IE--no change.
Next I opened Firefox on the same machine.  I had not opened the link in Firefox previously, and it showed me the new version.
I then made another change to the model, and neither browser showed the update.
We saw the same issue (as expected) with Safari on Yosemite.  (I haven't tried Chrome yet.)

After some research and testing, I found:
Forcing a page refresh (Ctrl+F5 on IE and Firefox, for example) does not retrieve the new page version.
I changed the setting in IE to "Check for newer versions of stored pages: Every time I visit the webpage." This did not work to see changes I had made prior to changing the setting, but it has worked to show the 4 changes I have made since.  I just had to refresh the page.  (I'm not sure what the equivalent setting is in Firefox--I didn't see one in the settings, but I haven't done a web search--or Safari.)

So, I have a workaround for IE, but it isn't so good because:
1) each user has to set this in their web browser(s);
2) it may have undesirable side effects.

I'm not a web developer.  My understanding is there is some metadata one can add to a page to force reloading.  If I know more about this, maybe I can add this to each HTML report (not what I want) or maybe we can get Sparx to add this so it is always in the generated HTML reports (may be the best solution).

Ideas?

13
General Board / Standards for hierarchical system states?
« on: October 08, 2011, 09:02:48 am »
We designed our system components with five states: Off, Standby, Disabled, Enabled, Fault.  (We didn't base this off a standard, but we did have some examples.)

A given component may have one or more subcomponents.  A subcomponent never cares about the state of a supercomponent, but a component may care about the state of a subcomponent.  We are actively debating how much so, though.  In particular, if one of component A's subcomponents is in FaultState, does that mean that A is also in FaultState?  We have to date answered that question one way but now we are having second thoughts.

I have searched without any real success the last couple days for a great paper, book, example, or standard that will help here, but I haven't found much.  Maybe I don't know the right keywords.  Does anyone here know of a good reference?

14
General Board / code generation and Signals
« on: May 11, 2010, 10:41:56 am »
This is, I think, the last major piece in a puzzle I am trying to solve.  For the record, I also posed a version of this question to Sparx support.

How do I generate code for a Signal?

In the current version of EA a Signal is a unique type.  A Signal-typed element looks an awful lot like a class.  A signal can have attributes.  It generally does not have operations, but the UML specification does not forbid this and in fact EA allows it.  While it is not necessary for a Signal to be an object, in practice I think it is quite common to implement signals as objects.

In particular, EA 8.0 (build 856) has a Select Signal browser one can use to select an existing Signal-typed element to apply to, say, a message in a sequence diagram.  I think this is very cool!  (For the record, it is also possible to apply a <<signal>> stereotype to a class but such a class does not appear in the Select Signal dialog.)  It seems to me quite appropriate, then, to represent signals (particularly in a publish-subscribe system) as Signal-typed elements in the model.

Now, the last bit is how does one generate code for such a Signal?  In our case for each Signal we want to generate a Java class with the corresponding attributes.  (I'm guessing implementing a Signal as a Class is the most common approach.)  How can I do this?

I think we need to extend the templates under Settings...Code Generation Templates so that they apply to a Signal, but I don't (yet) know how.  Can anyone shed some light on how to do this?

Thanks!

Paul

15
General Board / How to show ConcreteCommand on message in Seq Diag
« on: April 30, 2010, 10:31:13 am »
We have successfully implemented an interface using the Command Pattern.  I had a sequence diagram in which I showed the commands on messages in order to express the interactions, but I created the message names and parameters manually (and they were notional for that reason).

I am now trying to update the sequence diagram so that the messages rigorously link to the proper model elements, but I am not sure how to do this (if it is possible, which regrettably it might not be).

So I have something like this:
Command class is abstract and any number of ConcreteCommand classes, each of which has its own unique attributes (if any).
I have a CommandSignal with an attribute command:Command.
I have two interfaces: ICommander, ICommandee, and on my sequence diagram ICommander sends a message to ICommandee.

Now I can define the message as type CommandSignal but then the message parameter is command, which isn't very useful on the sequence diagram.

I can instead define an operation on ICommandee that I call command(), but this doesn't have the parameter I want.

Or I can define a series of operations that I call concreteCommandA(), concreteCommandB(), etc., but if I define parameters of type CommandA, CommandB, etc., this doesn't help me with the parameter specification on the message either.

What I want, of course, is to have the message parameters from the proper ConcreteCommand class.

Is there a way to do this?

As I write, I suppose I could (haven't tried this yet) define the parameters on concreteOperationA to match those for ConcreteCommandA, but then if I change an attribute on ConcreteCommandA, then, unfortunately, concreteOperationA will not automatically follow suit.

Is there a better way?

Thanks!

Paul

Pages: [1] 2 3