Mockup

Last updated
The shuttle sitting outside the Space Shuttle America ride is an example of a mockup Space Shuttle America.jpg
The shuttle sitting outside the Space Shuttle America ride is an example of a mockup
Google Street View mockup in Freiheit statt Angst demonstration, Berlin, September 11, 2010 CCC-Google StreetView Attrappe - FSA09.jpg
Google Street View mockup in Freiheit statt Angst demonstration, Berlin, September 11, 2010
Boeing 2707 mockup at the Hiller Aviation Museum Boeing 2707 mock-up.jpg
Boeing 2707 mockup at the Hiller Aviation Museum

In manufacturing and design, a mockup, or mock-up, is a scale or full-size model of a design or device, used for teaching, demonstration, design evaluation, promotion, and other purposes. A mockup may be a prototype if it provides at least part of the functionality of a system and enables testing of a design. [1]

Contents

Mock-ups are used by designers mainly to acquire feedback from users. Mock-ups address the idea captured in a popular engineering one-liner: "You can fix it now on the drafting board with an eraser or you can fix it later on the construction site with a sledge hammer". [2]

Mockups are used as design tools virtually everywhere a new product is designed. Mockups are used in the automotive device industry as part of the product development process, where dimensions, overall impression, and shapes are tested in a wind tunnel experiment. They can also be used to test consumer reaction.

Military acquisition

Mockups are part of the military acquisition process. Mockups are often used to test human factors and aerodynamics, for example. [3] In this context, mockups include wire-frame models. They can also be used for public display and demonstration purposes prior to the development of a prototype, as with the case of the Lockheed Martin F-35 Lightning II mock-up aircraft.

Consumer goods

Mockups are used in the consumer goods industry as part of the product development process, where dimensions, human factors, overall impression, and commercial art are tested in marketing research. Mockups helps to visualise how all design decisions play together, they are convincing and closely resemble the final product, it can be easily revised rather than much later in production stage, It also helps in visualisation of package design projects in 3D & speed up approvals.

Furniture and cabinetry

Mockups are commonly required by designers, architects, and end users for custom furniture and cabinetry. [4] [5] The intention is often to produce a full-sized replica, using inexpensive materials in order to verify a design. Mockups are often used to determine the proportions of the piece, relating to various dimensions of the piece itself, or to fit the piece into a specific space or room. The ability to see how the design of the piece relates to the rest of the space is also an important factor in determining size and design.

When designing a functional piece of furniture, such as a desk or table, mockups can be used to test whether they suit typical human shapes and sizes. Designs that fail to consider these issues may not be practical to use. Mockups can also be used to test color, finish, and design details which cannot be visualized from the initial drawings and sketches. Mockups used for this purpose can be on a reduced scale.

The cost of making mockups is often more than repaid by the savings made by avoiding going into production with a design which needs improvement.[ citation needed ]

Software engineering

The most common use of mockups in software development is to create user interfaces that show the end user what the software will look like without having to build the software or the underlying functionality. Software UI mockups can range from very simple hand drawn screen layouts, through realistic bitmaps, to semi functional user interfaces developed in a software development tool.

Mockups are often used to create unit tests - there they are usually called mock objects. The main reasons to create such mockups is to be able to test one part of a software system (a unit) without having to use dependent modules. The function of these dependencies is then "faked" using mock objects.

This is especially important if the functions that are simulated like this are difficult to obtain (for example because it involves complex computation) or if the result is non-deterministic, such as the readout of a sensor.

A common style of software design is Service-oriented architecture (SOA), where many components communicate via protocols such as HTTP. Service virtualization and API mocks and simulators are examples of implementations of mockups or so called over-the-wire test doubles in software systems that are modelling dependent components or microservices in SOA environments.

Mockup software can also be used for micro level evaluation, for example to check a single function, and derive results from the tests to enhance the products power and usability on the whole.

Systems engineering

Mockups, wireframes and prototypes are not so cleanly distinguished in software and systems engineering, where mockups are a way of designing user interfaces on paper or in computer images. A software mockup will thus look like the real thing, but will not do useful work beyond what the user sees. A software prototype, on the other hand, will look and work just like the real thing. In many cases it is best to design or prototype the user interface before source code is written or hardware is built, to avoid having to go back and make expensive changes. Early layouts of a World Wide Web site or pages are often called mockups. A large selection of proprietary or open-source software tools are available for this purpose.

Architecture

Architectural mockup for a new urbanist community in McKinney, Texas, US Architectural Mockup.jpg
Architectural mockup for a new urbanist community in McKinney, Texas, US

At the beginning of a project's construction, architects will often direct contractors to provide material mockups for review. These allow the design team to review material and color selections, and make modifications before product orders are placed. Architectural mockups can also be used for performance testing (such as water penetration at window installations, for example) and help inform the subcontractors how details are to be installed.

See also

Related Research Articles

Software testing is the act of examining the artifacts and the behavior of the software under test by verification and validation. Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to:

Usability testing is a technique used in user-centered interaction design to evaluate a product by testing it on users. This can be seen as an irreplaceable usability practice, since it gives direct input on how real users use the system. It is more concerned with the design intuitiveness of the product and tested with users who have no prior exposure to it. Such testing is paramount to the success of an end product as a fully functioning application that creates confusion amongst its users will not last for long. This is in contrast with usability inspection methods where experts use different methods to evaluate a user interface without involving users.

<span class="mw-page-title-main">Embedded system</span> Computer system with a dedicated function

An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is embedded as part of a complete device often including electrical or electronic hardware and mechanical parts. Because an embedded system typically controls physical operations of the machine that it is embedded within, it often has real-time computing constraints. Embedded systems control many devices in common use. In 2009, it was estimated that ninety-eight percent of all microprocessors manufactured were used in embedded systems.

<span class="mw-page-title-main">Prototype</span> Early sample or model built to test a concept or process

A prototype is an early sample, model, or release of a product built to test a concept or process. It is a term used in a variety of contexts, including semantics, design, electronics, and software programming. A prototype is generally used to evaluate a new design to enhance precision by system analysts and users. Prototyping serves to provide specifications for a real, working system rather than a theoretical one. Physical prototyping has a long history, and paper prototyping and virtual prototyping now extensively complement it. In some design workflow models, creating a prototype is the step between the formalization and the evaluation of an idea.

<span class="mw-page-title-main">Paper prototyping</span> Software design technique

In human–computer interaction, paper prototyping is a widely used method in the user-centered design process, a process that helps developers to create software that meets the user's expectations and needs – in this case, especially for designing and testing user interfaces. It is throwaway prototyping and involves creating rough, even hand-sketched, drawings of an interface to use as prototypes, or models, of a design. While paper prototyping seems simple, this method of usability testing can provide useful feedback to aid the design of easier-to-use products. This is supported by many usability professionals.

<span class="mw-page-title-main">Usability</span> Capacity of a system for its users to perform tasks

Usability can be described as the capacity of a system to provide a condition for its users to perform the tasks safely, effectively, and efficiently while enjoying the experience. In software engineering, usability is the degree to which a software can be used by specified consumers to achieve quantified objectives with effectiveness, efficiency, and satisfaction in a quantified context of use.

<span class="mw-page-title-main">Requirements analysis</span> Engineering process

In systems engineering and software engineering, requirements analysis focuses on the tasks that determine the needs or conditions to meet the new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements.

<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 engineering, service-oriented architecture (SOA) is an architectural style that focuses on discrete services instead of a monolithic design. By consequence, it is also applied in the field of software design where services are provided to the other components by application components, through a communication protocol over a network. A service is a discrete unit of functionality that can be accessed remotely and acted upon and updated independently, such as retrieving a credit card statement online. SOA is also intended to be independent of vendors, products and technologies.

Software prototyping is the activity of creating prototypes of software applications, i.e., incomplete versions of the software program being developed. It is an activity that can occur in software development and is comparable to prototyping as known from other fields, such as mechanical engineering or manufacturing.

In the context of software engineering, software quality refers to two related but distinct notions:

Iterative design is a design methodology based on a cyclic process of prototyping, testing, analyzing, and refining a product or process. Based on the results of testing the most recent iteration of a design, changes and refinements are made. This process is intended to ultimately improve the quality and functionality of a design. In iterative design, interaction with the designed system is used as a form of research for informing and evolving a project, as successive versions, or iterations of a design are implemented.

<span class="mw-page-title-main">Website wireframe</span> Visual guide that represents the skeletal framework of a website

A website wireframe, also known as a page schematic or screen blueprint, is a visual guide that represents the skeletal framework of a website. The term wireframe is taken from other fields that use a skeletal framework to represent 3 dimensional shape and volume. Wireframes are created for the purpose of arranging elements to best accomplish a particular purpose. The purpose is usually driven by a business objective and a creative idea. The wireframe depicts the page layout or arrangement of the website's content, including interface elements and navigational systems, and how they work together. The wireframe usually lacks typographic style, color, or graphics, since the main focus lies in functionality, behavior, and priority of content. In other words, it focuses on what a screen does, not what it looks like. Wireframes can be pencil drawings or sketches on a whiteboard, or they can be produced by means of a broad array of free or commercial software applications. Wireframes are generally created by business analysts, user experience designers, developers, visual designers, and by those with expertise in interaction design, information architecture and user research.

In computing, a scenario is a narrative of foreseeable interactions of user roles and the technical system, which usually includes computer hardware and software.

<span class="mw-page-title-main">User interface design</span> Planned operator–machine interaction

User interface (UI) design or user interface engineering is the design of user interfaces for machines and software, such as computers, home appliances, mobile devices, and other electronic devices, with the focus on maximizing usability and the user experience. In computer or software design, user interface (UI) design primarily focuses on information architecture. It is the process of building interfaces that clearly communicate to the user what's important. UI design refers to graphical user interfaces and other forms of interface design. The goal of user interface design is to make the user's interaction as simple and efficient as possible, in terms of accomplishing user goals.

Mobile app development is the act or process by which a mobile app is developed for one or more mobile devices, which can include personal digital assistants (PDA), enterprise digital assistants (EDA), or mobile phones. Such software applications are specifically designed to run on mobile devices, taking numerous hardware constraints into consideration. Common constraints include CPU architecture and speeds, available memory (RAM), limited data storage capacities, and considerable variation in displays and input methods. These applications can be pre-installed on phones during manufacturing or delivered as web applications, using server-side or client-side processing to provide an "application-like" experience within a web browser.

<span class="mw-page-title-main">Functional specification</span>

A functional specification in systems engineering and software development is a document that specifies the functions that a system or component must perform.

A user interface specification is a document that captures the details of the software user interface into a written document. The specification covers all possible actions that an end user may perform and all visual, auditory and other interaction elements.

Discoverability is the degree to which something, especially a piece of content or information, can be found in a search of a file, database, or other information system. Discoverability is a concern in library and information science, many aspects of digital media, software and web development, and in marketing, since products and services cannot be used if people cannot find it or do not understand what it can be used for.

Design prototyping in its broader definition comprises the actions to make, test and analyse a prototype, a model or a mockup according to one or various purposes in different stages of the design process. Other definitions consider prototyping as the methods or techniques for making a prototype, or a stage in the design process. The concept of prototyping in design disciplines' literature is also related to the concepts of experimentation, and Research through Design (RtD).

References

  1. Vieru, Tudor (30 January 2009). "KSC Gets Orion Mock-Up for Testing". News.softpedia.com.
  2. Mock-ups. Interaction-design.org. 16 February 2010.
  3. Cline, Todd, "Lessons Learned From Product Manager (PM) Infantry Combat Vehicle (ICV) Using Soldier Evaluation in the Design Phase", ARMY AL&T Magazine, April–June 2008
  4. Graflick, "Mock Ups", Pro Woodworking Tips, 2006.
  5. United States Consumer Product Safety Commission, "Log of Meeting: Demonstration of the Proposed Smoldering Test Procedures" Archived 2008-12-07 at the Wayback Machine , 14 July 2008.