Systems design

Last updated

The basic study of system design is the understanding of component parts and their subsequent interaction with one another. [1]

Contents

Systems design has appeared in a variety of fields, including sustainability, [2] computer/software architecture, [3] and sociology. [4]

Product Development

If the broader topic of product development "blends the perspective of marketing, design, and manufacturing into a single approach to product development," [5] then design is the act of taking the marketing information and creating the design of the product to be manufactured.

Thus in product development, systems design involves the process of defining and developing systems, such as interfaces and data, for an electronic control system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering. [6] [7]

Physical design

The physical design relates to the actual input and output processes of the system. This is explained in terms of how data is input into a system, how it is verified/authenticated, how it is processed, and how it is displayed. In physical design, the following requirements about the system are decided.

  1. Input requirement,
  2. Output requirements,
  3. Storage requirements,
  4. Processing requirements,
  5. System control and backup or recovery. [8]

Put another way, the physical portion of system design can generally be broken down into three sub-tasks:

  1. User Interface Design
  2. Data Design
  3. Process Design

Web System design

Online websites, such as Google, Twitter, Facebook, Amazon and Netflix are used by millions of users worldwide. A scalable, highly available system must be designed to accommodate an increasing number of users. Here are the things to consider in designing the system:

  1. Functional and non functional requirements
  2. Capacity estimation
  3. Database to use, Relational or NoSQL
  4. Vertical scaling, Horizontal scaling, Shard
  5. Load Balancing
  6. Primary-secondary Replication
  7. Cache and CDN
  8. Stateless and Stateful servers
  9. Datacenter georouting
  10. Message Queue, Publish-Subscribe Architecture
  11. Performance Metrics Monitoring and Logging
  12. Build, test, configure deploy automation
  13. Finding single point of failure
  14. API Rate Limiting
  15. Service Level Agreement

See also

Related Research Articles

<span class="mw-page-title-main">Computer-aided design</span> Constructing a product by means of computer

Computer-aided design (CAD) is the use of computers to aid in the creation, modification, analysis, or optimization of a design. This software is used to increase the productivity of the designer, improve the quality of design, improve communications through documentation, and to create a database for manufacturing. Designs made through CAD software help protect products and inventions when used in patent applications. CAD output is often in the form of electronic files for print, machining, or other manufacturing operations. The terms computer-aided drafting (CAD) and computer-aided design and drafting (CADD) are also used.

Systems analysis is "the process of studying a procedure or business to identify its goal and purposes and create systems and procedures that will efficiently achieve them". Another view sees systems analysis as a problem-solving technique that breaks a system down into its component pieces and analyses how well those parts work and interact to accomplish their purpose.

Software design is the process of conceptualizing how a software system will work before it is implemented or modified. Software design also refers to the direct result of the design process – the concepts of how the software will work which consists of both design documentation and undocumented concepts.

In engineering, a requirement is a condition that must be satisfied for the output of a work effort to be acceptable. It is an explicit, objective, clear and often quantitative description of a condition to be satisfied by a material, design, product, or service.

<span class="mw-page-title-main">Systems development life cycle</span> Systems engineering terms

In systems engineering, information systems and software engineering, the systems development life cycle (SDLC), also referred to as the application development life cycle, is a process for planning, creating, testing, and deploying an information system. The SDLC concept applies to a range of hardware and software configurations, as a system can be composed of hardware only, software only, or a combination of both. There are usually six stages in this cycle: requirement analysis, design, development and testing, implementation, documentation, and evaluation.

In software project management, software testing, and software engineering, verification and validation is the process of checking that a software engineer system meets specifications and requirements so that it fulfills its intended purpose. It may also be referred to as software quality control. It is normally the responsibility of software testers as part of the software development lifecycle. In simple terms, software verification is: "Assuming we should build X, does our software achieve its goals without any bugs or gaps?" On the other hand, software validation is: "Was X what we should have built? Does X meet the high-level requirements?"

<span class="mw-page-title-main">Data modeling</span> Creating a model of the data in a system

Data modeling in software engineering is the process of creating a data model for an information system by applying certain formal techniques. It may be applied as part of broader Model-driven engineering (MDE) concept.

ISO 10303 is an ISO standard for the computer-interpretable representation and exchange of product manufacturing information. It is an ASCII-based format. Its official title is: Automation systems and integration — Product data representation and exchange. It is known informally as "STEP", which stands for "Standard for the Exchange of Product model data". ISO 10303 can represent 3D objects in Computer-aided design (CAD) and related information.

<span class="mw-page-title-main">Computer-integrated manufacturing</span> Manufacturing controlled by computers

Computer-integrated manufacturing (CIM) is the manufacturing approach of using computers to control the entire production process. This integration allows individual processes to exchange information with each part. Manufacturing can be faster and less error-prone by the integration of computers. Typically CIM relies on closed-loop control processes based on real-time input from sensors. It is also known as flexible design and manufacturing.

Object-oriented analysis and design (OOAD) is a technical approach for analyzing and designing an application, system, or business by applying object-oriented programming, as well as using visual modeling throughout the software development process to guide stakeholder communication and product quality.

<span class="mw-page-title-main">Integrated circuit design</span> Engineering process for electronic hardware

Integrated circuit design, semiconductor design, chip design or IC design, is a sub-field of electronics engineering, encompassing the particular logic and circuit design techniques required to design integrated circuits, or ICs. ICs consist of miniaturized electronic components built into an electrical network on a monolithic semiconductor substrate by photolithography.

A software factory is a structured collection of related software assets that aids in producing computer software applications or software components according to specific, externally defined end-user requirements through an assembly process. A software factory applies manufacturing techniques and principles to software development to mimic the benefits of traditional manufacturing. Software factories are generally involved with outsourced software creation.

<span class="mw-page-title-main">System Architect</span> Enterprise architecture tool

Unicom System Architect is an enterprise architecture tool that is used by the business and technology departments of corporations and government agencies to model their business operations and the systems, applications, and databases that support them. System Architect is used to build architectures using various frameworks including TOGAF, ArchiMate, DoDAF, MODAF, NAF and standard method notations such as sysML, UML, BPMN, and relational data modeling. System Architect is developed by UNICOM Systems, a division of UNICOM Global, a United States-based company.

<span class="mw-page-title-main">Hardware architecture</span>

In engineering, hardware architecture refers to the identification of a system's physical components and their interrelationships. This description, often called a hardware design model, allows hardware designers to understand how their components fit into a system architecture and provides to software component designers important information needed for software development and integration. Clear definition of a hardware architecture allows the various traditional engineering disciplines to work more effectively together to develop and manufacture new machines, devices and components.

An industrial control system (ICS) is an electronic control system and associated instrumentation used for industrial process control. Control systems can range in size from a few modular panel-mounted controllers to large interconnected and interactive distributed control systems (DCSs) with many thousands of field connections. Control systems receive data from remote sensors measuring process variables (PVs), compare the collected data with desired setpoints (SPs), and derive command functions that are used to control a process through the final control elements (FCEs), such as control valves.

<span class="mw-page-title-main">Enterprise modelling</span>

Enterprise modelling is the abstract representation, description and definition of the structure, processes, information and resources of an identifiable business, government body, or other large organization.

Lonnie D. Bentley is an American computer scientist, and Professor and former Department Head of Computer and Information Technology at Purdue University, known with Kevin C. Dittman and Jeffrey L. Whitten as co-author of the textbook Systems Analysis and Design Methods, which is now in its 7th edition.

In software engineering, a software development process or software development life cycle is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.

Jeffrey L. Whitten is an American computer scientist, and professor of information technology at Purdue University, known with Kevin C. Dittman and Lonnie D. Bentley as co-author of the textbook Systems Analysis and Design Methods, which is now in its 7th edition.

Kevin C. Dittman is an American computer scientist, IT consultant and Professor of Information Technology at the Purdue University, especially known for his textbook Systems analysis and design methods written with Lonnie D. Bentley and Jeffrey L. Whitten, which is in its 7th edition.

References

  1. Papanek, Victor J. (1984) [1972]. Design for the Real World: Human Ecology and Social Change (2nd ed.). Chicago: Academy Chicago. p. 276. ISBN   0897331532. OCLC   12343986.
  2. Blizzard, Jacqualyn; Klotz, Leidy (2012). "A framework for sustainable whole systems design". R Design Studies. 33 (5): 456–479. doi:10.1016/j.destud.2012.03.001.
  3. Lukosh, Heidi; Bekebrede, Geertje; Kurapati, Shalini; Lukosch, Stephan (2018). "A Scientific Foundation of Simulation Games for the Analysis and Design of Complex Systems". Simulation & Gaming. 49 (3): 279–314. doi:10.1177/1046878118768858. PMC   6187265 . PMID   30369775.
  4. Werner, Ulrich (September 1987). "Critical heuristics of social systems design". European Journal of Operational Research. 31 (3): 276-283. doi:10.1016/0377-2217(87)90036-1.
  5. Ulrich, Karl T.; Eppinger, Steven D. (2000). Product Design and Development (Second ed.). Boston: Irwin McGraw-Hill.
  6. PD-icon.svg This article incorporates public domain material from Federal Standard 1037C. General Services Administration. Archived from the original on 2022-01-22.
  7. PD-icon.svg This article incorporates public domain material from Dictionary of Military and Associated Terms . United States Department of Defense.
  8. Arden, Trevor (1991). Information technology applications. London: Pitman. ISBN   978-0-273-03470-4.

Further reading