Browse Definitions :
Definition

module

What is a module?

A module is a distinct assembly of components that can be easily added, removed or replaced in a larger system. Generally, a module is not functional on its own. In computer hardware, a module is a component that is designed for easy replacement. In computer software, a module is an extension to a main program dedicated to a specific function. In programming, a module is a section of code that is added in as a whole or is designed for easy reusability.

What are hardware modules?

For hardware, a module is an assembly of parts designed to be added and removed from a larger system easily. An example of a hardware module is a stick of RAM. Most modules are not functional on their own. They need to be connected to a larger system or be part of a system made up of several modules.

The concept of modularity or being made up of modules is common in computer hardware. A modular system has many advantages allowing for ease of repair, upgrade and extension of functionality. The various modules can be swapped out as needed. Standardization of hardware as interconnects enables several vendors to produce modules creating better choice for consumers.

RAM modules
A RAM stick is an example of a hardware module.

While most systems are modular, the term module is not applied to all components in everyday speech. The expression module is often reserved for add-ins that are easy to remove and are boxy in shape. Some common examples are networking small form-factor pluggable modules, Mobile PCI Express Modules and dual in-line memory module RAM.

Embedded and industrial systems are beginning to use compute modules. These are entire single-board computers with connectors so they can be easily installed in a system. These are often used in digital signage or industrial equipment where the main equipment may have a long life span, but they want the ability to easily upgrade the computing performance in the future.

What are software modules?

Large software packages may have modules to define the sections of its functionality. This is often used to make the software easier to use for a specific use case or to define where boundaries exist in a program.

There are several ways that software can be modular.

Enterprise resource planning (ERP) may implement separate modules for financing, ordering and human resources. This way, each job role only needs to know the functionality of its specific module within the program, instead of being familiar with the entire software suite.

enterprise resource planning (ERP) software
Enterprise resource planning (ERP) employs individual modules for different areas, such as finance, human resources, supply chain management, materials management and customer relationship management.

The same underlying computer-aided design software, for example, may have different add-in modules for the various disciplines that may use it, such as an architecture or mechanical engineering module.

Photo editing software may have a RAW file development module to show the extra controls for RAW files and to signify that this portion must be done separately from the other software functionality.

What are computer programming modules?

Modular programming seeks to create separate portions of a program with isolated functionality. These smaller portions can be coded by different teams and then put together into the larger program. These may be called modules, assemblies or packages. In the Java programming language, a module is a distribution format combining the packages and how they are distributed.

These modules are often designed to be reusable. These can be called by the program as needed or used for different areas of the program. A program may import external modules programmed by others. These may also be called a library. Using modules maintained by others is increasingly becoming an attack vector for introducing malware through supply chain attacks.

See also: microservices, 3-tier application architecture, data center in a box, modular PC, hardware security module and ERP finance module.

This was last updated in June 2022

Continue Reading About module

Networking
  • firewall as a service (FWaaS)

    Firewall as a service (FWaaS), also known as a cloud firewall, is a service that provides cloud-based network traffic analysis ...

  • private 5G

    Private 5G is a wireless network technology that delivers 5G cellular connectivity for private network use cases.

  • NFVi (network functions virtualization infrastructure)

    NFVi (network functions virtualization infrastructure) encompasses all of the networking hardware and software needed to support ...

Security
  • virus (computer virus)

    A computer virus is a type of malware that attaches itself to a program or file. A virus can replicate and spread across an ...

  • Certified Information Security Manager (CISM)

    Certified Information Security Manager (CISM) is an advanced certification that indicates that an individual possesses the ...

  • cryptography

    Cryptography is a method of protecting information and communications using codes, so that only those for whom the information is...

CIO
  • B2B (business to business)

    B2B (business-to-business) is a type of commerce involving the exchange of products, services or information between businesses, ...

  • return on investment (ROI)

    Return on investment (ROI) is a crucial financial metric investors and businesses use to evaluate an investment's efficiency or ...

  • big data as a service (BDaaS)

    Big data as a service (BDaS) is the delivery of data platforms and tools by a cloud provider to help organizations process, ...

HRSoftware
  • talent acquisition

    Talent acquisition is the strategic process an organization uses to identify, recruit and hire the people it needs to achieve its...

  • human capital management (HCM)

    Human capital management (HCM) is a comprehensive set of practices and tools used for recruiting, managing and developing ...

  • Betterworks

    Betterworks is performance management software that helps workforces and organizations to improve manager effectiveness and ...

Customer Experience
  • martech (marketing technology)

    Martech (marketing technology) refers to the integration of software tools, platforms, and applications designed to streamline ...

  • transactional marketing

    Transactional marketing is a business strategy that focuses on single, point-of-sale transactions.

  • customer profiling

    Customer profiling is the detailed and systematic process of constructing a clear portrait of a company's ideal customer by ...

Close