Muddy Software Architecture
Published January 30th, 2012 Under Quotes | Leave a Comment
“If the layered style is the most common targeted style [in software architecture], the big ball of mud style is perhaps the one most often actually achieved. It is characterized by the absence of any evident structure, or perhaps vestiges of now-eroded structure. Also typical is promiscuous sharing of information, sometimes to the extent that data structures become effectively global. Although the module, runtime, or allocation organization can be a mess, it often starts in the module viewtype and spreads elsewhere. Repairs and maintenance are expedient and resemble crude patches rather than elegant refactorings. No effort is made to enforce any conceptual integrity or consistency. Read more
Agile Culture, Scrum, User Experience and Software Architecture in the Winter 2011 issue of Methods & Tools
Published December 21st, 2011 Under Methods & Tools | Leave a Comment
Methods & Tools – the free magazine for software developers, testers and project managers – has just published its Winter 2011 issue with the following articles that focuses mainly on agile project management, software architecture and user experience. In addition, four open source software development tools are presented, two for software testing and two for project management. Winter 2011 issue content:
* How to Make Your Culture Work with Agile, Kanban & Software Craftsmanship
* How Software Architecture Learns
* Understanding of Burndown Chart
* The Psychology of UX – Part 2
* Cucumber: Behavior Driven Development in Ruby
* Sureassert Exemplars: Java Unit Testing Without Unit Tests
* ChiliProject: Modular Open Source Web-based Project Management
* Scrum-it: Virtual Open Source Scrum Board Application
70 pages of software development knowledge that you can download from http://www.methodsandtools.com/mt/download.php?winter11
Observations on Software Architecture
Published October 31st, 2011 Under Quotes | Leave a Comment
I am currently reading the book “Practices for Scaling Lean & Agile Development” by Craig Larman and Bas Vodde. This book is full of very interesting material that covers the full spectrum of the software development domain and is the “sequel” of “Scaling Lean & Agile Development – Thinking and Organisational Tools for Large-Scale Scrum” published in 2009. Software architecture and design is one of the topics discussed in the books and I want to share with you some of the authors’ thoughts, starting with five principles that they propose on software architecture and design: Read more
Documenting Software Architectures
Published September 12th, 2011 Under Books | Leave a Comment
You have more chances to like a book on documenting software architectures when the authors know how to write and this is the case for this one. It starts by explaining the concepts of architecture views and styles. A second part discusses in a more detailed fashion the process of documenting architecture. I think that this book achieve its objective which is to answer the following question: “How do you document an architecture so that others can successfully use it, maintain it, and build a system from it?”. I will recommend this book to every software developers.
Read the complete review of Documenting Software Architectures
Reference: “Documenting Software Architectures”, Paul Clements & al., Addison-Wesley, 278 pages, IBSN 978-0-321-55268-6
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk
Agile Software Architecture Insights
Published June 23rd, 2011 Under Quotes | Leave a Comment
Some interesting thoughts borrowed from my notes of the “How to Become an Agile Architect” talk presented yesterday by Uwe Friedrichsen from Codecentric at the Jazoon 2011 conference in Zurich.
* Architecture is a set of skills and not a role: if you don’t have these skills available for your project, you might get quickly in trouble.
* Becoming an architect is a journey: you should leave your comfort zone and programming expertise area to explore and learn about the other software development domains like requirements, operations or testing.
* An architect focuses on people and not on systems: if you are unable to communicate your architecture, how perfect it might be, you are going to fail. People skills are the most important for an architect.
* Less is more: minimize complexity and use the JDUF (Just enough Up Front Design) design principle.
He also pointed the audience to a very interesting Architect Competency Framework produced by Ruth Malan and Dana Bredemeyer. The web site of Bredemeyer Consulting contains a lot of valuable material about software architecture.
keep looking »