The soul of Software architecture system
One, The Software Architect is the master designer of the system.
Two, the architect's job responsibilities is in a software project development process, the customer needs Convert to a normative development plan and text, and develop the overall architecture of the project , directing the entire development team to complete the program.
Software architects play an important role throughout the software development process and their responsibilities or concerns evolve as the development process progresses, and during the requirements phase, software architects are primarily responsible for understanding and managing non-functional system requirements, such as software maintainability, performance, reusability, reliability, effectiveness, testability, and so on.
In addition, the architect constantly reviews the needs of the customer and the marketing staff, confirms the design proposed by the development team, and as the requirements become clearer, the architect's focus begins to shift to the organization's development team members and the development process definition; During the software design phase, the architect is responsible for the entire software architecture, key artifacts, interface and development policy design; In the coding phase, the architect becomes the consultant of the detailed designer and code writer, and regularly holds some technical seminars, technical courses, etc. integration and test support will be the focus of the software architect as software begins testing, integration and delivery; When software maintenance starts, The software architect begins to make decisions about whether the next version of the product should add new functional modules.
Third, the classification of architects:
1. The architect is divided into 4 types:
Business Architect EA (Enterprise Architect)
Infrastructure Architect IA (Infrastructure Architect)
Specific technical architecture TSA (Technology-specific Architect)
Solution Architect SA (solution Architect).
2. A simple classification method, the architect is divided into software architects and system architects.
Software architects are essentially Tsa+ia, such as Java Architects, dotnet Architects, LAPM Architects, and so on.
The system Architect is actually a sa+tsa, more focused on the integrated use of existing production products and technologies to achieve the desired needs of our customers. The system architect requires knowledge of both software and hardware, so its
The knowledge system is relatively complicated.
Four, how to become an architect:
First of all, there must be rich experience in software design and development, which helps to understand and explain how the design is mapped to the implementation.
Second, with leadership and teamwork skills, the software architect must be a recognized technical leader who can make timely and effective decisions about the technology choices at a critical time.
Thirdly, it has strong communication and coordination ability.
In addition, architects should always pay attention to the development of new software design and development, and constantly explore new and more effective methods. Development languages, design patterns, and development platforms are rapidly escalating.
Reference:
Http://www.cnblogs.com/cjrboy/articles/1127335.html
Http://www.cnblogs.com/yeahcheung/archive/2011/04/18/2019771.html
The soul of Software architecture system