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] 5 6 ... 28
methinks if it's an object, then it's an object - a class instantiation.  What other levels of abstractions could be possible?  Higher level = a class.  Lower level = an artifact (code fragment, bunch of bits on a had disk somewhere...).  Not a lot of wiggle room.

Bugs and Issues / Strange bug in diagram legend EA v. 1310
« on: January 10, 2022, 09:18:53 pm »
I am using v13 (eagerly awaiting to update to v16) and I have strange behaviour on diagram legends.  I'd like to know if anyone knows a workaround?
In sequence diagrams I need to color code messages to highlight some business semantics.  I use legend-connectors-filter-tagged values with preset codes in a custom tagged value to determine the message color.
Every time I close the diagram and reopen it, the color coding disappears and I have to reopen the legend dialog to set again the tagged value that determines color.  The legend still shows 'apply auto color', 'apply line' etc. but the filter is not pointing to the custom tagged value any more.  Does anyone have a workaround?  Thanks!!

Suggestions and Requests / Re: v16β - Ellipsis for shortened Notes
« on: January 10, 2022, 09:11:05 pm »
hhhmmmm... why not use Notes for the short description and tagged values for the long semantic description?

Automation Interface, Add-Ins and Tools / Re: Office MDG Beta
« on: January 10, 2022, 02:04:55 am »
I use the Office MDG regularly only because I don't want to invest time to learn Sparx API and assorted VBA script or whatever devilry is needed to script.  I have about 1 year experience with it.  You can search my posts about it in this forum.

It is a nasty, complicated and poorly documented piece of software.  Never got all features working, even after extensive googling and very good response from Sparx support.

I use Geert's EA importer whenever possible.  It supports round tripping.

You may think about hiring Geert to extend the importer to do what you need.  Just sayin'.

SQLite Studio is free I think and very good.
DBeaver works fine with SQLite.  That's what I use.
SQLite has a gajillion open source front ends and IDEs (SQLite is the most used DBMS in the world: your phone and computer have several instances of it running right now): you can google SQLite frontend or SQLite IDE.  Some are browser-based, others are clients

I do the same as Paolo - a real physical reverse engineering schema model and a clone (I use logical level for the clone since there is no benefit to include the physical detail).
For views that don't have keys or a real relationship to the tables, I use dependencies.  It's debatable if it's OK to show a dependency between view and queried tables in a physical data model, but it's definitely no issue in a logical model.

Then, I represent the logic transformations (usually they are external scripts that read/write to the database, like Python, .net etc.) with procedures and functions (theoretically I could use artifacts but never felt the need).  These are not real but again, OK at logical level.  I always postfix the name of these non-physical objects to differentiate them from the actual database object: even at logical level, I use a postfix to indicate that the object is just a convenient representation.  I also add some explanation in the comment fields.

I use associations to tables and views show which objects are read/written by the procedures etc.

When forward engineering to physical level, it's up to the data engineer to decide what to do with the prefixed object (implement outside the database schema, implement as a new procedure, as a lookup table, trigger etc.).  Works well for me, it's clean, maintainable/scalable etc.

That makes sense QWERTY thanks. 

I have a model query that lists all messages in a sequence diagram and their message number.
The diagram has new message groups, so the message numbers are: 1.0 1.1 1.2 2.0 2.1 2.2 2.3 2.4 3.0  etc etc

I query t_connector.SeqNo and the result is: 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 etc

New message groups are ignored.  Everything else is OK.  Any idea where I can get the message numbers the way they are displayed in the diagram?  EA 13.10  Thanks!!!

can the beta version be installed an uninstalled along the current office Integration MDG without issues?  Also how do we submit feedback and suggestions about the MDG - thanks!!

I held off upgrading from my version 1310 because I wanted to avoid the trap of "where did my menu go?" and did not see much benefit overall.  But I'm very eager to upgrade to EA 16 with SQLite repository.

However I just found out that my 1310 has a bug for "Import schema from ODBC" for PostgreSQL (I'm reverse engineering from v. 12.02).  The trace log shows ERROR(ERROR) 42702 'column reference "oid" is ambiguous' at this stage: 

Code: [Select]
[53.579]PQsendQuery: 09C69420 'BEGIN;declare "SQL_CUR09FBCC88" cursor with hold for SELECT
    n.nspname                                       AS ObjectSchema,    --1
    c.relname                                       AS ObjectName,      --2
WHEN c.relkind = 'r' THEN 'TABLE'
        WHEN c.relkind = 'v' THEN 'VIEW'
        WHEN c.relkind = 'S' THEN 'SEQUENCE'
    END                                             AS ObjectType,     --3
    COALESCE(OBJ_DESCRIPTION(c.oid),'')             AS Remarks,     --4
    COALESCE('TABLESPACE=' || t.spcname || ';','')  AS Properties     --5
    (SELECT *, oid
    FROM pg_class
    WHERE relkind IN ('r','v')
    ) c   
    (SELECT *, oid
    FROM    pg_namespace
    WHERE nspname IN ('schema_names') --WHERE   nspname NOT IN ('other_schema_names')
    ) n
    ON  c.relnamespace = n.oid
    pg_tablespace t
    c.reltablespace = t.oid
Order By n.nspname, c.relkind, c.relname;fetch 100 in "SQL_CUR09FBCC88"'
[53.822] ok: - 'C' - BEGIN
[53.822] ERROR(ERROR) 42702 'column reference "oid" is ambiguous'
[53.823]PQsendQuery: 09C69420 'ROLLBACK'

I don't have access to EA16 since my registration expired: can anyone confirm if EA16 has no issues reverse engineering from PostgreSQL?  Thanks!!!!

General Board / Re: Indexes and constraints
« on: October 27, 2021, 10:21:55 pm »
QWERTY's book has the answers to questions you don't even know you need to know.  A must if you are querying the repository.  I cannot recommend it enough!  (Saved my bacon a few times)

General Board / Re: EA 16
« on: October 04, 2021, 01:06:31 pm »
Great, thanks very much Wivel!

General Board / Re: EA 16
« on: October 03, 2021, 09:03:41 pm »
WHAT WHAT WHAT?  EA 16 will support SQLite for its repository?  If so I'm buying!!!!  TAKE MY MONEY!!

I requested SQlite a few times via email and on this forum... did not watch the announcement but can anyone confirm?  Will the repository support SQLite in-memory database so that very large models can be imported very quickly?

My 2cents,

Moving to Sqlite for local databases is going to be a real game changer. SQLite has database diff and merge tooling out of the box, there is even some git support for it somewhere. Sharing models and settings alongside source code, branching and merging models and settings across projects for small teams. All sorts of fun. As SQLite tooling is available on pretty much every platform, copies of model databases can potentially be used as a source artifacts or configuration artifacts by downstream tools, without the need to spin up an EA instance or export any XML...

It also looks like the desktop is including more Javascript driven UI components... Will we see a true cross platform EA? An Electron based Desktop version that uses Prolaborate UI technology?

I may be wrong but I suspect that you are using the use case scenario as a stand-in for sequence diagrams.
You can get the same result more easily by limiting the text description of the use case to just the end result the Actor wants, without reference to the steps to achieve it.  Then append a sequence diagram to the use case - sequence diagrams are perfect for describing steps, special logic, sub (scenarios (fragments)) etc.  Same result, but easier, cleaner and more extensible to changes, new requirements etc!

Uml Process / Re: Relating Table Columns to Associations
« on: August 28, 2021, 01:22:56 pm »
Thanks very much. I have found a way to model exactly what I want, although it's not straightforward. I discovered that I can start a realisation connector from an association connector and target a table column, then reverse the direction of that connector so the column now realises the association. Here is an example diagram of what I want:

On the diagram, that is exactly what I want, but my remaining problem is how to get that model as text in a document with the description of each realisation e.g.
"Column CLUB_MEMBER.MEMBER_ID realises attribute Club Member (Member ID)
Column CLUB_MEMBER.CLUB_ID realises association Club Member member of Club
I can see the realisation connectors in t_connector and I know there is a proxy connector object involved in the linkages now, and that t_xref might have some part to play, but I can't see how to join t_connector, t_object and t_attribute to get the above text for my documentation. Can anyone help with the SQL?

The IDEA plugin provides an excellent GUI to do this (it's free, in the Sparx plugin web page).  I use Geert's EA mapping because I don't need the diagrams, it's excellent!

Pages: 1 2 3 [4] 5 6 ... 28