Systems design is the application of logic and planning to system development to make sure that all parameters and needs will be met. It is used in applications such as the development of computer systems for banking networks and architecture. Practitioners in this field often have advanced degrees in fields such as computer science, engineering and related areas. Some degree programs offer specific training in systems design.
Designing a system can be a complex process, and it usually includes multiple stages. During the consulting phase, designers and other members of the team meet with clients to discuss the objective of the system. It should meet a clearly defined need and might have many parameters. The system might need to meet security standards, operate at a specific speed and so forth. The outcome of the meeting should be a framework to use in the systems design stage.
At this stage, the design team meets to determine how to address the needs. Design team members can rough out sketches and plans for the system to start to develop an idea of what they are going to build. Through communication with the client, they can adjust the plans and start to develop more formal technical specifications. This stage also includes planning for actually building the system, including discussions about the order to use in construction, the use of contractors for specific components and so forth.
In the implementation stage of systems design, personnel work together to build the system, test it and confirm that it will adhere to the standards set in the first phase. This might include adaptations to address changing needs and problems that might arise during construction. For something such as software architecture, for instance, it could become apparent that there is a significant security problem that was not visible earlier. The systems designers need to be flexible through this process to keep the project on track.
Specialists in systems design can be called upon as outside consultants for projects. They might bring expertise from a specific area of experience that can be helpful in the implementation of a system. This can include familiarity with computer systems or architectural conventions, along with a specific knowledge of the industry for which the system is being designed. This can be important for understanding what kinds of parameters need to be set and the best way for them to be met in the course of system development.