Top Community Contributors
London User Group; Call for Speakers
Written by DT_Sam
Introducing RepoDoc, a document generator for Enterprise Architect
Written by Archimetes
Written by philchudley
SysML 1.4 reference card
Written by Guillaume
Enterprise Architect identified for Agile Development and DevOps: SD Times In-depth Feature
Written by sparxsystems
Panorama 360 Insurance and Wealth Management Enterprise Business Framework is available on Amazon
Written by Pierre Gagne
Enterprise Architect User Group: London 2017
Written by DT_Sam
We are Profiling EA Users
Written by sparxsystems
Guillaume FinanceVISEO (Modelling and Sparx EA Consultant & trainer)
As part of an EA add'in implementation, I had to import all Enterprise Architect table and column names in enumeration classes.
Having access to a database that stores a Sparx Systems Enterprise Architect project (e.g. MySQL, SQL Server, or even an EAP file via ODBC), there was a number of ways to populate enumeration classes with literal values using a small application in C# or another programming language. As Enterprise Architect 12 includes the Database Builder, an integrated tool to work on DB schemas, I took the opportunity to use it. Compared with the result of a C# application, this feature would let me capture the enumeration classes in my EA modelling project in addition to generating C# enumeration classes in my add'in solution.
This article only covers a small portion of Sparx EA Database Builder features: it illustrates how I managed to import Enterprise Architect table names as literal values in the EADBTableType enumeration class, and their column names as literal values in separate enumeration classes e.g. t_diagramColumnType, t_objectColumnType...
Import all tables in Enterprise Architect
- Open the menu Tools > Database Builder
- Right click and select New Data Model:
- Select the DBMS used, e.g. MySQL and confirm Ok
- Right click on MySQL > Load
- Right click on Connections > Add new DB connection
- Open the new DB connection and select ODBC based datatype
- Select an existing ODBC DSN (or create one) to the DB that stores the Enterprise Architect project where the schema needs to be imported
- Right click on MySQL > Import DB Schema from ODBC
- Click on Import and select all tables:
- All tables, columns, primary keys, foreign keys, indexes, etc. have been imported.
- Go back to the Database builder and open the Tables tabs: all tables are displayed. Selecting one of the tables provides access to all columns' details.
Generate the enumeration classes
The Database Builder let me achieved what I needed. Having all tables and columns stored in a single package, I wrote a simple script to perform the following:
- create an enumeration class named EADBTableType
- for each table:
- create a literal value with the table name in EADBTableType e.g. t_object
- create an enumeration class named after the table based on the following format: <table name>ColumnType e.g. t_attributeColumnType
- for each column in the table:
- create a literal value with the column name in the current table's enumeration class (e.g. Classifier in t_attributeColumnType)
Having executed this script, the following enumeration classes have been generated:
Transform enumeration classes to dotNet C# classes
The MDA model transformation can be used to generate C# enumeration classes for the above enums:
- Right click on the package that contains all enums > Advanced > Transform Package
- Select C# as the target, select the package, and click on Do Transform
- Having all C# enumeration classes created, and making sure the namespace is correct (e.g. create packages myaddin.common.enums), the code can be generated: right click on package > Code Engineering > Generate Source Code.
- The generated code can be used in Visual Studio IDE:
The full agenda for the next EAUG in Paris is available.
Register now from the EventBrite website (ticket: 75€).
EA User Group France 2015 Agenda
Lean Enterprise Architecture
|10:40||Pascal Roques, Dominique Travel
MBSE avec SysML : retours du terrain
Aligning international standards TOGAF® ADM and ArchiMate® in Sparx EA:
A Case Study from the Automotive Industry
Documentation Agile avec eaDocX Collaboration
|14:45||Albert Janssens & Michel Gibelli
Mise en pratique de l'Ingénierie Dirigée par les Modèles à l’aide d'EA et des technologies MDG
Information Modelling to Canonical Messaging made easy
Nos convictions en terme d'architecture d'entreprise.
Retour d'expérience de la mise en oeuvre d'EA chez plusieurs clients (PMU, Orange)
The first EA User Group in Paris (France) will take place on the 17th of September 2015.
The entry ticket costs 75€ and will give you access to talks on Enterprise Architecture with TOGAF and ArchiMate, SysML, model transformation to XSD, the Schema Composer, and eaDocX collaboration edition. Most presentations are based on the speaker's experience with a client's project.
Call for Speakers
EAUG, France (Paris), 17th September 2015
Presentation opportunities are available for you to come and share your EA user story with the rest of the EA community at the first French Enterprise Architect User Group event in Paris, France on September 17th 2015.
We are interested in just about everything you do with Enterprise Architect, from the organisation of your model to enhancements you have made using MDG or the automation API, or even just a project with which you are especially happy. That said, we are not just after the sunshine stories and would be interested in hearing about any experiences learned the hard way. Presentations of an obvious or purely commercial nature will not be accepted.
Some example topics are:
- Enterprise architecture (TOGAF, Archimate, DoDAF, UPDM)
- Business Architecture, Capability Mapping, Process Modelling
- Systems Engineering
- Business Analysis, Requirements Management
- Data modelling
- Code generation, MDA
- EA add’ins/automation, scripting
- Document generation
- Tool adoption/deployment
- MDG Technologies/UML profiles
- Model collaboration and management
- Test management
Appel à Orateur
EAUG, France (Paris), 17 Septembre 2015
Vous utilisez Enterprise Architect et vous souhaitez partager votre savoir-faire avec la communauté francophone? Nous vous invitons à partager et présenter votre expérience et expertise au premier Enterprise Architect User Group (EAUG) en France qui se tiendra à Paris le 17 Septembre 2015.
Nous recherchons des orateurs de divers secteurs d’activités, travaillant sur tout type de modèle :
- Architecture d’entreprise (TOGAF, Archimate, DoDAF, UPDM)
- Modélisation de systèmes d’information
- Modélisation de processus métier (BPMN)
- Analyse et conception d’applications informatiques
- Modélisation de données
- Ingénierie système (SysML)
- Modélisation de systèmes embarqués…
Ou ayant des expériences concernant la mise en œuvre de l’outil :
- Génération de code, MDA
- Interfaçage avec d’autres outils
- Développement de MDG Technologies
- Développement d’addins et de scripts
- Génération de documents…
Nous recherchons en priorité des retours d’expérience sur l’utilisation d’Enterprise Architect au sein d’un projet. A noter que toute présentation purement commerciale ne sera pas retenue.
Enterprise Architect User Group (EAUG) - France, Sept. 2015
VISEO will host the first EAUG in France on Thursday, September 17th 2015. This Enterprise Architect User Group will be held in Paris at "27 quai Le Gallo - Boulogne-Billancourt" (underground and tram stations are located nearby).
This first edition will introduce talks and presentations in French on a wide array of topics including Enterprise Architecture, modelling IT and software applications, generating and validating documentation from the models, and Systems Engineering (MBSE).
Enterprise Architect add'ins will be shown in a dedicated area, where users and experts will be able to share their opinions and experiences on notations, languages, methodologies around a coffee, tea or other refreshment.
The full agenda is yet to be defined, with a priority on sharing project experiences in using Sparx Enterprise Architect. Hence this User Group is opened to any company, expert, or consultant who would like to share and talk about their experience with the Enterprise Architect user community.
VISEO operates as Sparx Systems main partner in France and has a member in the EAUG Steering Group (www.eausergroup.com).
VISEO organise le 17 Septembre 2015 le premier EAUG en France, User Group concernant l’outil de modélisation Enterprise Architect de Sparx Systems.
Cette première édition comportera essentiellement des présentations en français et sera ouverte à des sujets aussi variés que l’architecture d’entreprise, la modélisation d’applications informatiques, l’ingénierie système à l’aide d’Enterprise Architect, ou encore à la génération et à la validation de documents à partir des modèles.
Des présentations d’add-ins sont prévues dans un espace dédié où nous pourrons également partager nos expériences autour d’un verre ou d’une tasse de café et confronter nos points de vue sur les notations, les méthodologies ou autres sujets d’intérêt. Des experts de l’outil et des méthodologies seront présents afin d'échanger notamment sur les bonnes pratiques.
Le programme détaillé n’est pas encore arrêté et nous souhaitons privilégier les retours d'expérience issus de projets plutôt que les présentations théoriques. C’est pourquoi nous demandons à toutes les entreprises intéressées souhaitant se joindre à la communauté francophone autour d’Enterprise Architect de nous proposer leurs sujets de présentation.
VISEO est partenaire de Sparx Systems pour la France et membre du comité directeur de l’EAUG (eausergroup.com).
Enterprise Architect 12 is due to be released this year, with the RC2 currently available to download and test. Amongst its enhancements, I came across the new User Interface Wireframing support.
Wireframing lets you define a visual representation of a screen with its interface elements such as labels, fields, and buttons. Having defined several screens, a navigation model can built e.g. to specify the navigation from the login screen to the account summary screen via a “submit” user action.
Wireframing is intended to define User Interface diagrams that focus on functionality and help to obtain business validation upfront. Wireframing do not address rendering styles, colours, or graphics.
Enterprise Architect 12 Wireframing supports several mobile devices, such as iPhone smartphones, iPad tablets, and Android devices. Web site design is also supported.
Up to version 12, Enterprise Architect UI diagram involves an XP windows style which can be useful to provide UI illustrations. It is very good news that the next version of Enterprise Architect supports User Interface Models for mobile and web applications.
The screenshot below shows the available Wireframing diagram types:
Note: “XP style” UI diagrams are still available from Extended > User Interface diagram type.
Below is an example of the Apple wireframing diagram toolbox, including most iPhone and iPad models (see screen types), as well as UI controls to create labels, fields, checkboxes, keyboard, switch, tab bar, etc.
The toolbox also includes Patterns to create screens with a predefined set of controls, such as the one illustrated below for an iPhone 5s:
When creating a new screen from the toolbox, Enterprise Architect lets you choose between the portrait and landscape mode, as illustrated below with an Android smartphone:
So, why should you use Enterprise Architect to define your web or mobile app screens where there are plenty of UI design and prototyping tools out there? The answer is traceability; Enterprise Architect Wireframing diagrams let you build your User Interface model alongside requirements, analysis, design, data and other models. Associations can be created and maintained between UI widgets and requirements, use cases, classes, DB table columns, etc.
A mobile application for an online retailer has been used to produce the examples provided in this article, based on the following Enterprise Architect project structure.
The following use case diagram shows traceability between the analysis and requirements models (a use case realizes a requirement).
The following BPMN2.0 diagram has been created under the “Place an order” use case to specify its scenario. Each step (actor or system) is defined as an activity, some of which are linked to an active screen from the UI model.
These links make it possible to looks for the use cases where a screen is used, or to carry an impact analysis on the UI model when making modifications in a use case.
The following diagram illustrates the links from a wireframing UI screen to the analysis and implementation models.
In this example, the screen:
This traceability enables a team to verify the impact in the design model when altering a business class, or a list of screen actions invoking a specific UI service implemented in a Java interface.
Wireframing user interface diagrams can be used to specify navigation between the screens of an application or website.
The wireframing user interface diagrams delivered in Sparx Systems Enterprise Architect 12 are very easy to use and fulfil most UI specification needs for a web site or mobile application.
Wireframing can be applied before the implementation stage to obtain validation from the stakeholders. It can also be used to define the User Interface model and traceability links with other modelling elements, enabling the Project Manager and the entire team to control the impact between UI, business, functional, and design aspects of the project.
Enterprise Architect includes the package baseline feature that lets you create snapshots - backups of your model within the project (data is stored in the project's database). Once the baseline feature is used, it can be cumbersome to find the packages that have baselines. Such information can be required e.g. to delete baselines that are no longer relevant in order to free some space, or to find the most recent backup from a model's parent package.
This article provides a user defined search, FindPackageBaselines, that lets you search through all existing baselines within the project, and display the associated package in the Project Browser.
Find Package Baselines Enterprise Archirect user defined search
I created the following search module, named FindPackageBaselines (SQL Editor type), with the following content:
SELECT o.ea_guid AS CLASSGUID, o.Object_Type AS CLASSTYPE, d.DocName, d.Notes, d.Version
FROM t_document d left join t_object o on d.ElementID = o.ea_guid
WHERE d.docType = 'Baseline' AND and DocName LIKE '*<Search Term>*'
To create this search module within your Enterprise Architect client:
This user defined search looks for the existing project's baselines. If a search criteria is provided via the "Search Term" field, the search will restrict results on the packages which name includes the provided term.
Below is an example with the search criteria "component": only baselines of the "Component Model" package are displayed in the results.
When the search term is empty, all existing baselines are displayed.
Notes: project root's baselines are displayed with a different icon, as illustrated above with "Model".
eaDocX's eaXL module makes it possible to import and export information between Excel and Sparx Enterprise Architect, e.g. requirements, classes (including attributes or methods), use cases, etc.
This article provides a feedback on a real-life experience where eaXL has been used for a request for proposal (RFP): more than a hundred requirements have been imported into Enterprise Architect in order to carry the analysis and build the response with the aid and support of the model-driven approach. Steps involved to import the customer's requirements are covered in this article.
Note: eaXL module for Excel support requires eaDocX Corporate edition.
I recently worked on an RFP that included more than a hundred requirements organised by categories. Details of each requirement (description, reference, category) were provided in an Excel file that had to be completed and returned with our response and proposals. Being given the task to analyse each requirement and assess the feasibility and complexity, I chose to build the response and capture all the elements within an Enterprise Architect modelling project.
A response to an RFP usually requires to work on a wide array of topics and queries. Model-driven can ease up this task by gathering and structuring all the elements created for this purpose. Collaborative access to the modelling project also enables several peers to share the tasks.
Once a new Enterprise Architect project had been set up, the client's requirements were imported via the following the process:
Summary of the main steps from the above BPMN2 diagram:
- Step A: prior to run an import from Excel with eaDocX's eaXL, an Excel file needs to be generated. To do so, eaXL export must be run with at least a single blank requirement from Enterprise Architect. This first step involves creating a couple of blank requirements in the model.
- Step B: run an eaXL export of the blank requirements from Enterprise Architect into a generated Excel file.
- Step C: populate the Excel file with the requirements provided by the client.
- Step D: import the client's requirements from Excel to Enterprise Architect using eaXL.
Step A: create blank requirements in the Enterprise Architect model
A1. Once the Enterprise Architect project has been initialised, blank requirements are created in the requirements model (eaXL needs to have at least one requirement to export in order to generate an Excel file).
A2. Tagged values are added to the blank requirements so that additional information provided by the client can be entered in the Excel spreadsheet, e.g. Feasible (true/false), Priority, and Category
Step B: export the blank requirements from the Enteprise Architect project to Excel with eaXL
B1. In order to generate an Excel file that's compatible with eaXL, an export is run from the Enterprise Architect requirements model to Excel via a right click on the source package > Extensions > eaDocX > Open in Excel.
- Result: blank requirements have been exported into a new Excel file.
B2. Additional properties are enabled via the eaXL columns tab: Name, Alias, Description, and the pre defined tagged values (Feasible, Priority, and Category).
B3. The Excel content is updated by clicking on the button "Export data from EA to current worksheet".
- Result: the Excel file has been updated with the additional properties.
Step C: populate the Excel eaXL template file with the client's requirements
C1. All the client's requirements must be copied from the original file to the eaXL generated Excel file, under a separate worksheet.
C2. In the current scenario, the available information is organised under the following Excel columns:
- Excel column B - Ref (reference)
- Excel column C - Category
- Excel column D - Description (full requirement's text)
- Excel column E - Title: some of the requirements contain a very long body description, hence their title has been set using an Excel function (STTX) to truncate the description to the first 200 characters
C3. Using references between cells, the first worksheet has been populated with details according to the eaXL columns (worksheet no 1 is used by eaXL import/export).
- Excel column D - Name : formula = "=Feuil2!E2" (Title column from worksheet 2)
- Excel column E - Alias : formula = "=Feuil2!B2" (Ref column from worksheet 2)
- Excel column F - Description : formula = "=Feuil2!D2" (Description column from worksheet 2)
- Excel column G - TV Category : formula = "=Feuil2!C2" (Category column from worksheet 2)
- Excel column H - TV Priority : value = "M" (default value = Must)
- Excel column I - TV Feasible : value = "1" (default value = true)
- Excel column C - ElementType : value = "Requirement" (provides eaXL with the element type to import)
Step D: import the client's requirements from Excel to the Enterprise Architect project with eaXL
D1. In Enterprise Architect eaDocX/eaXL is used to run a comparison with the model:
D2. eaXL import from Excel to Enterprise Architect is run via the action "Import contents of worksheet into EA".
- Result: requirements have been imported in the model with the title, description and tagged values for the feasibility, priority, and category.
Tagged values from an imported requirement are illustrated below:
D3. At this stage, blank requirements created in step A are deleted.
D4. Using a custom VB script in Enterprise Architect, each requirement is moved into a sub package, named after the Category Tagged Value. This is intended to simplify the organisation of requirements within the model.
- Result: requirements are grouped by category in the project tree.
Next steps: building the response and proposal, generate the Excel deliverable
Having all the RFP requirements in the modelling project, the analysis and elaboration of the answer can be carried out:
- Creating "response" stereotyped requirements and Feature elements. Associate these elements to the client's requirements.
- Creating UML/BPMN diagrams to suggest an architecture, illustrate the solution or an option to one or several requirements.
- Assessing and updating the Feasibility tagged value for each requirement.
- Exporting results to Excel with eaXL.
- Generate the response and answser to the RFP in the Word forma using eaDocX.
Enterprise Architect made it possible to efficiently carry out the analysis of a long list of requirements by building up the models with the solution's elements, links between requirements of similar purpose, and realisation links between the RFP requirements and solution elements. Once the analysis had been completed, generating the Excel deliverable for the client only required a few minutes.
This Excel file was ready to be sent alongside a Word document generated with eaDocX, including a relationships matrix between requirements and system features to implement.
In case the RFP process has been successful, a model-driven approach provides the advantage of starting the project with an existing Enterprise Architect project.
The Excel import/export feature for Enterprise Architect available with eaDocX (eaXL module) can be used for many other purposes: importing requirements and use cases in the project, synchronise requirements with other tools via the Excel format, import business classes from Excel, etc.
Last May I went to the European EA User Group in the UK (Maidenhead) where the Enterprise Architect community gathered. Prior to delivering my presentation on the alternatives to set up a shared Enterprise Architect project, I attended several presentations, including the following ones that are covered in this article:
- Pragmatic agile model driven development using smart use cases by Sander Hoogendoorn (Capgemini, NL)
- Enterprise Architect Version 11 Cloud Services, OSLC and RAS by Phil Chudley (Dunstan Thomas, UK)
Pragmatic agile model driven development using smart use cases
Sander Hoogendoorn shared the use of smart use cases, coupled with Enterprise Architect and a custom-made code generation tool, Tobago MDA.
Smart Use Cases
Sander and his team at Capgemini developed their own agile process, called SMART, which involves the use of smart use cases to capture and manage functional requirements, as explained hereafter. Note: the SMART agile process has been applied over the past 10 years; it is based on agile and iterative best practices.
Smart use cases match « sea » and « fish » granularity use cases according to the following levels defined by Alistair Cockburn in his book "Writing Effective Use Cases":
Where traditional use case modeling can lead to several pages of documentation, including triggers, pre/post conditions, actors, main/alternative scenarios, and so on, smart use cases maintain a visual deliverable via use case diagrams as each use case is detailed by several smaller use cases connected with “extends” and “includes” associations (smart use cases can be reused amongst use cases). On average, a “standard” use case is associated with 20 smart use cases.
Stereotypes have been created to choose the type of a smart use case from a list of identified patterns: select, search, manage, file import or export, validation service, etc. Smart use cases also serve estimation purposes. An estimation value has been defined on the smart use case stereotypes to provide a default value (from 1 to 10 points) according to the selected type (e.g. 2 points for a “select” smart use case). This enables accessing all the information from our models and diagrams as illustrated below:
Here is another example with UI smart use cases in yellow and a Service smart use case in red, alongside their respective estimation points.
Project Management Dashboard
In order to manage the project according to the smart use cases defined in Enterprise Architect, www.speedbird9.com website has been created by Sander and his team. This site makes it possible to import/export smart use cases with Enterprise Architect via XMI or CSV files for planning and progress management.
Here is an illustration where smart use cases have been imported from Enterprise Architect:
Tobago MDA code generation tool
Sander released with his team Tobago MDA, a code generation tool built for smart use cases defined in Enterprise Architect. This tool generates source code based on templates, making it possible to define the content required by any programming language (e.g. dotNet C#, Java, PHP…). Tobago MDA is shipped with pre-defined templates used by Capgemini for different types of projects including Java, .Net, PowerBuilder (Sybase – SAP), and BI. Tobago MDA has been used in dotNet projects to produce 100% of the code for average use cases.
The Tobago templates are easy to understand text files. Syntax mechanisms built for these templates include tags and methods e.g. to loop on a class attributes, test an empty value, etc. Tobago MDA can access the Enterprise Architect models using an XML file created via an XMI export, or by connecting directly to an Enterprise Architect project without having to open Enterprise Architect.
The presentation ended with a demonstration; Sander created in the Enterprise Architect project a “search” smart use case to add a new Search feature for an existing dotNet web application. Once the model was updated, Tobago was launched to generate new C# files. Then Visual Studio was used to re-build the application. Finally the app was run to show that a new search feature was available, with criteria matching the attributes entered in the smart use case.
Tobago MDA is available from the following site: www.smartusecase.com.
New Enterprise Architect 11 features: Cloud Services, RAS, OSLC
Phil Chudley from Dunstan Thomas gave us an efficient speech and demo based on his in-depth trial of new Enterprise Architect 11 features: Cloud Services, OSLC, and Reusable Asset Service.
Cloud Services makes it possible for Enterprise Architect 11 users to access Enterprise Architect projects from anywhere via the http/https protocols. As a result an Enterprise Architect project can be either accessed from the LAN or from the Internet. Cloud services provide short response times to suit slow remote access.
Cloud Services are available to download for free from Sparx Systems website. It can be installed as a Windows Service or integrated with an existing IIS web server. Installation includes a management client software. Setting up a user access to a project is very easy; only the url and credentials are required (compared with a project hosted on a local database requiring an ODBC connector driver and the connection string to the DB).
Note: this service doesn’t work with EAP files i.e. a DBMS must be used.
Note: Sparx Cloud Services mustn’t be confused with hosting services in the Cloud, such as a MS Azure SQL Database available online, since they aim at providing access to locally hosted Enterprise Architect projects from the Internet.
Once installed, the management software can be used to expose to the outside world one or several Enterprise Architect projects, as per the provided configuration including: http or https protocol, authentication mode, read-only access enabled/disabled, and setting any limitation on the max number of concurrent users. This software also displays the currently opened projects via the Cloud Services.
http connection to Enterprise Architect models has enabled Sparx Systems to provide additional features: OSLC and RAS.
OSLC: Open Services for Lifecycle Collaboration
The Open Services for Lifecycle Collaboration (OSLC) is an open community that has defined a set of specifications to enable integration of software development, e.g. to let Application Life-cycle Management (ALM) and Product Life-cycle Management (PLM) software communicate and exchange information.
Enterprise Architect 11 currently supports OSLC to access and manage requirements only. Requirements can be accessed with an XML content through the use of urls from a browser. A client application can be implemented to access web services from Sparx Enterprise Architect in order to run queries or create new requirements.
Examples: Query -> http://server-name:port/repository-name/oslc/qc/?oslc.where=ss:type=“Functional”, Create -> http://server-name:port/repository-name/oslc/cf/
Note: it is currently possible to test OSLC queries from online SparxSystems Enterprise Architect projects, as illustrated below: http://sparxcloud.co.uk/Example/oslc/qc/
With the following url, results are limited to « Chuck Wilson » author: http://sparxcloud.co.uk/Example/oslc/qc/?oslc.where=dcterms:creator=%22Chuck%20Wilson%22
RAS: Sparx Systems Reusable Asset Service
Reusable Asset Service or RAS is intended to let various teams integrate in their respective Enterprise Architect projects distributed and reusable models/resources, stored in a central Enterprise Architect project, acting as a library or framework. Users may update the reusable assets and resources from Enterprise Architect providing they have a write access.
To use RAS, an Enterprise Architect project must be set up in a central database (e.g. MySQL, SQL Server…), with access via http using Sparx Cloud Services, where reusable models will be created and published. Users can access its content using the RAS feature from another Enterprise Architect project.
Provided a user has a write access, a package that for instance contain a class model for a Bookstore can be added to the shared and reusable project.
Once this is done, other teams of users can open the RAS model and import the published package to use it. Phil pointed out during his demo that management of dependencies between packages in RAS should be improved.
It seems to me that this feature could especially be useful and applied for a project Framework, or to let standards organizations publish and share their models for anyone to use in their Enterprise Architect project.
This year’s EA User Group has really been interesting thanks to the content delivered during the presentations. It has also been an opportunity to meet and exchange with other Enterprise Architect users and experts.
Official EA User Group website: www.eausergroup.com.
Early this month, I published a script to sort elements from a selected package by the alias name. This article provides another project browser script that finds and selects the classifier for an instance or a class attribute, or the property type for a SysML port or part.
Sparx Enterprise Architect makes it possible to find from a diagram an instance classifier with a right click > Find > Locate Classifier in Project Browser, or a SysML port/part's classifier with a right click > Find > Locate Property Type in Project Browser.
As there isn't any similar feature from the project browser, I wrote a script to achieve it, whilst extending it to a class attribute.
Enterprise Architect Project Browser scripts
Enterprise Architect lets you create project browser scripts. Once created in your project, these are available via a right click on a selected package from the browser, as illustrated below:
Find the classifier of an instance, port, part, or attribute with FindClassifier project browser script
To add the FindClassifier Project Browser script to your modelling project:
Step 1: open the scripting view using the Enterprise Architect menu Tools > Scripting.
Step 2: click on "New Project Browser Group" to store all user-defined scripts, e.g. Project Browser scripts.
Step 3: click on "New script > New VBScript" to define the "Find Classifier" script, e.g. FindClassifier.
Step 4: open the script and copy/paste the content from the following file: download FindClassifier VBScript text file.
Step 5: save the script (Ctrl-S).
Step 6: test the FindClassifier script with a right click on a selected object from the Project Browser to find its classifier, and select Scripts > FindClassifier
Result: the instance's class has been selected from the Project Browser as illustrated below.
Here is another example of using this script with a class attribute: