Showing posts with label Modeling. Show all posts
Showing posts with label Modeling. Show all posts

18 February 2013

pragmatic Enterprise-Architect(™) template for arc42

I just released a slender version of the arc42 template in Enterprise-Architect(™) format.

Deliberately the template contains only four packages, although the full arc42 template contains several others:

SHORT arc42 EA template.jpg


Use it to model (construct, design or document) all structural aspects of your system, and use any other (text-oriented) tool for non-graphical information.

As with all arc42 artifacts, the template is absolutely free to use, no hidden fees or restrictions. It'd be nice though if you mentioned arc42...

Download


Download the template (with a very brief documentation) here.

Documentation


Even newcomers to Enterprise-Architect will be able to use the template within EA - nevertheless we provide a brief documentation for it within the arc42-confluence.

Restrictions


The template does contain a report generator, therefore it is currently not suited for complete software or system architecture documentation - just for the graphical information.


Disclaimer:


You are allowed to use this template in all situations you like – but we do not provide any (ANY!) kind of guarantee for it. It might crash your EA, or inflict your mind – we cannot possibly exclude such incidents. So please give us feedback, but please don’t blame us for any issues with EA, the template or your project.


Thanx


Thanx to my colleagues from innoQ Deutschland for supporting this work, thanx to Axel-N for productive discussion about modeling in general and especially applying EA.

10 June 2009

Software-Architektur kompakt

endlich erschienen. Aus dem Rückentext:

Software Architektur kompakt gibt Ihnen alles, was Sie zu einem reibungslosen und schnellen Start in das Thema benötigen. Lernen Sie Systeme zukunftssicher, flexibel und transparent zu konstruieren. Sie finden hier sofort einsetzbare und erprobte Muster und Vorlagen zur Erstellung praxistauglicher IT-Architekturen.

Das Buch liefert allen relevanten Projektbeteiligten maßgeschneiderte Antworten zu Entwurfsentscheidungen, Systemstruktur und Implementierung.

Software-Architektur kompakt hilft Ihnen, das Berufsbild und die Verantwortung von Software-Architekten besser zu verstehen und in Ihren Projekten zu etablieren. Sie finden Antworten auf verbreitete Einwände wie „zu viel Aufwand", „keine Zeit" oder „zu teuer".

Software-Architektur kompakt

Freue mich über Rückmeldungen :-)

14 December 2007

Links on Domain-Driven-Design (and Development)

For an upcoming article I researched a few things on domain-driven design. Find some of the links below:


(last updated Feb. 24th 2008, for Grails)



Note: This entry will be updated in the near future - stay tuned if you're interested in DDD!!




  • Eric Evans' domaindriven website, link to his awesome book on domain-driven design:


  • InfoQ published a minibook on DDD: Domain-Driven Design quickly (authored by Abel Avram and Floyd Marinescu)

  • Jimmy Nilson on Applying Domain-Driven Design and Patterns - a printed book...Of course, he maintains his own blog.




  • The Groovy-/Java based Grails adopted the convention-over-configuration ideas from RoR, but included several of the DDD patterns. It's really easy to describe entities and their associations, both static and dynamic scaffolding care for (some of the) rest. Just recently the Grails-team published their 1.0.1 version (too bad they introduced a number of issues, so the samples from the docu currently don't work properly - but stay tuned.





    IMHO this is one of the most promising approaches to DDD - I'm really curious wether their Apache-Wicket plugin turns out to be enterprise-ready :-) Well done, guys!!



  • NakedObjects Framework, a proven implementation of many DDD-patterns. Hosted here on sourceforge, includes an excellent (!!) programming manual with loads of samples.

  • InfoQ article on the 3.x release of NakedObjects


  • Some very clever people (Larry Constantine and Lucy Lockwood) badly complained the strange user interface of NakedObjects and published their very clear dislike here. What else to be expected from UI-gurus? It's their turf where NO and similar frameworks.




  • JMatter framework. Re-used some ideas from NakedObjects. Contains many sample applications, extensive docu. Have a look at the myTunes sample, where Eitan Suez implements a crude iTunes clone in approx 190 lines of java code. Quite cool. As in NakedObjects, the UI takes some time to get used to... Just recently (Feb-04-2008) updated the framework.


  • Introduction to JMatter on InfoQ - with interesting comments.

  • A discussion of JMatters wizards - with Groovy to the rescue...

  • A few articles on JMatter (from their website, but difficult to find).



  • Roma Framework. Another productive development framework which claims DDD, but does not provide any of the typical DDD patterns.

  • Presentation on the Roma Framework (on Slideshare)



  • Trails framework. More a productivity enhancer than a DDD-framework, but nevertheless...



  • CSLA Business Framework (Homepage), created by Rocky Lhotka.

  • Blog-Entry on CSLA-Business Framework, some critique



  • Of course, Ruby-on-Rails might be used as DDD framework. It's really productive for web applications, but does not implement any of the DDD patterns verbatim (and convention over configuration is not in the DDD list of favorite patterns...



  • Rickard Öberg started with QI4J - well worth checking out, just because it's him...




  • A german company (Freiheit.com) started their own UI-generation-DDD-framework, named SansSouci. Seems to be dead since 2005...

07 November 2007

OOP 2008: Architektur braucht Iterationen

James Dyson, Erfinder des nach ihm benannten (ungeheuer lukrativen, coolen und innovativen) "beutelfreien" Staubsaugers, hat 15 Jahre lang iteriert, seine Architektur an 5000 Prototypen getestet (so berichtet die Atlantic Systems Guild in ihrem genialen Buch "Adrenalin-Junkies und Formular-Zombies" (Pattern 84, Schonzeit für Ideen).

Sagt am Beispiel eigentlich alles. Hervorragende Architekturen brauchen ein paar Iterationen (manche mehr, manche weniger). Während dieser Iterationen ändern sich einige Anforderungen - und schon haben wir die Agilität im Spiel.

Also: Sieht in etwa wie folgt aus: Kunde und Umwelt ändern Anforderungen, Architekten reagieren...

architektur-und-umwelt.png


Ein aus meiner Sicht halbwegs realistischer Prozess der Architekturentwicklung sieht etwa so aus:

arc-prozess.png

Sie sehen: Schleifen. Iterationen. Versuch-Scheitern-Lernen-Verbessern. So funktioniert Architektur.





29 October 2007

How to Use Multiple Versions of MagicDraw UML without Interference

(on Mac OS X):

At least versions 12.5 and 14.0 ff. need their "libraries" directory named "MagicDraw UML". If you want two versions on your machine, you either need to install them into different directories (which I did no like!) or patch the installation just a little:


  1. Install MD to any tmp-directory.

  2. Right-click on the executable, which in reality is a hidden directory. "Show content".

  3. Navigate into the "Content" directory, there you'll find a file called "info.plist"

  4. Edit this file (with a text editor, NOT with the default property-list-editor!)

  5. Search for the text $APP_PACKAGE/../MagicDraw UML

  6. replace with (e.g.) $APP_PACKAGE/../MagicDraw UM 14.0L

  7. save info.plist

  8. rename the MagicDraw UML directory of the MD installation accordingly: MagicDraw UM 14.0



Don't forget to move the now changed files (directory plus startup file) to your favorite application directory (mine's called "development tools" under "Applications".)