Informatics As a Science 1 Viewpoint
Total Page:16
File Type:pdf, Size:1020Kb
Enterprise Modelling and Information Systems Architectures Vol. 15, No. 6 (2020). DOI:10.18417/emisa.15.6 Informatics as a Science 1 Viewpoint Informatics as a Science Wolfgang Reisig Humboldt-Universität zu Berlin, Berlin, Germany Abstract. This contribution addresses the quest for a framework for a comprehensive science of “informatics” as a formal theory of discrete dynamic systems, in analogy to the model of natural sciences. A variety of examples show that this endeavor is promising indeed, and that (detached) parts of it exist already. In the long run, informatics may evolve as a self-contained science, more comprehensive than nowadays “Computer Science”, by complementing its strong technological aspects with a consistent theoretical, mathematical basis, on an equal footing with natural sciences. Keywords. comprehensive science of informatics • formal foundations • modeling Communicated by Peter Fettke. Received 2019-08-30. Accepted on 2020-01-20. Introduction of promotion and reward, that don’t support fun- damental questions on the nature of informatics.1 Background In this situation it appears nevertheless inter- Computer Science is frequently told as a success esting to pose some fundamental questions and story, driven by Moore’s law: during the last six to discuss aspects that could unify the diverging decades; computation-, information- and commu- subdomains of Computer Science. As a basis for nication technology became exponentially cheaper, a science of informatics, this may render future quicker and smaller (Brock 2006). Accordingly, developments quicker and better comprehensible. new application areas evolved. Systemic mal- function of devices, failed projects, unmanageable Informatics as a science: historical development behavior of computer embedded systems, viola- tion of privacy etc., are accepted as unavoidable The emerging computing technology of the side effects and justified as the price to be paid for 1950ies covered essentially two problem domains: the rapid evolution of the area. numerical problems as they occur in classical engineering sciences, and searching-and-sorting Whether matters might – or should – have problems in large data sets, as they occur in a evolved differently, is rarely discussed and hardly population census. The two programming lan- suspected. The quest for alternatives to the factual guages FORTRAN and COBOL had been tailored evolution of Computer Science is annoying in par- to those problems; the steps from a problem to an ticular for young scientists, who eagerly learned algorithmic idea and to a program were usually facts, and want to build on this presumed solid manageable. This changed in the 1960ies: in- and steadfast basis. They are squeezed in systems creasing computer power made problems solvable that required more complex algorithmic ideas and E-mail. [email protected] more elaborate programs. This rendered programs I owe many valuable comments to readers of a previous German version of this text: Dines Bjørner, Peter Fettke, 1 By “Computer Science” we refer to the traditional approach, Christoph Freytag, and Otthein Herzog. whereas “informatics” denotes the to-be-developed science. International Journal of Conceptual Modeling Vol. 15, No. 6 (2020). DOI:10.18417/emisa.15.6 2 Wolfgang Reisig Viewpoint increasingly error prone and incomprehensible, • Prediction: Good science can predict the evo- and finally a “software crisis” had been identified lution of processes. In Computer Science, this at a famous conference in Garmisch-Partenkirchen means to predict the behavior of programs, i. e. (Naur and Randell 1969), to be tackled by the new to verify them. discipline of “software engineering”. This in turn caused new programming languages (PL/1, Pas- Summing up, a program is conceived as a math- cal, Ada), new program paradigms (structured ematical item; its decisive properties should be programming, object orientation) and later on formulated in a logical language, its semantics new software architectures (components, service- should be formally captured, and its correctness orientation, micro-services). Furthermore, soft- should be proved. These are scientific concepts, ware design methodologies emerged, such as sys- indeed. In this spirit, also Gries (1981) conceives tematic refinement, software architectures, and the activity of programming as a scientific activity. the specification of interfaces. Looking back, it is obvious that the Garmisch- Partenkirchen conference raised important ques- This contribution tions and initiated constructive answers. However, on the long way from a problem via an algorith- In 14 sections we formulate some thoughts for a mic idea up to a software, only the last step, i. e. comprehensive science of informatics as a formal writing down programs, has been framed more scientific theory of discrete dynamic systems. The convenient by the concepts suggested there. subject of this science is intended much broader This way of thinking about “Computer Science” than the above outlined traditional “Computer as a science is visible at the memorial lecture Science”, as suggested by Dijkstra, Hoare, Gries, for famous Edsger W. Dijkstra in 2010, where Knuth and others. Nevertheless, the new, broader likewise famous computer scientist Tony Hoare theory should be conceptualized as a formal the- emphasizes four criteria for sciences in general, ory; not as classical Computer Science extended and the issue of Computer Science in particular by informal aspects of social sciences. Examples (Hoare 2010): include formal concepts of information processing and algorithmic behavior that are not intended to • Description: Science describes properties and behavior of systems; in Computer Science, such be implemented, as they occur in business infor- a “description of properties and behavior can matics, in embedded systems, and generally in serve as a specification, describing an appro- the nowadays much discussed “internet of every- priately precise interface between its purchaser thing”. and its supplier.” Hoare suggests logic based de- We will pose questions and explain some mu- scription methods, with weakest preconditions tually related concepts. Some of them are not as an example. fundamentally new, but have frequently been stud- • Analysis: The central items and their conceptual ied in isolation. Properly combined, they support relation of a science are detailed here. Central the claim to contribute to a new science of infor- items of Computer Science are programs. They matics. are analyzed with pre-/postconditions such as However, we don’t present a fully-fledged sci- Microsoft Contracts. ence of informatics. Obviously, a number of • Explanation: The behavior of systems is sub- additional ideas, concepts and insight is still miss- stantiated. For Computer Science, the seman- ing. We just want to show that it is worth searching tics of programming languages provides this for a fundamental science of informatics, and to substantiation. stimulate discussion. Enterprise Modelling and Information Systems Architectures Vol. 15, No. 6 (2020). DOI:10.18417/emisa.15.6 Informatics as a Science 3 Viewpoint 1 Successful construction of scientific equations, integrals, etc. In contrast, informatics models describes behavior in discrete steps. This allows to describe entirely different properties, and requires Good scientific theory is formulated in terms of different analysis techniques. models. A model is a system of notions and Models in informatics are used for various dif- relations among them, intended to better under- ferent purposes: stand reality. “Reality” is either given as natural phenomena, or – as in the case of informatics – • to describe domain-specific facts, for example constructed by man. Particularly impressive is a companies’ structure of the book keeping and the example of physics: For centuries, physicists the accounting department (the “correctness” searched a unifying model for all branches of of this kind of descriptions remains inevitably physics, setting up an impressive body of scien- informal); tific theory. Particularly impressive is the deep • to describe algorithmic behavior, for example harmony between physics and mathematics (Livio how to apply for a claim settlement with an 2009) with very abstract, yet exceedingly useful insurance company; scientific concepts and models. A typical example • to describe a software’s effect, either in terms is the notion of energy. This notion allows to mutually relate and quantitatively fix quite dif- of properties or of its operational behavior. ferent phenomena that, for example, occur when A model is a symbolic description. It may be a car is accelerated and crashed into a wall: In executable on the symbolic level, in which case this process, an amount of energy is involved. It its behavior can be simulated on a computer. But is initially contained in petrol, then in accelera- it also may conceptually describe the behavior tion, and finally in reshaping metal. The notion of a system in a concrete domain, that is not of “energy” is useful because it provides a quan- intended to be implemented. With a really useful tifying invariance for dynamic processes. This science of informatics it will be worthwhile to kind of invariants, usually denoted as “laws of discuss correctness on the model level and then to nature”, are the scaffold of science. In recent systematically derive correct software. years, systems biology likewise is searching for Seamless integration of computing technology