Browse Definitions by Topic

Material Design

Material Design - the design of software and applications for Android operating systems. First introduced at the Google I/O conference on June 25, 2014.

Initially, within the company, it was invented under the codename "quantum paper.” The main metaphor of material design is flat paper, located in three-dimensional space.

The idea of this design can be seen in applications that open and collapse like cards, using the effects of shadows. According to the idea of Google's designers, apps should not have sharp corners; cards should switch smoothly and almost imperceptibly.

Material design in Applications

The material design is used fully in the operating systems Android Lollipop, Android Marshmallow, Android Nougat, Android Oreo and also in some apps of previous versions.

Why apps need a material design

It serves two purposes:

  • the standardisation of numerous products of the company;
  • the unification of app user interfaces for Android.

After the dominance of “skeuomorphism,” the web and the interfaces tilted toward a radical flattening, but it turned out to be just one more extreme. In order to be understandable and international, the objects of the interface should have an analogue, a metaphor in the real world. Such a metaphor was paper. Thin, flat, but located in three-dimensional space and having shadows, speed of movement, and acceleration.

4 principles of Material Design

Material Design is based on four basic principles:

  1. Tactile surfaces. The interface is composed of tangible layers of so-called "digital paper". These layers are located at different heights and cast shadows on each other, which helps users to better understand the anatomy of the interface and the principle of interaction with it.
  2. Polygraphic design. If we count the layers as pieces of "digital paper", then, as regards "digital ink" (all that is depicted on "digital paper"), an approach is taken from traditional graphic design: for example, magazine and poster.
  3. Meaningful animation. In the real world, objects do not arise from nowhere and do not disappear into anywhere. Therefore, in Material Design, we always think about how to use the animation in layers and in "digital ink" to give users hints about the interface.
  4. Adaptive design. It's about how we apply the previous three concepts on different devices with different resolutions and screen sizes.

The material design is one of the modern trends in the visualisation of mobile applications whose popularity is growing day by day.

Additional Terms
Mainframe
is a large, high-performance, fault-tolerant server with significant I/O resources, large amount of operational and external memory, designed for mission-critical software applications supporting hundreds of users simultaneously. Features and Characteristics The lead time till failure of modern mainframes is estimated at 12-15 years. Such reliability is the result of almost 60-years of improvements. The VM / ESA operating system development team spent 20 years troubleshooting and as a result a system was created that can be used in the most critical cases. Increased system stability. Mainframes can isolate and fix most hardware and software errors by using the following principles: Duplication: two standby processors, redundant memory modules, and alternative paths to peripheral devices. Hot swapping of all elements down to channels, memory cards and CPUs. Data Integrity. Mainframes use memory with error correction. Errors do not lead to the destruction of data in memory or data waiting to be output to external devices. Disk subsystems, built on the basis of RAID-arrays with hot swapping and built-in backups, protect against data loss. Workload. The mainframe workload can be 80-95% of their peak performance. The mainframe operating system will process everything at once, and all applications will work closely together and use common software components. Throughput. Mainframe I/O subsystems are designed to work in an environment with the highest workload of I/O data. Access to data. Because the data is stored on a single server, application programs do not need to collect source information from multiple sources, no additional disk space is required for their temporary storage, there is no doubt about their relevance. It requires a small number of physical servers and much simpler software. All this, in total, leads to an increase in the processing speed and efficiency. Protection. The built-in security features, such as cryptographic devices and Logical Partition, and operating system protection, supplemented with RACF or VM: SECURE software, provide reliable protection. User interface. The user interface of mainframes has always been its weakest point. Now it has become possible for mainframe applications to provide a modern web interface in the shortest possible time and at minimal cost. Mainframes and supercomputers Supercomputers are machines that are at the peak of computing power available today, especially in the field of operations with numbers. Supercomputers are used for scientific and engineering purposes (high-performance computing, for example, in the field of meteorology or modeling of nuclear processes), where the limiting factors are processor power and the amount of RAM, while mainframes are used for integer operations, demanding data rate, reliability and simultaneous processing of transactions (ERP, online booking system, automated banking systems).
>>
Pattern
A pattern (design pattern) in software development, is a repetitive architectural solution to a common problem, which often arises within a design context. Typically, a pattern is not a complete template that can be directly converted to code. Rather, it is just a fragment of the design, which  can be used as a sample for creating similar constructions on different program areas. Object-oriented patterns show the relationships and interactions between classes or objects, without defining which end classes or application objects will be used. "Low-level" patterns, which take into account the specifics of a particular programming language, are called idioms. These are good design solutions specific to a particular language or software platform, and therefore are not universal. At the highest level, there are architectural patterns that cover the architecture of the entire software system. Algorithms are also inherently computing templates, because they solve developmental problems. Pros In comparison with fully independent design, patterns have several advantages. The main benefit of using templates is to reduce development complexity by ready-made abstractions that solve a whole class of problems. The pattern gives its name to the solution, which facilitates communication between developers, referring to known templates.Thus, at the expense of patterns details unification of decisions is made: modules, elements of the project, - the number of bugs decreases. The use of patterns conceptually akin to the use of ready-made code libraries. Having found a successful solution, a correctly formulated design pattern can be reused over and over again. A set of templates helps the developer to choose the most suitable design option. Cons Although a slight change in code under a well-known pattern can simplify the understanding of code, according to Steve McConnell two difficulties can be associated with the use of templates. First, blindly following a selected pattern the global structure of the program can be bloated, exploiting unnecessary code repetitions and increasing the complication of the program. Secondly, the developer may have a desire to implement some patterns without special reasons, instead of creating a new laconic solution.
>>
Usability
- This is how the software application is understood, studied, and navigated by users, often without difficulties and under specified conditions (ISO / IEC 25010); The property of a system, product or service, in which a particular user can operate it under certain conditions, with the chief purpose to achieve specified goals with required efficiency and satisfaction (ISO 9241-210). Usability ratings There are two main ways to assess the usability of the product: A direct evaluation based on the analysis of the effectiveness, efficiency and satisfaction achieved as a result of operating the product in real conditions: if in the above conditions one system is more ergonomic than the other, then the evaluation should detect this; Indirect evaluation based on an analysis of individual sub-characteristics that reflect certain properties of the system in the specified operating conditions. A direct evaluation in the standard ISO 9241-11 assumes that everything in the system depends on the right indicators, which affect the overall operation. This includes both organizational indicators (for example, labor skills, location or appearance of products), and specific and idiosyncratic differences between users, for example, unique preferences. Indirect evaluation in the ISO / IEC 25010 standard, describes the following usability characteristics: Appropriateness: the ability of the user to understand whether the product or system is suitable for his/her needs, based on initial impressions, documentation and other information provided; Learnability: the degree of effectiveness, productivity and user satisfaction by learning how to use the system; Operability (controllability): ensuring the ease of management and control; User error protection: the degree to which the system protects the user against errors; User interface aesthetics: the degree to which the user interface and interaction process satisfies the user; Accessibility: an opportunity to use a product or system by a wide range of people with a variety of abilities (including those with limited experience or knowledge). Overall the usability is checked via different user’s tests, covering a wide variety of behaviour from different representatives of the target audience. Many software and hardware tools are developed to monitor the user’s involvement in the process. Some of them, like eye tracker and web visor, help the site or app owners to tap into the visual reactions of the users, so as to create perfect dashboards, mobile interfaces and content design. To increase the usability of your internet platform, the regular usability tests are a necessity.
>>
Additional Terms of Software Design
See more words
Internet of Things (IoT)
Internet of Things (IoT) is a concept of a network of physical objects ("things") equipped with built-in technologies for interaction with each other or with the environment, considering the organisation of such networks as a phenomenon capable of restructuring economic and social processes, excluding from the part of actions and operations the need for human participation. For 2018, the term "Internet of Things" extends not only to cyberphysical systems for "home" use, but also to industrial facilities. Means of identification The involvement in the IoT of objects of the physical world, not necessarily equipped with means of connection to data transmission networks, requires the use of technologies for the identification of these items ("things"), as all techs used for automatic identification can be used as such technologies: optical identifiers barcodes, Data Matrix, QR codes), means of locating in real time. With the comprehensive dissemination of the "Internet of things", it is essential to ensure the uniqueness of object identifiers, which, in turn, requires standardisation. Measuring A special role in the Internet of things is played by measurement tools that ensure the information transformation about the external environment into machine-readable data, and thereby fill the computing environment with meaningful information. A wide range of measuring tools is used, from elementary sensors (for example, temperature, pressure, illumination), consumption meters (such as smart meters) to complex integrated measuring systems. Data transmission The range of possible data transmission technologies covers all possible means of wireless and wired networks. For wireless data transmission, qualities such as efficiency at low speeds, fault tolerance, adaptability, and the possibility of self-organization play a particularly important role in building the "Internet of things". Among wired technologies, PLC solutions - technologies for building data transmission networks over transmission lines play an important role in penetrating the "Internet of things", as many applications have access to power networks (for example, vending machines, ATMs, smart meters, lighting controllers are initially connected to the network power supply).
>>
Operating System (OS)
Operating system (OS) - a set of interrelated programs designed to manage computer resources, such as CPU, memory, file storage, input / output (I / O) devices, user interaction, and network connection. Unlike most programs that terminate after completing the task, the OS continues to run and eventually shut down when the computer is turned off. A modern multiprocessing OS allows the execution of processes, each of which belongs to a "thread" of the calculation used to execute the program. One form of multiprocessing is called timesharing, which allows multiple users to access the computer by quickly switching between them. The most sensitive and important task for modern operating systems is to allocate the CPU; Each process is allowed to use the CPU for a limited period, which can be a fraction of a second, and then it must be terminated and suspended until the next cycle. As it switches between processes, it saves all data. Mobile operating system (mobile OS) - an operating system for smartphones, tablets, PDAs or other mobile devices. Although laptops can be attributed to mobile devices, however, the operating systems commonly used on them are not considered mobile because they were originally developed for large stationary desktop computers that traditionally did not have special "mobile" functions, and did not need them. This difference is blurry in some new operating systems, representing a hybrid of both. Mobile OS combines the functionality of the PC OS with functions for mobile and handheld devices: touch screen, Bluetooth, Wi-Fi, GPS navigation, camera, speech recognition, voice recorder, music player, NFC and infrared remote control. Portable mobile devices (for example, smartphones) contain two operating systems: The main software platform for user interaction Low-level proprietary real-time OS. Modern operating systems for mobile devices include Android, iOS, Windows 10 Mobile, and others. Obsolete, now unsupported software platforms: Symbian, Windows Mobile, Palm OS, webOS, BlackBerry OS, Firefox OS, Ubuntu Touch, and others. Functions Execution of program requests (input and output of data, start and stop of other programs, allocation and freeing of additional memory, etc.). Standardized access to peripheral devices (input-output devices). Management of random access memory (RAM) - distribution between processes, organization of virtual memory. Providing a user interface. Saving information about system errors. Additional functions: Parallel or pseudo-parallel execution of tasks (multitasking). Effective allocation of resources of the computing system between processes. Prioritisation of processes and their access to resources. Interaction between processes: data exchange, mutual synchronization. Protection of the system itself, as well as user data and programs from user actions (malicious or ignorant) or software applications. Management of the multi-user access and control of different level of access rights. Special types of software called virtual machines can actually mimic "real" computers and run different operating systems from within them.
>>
Virtual Reality (VR)
Virtual reality (VR) is the computer-generated simulation of a three-dimensional world, which can be experienced by a person through equipement, usually headgear with sensors. VR simulates a realistic environment, in which actions and responses is performed in real time. The objects of VR usually behave closely to that of their counterparts in the real world. The user can act on these objects in accordance with the laws of physics (gravity, water properties, collision with objects, reflection, etc.). However, often for entertainment purposes, users of virtual worlds can go do things that are hitherto not possible in real life (for example: to fly or to rise from the dead.) Do not confuse virtual reality with augmented reality(AR). Their fundamental difference is that the VR constructs a new artificial world, and AR only brings in individual artificial elements into the perception of the real. Implementation Systems of "virtual reality" are devices that simulate interaction with the virtual environment, by affecting all five of the human senses. Currently, there are several basic types of systems that provide the formation and output of images in VR systems: Headset / virtual reality glasses (HMD - display) Modern headsets of virtual reality are glasses rather than a helmet, and contain one or more displays that show images for the left and right eyes, a lens system for adjusting the geometry of the image, and a tracking system for the device orientation in space. MotionParallax3D displays Devices of this type include many different gadgets: from some smartphones to rooms of virtual reality (CAVE). Systems of this type form the user's illusion of a three-dimensional object by outputting specially created projections of virtual objects. These are generated on the basis of information about the position of the user's eyes to one or several displays. Virtual retinal monitor Devices of this type form an image directly on an eye retina. As a result, a user sees an image "hanging" in the air in front of him.
>>
View all IT-related terms
Results for "DEV"
Logo Magora LTD
close
Get in touch
Do you agree to the personal data processing?


Logo Magora LTD
close
Thank you very much.

Your registration to the webinar on the 27th of September at 2 p.m. BST was successfuly completed.
We will send you a reminder on the day before the event.
Magora team
Registration for a webinar

"Let Smart Bots Speed up your Business"
Date: 27.09.2018 Time: 2 p.m. BST
Do you agree to the personal data processing?