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.
Context
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.
Conclusion
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.