Substantially Evolutionary Theorizing in Designing Software-Intensive Systems
Abstract
:1. Introduction
- At this stage, designers are active in an operational space (OS), including all concerned components of involved reality, and in a conceptual space (CS), components of which are generated with intensive use of mental actions in the real time of designing. Switching between these spaces, designers must reflect regularities of OS onto their conceptual descriptions in an adequate manner;
- In the interactions between designers and the complicated surrounding, facts of understanding are embodied in conceptual forms taking into account their coordination. In similar conditions, scientists use relevant theories.
2. Materials and Methods
2.1. Preliminary Bases
- Lack of sustained progress in enhancing the success in designing of SISs despite numerous attempts to change the painful state of affairs.
- Our understanding that:
- A very important source of reasons affecting the design process is the human factor that manifests itself in the designer’s interactions with the accessible experience and its computerized models.
- Interactions with experience are based on what people call “questions” and “answers”.
- The availability of regular and long-term statistical reports containing information on the positive and negative factors that influence the success in designing the SISs (reports of the Corporation Standish Group in the first place [1]).
- Workflows of conceptual activity applied in well-known technologies providing the development of systems with software (workflows of the technology “Rational Unified Process” [4]).
2.2. Question-Answer Approach
- If in solving any task the designer will register interactions with experience in forms of visual protocols of QA-reasoning, then such protocols (QA-protocols) can be used for activating the similar process of interactions with experience when it will be useful for the designer (for example, for correction of semantic errors or results of understanding obtained on the basis of registered interactions with experience).
- QA-protocols registered during the solution of corresponding tasks are very useful models of these tasks (QA-models of tasks) as in the design process, so in its results.
- In designing the SISs, QA-protocols should be combined and visualized in forms that are similar forms of combining and visualizing files in File Manager Systems such as FAR or Total Commander.
- QA-tree of the organizational structure (team K), which relates organizational units (the symbolic designation of groups G) onto any depth of their relations with the members of the collective (symbolic designation D). Due to additional attributes, the net nodes can obtain extended semantics, as well as connectivity, which makes it possible to present an organizational structure of any type.
- QA-nets simulating workflows:
- Technologies used in the process of conceptual design of the SIS being developed;
- Business processes that will be implemented in the SIS after its commissioning.
- Question-answer forms for encoding systems of methods (practices) S(WIQA, {Mn}) used in the technological workflows “Interaction with Experience”, serving the application of the toolkit WIQA.
- The dynamics of QA-approach is represented by the current state of the tree of task Z*(t) that is built by the team K* of designers {Dvs} with the use of the stepwise refinement applied to the initial statement St(Z*, t0) of the root task Z*.
- For each node Zi, expressed in the tree TT(Z*, t) by the statement St(Zi, t) of the corresponding task Zi, the designer (responsible for this task) also performs question-answer analysis (QA-analysis) in the form of the stepwise refinement, and this analysis leads to the question-answer model (QA-model, QA(Zi, t)) of this task.
- For solving the task Zi, the designer can use the technological tasks {Mn} visualized in versions of behavioral QA-nets of commands.
- The tree Z*(t) and the result of QA-analysis for each task of the tree are recorded in a special database (question-answer base, QA-base located in QA-memory) in hierarchical forms, any of which is visually accessible as a whole, and at the level of its nodes (any node or a group of nodes).
- Tasks of the tree Z*(t) are distributed among designers of the team, the organizational structure of which is also registered in QA-base as QA-nets in conditions shown in Figure 6.
2.3. QA-Nets of Pseudo Codes
- Orientation on automated behavioral programming in conditions described in the previous subsection;
- Support interactions of designers with accessible experience;
- Automatic execution of pseudocode programs when it is possible and useful;
- The possibility for the use of programmed components written in appropriate programming languages;
- Intertwining automated and automatic forms of coordinated execution for parts of programs;
- Embedding this language in the toolkit WIQA for the possibility of its evolving.
- “question” → “variable name for a simple data type used in traditional programming” and “answer” → “value of this variable”;
- “certain composition of questions” → “data of a composite type (for example, array, record, set, array of records or table, stack, queue or other composite data types)” and “corresponding composition of answers” → “the current value of data of this type”;
- “question” → “pseudo-code program operator” and “answer” → “execution of this operator”, leading to a certain “result”;
- “a certain composition of questions” → “connected set of operators” (for example, in a procedure or function) and “corresponding composition of answers” → “execution of this operators” with the corresponding result;
- “question” → “reason” and “answer “→ “effect”.
2.4. Interpretation of QA-Nets in the Frame of Conceptual Space 313
2.5. Precedent-Oriented Approach
- To master the forms and mechanisms for building the tasks’ models that simulate units of naturally professional experience;
- To check the basic decisions oriented on the creation and use of Experience Base, kernel of which integrates precedents models of corresponding project tasks.
- Text model PT(t), representing the formulation of the problem, as a result of which a precedent sample was created (as a result of the intellectual processing the solution of the corresponding task Zj);
- Logical model PL(t), which specifies a typical logical model in the form of a formula for the logic of predicates written in the language of the statement of the problem PT(t);
- The graphical model of the PG(t) use case, which represents it in a generalized way using “block and line” tools (for example, activity diagrams in the UML language);
- The question-answer model PQA(t), corresponding to the task Zj;
- The PI(t) model, representing the behavior introduced into the precedent in the form of the source code of its pseudocode program;
- Model PE(t), referencing to the executable code of the program that implements the sample use case;
- An integral model of the MPJ precedent in the form of its scheme, integrating all the specialized precedent models into a single whole.
- Using stepwise refinement for decreasing the uncertainty of the task statement S(Zj, t);
- Coordinating the statement development with the process of creating the corresponding model of the precedent.
2.6. Substantially Evolutionary Approach to Creating and Using the Theories of Projects
- What system of rules will facilitate the rational and consistent formation of the conceptual content indicated on the scheme?
- How can such a system be implemented in the WIQA environment?
- Designing the SISs (and not only the SISs) has an organizationally behavioral nature (describing the social phenomena is typical for features of Grounded Theories);
- Becoming of any Grounded Theory is based on a set of facts gathered and processed on the course of theorizing (we suggest gathering and processing the facts, any of which register definite act of interaction with experience);
- Any of Grounded Theories of a constructive type begins its life cycle with a root question (in our case, any applied will start with a root task).
- Before-theoretical phase ThBT(t) involves the collection of data D(t) as a set of facts {Fk}, relevant to the corresponding subject area, but rather to the properties of its components {Bp} and the relations between them;
- In the descriptive phase ThD(t), registered facts are used for constructing the texts of T(t) = {Ti} linking the facts in the description {Di = Ti} of essences distinguished in the subject area, and these constructs already bring a certain ordering in the set of facts;
- In building the theory, special attention focuses on vocabulary and especially on developing its part that presents a system of concepts S1({Nj}), semantic value and order of which defines a certain set of classifications K = S2({Km}). Developing the system S1({Np}) on the base of S2({Km}) is a very important phase of becoming the theory. In Figure 13, this part of the theory marked as the classification phase ThC(t). In the described version of SE-theory, this phase is built as a project ontology [10].
- In becoming the theory and its use, the identifiedly measurable phase ThI(t) introduces the possibility of (empirical) interpreting the theoretical constructs, in particular, the ability to control the adequacy of any concept (notion) in its use in a chosen fragment of a description or fact. The typical approach to the identification is a pattern recognition with the use of appropriate means that lead to names of classes. The measurement helps to defines values of attributes for recognized essences of the theorized reality;
- Formal phase is usually expressed by one or a number of formal theories ThF(t) = {ThFp(t)} systematizing material of prior phases and transferring the solution of the task from the level of manipulations with entities {Ur} of the subject area SA to the level of manipulations with symbolic constructs of the theory. Such transition opens the possibility to use an inference for a prediction and apply a proof to verify the prediction;
- It should be noted; any theory is created for its uses, a very important kind of which is models M. Models are intermediary between theories and reality when people interact with them. Therefore, models form a useful area of theory applications that indicated in Figure 13 as a model phase ThM(t).
- The essence of facts. In reflecting the components of the operational space OS on their models in the conceptual space, designers use interactions with experience and register such behavioral acts by textual models of questions and answers. In creating SE-theories, designers extract the facts {Fk} from sets of such models. Thus, facts {Fk} are traces of designers’ interactions with the used experience;
- Gathering the facts. Applied SE-theories form a sub-class that corresponds to the kind of Grounded theories of a constructive type specified by K Chermes [11]. One of the features of this kind is starting the creation of the theory from the root question. For SE-theories, such root question is an initial statement S(t0) of the root task Z*(t0) of the corresponding project P. The principal role in gathering the raw facts fulfills an abductive search;
- The relevance of facts. For any SE-theory, a role of facts play only such of them that are bound with solving the project tasks that are understudied as naturally artificial essences with the following features:
- As told above, tasks are the type of questions, answer on which are constructed in forms of tasks’ solutions;
- They are oriented on achieving the definite goals that must be confirmed by obtained results and their checks;
- In the general sense, a life cycle of a task can include creative actions that help to overcome definite gaps as problems if such gaps are revealed (but “task” has another sense then “problem”);
- Solved tasks are a type of values, that should be prepared for the future reuse.
- The task description that provides the task reuse can be interpreted as the model of the corresponding precedent, that simulates the unit of experience.
- Location of theoretical constructs. Figure 13 indicates that facts {Fk} used for creating SE-theory are placed in QA-memory, from which they are extracted for the necessary processing. In the descriptive phase, typical results of processing are concept, attribute, property, attitude, postulate, statement, idea, axiom, principle, hypothesis, goal, motive, condition, cause, effect and other constructs, and from their compositions, for example such as rules of inference, statement of problems, developing Project Theory, and other compositions. It must be added, any other sub-theory with its components is also uploaded in QA-memory;
- Correlation of actions. As told above, any SE-theory is created in parallel with other lines of designers’ actions who are forced to switch from these lines to a set of lines of theorizing. Possible versions of switching among lines are shown in Figure 14.The scheme indicates that there are two types of reasons that initiate switching between lines. One type corresponds starting the work with tasks while the second is connected with other reasons, a part of which is caused by applications of SE-theory in its current state.
- Applications of SE-theory. If it is necessary or useful, designers can use the current state of SE-theory for analyzing, describing, understanding and explaining of situations or for predicting the results of possible actions or for creating the useful models for implementing the next steps of the design process. Any application is constructive because it is accompanied by creating the necessary QA-objects and their compositions;
- Referents of theory. Any SE-theory reflects the experience that is objectified in the developed system in the current state of its lifecycle;
- Coding. On the course of becoming any SE-theory, the basic way for coding facts and theoretical constructs is their coding as QA-objects;
- Memoing. There is two version for registering memos, which provide a link with reality and are a source of prompts for the development of the theory. In the first version, the designer can attach the memo to the construct (uploaded in the cell of QA-memory) through a reference. The second way is the use of subordinated answer in the corresponding QA-net;
- Relations with Literature. Founders of Grounded Theory indicated that creators of applied theories are better to compare theories with relevant publications at the final stages of their work. In constructivist grounded theories, such prescription is violated. In designing, relevant publications are a useful source of prompts both as for designing so for theorizing;
- Access to Facts and Constructs. Any SE-theory exists in QA-memory where components of any theoretical phase are accessible for the use of pseudo-code programs, and such possibility helps in automating behavioral actions in the creation and use of the theory;
- Basic Principle of Evolution. In SE-theories, tasks are reasons of evolution. Any applied SE-theory begins its life cycle from the initial statement St(t0) of the root task Z*(t0), QA-analysis of which leads to subordinated tasks combined in the tree of tasks. As it will show below, in the described way of creating of SE-theories, it is used design thinking approach [12] for the work with any new project tasks. In evolving applied SE-theory, any implementation of such approach fulfills a role of a “soft” rule of inference. Any such rule of inference must satisfy the principle of “additivity”, the essence of which is clarified by the following reasoning.
- In the first version, the increment Tj defines a new construct included in the theory (extension in width);
- In the second version, the increment Tj extends the specification of the construct that was already included in theory (extension in depth).
- In order to promote increasing the successfulness in designing the SISs, it needs to develop a set of tools (?) that provide step-by-step creating (in parallel with other actions of conceptual designing) the applied SE-theories (?), any of which is represented by an interrelated set of textual, graphical and conceptually algorithmic constructs (?);
- In the basis of the step-by-step creating the SE-theory, it needs to put the mechanisms of QA-approach, precedent-oriented approach and design thinking, implementation of which is based on conducting of automated mental experiments in the condition of graphical and ontological support;
- The development of SUBSYSTEM should be carried out in the instrumentally modeling environment of WIQA so that the built-in set of tools is included in it as an extension.
3. Discussion
- Ralph [16], who “distinguished the variance theory (which predicts a dependent variable concerning independent variables) and the theory of processes (which explain how the phenomenon occurs)”.
- Ng [17], who “offered an approach to software development, described by Essence. He argues that each software project is unique and sensitive to its context”.
- Classification of theories with the viewpoint of their responsibility (analysis. explanation. prediction. explanation and prediction. design and action).
- Typical steps of building the theory (defining the constructs, defining the propositions, providing explanations to justify the theory, determining the scope, testing through empirical research).
- Evaluated characteristics: testability, empirical support, explanatory power, parsimony, generality, utility
- Johnson and Ekstedt [22], who “explore a theory of cognition, as a component of General Theory and found a correlation between the theory of human cognition and the empirical measurements, which express software complexity regarding the program languages”.
- Ralph [23] who estimated possible inheritances from process theories with the point of view “how and why an entity changes and develops”.
- Adolpha with co-authors [24] who indicated that “A necessary condition for the success of a software project is that there is at least one individual who is sufficiently engaged that they can detect Perspective Mismatches, and who has the personal strength to reach out and initiate the Reconciling Perspectives process”.
4. Means of Theorizing
4.1. Design Thinking Approach
- There is a goal G to achieve a certain value for potential customers, and in the current moment of time, this value V expressed with some uncertainty ?V(t).
- Conditions U(t), in which the goal can be achieved, are vague perceived, and they can be expressed with essential uncertainty ??U(t) for reducing of which conditions can be constructed while designing the SIS.
- The construct ???W(t) is unknown, and it can not be qualified as a problem gap between ??U(t) and ?V(t) taking into account their ambiguity.
- Having the goal G expressed by?V(t) opens the possibility for interpreting the situation S(t) as an indicator of the task Z* that should be solved.
- Extracting and preliminary testing the new concepts (notions) and/or enriching the before-mastered concepts;
- Revealing, wording and testing the theoretical constructs such as concept, attribute, property, attitude, postulate, statement, idea, axiom, principle, hypothesis, goal, motive, condition, cause, effect, and other constructs;
- Revealing and checking the “cause and effect regularities” that need to take into account and embed in the ES-theory and system that is designed. Some such regularities are the models of precedents;
- Generating the figuratively semantic schemes objectified results of the architectural and cause-and-effects understanding in reusable forms;
- Revealing the potential directions of for the next steps in theorizing and designing (new subordinated tasks).
4.2. Figuratively Semantic Support of Conceptual Activity
- To present the statement St(Zj, t) in the understandable form, for which it needs to verify achieving the algorithmic realizability of the task solution;
- To develop and test a conceptually algorithmic solution in conditions corresponding to the place of the task in the project of SIS.
- Pictorial type MP, models of which help to express the structure of the requested graphical construct as an interactive model IP or not. For both versions of models, the used graphical editor automatically create programmatic versions, changing of which reflected on graphical models. Such opportunity is also realized for other types of models;
- Declarative type MD that is intended for visualizing the semantics of textual models {MV} that are important for the achievement of understanding. The main cause for using of this type is the check of St(Zi, t) and its verbal components via mechanisms of declarative programming. Therefore, the version PD additionally has a Prolog-like description;
- Conceptually algorithmic type MA provides visual modeling of the algorithmic components of the task is solved. For this, the designer can use a pseudo-code language LWIQA that is built for the semantic memory of the toolkit WIQA. In the current state of WIQA, the type MA supports the work with Use-Case diagrams, Activity diagrams, and diagrams of Classes. For the transition to the version PA, it is applied the automatic mode based on the model-driven approach.
- Sequential visualization of any pictorial model in the step-by-step mode (or execution with the controlled delay) of the corresponding pseudo-code program;
- Visualization of history drawing for the pictorial diagrams, which allows simulating the process of drawing (with the controlled delay or in step mode);
- Use of different placement options. For example, when distributing the nodes of the model, it is convenient to take into account the number of input and output connections. The controlled replacement is available through a consistent application to the created diagram of different options of the placement;
- Use of the slideshow mode for programmatic transitions from the diagram to diagram that was created, for example, in solving the task.
4.3. Example of Starting Point of Becoming the SE-Theory
- A1.
- Understanding is an artificially natural phenomenon aimed at controlling (?) the right use of naturally professional language in explicit or implicit descriptions of perceived or imagined (?) situations or events.
- A2.
- Explicit traces of understanding are registered by concepts (notions) embedded in descriptions or pictorial constructs included into the description or accompanied it.
- A3.
- Coordination (?) of traces and the wholeness (?) of their used set should be registered by graphics constructs (?) including the semantic traces (?).
- A4.
- Traces of understanding must be distributed (?) in the description so that in repeatable achieving of understanding, this process will be reusable (?).
- A5.
- Processes indicated in D2 are better to realize in the form of behavioral programs (?).
- A6.
- Graphical components used in processes of understanding and their results must have program versions (?) coordinated (?) with graphics.
- For creating the conditions for conducting the conceptual experiments (?) in realization of design thinking approach that is adjusted (?) on solving the project tasks at the conceptual stage of designing the SISs, it needs to develop a COMPLEX (?) of means (?) for figuratively semantic support (?) of achieving (?) and registering (?) the results of architectural (?) and cause-and-effects (?) understanding.
- COMPLEX is to provide the iterative achieving the results of understanding for its indicated types by the use interactive block-and-line schemes (?) and corresponding them programme versions (?), adequacy (?) with which is coordinated automatically (?).
- The development of COMPLEX should be carried out in the environment of the toolkit WIQA so that the built-in set of means is included in it as an extension.
5. Conclusions
- The suggested substantially evolutionary approach to creating and using the projects’ theories constructively involves the interactions of designers with experience and its models in the design process. For any applied SE-theory, it is implemented in parallel with other design actions, and such a mode leads to systematizing the already used units of experience in theoretical forms embedded into the current state of SE-theory. In other words, in real time, designers create a theoretical system of experience that was used in solving the project tasks and apply this system such as SE-theory, when necessary or useful.
- Such applications lead to the additional effects in the following actions:
- Searching for semantic errors at the level words and phrase used in reasoning or writing the textual units of memos or prescribed documents;
- Architectural or cause-and-effect understanding in personal or collective interactions with complicated environments in the real-time process of designing;
- Explaining that the situation appeared in solving the project tasks or solutions of tasks;
- Creating the models of precedents for reusable project tasks;
- Predicting a possible solution for a new task using the regularities registered in the current state of the SE-theory;
- Managing the process of designing by discovering the questions indicated the directions of next steps of designing.
Acknowledgments
Conflicts of Interest
References
- Reports of Standish Group. Available online: www.standishgroup.com/outline (accessed on 20 November 2017).
- Jacobson, I.; Ng, P.-W.; McMahon, P.; Spence, I.; Lidman, S. The essence of software engineering: The SEMAT kernel. Queue 2012, 10. [Google Scholar] [CrossRef]
- Sosnin, P.; Maklaev, V. Question-Answer Reflections in a Creation of an Experience Base for Conceptual Designing the Family of Software Intensive Systems. In Proceedings of the Joint Conference on Knowledge-Based Software Engineering, Volgograd, Russia, 17–20 September 2014; Volume 466, pp. 658–672. [Google Scholar] [CrossRef]
- IBM Rational Unified Process. Available online: http://www-01.ibm.com/software/rational/rup/ (accessed on 20 November 2017).
- Sosnin, P. A Scientifically Experimental Approach to the Simulation of Designer Activity in the Conceptual Designing of Software Intensive Systems. IEEE Access 2013, 1, 488–504. [Google Scholar] [CrossRef]
- Sosnin, P. Role “Intellectual Processor” in Conceptual Designing of Software Intensive Systems. In Proceedings of the 11th International Conference on Computational Science and Applications, Ho Chi Minh, Vietnam, 24–27 June 2013; Lecture Notes in Computer Science. Volume 7973, pp. 1–16. [Google Scholar] [CrossRef]
- Young, R.M. Mental Space; Process Press: London, UK, 1994. [Google Scholar]
- Sosnin, P. Precedent-Oriented Approach to Conceptually Experimental Activity in Designing the Software Intensive Systems. Int. J. Ambient Comput. Intell. 2016, 7, 69–93. [Google Scholar] [CrossRef]
- Sosnin, P.I.; Maklayev, V.A. Sozdaniye i Ispol’zovaniye Avtomatizirovannoy Bazy Opyta Proyektnoy Organizatsii; Ulyanovsk State Technical University: Ulyanovsk, Russia, 2012. [Google Scholar]
- Sosnin, P. A place and role of an ontology in using a base of experience in designing the software intensive systems. Int. J. Web Inf. Syst. 2016, 12, 62–82. [Google Scholar] [CrossRef]
- Charmaz, K. Constructing Grounded Theory, 2nd ed.; Sage: London, UK, 2014; ISBN 13-978-085702914. [Google Scholar]
- Leifer, I.; Meinel, C. Manifesto: Design thinking becomes foundational. In Design Thinking Research: Making Design Thinking Foundational; Springer: Cham, Switzerland, 2015; pp. 1–4. [Google Scholar] [CrossRef]
- Johnson, P.; Ralph, P.; Goedicke, M.; Ng, P.-W.; Stol, K.-J.; Smolander, K.; Exman, J.; Perry, D.E. Report on the Second SEMAT Workshop on General Theory of Software Engineering. ACM SIGSOFT Softw. Eng. Notes 2013, 38, 47–50. [Google Scholar] [CrossRef]
- Exman, I.; Perry, D.; Barn, B.; Ralph, P. Separability Principles for a General Theory of Software Engineering: Report on the GTSE 2015 Workshop. ACM SIGSOFT Softw. Eng. Notes 2016, 41, 25–27. [Google Scholar] [CrossRef]
- Perry, D.E. Theories, theories everywhere. In Proceedings of the 5th International Workshop on Theory-Oriented Software Engineering, Austin, TX, USA, 15 May 2016. [Google Scholar] [CrossRef]
- Ralph, P. Comparing two software design process theories. In Proceedings of the International Conference on Design Science Research in Information Systems and Technology, St. Gallen, Switzerland, 4–5 June 2010; Winter, R., Zhao, J.L., Aier, S., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; pp. 139–153. [Google Scholar] [CrossRef]
- Ng, P.-W. Theory-based software engineering with the SEMAT kernel: Preliminary investigation and experiences. In Proceedings of the 3rd SEMAT Workshop on General Theories of Software Engineering, Hyderabad, India, 2 June 2014; ACM: New York, NY, USA, 2014; pp. 13–20. [Google Scholar] [CrossRef]
- Sjøberg, D.I.K.; Dyba, T.; Anda, B.C.D.; Hannay, J.E. Building Theories in Software Engineering. In Guide to Advanced Empirical Software Engineering; Shull, F., Singer, J., Sjøberg, D.I.K., Eds.; Springer: London, UK, 2008; pp. 312–336. [Google Scholar]
- Badreddin, O. Thematic Review and Analysis of Grounded Theory Application in Software Engineering. Adv. Softw. Eng. 2013, 2013, 468021. [Google Scholar] [CrossRef]
- Stol, K.; Ralph, P.; Fitzgerald, B. Grounded theory research in software engineering: A critical review and guidelines. In Proceedings of the 2016 International Conference on Software Engineering, Austin, TX, USA, 14–22 May 2016; pp. 120–131. [Google Scholar] [CrossRef]
- Sosnin, P. Experience-Based Human-Computer Interactions: Emerging Research and Opportunities; IGI-Global: Hershey, PA, USA, 2017; ISBN 13-978-1522529873. [Google Scholar]
- Johnson, P.; Ekstedt, M. Exploring Theory of Cognition for General Theory of Software Engineering. In Proceedings of the 4th SEMAT Workshop on General Theories of Software Engineering, Florence, Italy, 18 May 2015; pp. 15–24. [Google Scholar] [CrossRef]
- Ralph, P. The Sensemaking-Coevolution-Implementation theory of software design. Sci. Comput. Program. 2016, 101, 21–41. [Google Scholar] [CrossRef]
- Adolpha, S.; Kruchten, P.; Hallb, W. Reconciling perspectives: A grounded theory of how people manage the process of software development. J. Syst. Softw. 2012, 85, 1269–1286. [Google Scholar] [CrossRef]
- Lane, T.G. A Design Space and Design Rules for User Interface Software Architecture; Technical Report CMU/SEI-90-TR-22 ESD-90-TR-223; Software Engineering Institute, Carnegie Mellon University: Pittsburgh, PA, USA, 1990. [Google Scholar]
- Heape, C. The Design Space: The Design Process as the Construction, Exploration and Expansion of a Conceptual Space. Ph.D. Thesis, The University of Southern Denmark, Sønderborg, Denmark, 2007. [Google Scholar]
- Kang, E.; Jackson, E.; Schulte, W. An Approach for Effective Design Space Exploration. In Foundations of Computer Software. Modeling, Development, and Verification of Adaptive Systems; Calinescu, R., Jackson, E., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6662, pp. 33–54. [Google Scholar]
- Westerlund, B. Design Space Conceptual Tool—Grasping the Design Process. In Proceedings of the Nordic Design Research Conference, Copenhagen, Denmark, 29–31 May 2005. [Google Scholar]
- Boden, M.A. Conceptual Spaces. In Milieus of Creativity, Knowledge and Space 2; Springer Science + Business Media B.V: Dordrecht, the Netherlands, 2009; pp. 235–243. [Google Scholar]
- Gärdenfors, P. Conceptual Spaces—The Geometry of Thought; The MIT Press: Cambridge, MA, USA, 2000. [Google Scholar]
- Gärdenfors, P. Semantics based on conceptual spaces. In Logic and Its Applications; Banerjee, M., Seth, A., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2011; Volume 6521, pp. 1–11. [Google Scholar]
- Rickard, J.T.; Aisbett, J. Greg Gibbon Reformulation of the theory of conceptual spaces. Inf. Sci. 2007, 177, 4539–4565. [Google Scholar] [CrossRef]
- Bechberger, L.; Kühnberger, K.-U. A Thorough Formalization of Conceptual Spaces. In Advances in Artificial Intelligence; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2017; Volume 10505, pp. 58–71. [Google Scholar]
- Gero, J.S.; Kannengiesser, N. The Situated Function-Behavior-Structure Framework. Des. Stud. 2004, 25, 373–391. [Google Scholar] [CrossRef]
- Al-Fedaghi, S. Function-Behavior-Structure Model of Design: An Alternative Approach. Int. J. Adv. Comput. Sci. Appl. 2016, 7, 133–139. [Google Scholar] [CrossRef]
- Dorst, K. The Nature of Design Thinking. In Proceedings of the Design Thinking Research Symposium, Sydney, Australia, 19–20 October 2010; pp. 131–139. Available online: http://epress.lib.uts.edu.au/research/handle/10453/16590/ (accessed on 20 November 2017).
- Sosnin, P. A way for creating and using a theory of a project in designing of a software intensive system. In Proceedings of the 17th International Conference on Computational Science and Its Applications, Trieste, Italy, 3–6 July 2017; pp. 1–5. [Google Scholar] [CrossRef]
- Sosnin, P. Conceptual Experiments in Automated Designing. In Projective Processes and Neuroscience in Art and Design; Zuanon, R., Ed.; IG-Global: Hershey, PA, USA, 2016; pp. 155–181. [Google Scholar] [CrossRef]
- Sosnin, P.; Galochkin, M. Way of Coordination of Visual Modeling and Mental Imagery in Conceptual Solution of Project Task. In Advances in Artificial Intelligence: From Theory to Practice; Lecture Notes in Computer Science; Springer: Cham, Switzerland,, 2017; Volume 10350, pp. 635–638. [Google Scholar] [CrossRef]
© 2018 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Sosnin, P. Substantially Evolutionary Theorizing in Designing Software-Intensive Systems. Information 2018, 9, 91. https://doi.org/10.3390/info9040091
Sosnin P. Substantially Evolutionary Theorizing in Designing Software-Intensive Systems. Information. 2018; 9(4):91. https://doi.org/10.3390/info9040091
Chicago/Turabian StyleSosnin, Petr. 2018. "Substantially Evolutionary Theorizing in Designing Software-Intensive Systems" Information 9, no. 4: 91. https://doi.org/10.3390/info9040091
APA StyleSosnin, P. (2018). Substantially Evolutionary Theorizing in Designing Software-Intensive Systems. Information, 9(4), 91. https://doi.org/10.3390/info9040091