The Circle Model: A Circular Approach to Feature Development in Software Engineering
Abstract
Software development
methodologies have continuously evolved to address the growing complexity of
modern applications. This paper introduces the Circle Model, an innovative
framework inspired by the circular dynamics of the solar system. The model
emphasizes principles of modularity, interdependency, and collaboration to
provide an effective approach to software design and feature development.
At the core of the Circle
Model lies the concept of interconnected modular units, represented as circles.
Each circle functions as an independent module capable of operating
autonomously. However, the development of new features necessitates
collaboration between these circles, highlighting their interdependent nature.
The central circle acts as the core module, analogous to the sun in the solar
system, governing and stabilizing the interconnected system. Surrounding
circles, akin to planets, revolve around this core, representing secondary
modules contributing to the overall system functionality.
The features within the model are
metaphorically described as gravitational forces, maintaining cohesion and
ensuring the smooth interaction between modules. Without these forces, the
system risks collapsing due to a lack of connectivity and collaboration.
Supporting elements, such as stars and comets, represent external tools, data
sources, or third-party resources that enhance functionality and bridge gaps
between modules.
The Circle Model offers a structured yet flexible approach to managing complex, multidisciplinary software projects by leveraging interdependencies and shared resources. This paper delves into the theoretical underpinnings of the model, its applications across various domains, and its potential to streamline feature development, reduce redundancy, and enhance modular scalability. By aligning natural principles with software engineering, the Circle Model sets a foundation for innovative problem-solving in the evolving technological landscape.
1. Introduction
Modern software projects often
involve diverse domains, technologies, and stakeholders, presenting challenges
that traditional linear and modular approaches may fail to address effectively.
These methodologies, while useful, often overlook the complex interdependencies
and dynamic relationships inherent in multidisciplinary projects. To address
these challenges, this paper introduces the Circle Model, a circular, interconnected
framework inspired by the dynamics of a solar system.
The Circle Model redefines software development by emphasizing interdependency and collaboration. In this model, each module, represented as a circle, functions as a complete, standalone unit with its own defined scope and objectives. However, the true strength of the model lies in its ability to foster collaboration between these circles. Modules share resources, tools, and insights, enabling seamless integration and the generation of new features. This interconnected structure reflects the relationships observed in natural systems, where components are self-sufficient yet dependent on their interactions for overall stability.
The central circle in the
model serves as the project's core, akin to the sun in a solar system. It
governs the cohesion and alignment of all other modules, ensuring a unified
direction and purpose. Surrounding circles, representing secondary modules,
revolve around the central circle, contributing their unique functionalities
while maintaining interdependence. Features, acting as gravitational forces,
hold the system together by ensuring that modules remain aligned and interact
meaningfully. Supporting elements, symbolized by stars, comets, and other
celestial bodies, represent external tools, data sources, and third-party
resources that enhance development and operational efficiency.
This paper delves into the theoretical underpinnings of the Circle Model, outlining its principles, structure, and real-world applications. A case study based on the AgriSmart project demonstrates the utility of the model in managing complex, multidisciplinary software initiatives. By fostering interdependency and modular collaboration, the Circle Model provides a flexible and scalable solution to address the challenges of modern software development.
2. Theoretical Foundation
The Circle Model introduces a
new way of visualizing and implementing software development by leveraging
circular dynamics and interdependencies. This section explores the principles
underpinning the model and compares it with existing methodologies to highlight
its distinct advantages.
2.1 Circular Dynamics in Software
Development
The Circle Model draws inspiration
from natural systems, particularly the solar system, to provide a visual and
functional analogy for software development. This analogy helps explain how
different components (modules) of a software system interact with each other in
a balanced, interdependent manner. The key aspects of the Circle Model are as
follows:
- The Central Circle (Sun)
- The central circle represents
the core module or the main functionality of the software system.
- It acts as the governing
entity, ensuring alignment and stability across all other modules. For
example, in a project like AgriSmart, the central circle could represent
the system’s data processing and analytics module, which integrates
inputs from all other components.
- Peripheral Circles (Planets)
- The peripheral circles
represent independent modules, each capable of functioning autonomously.
- These modules revolve around
the central circle and contribute specific features or functionalities,
such as user interfaces, external integrations, or specialized services
like weather forecasting or soil analysis.
- While these modules are
self-contained, they rely on the central circle for integration and
coherence, especially when new features are introduced.
- Features as Gravitational
Forces
- Features serve as the gravitational
forces that maintain alignment and interaction between modules.
- Just as gravity ensures that
planets remain in orbit, features establish relationships between
modules, ensuring collaboration and preventing fragmentation. For
instance, in the AgriSmart project, a feature like "real-time
weather alerts" would require data from both the IMD module and the
analytics core.
- Supporting Elements (Stars,
Comets, etc.)
- Supporting elements represent
external dependencies that enhance the system’s functionality.
- These could include APIs,
libraries, third-party tools, or external data sources. In software
projects, these elements play a critical role in bridging gaps between
modules and providing additional capabilities. For instance, a satellite
imagery API integrated into AgriSmart acts as a comet, delivering essential
data for crop monitoring.
This dynamic structure ensures that
the entire system remains cohesive while allowing individual modules to evolve
independently.
2.2
Comparison with Existing Models
To fully appreciate the value of the
Circle Model, it is important to compare it with traditional software
development methodologies:
- Waterfall Model
- The Waterfall Model follows a
rigid, linear process where each phase must be completed before moving to
the next.
- While effective for simple,
well-defined projects, it lacks the flexibility to accommodate dynamic
interdependencies or iterative feature development.
- In contrast, the Circle Model
inherently supports dynamic interactions between modules, allowing for
continuous evolution and feature integration.
- Agile Development
- Agile methodologies promote
iterative and incremental development, with a strong focus on
adaptability and collaboration.
- However, Agile lacks a
structured visualization of modular interdependencies. Teams often
struggle to understand the relationships between components, leading to
inefficiencies.
- The Circle Model complements
Agile by providing a clear, circular representation of interdependent
modules. This visual clarity aids in planning, communication, and
decision-making, especially in multidisciplinary projects.
- Venn Diagram-Based Models
- Venn diagrams are often used
to depict overlapping functionalities or shared components in software
systems.
- However, these models are
static and do not capture dynamic relationships like feature dependencies
or the flow of data between modules.
- The Circle Model builds upon
the concept of overlaps but adds a dynamic dimension, emphasizing how
modules influence each other through shared features and resources.
Key
Advantages of the Circle Model over existing models
- Flexibility with Structure:
While retaining the flexibility of Agile, the Circle Model introduces a
structured approach to visualizing and managing interdependencies.
- Focus on Collaboration:
By highlighting the need for collaboration between modules, the model
ensures a balanced development process.
- Enhanced Scalability:
The modular nature of the Circle Model makes it easier to scale projects.
New modules can be added without disrupting the existing system, provided
they align with the central circle.
- Integration of External
Dependencies: The inclusion of supporting
elements like APIs and libraries ensures that external resources are
seamlessly integrated into the system.
In conclusion, the Circle Model
provides a robust framework for managing modern software projects. Its emphasis
on circular dynamics and interdependencies addresses the limitations of
traditional approaches, offering a scalable, collaborative, and structured
solution for complex, multidisciplinary software systems.
3. Structure of the Circle Model
The Circle Model is designed to
manage the complexities of modern software development projects by visualizing
the system as a collection of interdependent components. Its structure enables
flexibility, scalability, and resilience while emphasizing collaboration and
modularity. This section explores the key components and the working mechanism
of the Circle Model.
3.1 Components
The Circle Model consists of four
primary components: the core circle, peripheral circles, features, and supporting
elements. Each component plays a specific role in ensuring the system's
stability, adaptability, and functionality.
- Core Circle
- Definition:
The core circle is the central module of the software system. It serves as the governing entity that aligns and integrates all other modules (peripheral circles). - Role:
- Governs the system’s primary
objectives, ensuring the alignment of all modules.
- Acts as the anchor, providing
stability and coherence to the entire system.
- Example:
In a software application like AgriSmart, the core circle could represent the main data analytics and processing engine. This module ensures that all inputs, such as weather data or soil health, are integrated into actionable insights. - Peripheral Circles
- Definition:
Peripheral circles are independent modules responsible for specific functionalities. These modules operate autonomously but interact with other circles for feature development. - Role:
- Represent distinct parts of
the system, such as user interfaces, backend logic, or data storage.
- Capable of standalone
operations but rely on shared dependencies to work cohesively with the
rest of the system.
- Example:
In the AgriSmart project, peripheral circles might include modules for real-time weather monitoring, crop health analysis, and farmer advisory tools. Each of these modules is self-sufficient but interacts with the core module to deliver unified outputs. - Features (Gravitational Forces)
- Definition:
Features act as the "gravitational forces" that drive interactions between the core circle and peripheral circles. Without features, the entire system would lack cohesion. - Role:
- Ensure that modules are
interconnected and interdependent, maintaining the stability of the
system.
- Act as the primary drivers
for collaboration between circles.
- Example:
A feature like "multi-language support" in AgriSmart would require collaboration between the user interface module and the core processing engine, ensuring the software adapts to diverse user needs.
- Supporting Elements
- Definition:
Supporting elements are external dependencies, such as APIs, third-party libraries, cloud services, or external datasets, that enhance the system's functionality. - Role:
- Provide additional resources
and capabilities to the peripheral circles.
- Act as a safety net in case
of system weaknesses, reinforcing unstable modules.
- Example:
A weather API integrated into the AgriSmart system acts as a supporting element, providing real-time data for decision-making.
3.2 Working Mechanism
The Circle Model emphasizes dynamic
interaction and interdependency between components to enable seamless feature
integration, robust interdependency management, and effective failure handling.
- Feature Integration
- Process:
- When introducing a new
feature, the relevant circles interact through their overlapping areas,
representing shared dependencies.
- Features act as the glue that
binds different modules, enabling smooth integration without disrupting
existing functionalities.
- Key Principle:
Seamless feature integration requires well-defined interdependencies between modules. - Example:
To implement "AI-based pest detection" in AgriSmart, the core analytics module would need to collaborate with the peripheral module handling image processing and external APIs providing pest data. - Interdependency Management
- Process:
- Overlaps between circles
represent shared functionalities, such as data exchange, resource
sharing, or process synchronization.
- The model ensures that no
module operates in isolation when implementing system-wide features.
- Key Principle:
Managing overlaps effectively prevents redundancies and ensures efficient use of shared resources. - Example:
In AgriSmart, the weather monitoring module and crop advisory module share data on climatic conditions to provide real-time recommendations to farmers. - Failure Management
- Process:
- If gravitational forces
(features) become insufficient, the system risks destabilization,
leading to collapsing circles or disrupted interactions between modules.
- Supporting elements mitigate
such risks by reinforcing weaker modules, ensuring system-wide
stability.
- Key Principle:
Robust failure management relies on a combination of redundancy, external support, and adaptive features. - Example:
If the crop health analysis module in AgriSmart fails due to inaccurate data, an external supporting element like a satellite imagery API can compensate for the missing input, restoring functionality.
4. Application of the Circle Model
Case
Study: AgriSmart
The Circle Model was implemented in
the development of AgriSmart, an innovative agricultural technology
platform designed to address major challenges such as crop loss, real-time data
management, and sustainability. This case study explores how the Circle Model's
principles and components were used to design, develop, and optimize
AgriSmart’s operations, highlighting its practical benefits in a
multidisciplinary project.
4.1 Core Circle: AgriSmart
Platform
The AgriSmart platform served
as the core circle, anchoring the system and representing the platform’s
primary functionality. Its role was to act as the central hub, bringing
together all data, tools, and processes into a unified framework. The core
circle managed the overall workflow, integrating functionalities from
peripheral circles and ensuring that the platform remained stable and cohesive.
Key responsibilities of the core
circle included:
- Data Processing:
Aggregating data from peripheral modules, such as weather updates, soil
health, and market trends, into actionable insights for farmers.
- Decision-Making:
Facilitating decision-making by ensuring that modules interact efficiently
to provide holistic solutions, like predictive analytics for crop
diseases.
- Platform Governance:
Maintaining the stability of the system by overseeing dependencies and
ensuring the seamless collaboration of all modules.
The centrality of this module
ensured that all peripheral circles operated in harmony, driving the success of
the platform.
4.2 Peripheral Circles
The peripheral circles in the
AgriSmart platform represented independent modules, each contributing specific
functionalities. While these modules could operate independently, their full
potential was realized through collaboration and interdependency with the core
circle and other modules.
- AI & AGI Modules:
- Leveraged artificial
intelligence (AI) and artificial general intelligence (AGI) to provide
predictive analytics for farming.
- Offered solutions for crop
selection, disease management, and yield optimization.
- Enabled farmers to make
informed decisions by predicting weather patterns and crop diseases with
high accuracy.
- Drone Technology:
- Facilitated precision
monitoring of farmlands, ensuring accurate data collection on crop
health, irrigation, and pest infestations.
- Allowed real-time aerial
imaging to detect anomalies in crops and assess large areas efficiently.
- Data Integration Module:
- Handled the integration of
real-time meteorological and soil health data from external sources such
as the Indian Meteorological Department (IMD).
- Ensured that data from
multiple sources was processed and presented in a user-friendly format.
- Acted as a bridge between
various external databases and the core platform.
These modules, while independent in
their specific functionalities, relied on interdependencies for enhanced
performance, mirroring the collaborative dynamics outlined in the Circle Model.
4.3 Features: The Gravitational
Forces
In the Circle Model, features act as
gravitational forces that drive interaction and alignment between the
core and peripheral modules. For AgriSmart, the key features included:
- Crop Disease Prediction:
- Enabled by the AI module, this
feature used real-time data and predictive algorithms to identify
potential crop diseases early, minimizing losses.
- Weather Advisory:
- Integrated with IMD data, this
feature provided farmers with localized, accurate weather updates to
optimize planting, irrigation, and harvesting schedules.
- Marketplace Integration:
- Connected farmers to buyers
and suppliers, creating a seamless supply chain ecosystem.
- Enabled price comparisons,
resource procurement, and financial transactions directly through the
platform.
These features ensured that the
system remained cohesive, with modules working together to deliver
comprehensive and actionable outputs.
4.4 Supporting Elements: The
External Resources
External dependencies, referred to
as supporting elements, played a crucial role in enhancing the
platform’s capabilities. For AgriSmart, these included:
- External Databases:
- The Indian Meteorological
Department (IMD) database provided critical weather data.
- Soil health and agricultural
policy databases offered insights for better decision-making.
- APIs:
- Tools like Google Earth Engine
(GEE) allowed for high-precision mapping and satellite imaging to monitor
farmlands.
- Open-source libraries and APIs
facilitated seamless data integration and processing.
- Policy Guidelines:
- Government guidelines and
frameworks ensured that the platform adhered to legal and ethical
standards, particularly for data privacy and farmer welfare.
These elements reinforced the core
and peripheral modules, ensuring that the system remained stable and effective
even under challenging conditions.
4.5 Outcome
The application of the Circle Model
to AgriSmart led to several significant benefits:
- Improved Collaboration:
- The clear visualization of
interdependencies enabled smoother communication between development
teams, resulting in better coordination.
- Efficient Feature Development:
- The modular structure of the
Circle Model allowed teams to focus on specific functionalities without disrupting
the overall system, enabling faster development of new features.
- Reduced Redundancy:
- Shared resources and
overlapping areas between modules were optimized, reducing duplication of
effort and enhancing system efficiency.
- Enhanced Stability:
- The model’s focus on
interdependencies ensured that the system remained cohesive and
resilient, even during feature updates or system modifications.
5.
Future Directions
The Circle Model has immense
potential to evolve and expand its applicability across various domains. While
its implementation in projects like AgriSmart has already showcased its
utility, there are several avenues for further development and improvement.
Below are the key future directions for the Circle Model:
5.1. Tool Development
One of the primary goals is to
create specialized software tools that automate the visualization and
management of the Circle Model. These tools would:
- Provide a graphical interface
for developers to visualize the interconnections between the core circle,
peripheral circles, and supporting elements.
- Enable real-time monitoring of
dependencies and overlaps between modules.
- Allow teams to simulate feature
integration and identify potential risks or bottlenecks before
implementation.
- Facilitate collaboration by
offering centralized documentation and resource tracking for all modules.
Such tools would make the Circle
Model more accessible, enabling developers and project managers to implement it
efficiently in a variety of projects.
5.2. AI Integration
Artificial intelligence (AI) can
significantly enhance the Circle Model’s functionality by predicting
interdependencies and optimizing resource allocation. By integrating AI, the
model could:
- Predict Interdependencies:
Machine learning algorithms could analyze historical data to identify
patterns in module interactions and predict potential overlaps or
conflicts.
- Optimize Resource Allocation:
AI can help allocate resources, such as computing power or team efforts,
to modules based on their importance and urgency within the system.
- Automate Feature
Prioritization: By analyzing user needs and
system requirements, AI can recommend which features should be developed
or integrated first.
- Enhance Risk Management: AI-powered tools could identify weak links in the system and recommend solutions to reinforce stability, preventing potential failures.
5.3. Broader Applications
The Circle Model’s flexibility makes
it suitable for applications beyond software development. Some of the areas
where it could be applied include:
- Healthcare:
Managing complex systems like hospital management, telemedicine, and
patient data integration. The core circle could represent the hospital's
central management system, while peripheral circles handle specialized departments
like diagnostics, pharmacy, and patient care.
- Smart Cities:
The Circle Model can organize interdependent systems such as
transportation, energy, water supply, and waste management. For example,
smart grids and IoT-enabled devices can serve as peripheral circles,
working collaboratively under a central governance module.
- Education Projects:
In educational platforms, the model can structure content delivery,
student progress tracking, and teacher collaboration. The core circle
could be the learning management system, while peripheral circles handle
analytics, resource management, and course customization.
By
pursuing these directions, the Circle Model can evolve into a universally
applicable framework, revolutionizing how complex projects are designed and
managed. Its adaptability and emphasis on interdependencies make it a promising
approach for addressing modern challenges across industries.
6. Advantages of the Circle Model
The Circle Model offers several
advantages over traditional software development frameworks, making it a
powerful tool for managing complex and multidisciplinary projects. Below are
the key benefits of this innovative approach:
1.
Enhanced Modularity
- Each circle represents a self-contained module capable
of independent functioning.
- The modular structure simplifies debugging, testing,
and scaling individual components without disrupting the entire system.
- Modules can be developed in parallel, saving time and
promoting efficiency.
2.
Strong Interdependency Management
- The model explicitly visualizes
the interdependencies between different modules, helping teams identify
shared resources and overlapping functionalities.
- Dependencies are managed
systematically, reducing conflicts and redundancies during feature
development.
3.
Flexibility in Feature Development
- The Circle Model enables
seamless integration of new features by leveraging overlaps between
circles.
- Teams can adapt quickly to
changing requirements, as interdependencies are well-defined and
manageable.
4.
Improved Collaboration
- The model fosters better
communication among teams by clearly defining the roles and interactions
of each module.
- Visualizing shared resources
helps teams coordinate effectively, avoiding duplication of efforts.
5.
Scalability for Large Projects
- By organizing complex systems
into interconnected modules, the Circle Model scales effectively for large
and multidisciplinary projects.
- It accommodates the addition of
new modules or features without disrupting the overall structure.
6.
Intuitive Framework
- The solar system analogy makes the model easy to
understand and implement, even for non-technical stakeholders.
- Visual representation of modules and their interactions
aids in project planning and decision-making.
7.
Risk Management
- The model emphasizes the
importance of maintaining balance and stability through features
(gravitational forces) and supporting elements (external resources).
- By identifying and reinforcing
weaker modules, the risk of system failure is minimized.
8.
Reduced Redundancy
- Overlaps between circles are
optimized to ensure shared resources are used efficiently.
- This reduces duplication of
efforts, saving time and resources during development.
9.
Cross-Domain Applicability
- The Circle Model is versatile
and can be applied to projects in diverse fields such as agriculture,
healthcare, smart cities, and education.
- Its adaptability makes it a
valuable tool for managing multidisciplinary projects involving multiple
technologies and stakeholders.
10.
Encourages Innovation
- The dynamic and interconnected
structure encourages creative solutions and collaboration across modules.
- Teams can experiment with
innovative features and configurations without compromising the system’s
stability.
7. Disadvantages
The Circle Model, as described in
your book The Incomplete Circle (Beyond and Inside the Dot), suggests an
interconnected and holistic approach to understanding existence and the
universe. While this model provides a unique framework for exploring complex
ideas, there are several potential disadvantages or limitations to consider:
1.
Over-Simplification of Complex Ideas:
The circle model, by its nature, may reduce complex concepts such as the nature
of time, dreams, or existence into a circular or linear structure. This could
oversimplify the multifaceted and unpredictable nature of these phenomena,
potentially neglecting the complexity and nuances involved.
2.
Limited Perspective: The circular
framework may inherently limit how we perceive certain ideas. By focusing on a
closed system (the circle), it might exclude alternative perspectives, leading
to a narrowed understanding. This could prevent the exploration of ideas that
lie outside this structure, such as infinite or chaotic systems that do not fit
neatly into the "dot" or "circle."
3.
Interpretation Bias: The structure of
the circle may push readers or thinkers toward interpreting everything within
the constraints of the circle model. This could result in a bias toward
circular reasoning and limit the exploration of more dynamic, evolving, or
emergent properties in concepts like energy, frequency, and time.
4.
Perception of Completeness: The idea
of the circle potentially conveys a sense of completeness or finality that may
not exist in the real world. Many concepts, especially those related to the
universe and existence, may be ongoing, fragmented, or evolving, and the circle
might create an illusion of a finished, closed system that doesn’t leave room
for further exploration or growth.
5.
Cultural and Philosophical Constraints:
The circle as a model may be influenced by certain cultural or philosophical
biases, limiting its universal applicability. In some traditions, a circle
might symbolize unity and wholeness, but in others, it may represent cyclical
patterns or boundaries. This could potentially conflict with alternative models
of thought, such as those from non-Western philosophies, quantum mechanics, or
other interdisciplinary fields.
6.
Abstract Representation: While the
circle can be a compelling metaphor for interconnectedness, it may be too
abstract for practical or scientific application. In fields like physics,
biology, or even psychology, this model may lack the precision needed to
address specific phenomena or to form tangible hypotheses that can be tested or
measured.
7. Difficulties with Infinite Concepts: The circle
is finite, which may pose challenges when attempting to model infinite concepts
such as the universe's boundaries, time, or the infinite progression of
existence. It may not adequately account for the infinite or boundless nature
of these ideas.
These disadvantages reflect the
potential limitations of using the circle as a comprehensive model for
explaining the universe and existence. However, such limitations also open up
the possibility for refining and adapting the model further in future
explorations.
8. Conclusion
The Circle Model
introduces a novel approach to software development by embracing the concept of
circular dynamics and interdependencies. Unlike traditional linear or modular
frameworks, the Circle Model draws inspiration from the solar system, where
interconnected entities work harmoniously to maintain balance and function.
This analogy provides an intuitive way to conceptualize software projects as
systems of interdependent modules, each contributing to the overall objectives
while maintaining their individual integrity.
At the heart of
the Circle Model is the core circle, which acts as the central
hub or anchor for the entire project. Surrounding it are the peripheral
circles, representing individual modules or components that are
capable of functioning independently yet depend on shared resources and
collaborative processes to introduce new features. Features in this model serve
as the gravitational forces, ensuring that all components
remain aligned and cohesive. Supporting elements like external tools, APIs, and
third-party data act as enhancers, reinforcing the system’s stability and
functionality.
The Circle Model
has been successfully applied to AgriSmart, an agricultural technology
platform. AgriSmart leveraged the model to address challenges such as crop
loss, real-time data integration, and sustainable farming practices. By
organizing its components—AI modules, drone technology, data integration
systems, and external resources—into an interconnected framework, AgriSmart was
able to streamline feature development, enhance collaboration, and reduce
redundancy. This case study underscores the practical viability and benefits of
the Circle Model, particularly in managing complex, multidisciplinary projects.
One of the most
significant strengths of the Circle Model lies in its ability to visualize and
manage interdependencies effectively. Traditional software development
methodologies often overlook or simplify these interconnections, leading to
inefficiencies and conflicts during the development process. The Circle Model
addresses these gaps by offering a structured yet flexible framework that not
only supports dynamic collaboration but also promotes stability and efficiency.
In conclusion, the
Circle Model represents a paradigm shift in software engineering. By mirroring
natural systems like the solar system, it provides a holistic and intuitive
framework for managing modern, multifaceted projects. Its successful implementation
in AgriSmart showcases its potential to revolutionize software development
practices, offering a clear path for future applications across various
domains. As the model continues to evolve with advancements in AI and
visualization tools, it holds the promise of becoming a foundational framework
for tackling the complexities of modern software projects.
9.
References
- Senge, P. M. The Fifth Discipline: The Art and
Practice of the Learning Organization. Doubleday, 1990.
- Beck, K., et al. Manifesto for Agile Software
Development. Agile Alliance, 2001.
- Sommerville, I. Software Engineering (10th Edition).
Pearson, 2015.
- Salgar, S. S. The Incomplete Circle (Beyond and
Inside the Dot). [Publisher Name (if applicable)], [Year of
publication (if applicable)].
No comments:
Post a Comment