Skills |
"The ideal architect should be a person of letters, a mathematician, familiar with historical studies, a diligent
student of philosophy, acquainted with music, not ignorant of medicine, learned in the responses of jurisconsults,
familiar with astronomy and astronomical calculations."—Vitruvius, circa 25 BC
Performance of the role of System Architect requires individuals who are well-versed in the several disciplines that
contribute to systems engineering and who possess strong skills in analysis as well as solution synthesis. The System
Architect must also be skilled at heuristic and inductive reasoning (on which so much of system architecting depends),
as well as the deductive reasoning of other engineering disciplines. The system architect is concerned not simply with
the technology of the solution but many other issues, such as system operation, performance, economic viability,
manufacturability, and logistical support, and the political, technical, social, financial, and environmental factors
(among others) that bear on these issues.
The System Architect has to possess the experience and maturity that allows for objective analysis and trade studies to
be done to select the best solution from many, with the ability to make good judgments when information is incomplete
or ambiguous, and the ability to recognize that "best" is often dictated by political and economic as well as
engineering considerations.
In dealing with systems that are composites of people, hardware and software, the System Architect requires a strong
sense of the physical limitations and constraints placed on any solution, by the human and hardware components. In
addition to experience in systems engineering (and knowledge of allied disciplines such as operations research and
engineering economics), the System Architect should have a strong grounding in software engineering (because of its
ubiquity in modern systems), as well as:
-
Experience in the problem domain and a deep understanding of the requirements. This expertise can
be spread through a system architecture team.
-
Leadership qualities, in order to drive the technical effort across the various teams, make
critical decisions under pressure and make those decisions stick. To be effective, the System Architect and the
Project Manager must work closely together, with the System Architect leading the technical issues and the Project
Manager leading the administrative issues. The System Architect must have the authority to make technical
decisions.
-
Communication skills, to earn trust, to persuade, to motivate, and to mentor. The System Architect
does not have authority by virtue of position, rather by demonstrated ability and results. In order to be
effective, the System Architect must command the respect of the project team, the Project Manager, the customer,
and the user community, as well as the management team
-
Goal-orientation and proactivity with a relentless focus on results. The System Architect is the
technical driving force behind the project, not a consultant or dreamer. The career of a successful System
Architect is a long series of sub-optimal (but not regularly badly sub-optimal) decisions made in conditions
of uncertainty and under pressure. Only those who can focus on doing what needs to be done are successful in this
environment.
The System Architect role encompasses the skills of the System Designer, albeit with a strategic, not a detailed focus.
|
Assignment Approaches |
If the project is large enough to warrant a system architecture team, the goal is to have a good mix of talents,
covering a wide spectrum of experience and sharing a common understanding of the systems engineering process. Ideally
in such a team there is an individual, almost certainly the lead, who owns the overall vision for the project. The
system architecture team should not be a committee of representatives from various teams, domains, or contractors.
System architecture is a full-time function, with staff permanently dedicated to it.
|