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.

Messages - Richard Freggi

Pages: 1 [2] 3 4 ... 8
Yes that's my understanding.
Also to note "The elements of UML 2 style", point 42, Avoid diagram frames.  If you can, not having a frame at all is often a good idea. Although the UML standard seems to be driving in opposite direction (OK UML is not perfect, but still very good!)

Hello I have version 13.10 and I have a question about interface representation in component diagrams.  I think the correct UML 2.5 procedure (for example this works in Eclipse Papyrus UML modeler) is
- Draw component 1 and component 2
- Draw interface 1 and interface 2, right click - use circle notation
- Add <<Realize>> dependency from component 1 to interface 1
- Add <<Use>> dependency from component 2 to interface 2.  Interface 2 should be displayed as a socket (open semicircle), showing it's a required interface
- Add dependency between interface 2 and interface 1.  Done

However, well there is no <<Use>> dependency in the toolbox (you can find it in the dependency properties menu under Stereotypes) and the ball does not turn into a socket when connected via a <<use>> dependency. 

Is Sparx inconsistent with UML standard?  Or am I doing something wrong.

p.s. I know about the Exposed interface - right click and choose provided or required and the assembly connector, but these seem like a bit of a kludge (convenient at times, but still not a UML 2.5 compliant interface).  For example I can add attributes to the Expose interface; I can't differentiate between provided and required interfaces in assembly connector, and other issues.

Couldn't find anything useful in the documentation.  If anyone has ideas please share thanks!

I don't think that's how diagram frames work in UML 2.5....  boundaries maybe, but not frames

What's wrong with my initial proposal.
If you want to have different instances of one classifier in a diagram, go ahead and knock yourself out
If you absolutely-positively must have same instances of one classifier in a diagram, create children of the classifier using generalization.  I's the same as using a placeholder / bookmark / virtual thingy but it's 100% UML compliant... no gimmicks needed.

This is really a UML question, not a tool question.  I don't think it makes sense in UML to have multiple instances of the same classifier in a diagram, and if absolutely-positively need to, the correct way to do it is with a generalization (duplicate element IS-A original element).  EA implements the UML standard correctly by not allowing 2 of same classifiers in a diagram. 

I'm pretty sure there's nothing in the UML specs that says you can't put an element on a diagram twice.
In fact UML says very little about what you can or can't do on diagram.

But I don't understand your point about generalization. If I wanted to put a an action on a diagram twice, how could generalization help me? I don't even think generalization is allowed between Actions.


General Board / Re: use case non human actor
« on: August 28, 2018, 08:30:41 pm »
The best way would be to define a stereotype for the actor; it will appear on the use diagram as text
Comments are also a good way to display this kind of thing.
I do not want to know why you need an actor with a blindfold - maybe it is a ninja turtle or something?  Anyways let 10,000 flowers bloom said a famous guy....

i have find on use cas an actor with blindfold
how i can set a new actor for having blindfold ?

i don't find where i can set a property for having this


A ERD is simply a class diagram with a specific profile (Crow's foot notation, stereotypes for primary/foreign keys, triggers and constraints are represented as operations etc.)  Anything you can do with a ERD you can also do with a class diagram (there's whole books on this subject on Amazon).
That's not quite true. ERD is elder than UML (at least the UML we use now). But UML can mimic ERD by means of a profile.


Hi qwerty, so seems like you agree with what I posted, and do I sense a bit of impedance today?

Hello Dana

A ERD is simply a class diagram with a specific profile (Crow's foot notation, stereotypes for primary/foreign keys, triggers and constraints are represented as operations etc.)  Anything you can do with a ERD you can also do with a class diagram (there's whole books on this subject on Amazon).

I remember years back the OMG looking into requests to adopt ERDs and concluding that UML already has full capability to do what ERDs do, so nothing to be gained.  The main issue is programmers proficient in UML not liking data modelers proficient in ERD and very much vice versa (look up "object impedance").

Anyways a data model (in whatever notation, class diagram or ERD) is an excellent way to capture requirements because you can efficiently and precisely rationalize key concepts (entities and attributes), business rules (relationships and cardinality; also datatypes and domain checks) and other qualities into one simple model that can summarize hundreds of different requirements from dozens of business processes and IT systems. 

The best way to learn how to do it is to pick a methodology and practice, practice practice.  Most methodologies recommend PLAIN TEXT to capture requirements, then transfer the text to comments on said entities, attributes and relationships.  Sparx tagged values and CSV import/export make this very convenient. 

Good luck!

Phew. Going directly from requirements to a data model is like having the cake from the flour on the table. Requirements -> Use Cases -> Conecptional Class Model -> Concrete Class Model/Data Model would be the way to go.


In this case, the customer has provided a specification of what data is to be in the database. This task is to simply produce a conceptual data model representation of that specification and the tracing to requirements (specification) is to make sure I have full coverage.

I am curious about "Conceptual Class Model" versus ERD Diagrams in EA. In the past, I have done my data modelling in Class Models but coming back to the tool after about 5 years I discover the ERD Diagram feature. To be honest, I am not quite sold on the ERD Diagram yet. Is there a good resource on the pros and cons of each approach and when/why to choose one over the other?

General Board / Re: Lollipop vs. Interface
« on: August 14, 2018, 10:42:50 pm »
What qwerty said.  It's the UML 2.x standard... not as use friendly as UML 1 in this case, but standards are standards...

Tagged values are an excellent way to add pre, post conditions, descriptions, scenarios etc.; and very easy to export to Excel (csv files).  Sparx documentation explains how to use them.
matrices can be used to list actors by use case.

Typing quickly w/out time to look this up in EA: the UML types (or something like that) menu in EA should let you create tagged value types for the whole project - takes 3 minutes.
I'll look it up tomorrow if  you need more details

Yes Sparx is very well suited for this.
I recommend you read up on TOGAF Enterprise Continuum, TOGAF Enterprise and Strategic levels and/or Zachman Conceptual and Logical levels.  You will know what diagrams you need and how to present them to your customer.


Hello Balloons (hehe)
I hear this kind questions sometimes at work and essentially it can be summarized as "what is a better tool: a screwdriver or a hammer?
There's no way to answer unless you have a very clear of what you want to do with the tool.  I have seen people highly skilled at hammering screws on to walls and others very good at banging on nail heads with a screwdriver.  Yes it can be made to work but it is never a sensible idea.

So what do you need to do and have you decided how you are going to do it?

If you have a well defined system architecture and database schemas and you need to tell users what process to follow, then structured analysis (BPMN, flowcharts, Data Flow Diagrams etc) will be OK.  I don't know Blueworks and Aris but from their Wikipedia page they seem capable to support this.
Aris is used a lot with SAP implementation because regardless of what the consultant tells you, the ERP system and data architecture is pre-defined - it's OK to tweak it a bit using BPMN or the like.

If you need to define an integrated process-data-system architecture and you DON'T have a predefined solution that you can squeeze into your processes, then UML is by far the fastest, safest, most effective and cheapest way to do it.  Defining a data and system architecture based on BPMN or flowchart (structured analysis) opens the door to a world of hurt (which I see regularly in my job).  I have evaluated a few UML tools and Sparks is top for price/performance (and is fully capable to support a large enterprise effort).

The more you understand your needs and approach, the easier is tool selection.     

Good luck!

General Board / Re: Replace element
« on: June 24, 2018, 01:56:05 am »
You should be able to change the instance classifier of UML elements with right-click context menu in diagrams (why you can't do it in project explorer is beyond me).  So your element becomes an instance of some other classifier.
IIRC Ctlr-L works everywhere. But that works only for instances->classifier, not vice versa.


Good tip QWERTY!  Thanks!

General Board / Re: Deployment Diagram questions
« on: June 23, 2018, 01:07:12 pm »
Hello Casey

Deployment diagram is a structural diagram that shows what things you have and how they fit together.  A node is usually a physical thing - a metal box (server, switch, RAID array etc).  Metal boxes don't have behaviors besides maybe beeping and flashing lights.  They just sit there.
Nodes deploy artifacts that are usually binary files (executables, database instances etc.).  The files also pretty much sit there.

The best way to show how the system behaves is to use a behavioral diagram: in your case I suspect an interaction diagram (sequence or communication) would be best.

If you need to show some behavior information, business rule or constraint on the deployment diagram, the best practice is to add a good ol' text note to the diagram.

More info in "The unified modeling language reference manual" (Booch, Jacobson, Rumbaugh), or The elements of UML 2.0 style (Ambler)


General Board / Re: Replace element
« on: June 23, 2018, 12:47:55 pm »
You should be able to change the instance classifier of UML elements with right-click context menu in diagrams (why you can't do it in project explorer is beyond me).  So your element becomes an instance of some other classifier.

Pages: 1 [2] 3 4 ... 8