Systems architect
On the basis of general or functional specifications, systems architects conceive and design systems that meet the stated functional and operational requirements.
The design or architecture of a system is very often defined by breaking the system down into a structure of component parts (also known as sub-systems), which interact between themselves.
This architecture must provide a solution to the needs and constraints of the system as a whole, so that the key mission is to find an organizational solution that will translate these needs and constraints into requirements of the components and the interfaces between them, while ensuring the technical and financial feasibility of the whole system:
- for the creation of each component and each interface,
- in terms of overall planning.
In terms of documents, System Architects are responsible for producing the following:
- a Technical Requirement Specification for each component of the system, detailing the functional needs that will condition its design,
- System Interface Specification Files which detail the requirements and constraints for interaction between the different components and the end user.
In technical terms, System Architects rely on modelling tools which describe the organisation of the components and their interchanges.
With the development of complex systems, modelling has become a field of study in its own right and has been the subject of international standards and conventions. For information technology the best known standards are SysML and UML.
A guarantee of technical feasibility must be drawn up in conjunction with other partners in the project, and needs to be prepared as early as possible so as to limit any possible risks.
Given their key position in projects, Systems Architects often take on the role of Project Manager, and can therefore:
- have at their disposal all the skill resources required for designing a system
- ensure the monitoring of the design and production of the components
- define the project development priorities
- define a logical system for checking the system by effectively distributing the checks to be undertaken:
- on a unit-by-unit basis for each component
- when components are combined on a two-by-two basis or in functional sub-groups
- once the system has been completely integrated.
- ensure back-up for getting to know the project and managing its configuration
- delegate their activities as effectively as possible.
The methodology adopted depends of course on the complexity of the system: the “V-Model”, “Agile” methodology, etc. The important thing is to rationalise in an effective way!
Systems Architects must therefore conceive a system not only in technical terms, but also in terms of organisation and cost, which gives them a key role in any project.
First and foremost, they need to be good communicators and good organisers.