Atomic Design
A methodology for creating design systems by breaking down interfaces into their basic components (atoms, molecules, organisms, templates, and pages). Essential for creating scalable and maintainable design systems.
A methodology for creating design systems by breaking down interfaces into their basic components (atoms, molecules, organisms, templates, and pages). Essential for creating scalable and maintainable design systems.
A collection of reusable components, guided by clear standards, that can be assembled to build any number of applications, ensuring consistency and efficiency. Crucial for maintaining design consistency and efficiency across products.
The high-level structure of a software application, defining its components and their interactions. Essential for designing robust, scalable, and maintainable digital products.
A system of design variables used to maintain consistency in a design system, such as colors, fonts, and spacing. Crucial for ensuring uniformity and scalability in design across different platforms and products.
Fundamental guidelines that inform and shape the design process, ensuring consistency, usability, and effectiveness in product creation. Essential for creating coherent, user-centered designs that align with organizational goals and user needs.
The orchestration and optimization of design operations to improve efficiency, quality, and impact of the design function within an organization. Crucial for enhancing the efficiency and effectiveness of design teams.
The structural design of a product, defining its components, their relationships, and how they interact to fulfill the product's purpose. Important for ensuring that a product is well-organized, scalable, and maintainable.
The degree to which a system's components may be separated and recombined, often used in the context of software or hardware design. Important for enhancing flexibility, reusability, and ease of maintenance in design.
3-Tiered Architecture is a software design pattern that separates an application into three layers: presentation, logic, and data. Crucial for improving scalability, maintainability, and flexibility in software development.
A design approach that divides a system into smaller parts or modules that can be independently created, modified, replaced, or exchanged. Crucial for creating flexible, scalable, and maintainable systems.
A collection of reusable UI components that can be used to build applications. Helps in maintaining consistency and efficiency in the design and development process.
Representational State Transfer (REST) is an architectural style for designing networked applications based on stateless, client-server communication. Essential for building scalable and efficient web services.
Numeronym for the word "Modularization" (M + 12 letters + N), dividing a system into separate, interchangeable modules that can be developed, tested, and maintained independently. Important for improving maintainability and scalability of systems.
A cognitive bias where people underestimate the complexity and challenges involved in scaling systems, processes, or businesses. Important for understanding the difficulties of scaling and designing systems that address these challenges.
The Principle of Growth is an information architecture guideline that plans for the future expansion and evolution of a system. Crucial for ensuring that information structures can scale and adapt over time.
A professional responsible for designing and managing data structures, storage solutions, and data flows within an organization. Important for ensuring efficient data management and supporting data-driven decision-making in digital product design.
Tell, Don't Ask (TDA) is a design principle in software engineering that promotes encapsulation by having objects handle their own data and actions. Essential for maintaining object-oriented integrity and reducing dependencies in the code.
A methodology for building software-as-a-service apps that emphasizes best practices for development, deployment, and scalability. Important for creating scalable, maintainable, and efficient digital products.
Model-View-Controller (MVC) is an architectural pattern that separates an application into three main logical components: the Model (data), the View (user interface), and the Controller (processes that handle input). Essential for creating modular, maintainable, and scalable software applications by promoting separation of concerns.
A collection of pre-written code and tools that provide a foundation for building the front end of websites and applications, such as Bootstrap or React. Crucial for streamlining the development process and ensuring consistency.
The Principle of Objects is an information architecture guideline that treats content as living, distinct entities with behaviors and attributes. Crucial for creating modular, reusable, and flexible content structures.
The ability of a system, product, or process to handle increased loads or expand without compromising performance or efficiency. Essential for ensuring that products and systems can grow and adapt to increasing demands.
A programming paradigm that uses objects and classes to structure software design, promoting reusability and scalability. Crucial for developing maintainable and scalable software systems.
Model-Based Systems Engineering (MBSE) is a methodology that uses visual modeling to support system requirements, design, analysis, and validation activities throughout the development lifecycle. Essential for managing complex systems, improving communication among stakeholders, and enhancing the overall quality and efficiency of systems engineering processes.
A research method in which participants interact with a series of potential product concepts in quick succession, providing rapid feedback on multiple ideas. Useful for quickly gathering user feedback on various concepts and iterating based on their preferences.
Entity Relationship Diagram (ERD) is a visual representation of the relationships between entities in a database. Essential for designing and understanding the data structure and relationships within digital products.
A design approach that focuses on building a robust core experience first, then adding more advanced features and capabilities for users with more capable browsers or devices. Essential for ensuring a consistent and accessible user experience across different devices and browsers.
Numeronym for the word "Virtualization" (V + 12 letters + N), creating virtual versions of physical resources, such as servers, storage devices, or networks, to improve efficiency and scalability. Crucial for optimizing resource use and improving scalability.
A type of model architecture primarily used in natural language processing tasks, known for its efficiency and scalability. Essential for state-of-the-art NLP applications.
Don't Repeat Yourself (DRY) is a software development principle for reducing repetition and redundancy. Essential for creating efficient, maintainable, and scalable code in digital product design.
ModelOps (Model Operations) is a set of practices for deploying, monitoring, and maintaining machine learning models in production environments. Crucial for ensuring the reliability, scalability, and performance of AI systems throughout their lifecycle, bridging the gap between model development and operational implementation.
A professional who designs, builds, and maintains systems for processing large-scale data sets. Essential for enabling data-driven decision-making and supporting advanced analytics in organizations.
SAFe is a framework designed to scale agile practices across large organizations by integrating agile and lean principles. It is widely used but criticized for its rigidity, bureaucratic structure, and potential to stifle true agile culture.
The process of defining and creating algorithms to solve problems and perform tasks efficiently. Fundamental for software development and creating efficient solutions.
Redundant, outdated, or unnecessary code or design elements that accumulate over time in a system. Important for identifying and removing to maintain clean, efficient, and maintainable systems and interfaces.
Domain-Driven Design (DDD) is an approach to software development that focuses on modeling the business domain and its logic. Essential for aligning software development with business needs and creating maintainable systems.
A pattern of rapid and sustained growth after a period of linear or stagnant growth, resembling the shape of a hockey stick. Crucial for understanding and planning for rapid expansion phases in digital product lifecycle and business strategy.
Agile Release Train (ART) is a long-lived team of Agile teams that, along with other stakeholders, incrementally develops, delivers, and operates one or more solutions in a value stream. Important for coordinating Agile development and delivery at scale.
Business Rules Engine (BRE) is a software system that executes one or more business rules in a runtime production environment. Crucial for automating decision-making processes and ensuring consistency and compliance in digital products.
World Wide Web Consortium (W3C) is an international community that develops open standards to ensure the long-term growth of the Web. Essential for creating and maintaining protocols and guidelines that enable the Web to function and evolve.
Reinforcement Learning from Human Feedback (RLHF) is a machine learning technique that uses human input to guide the training of AI models. Essential for improving the alignment and performance of AI systems in real-world applications.
Enterprise Resource Planning (ERP) are integrated software systems that manage business processes across various departments, such as finance, HR, and supply chain. Essential for improving operational efficiency and providing a unified view of business operations.