[Home] [By Thread] [By Date] [Recent Entries]
Hi Peter, Thanks for this detailed response. Just a few thoughts in reply.To me this is naming of roles is akin to the 'architect' and 'engineer' in building construction, as those responsible for vision and implemenation, but more appropriate to IT. They are similar partners (basically what and how), most innovative buildings are a combined effort of architect and engineer, such as FLW's Falling Water with its cantilevered decks. Building Architects often do take a management role in implementation true, but on larger projects the detailed project management is done by engineers, with architects just having oversight. This can lead to problems, there is a classic case of this with the Sydney Opera House, where the architect Jorn Utzon (http://en.wikipedia.org/wiki/Jorn_Utzon) left Australia in a huff before the building was completed, never to return. The building was completed with some compromise of its architectural vision by equally talented engineers under another Dane, engineer Ove Arup (http://en.wikipedia.org/wiki/Ove_Arup). But my key point is this: that the engineering part, finding a good solution to a complex problem, is itself a creative endeavour, one that might require considerable experimentation with alternative approaches (or refinement of) to find a workable or optimal solution. I think this is not recognised in the general population and, that as a result, unrealistic expectations lead to project failures.
The kind of input from builders that you describe is essentially the 'pattern language' of Alexander, that by experience builders gain knowledge of what works well for specific scenarios. My question is: Is software as a written language that has to communicate to machines and humans different? The Domain Driven Design (DDD) school is saying yes, that because written language is so important, iterative refinement is the best way it can be done, like a dialogue between book writer and editor, the film analogy a spoken word and visual dialogue between actors and director and in DDD between software designer/engineer and domain expert mediated via working prototypes. This is Agile basically, but for me more insightful about why and hence more scalable. In DDD I suspect that role of plans or architecture documents is lower, and where necessary is probably best provided by being generated from the code as an evolving model (and the 'point of truth'). I think I am on bit of a soap-box here. These discussions do go off on tangents easily, but interesting things fall out. Regarding "coordinating up and down those teams and layers of architecture can still be an agile process.": I need to look more closely now at Zachman and Scaled Agile. Also, I don't see the XML
messages as being the issue, yes they where slow to arrive, more
that what was in them was not reliable, or open to interpretation, so people resorted to phoning
the applicants to validate the XML information content, blaming XML would be "shooting the messenger". Looking wikipedia I find that: Etymologically, architect derives from the Latin architectus, which derives from the Greek arkhitekton (arkhi-, chief + tekton, builder), i.e., chief builder. No help for me there!
Regards Steve On Thu, Dec 5, 2013 at 9:49 AM, Peter Hunsberger <peter.hunsberger@g...> wrote:
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |

Cart



