Choosing a Theory
by Oleg Sovetnik
Software Products and Sociological Theories
Software development is becoming an increasingly complex and interdisciplinary task. The new approach proposed in the previous section suggests that successful software design should begin with the selection of a foundational sociological theory that allows for a deeper understanding and structuring of the domain. This approach not only helps to create more meaningful software products but also makes the development process more coherent, based on established sociological concepts.
Each area of software has its own unique tasks and characteristics, which determine the choice of an appropriate sociological theory. In the subsections, we delve into various types of software and the foundational theories that are most applicable to each.
Principles for Choosing a Foundational Theory
Every software solution is built upon a specific domain, tasks, and system structure. To select the appropriate theory, several key aspects must be considered:
-
Complex interactions between people, technology, and data.
In systems where complex interactions between people, technology, and data are essential, Actor-Network Theory (ANT) becomes a powerful tool. ANT posits that both people (actors) and technologies (artifacts) are equal participants in the network of interactions. This approach can be useful in projects where the role of technology and users as a unified system is crucial, such as in project management systems, cloud platforms, or e-commerce platforms. Applying ANT allows us to account for the dynamic nature of interactions and how they affect system performance and development. -
Nature of interaction within the system.
A key question is how users, data, or other system elements interact with each other. In systems with intensive communication between users, theories that describe social interactions (e.g., symbolic interactionism) can provide insight into user behavior and interface architecture. -
Hierarchy and structure levels.
In projects where complex organizational structures or interactions between different system levels are important (e.g., in corporate ERP systems), suitable concepts can be borrowed from structural functionalism or systems theory. -
Agent-based models.
In systems where each element or user acts as an independent agent (e.g., in artificial intelligence systems or trading platforms), theories focusing on individual actions and their motivations, such as action theory or post-structuralism, can play a key role. -
Goals and tasks of the software product.
For example, financial systems or analytical platforms are often associated with forecasting, risk management, and data interpretation, which require theories related to data analysis, risk, and information management.
Practical Application of Sociological Theories in Development
Once you have selected a foundational theory, the next step is operationalization—the process in which abstract concepts from the chosen theory are transformed into specific functional elements of the system. As in sociology, this process requires creating a model of interactions and representing them as software primitives, functions, and data.
We suggest the following approach:
- Start by analyzing your project in terms of goals and interactions, as if you were viewing it as a sociological system.
- Discuss the key elements of your project with the GPT system, framing your questions through the lens of sociological concepts. This will help uncover hidden aspects of the project’s structure and functionality.
- For additional analysis of theories and examples of their practical application, you can use analytical tools such as Perplexity to better understand the selected approaches and find examples of their application in software development.
Moving to a Detailed Selection of Theories
This systematic approach allows you not only to dive into the specifics of each area but also to make the design process more structured. We invite you to explore the relevant subsections, where each type of software is examined in terms of applicable sociological theories. This will help you begin working with the foundational theory that best suits your specific project.
After choosing a theory, you can proceed to the next step—conceptualization and operationalization, as described in the previous section.
sociology ideas conceptualization programming
Dive deeper
-
Social Networks
Granovetter's theory of strong and weak ties most effectively explains the dynamics of interactions in social networks, considering the variety of social connections that users maintain through these platforms.
-
Enterprise Systems
For enterprise systems, structural functionalism may be the most suitable theory, as it allows for building a hierarchy of interactions where each module performs a specific function within the overall system.
-
Security
For security management systems, Actor-Network Theory (ANT) is applicable. It explains the complex interactions between security elements such as users, technologies, data, and threats.
-
Game Industry
For game development, the most suitable theory is Multiple Worlds Theory, and for distribution, the theory of institutionalization is appropriate.
-
Automation of Production
For game development, Multiple Worlds Theory is most suitable, while for distribution, Institutionalization Theory applies.
-
Artificial Intelligence
For game development, Multiple Worlds Theory is most suitable, while for distribution, Institutionalization Theory applies.
-
Financial Systems
For financial systems, Luhmann's systems theory is applicable, as it allows for describing how payment gateways, banking platforms, and financial planning systems exchange and process data, functioning as closed systems with internal logic.
-
Information Systems
Actor-Network Theory (ANT) is suitable for analyzing information systems. This theory allows viewing content management systems, knowledge management systems, and document management systems as complex networks of interactions between users, technologies, and data.
-
Cloud Platforms
The theory of networks and platforms is well-suited for analyzing cloud platforms. It allows viewing PaaS, IaaS, and SaaS as ecosystems where users and developers interact with virtualized infrastructure and services.
-
Project Management Systems
Giddens' Structuration Theory is suitable for project management systems as it allows analyzing the interaction between structures and actions as an interdependent process.
-
Big Data and Analytics
Actor-Network Theory (ANT) is well-suited for Big Data and analytics platforms. It enables us to view data, algorithms, machine learning models, and users as interdependent participants in a network.
-
Communication Platforms
Friedrich Krotz's Mediatization Theory is well-suited for communication platforms. It views messengers and video conferencing systems as technologies that reshape social and corporate communications.
-
E-commerce and Marketplaces
The most suitable theory for e-commerce and marketplaces is Michel Callon's Market Mediation Theory, which thoroughly explains the role of platforms as intermediaries managing interactions between market participants, setting standards for behavior, payment, and logistics.
-
Streaming and Multimedia
For content management systems and streaming services, Actor-Network Theory (ANT) is applicable. This theory effectively describes interactions between system elements, including users, content, technologies, and algorithms.