I love email comments!
Got a great comment on Tuesday of this week that posed an interesting question. It traverse the line between responsibility and ethics. I have to say I got it early Tuesday and thought about it from then until this morning without a resolution. I have a thought and a path but I am not sure that in the end I have an answer.
“What is the responsibility of an architect in relation to a solution they have designed.”
As architects we are bound to the organization we are designing a solution for.
Ethical Responsibility of an Architect to a Solution
- Act as a core member of the organization
- Gather relevant requirements
- Ask the right questions in gathering requirements
- How long do you plan on having this solution deployed?
- How long do you normally have solutions deployed?
- Why do projects fail?
- Is this project fully funded?
- Are there things you’ve already considered/looked at for this solution?
- Will we be moving the solution to the cloud or building it on premise?
- What are the biggest drivers for this solution – the right answer, the total cost or some combination of both?
- Is technically acceptable lowest cost the only answer?
- fairly evaluate all possible solutions with the intent of deploying the right technology
- Fairly evaluate all cost options
- Fairly evaluate the horizon of the solution
I was very happy with that answer above – the ethical responsibility of an architect to a software solution. But the second email arrived on Friday and I haven’t really been able to come up with a good answer. For how long? How long am I responsible for a solution?
If I design something how long am I responsible for that deployed solution? Or am I just responsible for the design? When in the ethical handbook of Software Architecture do you no longer have responsibility for a solution you designed, built and ultimately deployed.
I am left with the following question:
“Given that software architects design, build and deploy solutions where does their responsibility for that solution end? Or does it end after those three components and is bound only by a time factor (20 years? 10 years, until the last deployed component of the original solution is gone?”