XpdWiki
Set your name in
UserPreferences Referenced by
JSPWiki v2.0.52
|
One of the interesting aspects of Agile development has been to question the process of Architecting, the engineering and mechanic as separate roles. I would like to open a discussion on where these disciplines merge in an XP project (or day) -- AlexCraxton Who is the architect?
What is the difference between an engineer and mechanic? I have noticed that because the approach tends towards test, doing the simplist thing that will work, then refactor when applicable and iterate around this. So it becomes a subtle blend of engineering and mechanic work rolled into one. Is this all one role? Does each member of the team architect, engineer, maintain or do you split some of these responsibilities out. I must admit there are some people who would scare me if they were allowed to architect anything, but does that mean you should preclude them from being part of the architectural discussions. How to communicate between these aspects of development?
One thing I have come to find an interesting aspect of development these days is how to map from a requirement right down the individual units (code etc..) related to it. As requirements evolve it can be difficult to know even from your UnitTests what the knock on affects are without getting your hands dirty and getting stuck into the code. Who is the mechanic? You cant be an engineer every hour of the day, sometimes development involves the need to get stuck into the code and see what it does, what it is supposed to do and how you can fix it. The mechanic typically reverse engineers the situation to fix something or find a better way, therefore putting their engineers hat on. Reverse engineering requires some knowledge of the system, either through some documentation (tests, models or whatever) and communication with fellow team members to pair up with somebody with better knowledge in that area.
|