Become a member

Sunday, August 5, 2007

Software Architect Role

A simplistic view of the role is that architects create architecture or high level design of the system, and their responsibilities encompass all that is involved in doing so. This would include articulating the architectural vision, conceptualizing and experimenting with alternative architectural approaches, creating models and component and interface specification documents, and validating the architecture against requirements and assumptions. In practise very few architects do exactly that. Not all organizations have software architect roles and usually senior or principle engineers play this role based on the size of the organization. There could one or more engineers in this role. The role of the IT architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems by applying abstract knowledge and proven methods to a set of technologies with the goal of creating an extendible and maintainable solution. Software Architects need to understand the domain , have the ability to conceptualise , have the technical acumen and know the relevant patterns to recomend for implmenting the architecture. Several instances the architects jump into creating patterns and produce a product without a robust architecture. Architecture is not just desigining or assembling a bunch of patterns that the engineers can adopt or learn and start developing the application modules.

No comments: