Difference between revisions of "Conceptual Modeling"
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: | ||
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: | |||
* [[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:
- 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:
- 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.