Boyan Mihaylov covers his experience when working with both traditional waterfall software architectures and agile ones. He depicts the similarities and differences between these with a focus on three areas: the specifics of the software architect role, the timespan of the software architecture, and the output of the software architecture.
Today’s software applications have a lot of concurrent tasks that are distributed over multiple threads, processes, processors and PCs. This article introduces a visual modeling technique to describe and specify the application’s execution architecture. Within Philips Healthcare the Unified Execution Diagram has proven to be very useful for designing and documenting the execution architecture.
More than ten years ago, software architect Kevin Perera invented a design method for architectures that was called "metadata-driven design and development". In this article, Aaron Kendall explains how to use this design method and outlines similarities as well as differences to current techniques like RESTful services or HATEOAS by implementing a metadata-driven mobile application.
Grady Booch is interviewed by Mark Collins-Cope covering topics ranging from UML and Unified Process to Programming Languages and the future of software innovation.
In Key Value data stores, data is represented as a collection of key–value pairs. InfoQ spoke with Casey Rosenthal from Basho team about data modeling when using Key Value NoSQL databases. 1
Agile considers working code as the most important team artifact, but we still need modeling. Kenji Hiranabe explores the spaces where modeling fits, with focus on development scaling. 7
Understanding the software architecture of what you're building can prevent chaos and encourage collective code ownership. But how do you do this without resorting to big design up front and UML? 9
Raul Rugiero proposes an extension to the UML use cases so they may be enhanced in order to allow enhanced UML tools to properly handle links between use cases and tests. 7
Gathering feedback early and often is the key to success on most development projects. Wireframing is a great technique for gathering feedback and guiding a team before any code has been written. 12
Creating models in a form or another is very common, their combination with the code has been challenging. The article describes proven practices for working with both models and code. 3
Modeling failure during architecture phase to ensure availability in production
This article walks you through building an application with Ember.js, showing the MVC system, data binding, as well as how to build GUI and Touch support. 9