agile documentation with confluence and sparx enterprise architect
DESCRIPTION
A presentation showing how one can create high quality agile software architecture documentation by creating a mashup of Confluence and the Sparx Enterprise Architect UML tool. *Update:* The source code for the Sparx EA diagram export tool is now available on github: https://github.com/perspilling/eatoolsTRANSCRIPT
Agile architecture documentation using Confluence and Sparx Enterprise Architect
Per Spilling, ObjectwareJavaZone 2009
Agenda
• Why mashup of wiki & UML tool
• How
• Tips for architecture documentation in Confluence
Typical problems with traditional documentation
Doc 1.0
App 1.0 App 2.0
Foo Bar Foo Bar
Better way
UML tool
wiki
UML model Repository
Documentation Repository
UML tool
wiki
Sparx Enterprise Architect Atlassian Confluence
The chosen tools
Exporting from EA
hmm...
EARoot/EA1/EA11.png
The solution: Generate diagrams via the EA API
Running the eatools program
The names of the generated files correspond with the model
model/domain_model/domain_model.png
The result: “Live” UML diagrams in wiki
Confluence tips & tricks
Examples of useful plugins
• Reporting Plugin
• Linking Plugin
• Copy Space
• Label Tools
• Metadata Plugin 2
• Navigation Plugin
• ImageMap Plugin
• Jira Plugin
• Graphviz Plugin
• Chart plugin
Copy space plugin
Versioning
Dynamic table of contents
.. do this
Update the page layout (Confluence admin). See recipe: http://confluence.atlassian.com/display/DOC/Adding+a+Navigation+Sidebar
Confluence page templates
Dictionary term template
Navigation Plugin
Dictionary term template
Metadata Plugin 2
Dictionary term template
Label Tools plugin
Dictionary term template
Using the template
Creating reports using metadata
Metadata Plugin 2: {metadata-report}
Add-page “buttons”
Linking Plugin
Specify which template to use
Use labels to specify relationships
depends_on_bird-app-003
depends_on_bird-app-003
Project reports with Chart & Metadata Plugin
{chart:type=bar|width=500|height=200|orientation=horizontal}|| || Tasks |||| Ikke påbegynt | {metadata-matches:Status|root=@parent|pages=@descendents|label=pcom_oppgave}Ikke påbegynt{metadata-matches} ||| Påbegynt | {metadata-matches:Status|root=@parent|pages=@descendents|label=pcom_oppgave}Påbegynt{metadata-matches} ||| Ferdig | {metadata-matches:Status|root=@parent|pages=@descendents|label=pcom_oppgave}Ferdig{metadata-matches} |{chart}
Graphviz plugin - ex: {spacegraph}
Thank you
Java program for generating diagrams will be made available for downloading after the conference