A Biological Model for Adaptive Evolutionary Information Systems
Centre for IT Services Management Research
De Montfort University
25th October 2001
ÓNeil McBride 2001
Information systems (IS) reside in organisations that are adapting to changing business environments, changing internal structure and changing markets. One of the primary problems with business information systems is their lack of adaptation. The development of an information system is treated as an engineering problem. Business requirements are defined and then translated into operational systems. That process of translation freezes the requirements. Those requirements then represent the processes in the organisation at a particular point in time. As the organisation continues to evolve, the IS remains as a historical representation of the organisation at a point in time. It then becomes a maintenance problem to try to keep up with the relentless organisational change by altering the information system. Often this race is lost, as the IS becomes too large and unwieldy to change at the rate the organisation demands. It becomes a legacy system that fixes business processes. The effect of such a freezing of business processes, constrained by the legacy IS, is to inhibit organisational change, to the detriment and perhaps destruction of the organisation.
This inability of IS to adapt to changing organisational environment may contribute to the extensive gap organisations experience between business and IS strategy, between the business needs and the delivered IT systems. If information systems could be rendered sensitive to organisational changes, whether in the external or internal environment, then a closer coupling between what the organisation does and how it is supported by IS would be possible. However, such coupling will require a different type of information system; one which responds to its organisational environment and adapts its functionality.
This chapter explores the nature of such systems, as they might operate in commercial business environments. What might such an adaptive evolutionary information systems look like? What properties might it have? How might it be structured?
To examine these issues, I will firstly consider what properties might be expected of adaptive IS operating in a commercial environment. This discussion is presented as a series of high level requirements for an adaptive IS. Using such requirements would enable a judgement to be made as to whether an IS really is adaptive.
Having defined what we would expect from an adaptive IS, the second issue I will tackle is : what will it look like? Here, there can be no better source of ideas that the natural world where adaptation is core to the progression and survival of species. I will explore both macro and micro evolutionary principles to identify some ideas that could be incorporated into adaptive information systems and speculate on how such a system might be structured. I will particularly draw on the science of molecular biology (See Lewin, 2000; Alberts et al, 1998) as a source of possible ideas.
Requirements for an adaptive information system
To qualify as an adaptive information system, an IS should have some basic properties. These can be expressed in a high-level requirements specification. A system meeting these requirements may be evaluated as being adaptive. The following outlines some of these requirements, although there may be others:
An ability to identify and respond to stimuli
No system can be adaptive unless it can sense changes in the environment. An adaptive IS would need to sense organisational and business changes both internal and external. These changes could be of various types (Table 1). The sources of these changes should be primarily human operators within the organisation who identify changes and trigger adaptation within the system. However, external non-human stimuli could be envisaged. For example, if a business partner changes an input or output screen within an application which is the basis of Internet-based EDI, then the adaptive IS should sense this. Another example might be the sensing of changes in volumes of traffic in web sites resulting in the sequestering of further hardware resources.
Table 1. Adaptive IS stimuli to evolution
Type of Change
Rule / process
We don't do X any more. Process Y involves a change to step A.
The patient no is fourteen digits now.
We no longer store Z
Process X is now done by department Y
Departments A and B have merged.
We no longer sell to Y
Function Y has been stopped
User ability change
This is Mr X he doesn't know about Function Y
Department Y of Company A and Department Y of Company B are merged.
An ability to identify when to change and when not to
Evolution of biological systems occurs in a punctuated manner. Small changes may occur between each generation, significant changes take many generations. Some adaptation is programmed within the individual organisms, for example, the immune system involves the evolution of different immunoglobulins within the organism to enable effective response to new antigens.
A requirement of an adaptive IS would be that the evolution is controlled and regulated. An IS in operational use needs to be stable until such time as the human operator of the IS determines that an evolutionary step is necessary. Such an evolutionary step should involve the birth of a new generation of the adaptive IS which contains functional adaptations to the changed environment. An adaptive IS may need an evolve mode and an operational mode. If the evolve mode is internally triggered, the system would need to be sensitive to what is a valid trigger.
A mechanism for changing and replacing operational components
The adaptive IS must have direct connection between specifications and components. There would need to be a mechanism which generates components from the specification. New components would need to be built by reading off the specification. A mechanism would also be required to kill obsolete components and replace them with new generation components.
An ability to identify boundaries
Any biological system has the ability to know when to stop growing and where its boundaries are. It can also differentiate between self and non-self. Issues of scope are often key to information system development. Any adaptive IS must know where its boundaries are. It must know when it is big enough. Identifying boundaries will require messages or stimuli from human operators or other adaptive IS.
A coherent, standardised messaging system
An adaptive IS will require a standardise messaging system for internal communication, external communication at environmental interfaces and communication with other adaptive IS to determine scope or exchange stimuli. The messaging system should enable components to establish and understand relationships with adjacent components and to enable some amount of 'component awareness'. Messaging standards will be only one of a series of global standards which will be required to support adaptive IS.
A comprehensive set of building blocks.
Adaptive IS may be based on assemblages of components. These components will be able to cover business functions within the domain. They will need to be constructed on standardised principles of construction and messaging. The assemblage of components should be both comprehensive and minimal, although, as discussed below, duplication and redundancy in the specification may be important to support the evolution of the IS. The set of components will not only cover the application functions, but also the control and development functions.
A selection mechanism to select components for a particular domain and function.
A system for selecting components will be required. Both the assembly of systems and subsystem and testing will focus on selecting components which are fit for purpose. The mechanism should cover functional assembly and component testing. The testing function, which may have an element of human involvement, requires the screening and selection of components. An adaptive IS will allow for defective or unfit components and duplication of components. Where human intervention is appropriate, system development and building focuses on the screening and selection of components that the system offers the developer, rather than the design, coding and testing of components.
A set of support tools for triggering and controlling the development and evolution of the adaptive IS.
A construction kit will be required which supports the user in the evolving of the adaptive IS. These tools should enable the stimulation of the system into evolve mode, the support of mechanisms which provide stimuli to the adaptive IS and enable changes to be apparent in the operational system as a result of these stimuli. The construction kit should also enable automatic mechanisms to be set up whereby business stimuli from, for example, web interactions, triggers system evolution.
Adaptive Evolutionary Information Systems Structure is Derived from the Biological Model
I have identified some basic principle of requirements for an information system that is capable of adaptation to its changing organisational environment. The aim of such commercial systems would be to be maintenance-free. The maintenance function would be migrated to system evolution such that the system accepts stimuli for change from the environment, generates the required structural responses and expresses those responses in the information system environment.
In order to 'flesh out' these requirements I will draw on biological ideas, starting at the molecular level with a discussion of the molecular mechanisms of cellular functioning and development, and drawing out the possibilities for adaptive IS function that the biological mechanisms may suggest.
The basic molecular mechanisms of cells
A biological organism is an aggregate of cells. The cells take on a variety of specialist functions to create functional domains such as the nervous system, heart, arms and hands. Cells differentiate to take up specialist roles. They identify their roles and maintain their roles through communication with surrounding cells and by receiving signals from other controlling systems. Thus the organism is a hierarchy of systems interacting to provide the whole organism with functionality and to render it living.
However, generally, each cell, regardless of its function houses the same specification, the same blueprint for the whole organism. This blueprint is contained within the genome, coded as deoxyribonucleic acid (DNA) and housed with the central nucleus of each cell. Thus a cell, before differentiation, can potentially take up any role within the organism. Which role it takes up, is determined by which parts of the genome are expressed.
The DNA defines the structures of proteins. These proteins carry out a variety of functions. Enzymes catalyse metabolic reactions, producing cell material : sugars, fats, membranes. Structural proteins provide some cellular framework. Transporter proteins sit in membrane structures moving metabolites including, for example, sodium and potassium, about. Signallers and messengers trigger cellular changes and control expression. Identifier proteins sit on the cell wall indicating cell type.
Proteins are produced from the DNA by a process that involves the transcription of the DNA sequence into an intermediary, the messenger RNA (mRNA), and translation of the sequence on the mRNA into proteins, built from amino acid building blocks. The DNA consists of strings of combinations of four bases: G, A, T and C. Groupings of three bases (codons) define specific amino acids, so a length of DNA will define a series of amino acids which, when joined together, form the basic protein structure. This basic protein structure is transformed to the final, active protein through further reactions and additions that fold the protein and alter its structure.
Some proteins participate in feedback mechanisms, attaching to the DNA to determine which sequences are transcribed and hence to control differentiation. Both the transcription of the DNA and the translation of the mRNA are done by proteins, in particular a series of enzymes. Transcription involves polymerases reading along the DNA sequence to construct a mRNA. Translation involves various proteins participating with RNA-based structures to assemble proteins from amino acid building blocks. Ribosomal RNAs provide the structures within which translation occurs and transfer RNAs pick up the required amino acids and bring them to the assembly site.
When cells divide the genome is conserved. Replication of the DNA, to give identical copies of the specification in the daughter cells is extremely accurate. However, in particular hotspots, single base changes may occur resulting in mutations. While cell division within the organism, i.e. mitosis, gives rise to highly accurate reproduction of the DNA sequence, cell division to give rise to progeny of the organism allows recombination and the generation of differences, while still conserving basic structure.
The specification for the organism is contained in every cell. The specification defines not only all the structures and function, but also the control mechanisms by which that structure and function is developed. It is rigorously conserved and protected from change within the organism.
Adaptive evolutionary information system structure should be component-based
The biological mechanism can provide ideas and analogies for the structure of adaptive evolutionary information systems at the cellular level and the macromolecular level. The basic unit of an adaptive evolutionary information system is the component. A component may be viewed as a cell. Systems are built from aggregations of components. Structure is formed as a result of the proximity of components and the messages exchanged between components. Components can be differentiated into specialist roles and grouped into functional domains. Structure is then maintained through standardised signalling and messaging. Adaptive evolution information systems are then built hierarchically, from small to large, from simple to complex.
While the cell provides a good analogy for a component, the mechanism of system generation and regeneration may be fruitfully considered when a component is taken as analogous to a protein within a cell. Inevitably, adaptation in the natural world occurs at several levels. Basic evolutionary mechanisms operate at the macromolecular level, but evolutionary mechanisms may also be considered at the cellular aggregation level, the organism level and the population level.
The specification contains both control and application elements
The specification for an evolutionary adaptive information system should define the whole range of function and should define the development mechanism by which the components are assembled and the operational system implemented. Some components defined on the specification will be involved in user-oriented functions - receiving data, controlling and running a business process, carrying out validation checks and so on. Other components will be involved in the definition of the system - selecting components to participate in a particular functional domain from the specification, defining which components are read from the specification and built as active, operational components; providing the mechanism by which components are built from the specification; adjusting components to fit the particular environment; providing links between components in order to attain the right level of aggregation. Thus the control function and the application function are defined in the same specification.
Certain control components may be permitted to structurally alter other components in the operational environment. Homeotic components (see below) may regulate the system and determine which components are read off the specification. Indeed the presence of certain components may shift the system irreversibly into a particular domain.
Conserving the Specification
The specification should not be allowed to degrade. While changes may be recorded in the specification, these will be determined by the appropriate evolutionary or feedback mechanism. DNA sequence is conserved and protected through repair mechanisms which cut out damaged or incorrect sequences and 'rewrite' the correct sequences. Similarly, repair mechanisms for the adaptive evolutionary information system may be envisaged which check the structure of the specification. The repair mechanism should check that message and component structure follows standard guidelines. Where errors are found, the repair mechanism should be able to correct the specification to ensure correct structure. For example, a message within a component with the wrong start or end structure should be corrected.
A key attribute of the genetic code and the mechanism for transcription and translation is that it is constructed from simple building blocks. Four bases provide sufficient language for coding an entire genome. Sixty-one codons code for 20 amino acids. The mRNAs have a standardised control structure, with standard sequences indicating the start and the end of protein synthesis. They provide the blueprints for making the protein within the ribosomal RNA-mediated synthesis 'factories'. Specific sequences indicate where translation should start (start codons) and where it should end (termination codons).
The human genome contains between 25,000 and 35,000 genes (Wolfsberg et al, 2001), that is sequences which can be transcribed into mRNA and translated into proteins. This accounts for a fraction of the 3.3 x 109 base pairs of the genome. Some of the DNA consists of groups of short highly repetitive sequences that are not transcribed. Moderately repeated sequences are also peppered across the genome. These consist of related but not identical sequences. Protein coding sequences are found in the non-repetitive DNA. Functional types are grouped together, for example, the haemoglobins. Functional clusters may contain inactive genes, called pseudogenes, which may have been rendered inactive by base mutations, or may be copies of the active mRNA, without introns, inserted back into the genome.
Each gene, giving rise to an expressed protein may not be contiguous. Rather the gene consists of regions which code for parts of proteins, the exons, and regions that do not, the introns. Transcription results in a long precursor mRNA. Intron sequences are excised from the precursor mRNA and exons are spiced together to give the final mRNA which is translated into protein. Most introns have no coding function. However, they fall into classes according to start and end sequences. The largest class starts with GT and end with AG. There is a smaller AT-AC class (1 in 10,000 introns). Exons are joined together in the same order as they appear in the DNA. While many genes code for one protein, multiple type of protein can be derived from one gene by splicing out one or more exons along with the introns. Indeed, it is estimated that 60% of human genes may have multiple splicing forms. Surprisingly, some introns code for endonucleases, enzymes that cut out specific DNA fragments. The endonuclease coded by the intron, enables the intron to become mobile. It can be cut out of one location in the genome and inserted in another. The purpose of introns is not really known. It may be suggested that they allow opportunity for variation such that basic units of protein function can be linked together to provide greater versatility.
Not all potential genes are expressed in any one cell. The mRNA population will consist of a few very abundant sequences. For example, in oviduct cells, 50% of mRNA present code for egg protein representing 100,000 copies, 15% codes for eight other proteins with 4000 copies of each. The remaining 35% code for some 13,000 very low abundance mRNAs present as 5 copies each. In contrast, a bacterial cell may have only 1500 mRNA molecules in total representing 600 different messengers.
The specification is the genome of the adaptive evolutionary information system.
All executable elements of an adaptive evolutionary information system should be present in the specification. The specification consists of blueprints for executable components for everything from validation and database definition to data insertions and calculation algorithms. Data occurs in pools in the system, located in files or databases. Data is generated and manipulated by components read off the specification. The specification explains how to create and store data, it does not store data. Data is part of the adaptive evolutionary information system, but is generated in the living system.
Component structure consists of messages, processing exons and control processing
Component structure should be standardised. Genetic mechanisms are simple and standard - a simple code, universal mechanisms for transcription and translation, and a simple set of building blocks. An adaptive EIS should follow this example. The start of each component in the specification should be indicated by a universal code for transcription purposes. Standard forms of enhancer codes and promotor codes should be used. Components should be activated and inactivated by standard types of messages. Messages will activated components and maintain their activity. The structure of the specification should be standardised for exising and adding messages or message receptors within components and adding units of execution - the equivalent of exons.
Messages provide the glue for assembling components into an adaptive EIS. Message structure should be standardised. Messages should be able to be copied from one component to another. A message should not be considered solely as a function call, or a call to trigger a method. Messages will have small structures of their own and independent existence within a networked system. They will behave like the messaging proteins which trigger activity in cells, synchronise cellular activity and provide the means of locational communication.
Specifications for some components may give rise to multiple forms of the component.
Components may be coded in the specification which can be read in multiple forms, much in the way that some mRNAs give rise to several proteins, primarily long and short forms in the genome. Components may be transcribed / translated as long and short versions, equivalent to superclass / subclass aggregations.
Evolved components may be created by altering or duplicating existing components, adding processing units (exons), sequences of messages and through altering messaging, changing interactions between specification components.
Components which are not required or have been superceded may be switched off by inactivating transcription / translation starters. The component may be unreadable off the specification, or inactive when read, perhaps because messages are blocked or inactivated.
Duplication is permitted
Component processing units may be exised or inserted into components as required. Reuse in the specification will depended on creating basic unit of processing (exons, perhaps based on patterns) which are common to components. These units of processing may, however, be duplicated in any component that needs it. Duplication of exons will occur significantly frequently among groups of related components. Duplication is permitted. As discussed below, functions are conserved through selection, not compression of the specification. Incorrect components are destroyed and correct ones embedded in the operational systems to take up operational activities.
Related families of components - either functions or domains - will be located in close proximity on the specification. New functionality is achieved primarily by replicating components.
Not all components on the specification will be read off and appear in the operational system. Only those relevant to the domain of the adaptive EIS will be expressed. This may be achieved by control components (see below) which select particular components for transcription / translation. Promotor components may enable the production of certain components from the specification. Inhibitor components may operate by feed back on the specification, hiding particular components.
The operational Adaptive EIS may have multiple copies of some components, enabling parallel processing. For example, a validation component may appear several times in the operational systems, supporting different business entity components.
The specification contains a library of processing exons.
There will be a library of small units of processing representing the basic algorithmic functions. Exons within components would be constructed from these, and would then be joined together to form the complete processing of a component. Adaptive
EIS system complexity is built up in a heirarchical manner. Simple patterns of processing are glued together to form exon units of processing. Strings of exon units of processing, perhaps divided by a simple standard introns build up to develop components, together with messages. A component may consist of a series of message units and a series of processing exons together with transcription / translation and other control signals. The library of possible units of processing, that is the library of pattern units, is optimal but minimal. Furthermore, they are not stored in one place but located wherever needed within the specification of each component.
Homeotic genes control the identity of body segments. In Drosophila, the fruit fly, mutations in homeotic genes may cause antenna to be converted to legs or extra wings to be produced. In humans, mutations of certain homeotic genes results in limb or kidney defects. Homeotic genes code for DNA binding proteins that affect the transcription of other genes. The primary homeotic genes are clustered in the fruit fly in an order that reflects the spatial ordering in the fly itself. Homeotic genes may operate in cascades, in which one homeotic gene promotes the expression of further genes and results in the specific differentiation of a cell into a cell type whose memory of type may be a result of the presence of specific homeotic genes. In drosophila, three homeotic genes control ten different types of segment. The control mechanisms do not merely depend on the presence or absence of homeotic gene products, but also on little understood, persistent differences in non-expressed control regions around the homeotic genes.
Thus homeotic genes act as control components, controlling the development of specific domains, whether spatial such as limbs or functional such as bone structures. Thus domains are constructed in a hierarchical manner. Some homeotic genes may affect sub-domains that group to form larger structures.
Homeotic components will have a key control role in the development of adaptive evolutionary information systems.
Homoetic components would form a similar role of domain expression in adaptive evolutionary information systems. They would select and control cascades of components (Figure 1). Homeotic components may operate at two levels. At a specification level, homeotic components would control what components are selected off the specification and transcribed. At an operational level, homeotic components may participate in systems functionality, promoting aggregation of systems within domains and controlling temporal component activity. Homeotic components may operate in cascades. One homeotic component may trigger off a series of homeotic components which control the necessary sub-domains for the system. Thus homeotic components regulate the development of IS domains and their operation. They may determine the identity of the entire adaptive evolutionary information system as well as domain structure.
Environmental signals will trigger off which homeotic components are read off the specification and therefore which domains are defined.
Homeotic components will be highly conserved.
In biological systems at the vertebrate level, homeotic mutations are rarely observed because they are inevitably lethal, effectively switching off whole domains of biological structure. In addition, they are highly conserved.
Homeotic components would pay a key role in adaptive evolutionary information systems. Failure of these components would probably halt system development and operation. However, their presence will enable easy shift between domains when required and a focus for checking that the system meets its environmental demands. Homeotic components should be grouped into domains on the specification so that it is easy to see where a particular domain is specified.
Homeotic components will work in cascades to control the structure of an adaptive evolutionary information system
In order to construct a working control system for application domains, based on cascades of homeotic components, it may be necessary to have elements in the specification which are not transcribed into components, but act controllers, receiving input messages from other homeotic components and making decisions on which homeotic components are activated to form operational domains. This suggests the interesting idea that parts of the adaptive evolutionary information system specification might be immediately executed in order to make decisions concerning which parts of the specification are transcribed.
Processing exons will describe mini-patterns of processing.
While exon units of processing describe small patterns of processing which are reproducable and may be inserted into a number of components. Homeotic components enable development of patterns-in-the-large, defining patterns of domain activity, both structure and processing. We can therefore imagine a hierarchy of patterns, derived from the specification, controlled by selection and defining the entire operational system. Homeotic components may be proposed as the key controlling elements within an adaptive evolutionary information system.
Mechanisms for Evolving the Information System.
The above sections established an outline structure for an adaptive EIS. However, in order to be adaptive, a mechanism for developing change in the specification in response to environmental changes must be established.
In biological systems, adaptation and change is established through reproduction of the next generation. DNA is arranged in chromosomes and is present in each cell (except germ cells) as pairs (dipliod), one from each parent. At conception, new combinations may be established by crossover between chromosome pairs. These changes are then expressed in the phenotype and tested within the environment. Changes which result in a better fit in the environment are retained to the next generation. This idea is the basis of genetic algorithms and genetic programming.
Recombination by crossover would require two copies of the specification in the adaptive EIS. One copy would be defined as inactive, i.e. not-transcribed. Which copy was inactive could be changed from development cycle to development cycle. Switching from operational to evolve mode could involve a cycle of recombination by crossover.
However, other molecular mechanism may provide analogies for rearrangement of the specification. Components in the specification may be amplified by the addition of new messages or messages excised from other components. New exon processing may be added or duplicated from other components. Some component messages may be switched off by exicing or altering control sequences within the message. Components may be duplicated in the specification, and then evolved to create new component functions based on parent component functions. These changes are all endogeneous, involving rearrangements of existing component definitions within the specification.
Additionally exogeneous changes may be envisaged. One such exogenous change would be the introduction of a newly defined component into the specification by a human programmer. An additional exogenous change might involve the exchange of components between separate adaptive evolutionary information systems.
Such recombinations would give rise to new components, components with new message combination and new exon processing combinations.
Endogenous adaptation of components will proceed by pre-selection, selection and the transmission of change to the specification.
The evolving of the adaptive EIS requires expression of those new components in the operational system and testing or selection of the appropriate components. This creates some problems, since, if the selection is done manually by human analysts, and there are a large number of recombined components and an immense laborious task is created.
Three approaches need be considered. Firstly, automatic pre-selection of components may occur such that the human analyst is presented with a small subset of suitable components for what is effectively business testing. Components rejected in pre-selection would need to be removed from the specification. Secondly, a mechanism which targets changes and basically transmit changes from the environment to the operational component to the specification needs to be developed. Such a concept could be described a Lamarkian evolution, since the change is directly transmitted to the specification and not established through recombination and selection over generations. Thirdly, the scope or extent of changes may be limited.
In any biological system, changes between a generation are small and possibly localised. Gorillas remain gorillas and do not evolve into other species in one generation. Elephants do not revert to tapirs. Adaptations evolve to solve problems in a particular domain. In becoming specific to a domain they become less well suited to other domains. The concept of domain specificity suggests that domains, once established, are fairly stable. The environment provides the selection pressures and channels changes down a one-way route toward an irreversible solution.
Biologically, domains may concern oxygenating blood, developing immunity, focussing light, and digestion. The evolved solutions to the domains problems are substantially stable. Similarly, solutions to problems within business domains may be stable. An e-commerce transaction system does not evolve in the large; changes and alterations as a result of organisational change will generally occur in the detail, rather than involving a catastrophic change in the business function. Indeed, it may be these small changes that consume the most maintenance time overall, rather than big system changes. Self-adaptation to these organisational changes may be a primary benefit of using an adaptive evolutionary information system. While an Adaptive EIS should be capable of radical evolution, perhaps through judicious changes to homeotic components, primarily evolution may be limited within generations to small changes that are easier to test for and require less selection effort.
In Lamarkian adaptation, changes in the environment are detected at the system interfaces. The effects of these changes are transmitted via intermediaries to the specification. Thus a change in the environment results in a direct change in the specification.
Implementation of Lamarkian adaptation raises a number of issues. Firstly, the change must be detected. Secondly, the adaptive evolutionary information systems must be able to identify the physical component changes - new exons, extra messages, changing processing which are required to service the environmental change. Thirdly once the change has been identified, that change must be converted into specification change and transmitted to the correct parts of the specification.
Darwinian adaptation is triggered by the construction of a new generation. This in itself may be triggered by one or more environmental changes, by an elapsed period of time, or by user intervention. On triggering the evolve mode, the adaptive EIS must generate options for dealing with the environmental change. Those altered components must then be produced and tested for fitness, either internally and automatically or through expression and user testing. This testing will result in the selection of components which have the best organisational fit and meet the needs of the environmental change.
A number of difficulties arise in the implementation of Darwinian adaptation. The principle problem lies in managing the selection of the fittest components. There must be a strategy for evolving the specification and a strategy for selecting from the results of that alteration. This will require finding a way of doing some automatic fitness selection and managing user selection of fittest components from an automatically generated shortlist of fittest components.
A hybrid approach could be envisaged in which external changes are detected by the system interfaces and result in changes in components. Components generated by recombination, duplication and mutation in the specification are then compared with the required changes in the components and a selection can be made.
All these approaches raise the issue of communication between the system and its environment. Some ideas for dealing with this problem may be obtained from considering how cells communicate
In biological systems, communication between cells and systems is mediated by receptors. These receptors, located in cell membranes, bind reversibly to specific chemicals, for example hormones. The effect of this binding will differ according to the cell type, Hence a single hormone made had a variety of metabolic effects.
In some cases, the binding of the hormone to the receptor endows the receptor with increase affinity for DNA. New transcription and new translation is triggered. This may operate in a cascade fashion, where the receptor triggers the production of a protein which itself triggers production of several proteins similar to the manner in which a cascade of homeotic proteins are expressed.
Binding of a hormone or ligand to a receptor may have other effects. Primarily, these include altering the voltage on a membrane and thus changing permeability to different minerals and triggering the production of cyclic AMP. Cyclic AMP is considered a ubitiquous intracellular mediator in that the effect of many receptors within cells is triggered by cyclic AMP production.
In summary, while there are be many different kinds of receptors with specificities for different ligands, there are be only a few standard mechanisms by which the receptor triggers intercellular change, either at the metabolic level or the DNA transcription level.
In adaptive evolutionary information systems, information receptors will trigger evolution of the specification when the bind to information ligands.
Information ligands are any information items which attract or activate an information receptor and thus initiate specification change. A large variety of information ligands may have various effects on the adaptive EIS. Information receptors will be specific to individual information ligands or types of information ligand.
There is a clear need for research into the classification of types of business change that can occur and the types or classes of information ligand that can be derived from those business changes.
In an adaptive evolutionary information system, changes in the organisation, its processes and data are transmitted to the specification via information receptors. These receive or detect information ligands and, having detected a change, act on the specification.
The action of the information receptor will result in a change to the structure of one or more components in the specification. This change may be mediated by a change to operational components which is then transmitted to the specification. Information receptor will 'bind' specifically to information ligands or classes of information ligands. Thus there will be many different information receptors, but the mechanisms by which binding causes changes to the specification will be standards for all information receptors.
Information receptors will act with interface components. They may be located in the interfaces all the time, waiting for the arrival of an information ligand, or they may be activated when the adaptive EIS switched to evolve mode. Receptors will bind with information ligands which act as the information signal. This binding will give the receptor an affinity for components which require change to cover the environmental change represented by the information ligands.
Information receptors are themselves components, coded on the specification, who properties change when they bind to an information ligand. An information receptor may become specification sticky when bound to an information ligand. This may trigger appropriate changes to the specification including changing which homeotic components are read from the specification, adding or deleting messages in components, and adding or deleting processing exons in components. Changing which homeotic component is expressed may trigger a whole series of changes in component expression; a cascade which may alter the domain specificity of the adaptive evolutionary system.
Information Receptors as Domain Markers
In addition to providing a mechanis for transmitting change to the specification, information receptors would uniquely identify domain adaptive EIS. In other words, they would distinguish between one EIS and another. They would also enable the transmission of messages between systems.
Adaptive EIS functions may be merged by binding between the information receptors of the individual systems, one information receptor effectively acting as the information ligand for the other system. Differentiation between self and non-self may be mediated by information receptors specifically associated with homeotic components.
Developing an adaptive evolutionary information system.
Developing an adaptive evolutionary information system based on the concepts of molecular biology will need to be tackle from several fronts. Demonstrator system could be built which illustrated adaptation occuring for a system with one small business function and two relational tables, for example. For large commercial systems a design process could involve analysing system processing to identify all possible exons and create a classification of mini-patterns of processing. Such a process might involve:
Taking the existing large commercial system and breaking it down to identify all exons and messages.
Designing transcription and translation mechanisms
Designing control mechanisms
Defining homeotic components
Creating a classification of environmental change relevant to the system
Designing a series of information receptors
Defining the transmission mechanisms for those information receptors and defining how they interact with adaptive EIS components and how they change the specification.
Creating assemblages of components and defining homeotic component control pathways.
The construction of adaptive evolutionary information system which can operate in a commercial environment will require a multi-disciplinary effort. Adaptive EIS will draw on object-oriented technology, parallel processing, component technology and patterns amongst other aspects of computer science. It will also cross disciplines into psychology, sociology, organisational studies and biological science to draw in theoretical frameworks and analogies.
This paper develops a requirements outline drawing on cellular and molecular biology. While providing a framework for considering the structure and function of evolving adaptive evolving information systems, it leaves many questions unanswered. In particularly a much work remains to identify implementation mechanisms to make the concepts presented work in practice.
Concepts from biological science have provided clear directions for computer science in the past, as seen in the development of neural networks, for example, and will continue to do so in the future. Whether inspiration is drawn from the macro-mechanisms of evolutionary biology, the physiology of the autonomic nervous system or the molecular biology of the cell, adaptable systems, both hardware and software, will continue to operate on biological principles. Indeed, I would suggest that, in the face of the increasing complexity of organisations and their computer systems, only models such as those derived from biology, which can cope with complexity through the aggregation of simple basic units, will meet the computing challenges of the 21st Century.
Alberts,B; Bray,D, Lewis,J, Raff, M, Roberts, K and Watson,J.D (1998) The Molecular Biology of the Cell. Garland.
Lewin,B. (2000) Genes VII Oxford
Wolfberg, T.G.; McEntyre,J and Schuler,G.D. (2001) Guide to the Draft Human Genome. Nature 409, 824 - 826.
ÓNeil McBride 2001