I attended on the 7th of November a webinar from Sparx Systems about setting up a team modelling environment with Enterprise Architect using a centralised DBMS. This webinar was presented by Scott Hebbard, Communications Manager at Sparx Systems. It involved a step by step demonstration to cover the following topics:
- create a DB schema for the shared Enterprise Architect project with the chosen DBMS product (e.g. MySQL);
- create and configure the ODBC settings to access the database;
- initialise the project with Sparx base or an existing project;
- enable security and define groups, users, and permissions;
- use Enterprise Architect "Model mail" to enable communication throughout the team;
- define project tasks, resources, and manage them via a Gantt diagram;
- manage project literature using the Enterprise Architect Team Review.
This article provides highlights from this presentation and the Q&A session between Sparx and the audience.
Note : the webinar video and Q&A are available from Sparx website: Setting up a Team Modeling Environment webinar (Nov 2013).
- Setting up the database schema and the ODBC connection is fairly straightforward.
- SparxSystems does not have any preferred or recommended DBMS vendor, so users are free to choose from any supported product such as MySQL, SQL Server, Oracle, PostgreSQL, etc.
- Lazy load DB setting should be set to improve efficiency.
- The project must be initialised first either from Enterprise Architect base project or from an existing project (it uses the Project Transfer).
- Once Enterprise Architect security is enabled on the project (requires a key from your Sparx registered users section), users and groups can be created.
- Permissions can be set for users and/or groups e.g. Manage Diagrams to update/create/delete diagrams, Update Element to update/create/delete elements, packages and relationships, Use Version Control to run Check In/Out when the DB project is coupled with a VC repository such as SVN.
- Scott talked about Enterprise Architect mail and project management features, which can be used in such shared DB environment:
- The Mail Model enables all authenticated users to exchange messages ; all these messages are stored within the Enterprise Architect project (inside the database). This feature cannot integrate with a standard mail program.
- A project calendar and gantt view with tasks and resources management is available.
- The Team Review lets the team manage topics, organised within categories, for which a document that's stored within the project can be maintained and submitted for review (approval status are available : awaiting approval, approved, rejected)
- Mail Model, Team Review and Project management features look interesting and useful from a project management and team collaboration perspective.
- An interesting question asked was as whether Enterprise Architect security makes it possible to manage and restrict access to specific packages or parts of the model. Scott advised that this is not possible.
- In my opinion and from past experience, this can be achieved by coupling the project with SVN or any compatible version control repository, and set access permissions on chosen folders or path (e.g. provide full access to groupA on path trunk\models\requirements_model, and read-only access to all other users).
- The other topic raised dealt with hiding parts of the model from specific users ; this is feasible but not straightforward as suggested by Scott: "you cannot hide parts of the model from users. Instead, you could export the relevant parts of the model using XMI and make these available to users that should only see part of the model".
- Another question asked was about Enterprise Architect compatiblity with Active Directory (directory service implemented by Microsoft for Windows domain networks)
- Sparx answer : " it is possible to import user ID's from Windows Active Directory into Enterprise Architect for the purpose of managing Role Based Security. This allows you to reference user ID's that are listed in Active Directory. It is important to note that for each Windows User ID, Enterprise Architect automatically generates a random password, rather than using the Domain password. However, if necessary you can assign a new password to any imported user ID."
- For more information : Import User IDs from Active Directory
- Finally Scott advised that Enterprise Architect does not authenticate directly against the LDAP group. However, you can import your Windows user IDs from Windows Active Directory and use those as the security user IDs with Windows Authentication. There is a check box on the Security Users dialog to "Accept Windows Authentication".