Difference between revisions of "Conceptual Modeling"

From The Thinkulum
Jump to navigation Jump to search
m (Deleted the Seeds category.)
(v0.2.0: Reduced to a bullet point, summary format. Added rationales. Replaced my existing, haphazard method with the outline of a more principled one.)
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
The purpose of this article is to spell out the method of analysis I've developed over the years. The purpose of doing that is to help myself use the method more often and with a more consistent procedure and to come up with ways to teach it to anyone who's interested.
Version 0.2.0, 8/15/2019


The article is a work in progress, as is the method.
== Introduction ==


== Definition ==
=== What is conceptual modeling? ===


I'm calling this article "Analysis," because that's the term I usually use, but I hardly ever think about analysis on its own. My idea of analysis pulls along with it synthesis, in the form of modeling and systems thinking. But I use the term analysis to cover all of it. If I had to pick another one, I'd call it systematizing.
* The process of describing a situation in a way that enables someone to fulfill a particular purpose.
* It's not the concept modeling of architecture (making a physical model of a design), and it's broader than the conceptual modeling of software design.
* Regardless of its specific procedure, logically it divides into two types of activities:
** Analysis: separating the subject matter into its components.
** Synthesis: reassembling the parts by identifying their relationships.


Traditionally analysis is seen as being about conceptually taking apart the subject matter, separating it into its components, and synthesis is about assembling the parts. But with my question-asking approach, I really do both at about the same time. It's more a process of clarifying and exploring than disassembly and reassembly.
=== What is this article? ===


== Goals ==
* A summary of my current thinking on a general approach to conceptual modeling.


What are the goals of analysis in this method? There are two stages to think about in an analytical journey: the product of the analysis itself and the purposes that product can be used for.
=== Rationale ===


The product I intend from an analysis is a model of the object I'm observing. The representation of the model can take various forms, such as a diagram, an essay, or a computer program. The model itself is an abstraction, though it will always have to take some form, if only as a set of ideas in the mind.
==== Why am I developing a modeling approach? ====


Another metaphor I use for this product is a map. This article, for example, is a representation of a map of my analytical method. This is appropriate for my journey metaphor.
* Modeling is a key tool in my life, and I want a more effective way to do it. Developing a method will help me use it more often and with a more thorough and consistent procedure.
* Modeling should get more widespread use, and work on a general approach can serve as a foundation for its adoption.
* It's relatively easy to find tools of analysis and modeling in specific domains, but it's hard to find work that ties it all together.
** Applying a single method to multiple domains means that each domain's conceptual modeling will involve less duplicated work than if they developed their techniques independently.


The second stage of travel is the use you'll put the model to. To name some key examples, the model could be a basis for learning information or a skill, for creating other content, or for making a decision or solving a problem.
==== Why am I writing this article? ====


Why are we interested in knowing the goals of analysis? First, the goal determines what aspects of the material we're analyzing are important. So it's key to defining the model and also to directing our attention and maximizing our use of time. In this case, these goals will define our model of analysis.
* A summary will help me direct my work and organize the presentation of my findings. The summary is a research agenda.


Second, knowing the point of what we're doing is a great motivator. Sometimes it can make the difference between persevering and giving up.
==== Why do we do conceptual modeling? ====
 
* To clarify thinking.
* To learn information or a skill.
* To create other content.
* To build tools.
* To manage activity.
* To reach agreement.
* To make decisions.
* To solve problems.
* In the case of this essay, our purpose is to have a general modeling procedure to apply.
 
==== Why should we improve it? ====
 
* Better models help us solve more problems and solve them better.
* Faster modeling helps us create these better models sooner.
 
=== Interdisciplinarity ===
 
==== What is it? ====
 
* The collaboration among multiple academic or professional disciplines to pursue the interdisciplinary field's goals.
 
==== Why should a conceptual modeling method use it? ====
 
* Different disciplines have methods and frameworks and viewpoints particular to themselves that can be generalized so that other disciplines can use them.
 
==== How can we use it? ====
 
* Investigate the potential contributions of various disciplines to modeling.
* Collaborate with those disciplines, seeking input and dialoguing for new insights.
* Model the modeling of various disciplines, and generalize the results.
 
=== Overview: How does conceptual modeling work? ===
 
* The modeler follows a process that involves querying internal and external sources in terms of particular conceptual frameworks, evaluating the findings, and encoding the resulting model to present it to the model's stakeholders.
 
=== Status ===
 
* As a summary, this article doesn't give all the practical advice we'd want.
* As a summary, the article doesn't address every question, objection, or competing model.
* As a work in progress, much of it is likely to change in the relatively near future.
* As a work in progress, it has uneven coverage and gaps that future work will hopefully fill.
* As a model of modeling, it's subject to evaluation.
* Since I'm an outsider to most of these disciplines, my initial sources are introductory or popular-level treatments.
* Since the article is primarily meant for my own use, it might not make complete sense to other people.
 
== Process ==
 
=== Workflow ===
 
==== What is it? ====
 
* The large-scale procedure that moves the model from conception to completion.
 
==== Why do we need it? ====
 
* A consistent procedure enables more reliable planning and better results.
 
==== How is it done? ====
 
* An agile methodology is a good starting point.
* Initialize the project.
* Gather requirements.
* Gather personnel and other resources.
* Plan the work.
* Research conceptual frameworks and domain knowledge.
* Conduct modeling sessions.
** Modify existing frameworks, and create new ones as needed.
* Test the results.
* Iterate over this procedure to improve the model.
* Present the final product.
* Close the project.
 
=== Mental processes ===
 
==== What is a mental process in conceptual modeling? ====
 
* A set of activities carried out in the mind to pursue a goal, in this case to become aware of the possible components and relationships of a model and to reason about them.
 
==== Why should we know about them? ====
 
* Modeling can't happen without mental processes.
* The quality of mental processes vary and can be improved with knowledge and practice.
 
==== Querying ====
 
===== What is it? =====
 
* Consciously directing the subconscious to deliver answers to explicit or implicit questions.
 
===== Why do we need it? =====
 
* It's the way we articulate information we already know but don't have in our immediate awareness.
* Having no procedure means the information becomes conscious haphazardly rather than when we need it.
 
===== How does it work? =====
 
* The mind recalls information based on cues.
* To ask questions you need a conceptual framework, even a simple and fragmentary one. Your subconscious is matching its perceptions and contents to patterns.
* Make guesses about answers, and evaluate them based on the feelings and thoughts your subconscious reports back with.
* The mind can index information in many ways, so be varied in your cues.
* Externalize the information you surface to serve as further cues without burdening your working memory.
 
==== Reasoning ====
 
===== What is it? =====
 
* The application of logic to information to draw inferences and evaluate claims.
 
===== Why do we need it? =====
 
* Reality apparently works in a consistent and logical fashion, and models that aren't regulated by logic have a higher chance of clashing with reality, thus failing or causing harm.
 
===== How is it done? =====
 
* Learn appropriate conceptual frameworks for logic: categorical, propositional, first-order, bayesian, informal fallacies, cognitive biases, etc.
* Carry out the mental processes of modeling, applying the logical frameworks to the information and following the conclusions the applications indicate.
 
=== Productivity ===
 
==== What is it? ====
 
* Practices engaged in to maximize the amount of work accomplished.
 
==== Why do we need it? ====
 
* Using time wisely is responsible.
* Many projects will be under a time crunch.
* Maximizing work gives you a competitive advantage, against the problems you're solving, if nothing else.
 
==== How is it done? ====
 
* Follow general productivity practices.
* Follow nonlinear modeling.
* Apply as many frameworks as applicable.
* Build on previous work.
 
=== Sources ===
 
* Agile development
* Design thinking
* Engineering
 
== Framework ==
 
=== Construction ===
 
==== What is it? ====
 
* Creating a new conceptual framework to use in creating a model.
 
==== Why do we need it? ====
 
* Models seem to be instantiations of more general frameworks.
* Our minds need expectations to serve as cues for surfacing more information and patterns to recognize.
* Models need many different shapes and features to account for all the situations we need to understand to solve all the kinds of problems we encounter.
* New frameworks can be created based on preexisting components.
 
==== How is it done? ====
 
* The most manipulable models are based on a framework of parts and relationships.
* Adapt existing frameworks.
** Components can be assembled from simpler particles and differentiated from more general categories.
** Components can be decomposed and then reshaped.
* Abstract from existing models.
 
=== Sources ===
 
==== What is it? ====
 
* Frameworks lie on a spectrum of generality, and different fields tend to generate frameworks in different places along the spectrum.
* These are mainly sources on the more general end of the spectrum, plus some closer to the specific end.
 
==== Why do we need it? ====
 
* The more general fields give us fundamental frameworks and components that can be applied to a broad range of modeling situations.
* The more specific fields give us models that can be applied directly to situations in those fields and to other fields by analogy.
 
==== How is it done? ====
 
* Explore likely fundamental fields:
** Linguistics
** Mathematics
** Software engineering
** Knowledge representation
** Knowledge organization
** Data visualization
* Explore more specific fields. This list is a small sample:
** Physics
** Systems theory
** Intelligence analysis
** Business analysis
** Social science research
 
== Presentation ==
 
=== What is it? ===
 
* The representation and framing of the model in relation to its purpose for the project's stakeholders.
 
=== Why do we need it? ===
 
* The models we build are abstractions, but to communicate them and work with them effectively, we have to give them concrete representations.
* Fulfilling the project's purpose will usually require communicating more than a bare statement of the model. The presenter will need to frame it, which may include introducing and applying the model.
 
=== How is it done? ===
 
* Identify the key communication factors.
** Purpose
** Audience
** Context
** Format
* Compose the presentation.
** Transform the model into the needed format.
** Frame the model according to the project's purpose.
* Conduct the presentation.
* Evaluate the presentation.
 
== Examples ==
 
From this site:
 
* [[On Being an Agnostic Christian]]
* [[A Framework and Agenda for Memory Improvement]]
* [[Navigating the World of Comics]]
* [[Math Relearning/Fundamentals]]
* [[Math Relearning/Number Sense]]
* [[Math Relearning/Math Student Simulator/Introduction]] - A discussion of learning by programming.
* [[Book Weeding Criteria]]
 
From other authors who seem to take a similar approach:
 
* [https://www.amazon.com/Visualization-Analysis-Design-AK-Peters/dp/1466508914 Visualization Analysis and Design] by Tamara Munzner
 
== Roadmap ==
 
Here, in general terms, are the improvements I have in mind for this essay.
 
* Articulate and expand my metamodel.
* Articulate the intuitions to follow.
* Formalize a procedure.
* Articulate a supporting model of the mind.
* Expand the method to cover group processes.
* Expand it to cover evaluation of claims.
* Articulate the essential and distinctive features of my approach.
* Expand my library of model patterns.
* Expand my library of indirect questions.
* Incorporate a programming approach.
* Develop arguments for studying modeling.
 
== Potential sources ==
 
Alexander, Christopher, and Christopher Alexander. ''The Process of Creating Life: An Essay on the Art of Building and the Nature of the Universe''. The Center for Environmental Structure Series, v. 10. Berkeley, CA: Center for Environmental Structure, 2002.
 
Bernard, H. Russell, Amber Wutich, and Gery Wayne Ryan. ''Analyzing Qualitative Data: Systematic Approaches''. 2nd ed. Los Angeles: SAGE, 2017.
 
Britt, David W. ''A Conceptual Introduction to Modeling: Qualitative and Quantitative Perspectives''. Mahwah, NJ: Lawrence Erlbaum Associates, 1997.
 
Checkland, Peter. ''Systems Thinking, Systems Practice: Includes a 30-Year Retrospective''. Chichester; New York: John Wiley, 1999.
 
Cooper, Alan. ''About Face: The Essentials of Interaction Design''. 4th ed. Indianapolis, IN: John Wiley and Sons, 2014.
 
Evans, Eric. ''Domain-Driven Design: Tackling Complexity in the Heart of Software''. Boston: Addison-Wesley, 2004.
 
Flood, Robert L. ''Rethinking the Fifth Discipline: Learning within the Unknowable''. London; New York: Routledge, 1999.
 
Halpin, T. A., and A. J. Morgan. ''Information Modeling and Relational Databases''. 2nd ed. Morgan Kaufmann Series in Data Management Systems. Burlington, MA: Elsevier/Morgan Kaufman Publishers, 2008.
 
Herman, Amy. ''Visual Intelligence: Sharpen Your Perception, Change Your Life''. Boston: Houghton Mifflin Harcourt, 2016.
 
Heuer, Richards J., and Randolph H. Pherson. ''Structured Analytic Techniques for Intelligence Analysis''. 2nd ed. Washington, DC: CQ Press, 2015.
 
Horton, Susan R. ''Thinking through Writing''. Baltimore: Johns Hopkins University Press, 1982.
 
Huddleston, Rodney D., and Geoffrey K. Pullum. ''A Student’s Introduction to English Grammar''. Cambridge, UK; New York: Cambridge University Press, 2005.
 
Lesh, Richard A., and Helen M. Doerr, eds. ''Beyond Constructivism: Models and Modeling Perspectives on Mathematics Problem Solving, Learning, and Teaching''. Mahwah, NJ: Lawrence Erlbaum Associates, 2003.
 
McDonald, Kent J. ''Beyond Requirements: Analysis with an Agile Mindset''. New York: Addison-Wesley, 2016.
 
Michalko, Michael. ''Thinkertoys: A Handbook of Creative-Thinking Techniques''. 2nd ed. Berkeley, CA: Ten Speed Press, 2006.
 
Munzner, Tamara. ''Visualization Analysis and Design''. A.K. Peters Visualization Series. Boca Raton: CRC Press, Taylor & Francis Group, CRC Press is an imprint of the Taylor & Francis Group, an informa business, 2015.
 
Osborne, Grant R. ''The Hermeneutical Spiral: A Comprehensive Introduction to Biblical Interpretation''. 2nd ed. Downers Grove, IL: InterVarsity Press, 2006.
 
Porter, Bruce, Vladimir Lifschitz, and Frank Van Harmelen, eds. ''Handbook of Knowledge Representation''. 1st ed. Foundations of Artificial Intelligence. Amsterdam; Boston: Elsevier, 2008.
 
Rosenfeld, Louis, Peter Morville, and Jorge Arango. ''Information Architecture: For the Web and Beyond''. 4th ed. Sebastopol, CA: O’Reilly Media, Inc, 2015.
 
Saeed, John I. ''Semantics''. 4th ed. Introducing Linguistics 2. Chichester, West Sussex [England]; Malden, MA: Wiley Blackwell, 2016.
 
Sterman, John. ''Business Dynamics: Systems Thinking and Modeling for a Complex World''. Boston: Irwin/McGraw-Hill, 2000.


[[Category:Essays]]
[[Category:Essays]]
[[Category:Developing]]
[[Category:Developing]]
[[Category:Philosophy]]
[[Category:Philosophy]]

Latest revision as of 02:52, 16 August 2019

Version 0.2.0, 8/15/2019

Introduction

What is conceptual modeling?

  • The process of describing a situation in a way that enables someone to fulfill a particular purpose.
  • It's not the concept modeling of architecture (making a physical model of a design), and it's broader than the conceptual modeling of software design.
  • Regardless of its specific procedure, logically it divides into two types of activities:
    • Analysis: separating the subject matter into its components.
    • Synthesis: reassembling the parts by identifying their relationships.

What is this article?

  • A summary of my current thinking on a general approach to conceptual modeling.

Rationale

Why am I developing a modeling approach?

  • Modeling is a key tool in my life, and I want a more effective way to do it. Developing a method will help me use it more often and with a more thorough and consistent procedure.
  • Modeling should get more widespread use, and work on a general approach can serve as a foundation for its adoption.
  • It's relatively easy to find tools of analysis and modeling in specific domains, but it's hard to find work that ties it all together.
    • Applying a single method to multiple domains means that each domain's conceptual modeling will involve less duplicated work than if they developed their techniques independently.

Why am I writing this article?

  • A summary will help me direct my work and organize the presentation of my findings. The summary is a research agenda.

Why do we do conceptual modeling?

  • To clarify thinking.
  • To learn information or a skill.
  • To create other content.
  • To build tools.
  • To manage activity.
  • To reach agreement.
  • To make decisions.
  • To solve problems.
  • In the case of this essay, our purpose is to have a general modeling procedure to apply.

Why should we improve it?

  • Better models help us solve more problems and solve them better.
  • Faster modeling helps us create these better models sooner.

Interdisciplinarity

What is it?

  • The collaboration among multiple academic or professional disciplines to pursue the interdisciplinary field's goals.

Why should a conceptual modeling method use it?

  • Different disciplines have methods and frameworks and viewpoints particular to themselves that can be generalized so that other disciplines can use them.

How can we use it?

  • Investigate the potential contributions of various disciplines to modeling.
  • Collaborate with those disciplines, seeking input and dialoguing for new insights.
  • Model the modeling of various disciplines, and generalize the results.

Overview: How does conceptual modeling work?

  • The modeler follows a process that involves querying internal and external sources in terms of particular conceptual frameworks, evaluating the findings, and encoding the resulting model to present it to the model's stakeholders.

Status

  • As a summary, this article doesn't give all the practical advice we'd want.
  • As a summary, the article doesn't address every question, objection, or competing model.
  • As a work in progress, much of it is likely to change in the relatively near future.
  • As a work in progress, it has uneven coverage and gaps that future work will hopefully fill.
  • As a model of modeling, it's subject to evaluation.
  • Since I'm an outsider to most of these disciplines, my initial sources are introductory or popular-level treatments.
  • Since the article is primarily meant for my own use, it might not make complete sense to other people.

Process

Workflow

What is it?

  • The large-scale procedure that moves the model from conception to completion.

Why do we need it?

  • A consistent procedure enables more reliable planning and better results.

How is it done?

  • An agile methodology is a good starting point.
  • Initialize the project.
  • Gather requirements.
  • Gather personnel and other resources.
  • Plan the work.
  • Research conceptual frameworks and domain knowledge.
  • Conduct modeling sessions.
    • Modify existing frameworks, and create new ones as needed.
  • Test the results.
  • Iterate over this procedure to improve the model.
  • Present the final product.
  • Close the project.

Mental processes

What is a mental process in conceptual modeling?

  • A set of activities carried out in the mind to pursue a goal, in this case to become aware of the possible components and relationships of a model and to reason about them.

Why should we know about them?

  • Modeling can't happen without mental processes.
  • The quality of mental processes vary and can be improved with knowledge and practice.

Querying

What is it?
  • Consciously directing the subconscious to deliver answers to explicit or implicit questions.
Why do we need it?
  • It's the way we articulate information we already know but don't have in our immediate awareness.
  • Having no procedure means the information becomes conscious haphazardly rather than when we need it.
How does it work?
  • The mind recalls information based on cues.
  • To ask questions you need a conceptual framework, even a simple and fragmentary one. Your subconscious is matching its perceptions and contents to patterns.
  • Make guesses about answers, and evaluate them based on the feelings and thoughts your subconscious reports back with.
  • The mind can index information in many ways, so be varied in your cues.
  • Externalize the information you surface to serve as further cues without burdening your working memory.

Reasoning

What is it?
  • The application of logic to information to draw inferences and evaluate claims.
Why do we need it?
  • Reality apparently works in a consistent and logical fashion, and models that aren't regulated by logic have a higher chance of clashing with reality, thus failing or causing harm.
How is it done?
  • Learn appropriate conceptual frameworks for logic: categorical, propositional, first-order, bayesian, informal fallacies, cognitive biases, etc.
  • Carry out the mental processes of modeling, applying the logical frameworks to the information and following the conclusions the applications indicate.

Productivity

What is it?

  • Practices engaged in to maximize the amount of work accomplished.

Why do we need it?

  • Using time wisely is responsible.
  • Many projects will be under a time crunch.
  • Maximizing work gives you a competitive advantage, against the problems you're solving, if nothing else.

How is it done?

  • Follow general productivity practices.
  • Follow nonlinear modeling.
  • Apply as many frameworks as applicable.
  • Build on previous work.

Sources

  • Agile development
  • Design thinking
  • Engineering

Framework

Construction

What is it?

  • Creating a new conceptual framework to use in creating a model.

Why do we need it?

  • Models seem to be instantiations of more general frameworks.
  • Our minds need expectations to serve as cues for surfacing more information and patterns to recognize.
  • Models need many different shapes and features to account for all the situations we need to understand to solve all the kinds of problems we encounter.
  • New frameworks can be created based on preexisting components.

How is it done?

  • The most manipulable models are based on a framework of parts and relationships.
  • Adapt existing frameworks.
    • Components can be assembled from simpler particles and differentiated from more general categories.
    • Components can be decomposed and then reshaped.
  • Abstract from existing models.

Sources

What is it?

  • Frameworks lie on a spectrum of generality, and different fields tend to generate frameworks in different places along the spectrum.
  • These are mainly sources on the more general end of the spectrum, plus some closer to the specific end.

Why do we need it?

  • The more general fields give us fundamental frameworks and components that can be applied to a broad range of modeling situations.
  • The more specific fields give us models that can be applied directly to situations in those fields and to other fields by analogy.

How is it done?

  • Explore likely fundamental fields:
    • Linguistics
    • Mathematics
    • Software engineering
    • Knowledge representation
    • Knowledge organization
    • Data visualization
  • Explore more specific fields. This list is a small sample:
    • Physics
    • Systems theory
    • Intelligence analysis
    • Business analysis
    • Social science research

Presentation

What is it?

  • The representation and framing of the model in relation to its purpose for the project's stakeholders.

Why do we need it?

  • The models we build are abstractions, but to communicate them and work with them effectively, we have to give them concrete representations.
  • Fulfilling the project's purpose will usually require communicating more than a bare statement of the model. The presenter will need to frame it, which may include introducing and applying the model.

How is it done?

  • Identify the key communication factors.
    • Purpose
    • Audience
    • Context
    • Format
  • Compose the presentation.
    • Transform the model into the needed format.
    • Frame the model according to the project's purpose.
  • Conduct the presentation.
  • Evaluate the presentation.

Examples

From this site:

From other authors who seem to take a similar approach:

Roadmap

Here, in general terms, are the improvements I have in mind for this essay.

  • Articulate and expand my metamodel.
  • Articulate the intuitions to follow.
  • Formalize a procedure.
  • Articulate a supporting model of the mind.
  • Expand the method to cover group processes.
  • Expand it to cover evaluation of claims.
  • Articulate the essential and distinctive features of my approach.
  • Expand my library of model patterns.
  • Expand my library of indirect questions.
  • Incorporate a programming approach.
  • Develop arguments for studying modeling.

Potential sources

Alexander, Christopher, and Christopher Alexander. The Process of Creating Life: An Essay on the Art of Building and the Nature of the Universe. The Center for Environmental Structure Series, v. 10. Berkeley, CA: Center for Environmental Structure, 2002.

Bernard, H. Russell, Amber Wutich, and Gery Wayne Ryan. Analyzing Qualitative Data: Systematic Approaches. 2nd ed. Los Angeles: SAGE, 2017.

Britt, David W. A Conceptual Introduction to Modeling: Qualitative and Quantitative Perspectives. Mahwah, NJ: Lawrence Erlbaum Associates, 1997.

Checkland, Peter. Systems Thinking, Systems Practice: Includes a 30-Year Retrospective. Chichester; New York: John Wiley, 1999.

Cooper, Alan. About Face: The Essentials of Interaction Design. 4th ed. Indianapolis, IN: John Wiley and Sons, 2014.

Evans, Eric. Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston: Addison-Wesley, 2004.

Flood, Robert L. Rethinking the Fifth Discipline: Learning within the Unknowable. London; New York: Routledge, 1999.

Halpin, T. A., and A. J. Morgan. Information Modeling and Relational Databases. 2nd ed. Morgan Kaufmann Series in Data Management Systems. Burlington, MA: Elsevier/Morgan Kaufman Publishers, 2008.

Herman, Amy. Visual Intelligence: Sharpen Your Perception, Change Your Life. Boston: Houghton Mifflin Harcourt, 2016.

Heuer, Richards J., and Randolph H. Pherson. Structured Analytic Techniques for Intelligence Analysis. 2nd ed. Washington, DC: CQ Press, 2015.

Horton, Susan R. Thinking through Writing. Baltimore: Johns Hopkins University Press, 1982.

Huddleston, Rodney D., and Geoffrey K. Pullum. A Student’s Introduction to English Grammar. Cambridge, UK; New York: Cambridge University Press, 2005.

Lesh, Richard A., and Helen M. Doerr, eds. Beyond Constructivism: Models and Modeling Perspectives on Mathematics Problem Solving, Learning, and Teaching. Mahwah, NJ: Lawrence Erlbaum Associates, 2003.

McDonald, Kent J. Beyond Requirements: Analysis with an Agile Mindset. New York: Addison-Wesley, 2016.

Michalko, Michael. Thinkertoys: A Handbook of Creative-Thinking Techniques. 2nd ed. Berkeley, CA: Ten Speed Press, 2006.

Munzner, Tamara. Visualization Analysis and Design. A.K. Peters Visualization Series. Boca Raton: CRC Press, Taylor & Francis Group, CRC Press is an imprint of the Taylor & Francis Group, an informa business, 2015.

Osborne, Grant R. The Hermeneutical Spiral: A Comprehensive Introduction to Biblical Interpretation. 2nd ed. Downers Grove, IL: InterVarsity Press, 2006.

Porter, Bruce, Vladimir Lifschitz, and Frank Van Harmelen, eds. Handbook of Knowledge Representation. 1st ed. Foundations of Artificial Intelligence. Amsterdam; Boston: Elsevier, 2008.

Rosenfeld, Louis, Peter Morville, and Jorge Arango. Information Architecture: For the Web and Beyond. 4th ed. Sebastopol, CA: O’Reilly Media, Inc, 2015.

Saeed, John I. Semantics. 4th ed. Introducing Linguistics 2. Chichester, West Sussex [England]; Malden, MA: Wiley Blackwell, 2016.

Sterman, John. Business Dynamics: Systems Thinking and Modeling for a Complex World. Boston: Irwin/McGraw-Hill, 2000.