On Mon, Jun 6, 2011 at 9:56 AM, Dirkjan Ochtman <[email protected]> wrote:
> For example, community and process don't fit > the definition of software architecture as given by Wikipedia: "the > set of structures needed to reason about the system, which comprise > software elements, relations among them, and properties of both". Note that most large software projects large and small still fail in one way or another. Clearly the consensus understanding of "software architecture" isn't fully accurate, or else the term is useless. Trying to understand a successful software project by looking at the software elements of the system is like trying to understand a successful city by looking at the types of concrete and brick used. It ignores that software, like a city, is made by people, for people. For example, the core reason IMO that 0MQ is so successful is that we managed, early on, to bring the right mix of expert users into the design process, and that we were prepared to throw out all existing models to make new (simpler) ones that made those expert users happy. 0MQ/1.x was arguably better designed than 0MQ/2.x, in terms of conventional "software architecture". Who cares? Community and process aren't (rather, should not be seen as) add-ons, they are core architectural elements onto which the software elements can be attached. Otherwise you build elegant, and inaccurate, software elements. But that's just my view and experience, and it's clearly unfashionable :-) -Pieter _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
