A reference architecture is a set of interrelating patterns often used in software development and the integration of computer systems in enterprise networks. Project management teams can use these patterns to determine how various solutions, such as programming languages or network configurations for example, fit into a business model. Several different solutions are often devised, and it is usually up to the team to decide which the best ones to use are. In addition to a business reference model, the plan usually includes a framework for how people interface with the network, and what software will be implemented.
Common vocabulary terms and elements related to common components of computer systems and software are typically part of a reference architecture. The interactions between computer programs and even electronic components can be listed as well. Patterns of how all the parts can fit together are typically studied to understand the functions of communications equipment or a task-specific computer program, for example.
The steps that go into an end product can be the focus of a reference architecture, which can also consist of a list of properties of a particular system. Components and parts that make up a computer system are sometimes included in the model. Software functions or the layout of a computer network can be abstract, but during the development phase of a project, the reference architecture typically becomes more concise as the plans for a finished product come together.
Reference software architecture often consists of operating systems as well as database management programs that control the storage and flow of information. A particular project can require certain software programs, and an enterprise must often consider the expenses of acquiring these and the associated licenses. Reference architecture often incorporates computer servers and the software that is used to operate them. Communications, data access, directory management, and development software are usually included in the model as well.
The programming languages and development environment used are typically integral components of a reference architecture. Access to computer systems and the type of security that is in place are generally factored into a reference model also, as is the method in which commands from a user interface is routed through a computer to a network. These commands are often important in relation to how different parts of a business interact. A reference architecture, therefore, provides a standard model of a computer system in development, or which an enterprise can use in developing, building, and improving its network.