Professional Documents
Culture Documents
Hardware architect
(In the automation and engineering environments, the hardware engineer or architect encompasses the electronic engineering and electrical engineering fields, with subspecialities in analog, digital, or electromechanical systems.) The hardware systems architect or hardware architect is responsible for: Interfacing with a systems architect or client stakeholders. It is extraordinarily rare nowadays for sufficiently large and/or complex hardware systems that require a hardware architect not to require substantial software and a systems architect. The hardware architect will therefore normally interface with a systems architect, rather than directly with user(s), sponsor(s), or other client stakeholders. However, in the absence of a systems architect, the hardware systems architect must be prepared to interface directly with the client stakeholders in order to determine their (evolving) needs to be realized in hardware. The hardware architect may also need to interface directly with a software architect or engineer(s), or with other Mechanical or Electrical Engineers. Generating the highest level of hardware requirements, based on the user's needs and other constraints such as cost and schedule. Ensuring that this set of high level requirements is consistent, complete, correct, and operationally defined. Performing cost-benefit analyses to determine the best methods or approaches for meeting the hardware requirements; making maximum use of commercial off-the-shelf or already developed components. Developing partitioning algorithms (and other processes) to allocate all present and foreseeable (hardware) requirements into discrete hardware partitions such that a minimum of communications is needed among partitions, and between the user and the system. Partitioning large hardware systems into (successive layers of) subsystems and components each of which can be handled by a single hardware engineer or team of engineers. Ensuring that a maximally robust hardware architecture is developed. Generating a set of acceptance test requirements, together with the designers, test engineers, and the user, which determine that all of the high level hardware requirements have been met, especially for the computer-human-interface. Generating products such as sketches, models, an early user's manual, and prototypes to keep the user and the engineers constantly up to date and in agreement on the system to be provided as it is evolving.
Background
Large systems architecture was developed as a way to handle systems too large for one person to conceive of, let alone design. Systems of this size are rapidly becoming the norm, so architectural approaches and architects are increasingly needed to solve the problems of large systems.
Hardware architect familiar with the user's environment and problem. The engineer need only be very knowledgeable of the potential engineering solution space.
Hardware architect
Cost/benefit analyses
Most hardware engineers are specialists. They know the applications of hardware design and development intimately, apply their knowledge to practical situations that is, solve real world problems, evaluate the cost/benefits of various solutions within their hardware specialty, and ensure the correct operation of whatever they design. Hardware architects are generalists. They are not expected to be experts in any one hardware technology or approach, but are expected to be knowledgeable of many, and able to judge their applicability to specific situations. They also apply their knowledge to practical situations, but evaluate the cost/benefits of various solutions using different hardware technologies, for example, specially developed versus commercially available hardware components, and assure that the system as a whole performs according to the user's expectations. Many commercial-off-the-shelf or already developed hardware components may be selected independently according to constraints such as cost, response, throughput, etc. In some cases, the architect can already assemble the end system unaided. Or, s/he may still need the help of a hardware engineer to select components and to design and build any special purpose function. The architects (or engineers) may also enlist the aid of specialists in safety, security, communications, special purpose hardware, graphics, human factors, test and evaluation, quality control, RMA, interface management, etc. An effective hardware architectural team must have immediate access to specialists in critical specialties.
Hardware architect
Acceptance test
The acceptance test always remains the principal responsibility of the architect(s). It is the chief means by which the architect will prove to the user that the hardware is as originally planned and that all subordinate architects and engineers have met their objectives. Large projects tend to be dynamic, with changes along the way needed by the user (e.g., as his problems change), or expected of the user (e.g., for cost or schedule reasons). But acceptance tests must be kept current at all times. They are the principal means by which the user is kept informed as to how the final product will perform. And they act as the principal goal towards which all subordinate personnel must design, build and test for.
People
Herb Sutter
License
Creative Commons Attribution-Share Alike 3.0 Unported //creativecommons.org/licenses/by-sa/3.0/