Pinar Yildirim
email: pinar.yildirim@okan.edu.tr

Ljiljana Majnarić
email: ljiljana.majnaric@hit.t-com.hr

Ozgur Ilyas Ekmekci
email: oekmekci@okan.edu.tr

Andreas Holzinger
email: andreas.holzinger@medunigraz.at

On the Prediction of Clusters for Adverse Reactions and Allergies on Antibiotics for Children to improve Biomedical Decision Making

Keywords: Adverse reactions and allergy (ARA), knowledge discovery, biomedical data mining, k-means algorithm. yes

In this paper, we report on a study to discover hidden patterns in survey results on adverse reactions and allergy (ARA) on antibiotics for children. Antibiotics are the most commonly prescribed drugs in children and most likely to be associated with adverse reactions. Record on adverse reactions and allergy from antibiotics considerably affect the prescription choices. We consider this a biomedical decision problem and explore hidden knowledge in survey results on data extracted from the health records of children, from the Health Center of Osijek, Eastern Croatia. We apply the K-means algorithm to the data in order to generate clusters and evaluate the results. As a result, some antibiotics form their own clusters. Consequently, medical professionals can investigate these clusters, thus gaining useful knowledge and insight into this data for their clinical studies.

Introduction

Antibiotics are the drugs most commonly prescribed to children and are most likely to be associated with allergic and adverse reactions [START_REF] Langley | Allergy to antibiotics in children: perception versus reality[END_REF], [START_REF] Kramer | Adverse drug reactions in general pediatric outpatients[END_REF], [START_REF] Menniti-Ippolito | Active monitoring of adverse drug reactions in children.Italian Paediatric Pharmacosurveillance Multicenter Group[END_REF], [START_REF] Cirko-Begovic | Intensive monitoring of adverse drug reactions in infants and preschool children[END_REF]. A reaction to a drug is considered an allergic reaction if it involves an immunologic reaction to a drug. It may occur in the form of immediate or non-immediate (delayed) hypersensitivity reactions. Immediate reactions are usually mediated with IgE antibodies (often elevated in persons with inherited susceptibility to allergic diseases, called atopy), whereas non-immediate reactions can be mediated with several other immune mechanisms [START_REF] Thong | Update on the management of antibiotic allergy[END_REF]. The clinical manifestations of antibiotic allergy include skin reactions (varying from local and mild general to severe general reactions), organspecific reactions (most commonly occuring in the form of blood dyscrasias, hepatitis and interstitial nephritis) and systemic reactions (usually corresponding with anaphylaxis) [START_REF] Thong | Update on the management of antibiotic allergy[END_REF]. Many reactions to drugs mimic symptoms and signs of the allergic reactions, although being caused with non-immunologic mechanisms. In many cases, also, pathologic mechanisms remain completely unclear. This is the reason why these reactions are often considered together and commonly named adverse reactions and allergy (ARA) [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF]. This term is especially appropriate for use in primary health care setting, where patients who had experienced ARA on antibiotics have rarely been referred to testing. Moreover, diagnostic tests are limited and are only standardized for penicillin allergy [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF].

Antibiotic classes with higher historical use have been shown to have higher allergy prevalence [START_REF] Macy | Self-reported Antibiotic Allergy Incidence and Prevalence: Age and Sex Effects[END_REF]. Published papers on frequency, risk factors and preventability of this medical problem in the general population, and especially in children, are scarce. Available data implicate female sex, frequent use, older age, insufficient prescribing strategy and monitoring of prescribed medications, as the primary factors accounting for higher prevalence of ARA on antibiotics among adults. Similar data for children are completely absent [START_REF] Krizmanic | Adverse reactions and allergy on antibiotics in children[END_REF].

The aim of this study is to explore hidden knowledge in the survey data extracted from health records on adverse reactions and allergy on antibiotics in children in the town of Osijek, Eastern Croatia. We plan to obtain some serious and useful information in electronic health records that are not easily recognized by researchers, clinicians and pharmaceutical companies.

Related Work

There have been several studies performed for knowledge discovery on drug adverse events associations. Kadoyama et al. searched the FDA's AERS (Adverse Event Reporting System) and carried out a study to confirm whether the database could suggest the hypersensitivity reactions caused by anticancer agents, paclitaxel, docetaxel, procarbazine, asparaginase, teniposide and etoposide. They used some data mining algorithms, such as proportional reporting ratio (PRR), the reporting odds ratio(ROR) and the empirical Bayes geometric mean (EBGM) to identify drugassociated adverse events and consequently, they detected some associations [START_REF] Kadoyama | Hypersensitivity Reactions to Anticancer Agents:Data Mining of the Public Version of the FDA Adverse Event Reporting System, AERS[END_REF].

Tsymbal et al. investigated antibiotics resistance data and proposed a new ensemble machine learning technique, where a set of models are built over different time periods and the best model is selected. They analyzed the data collected from N.N. Burdenko Institute of Neurosurgery in Russia and the dataset consisted of some features such as: patient and hospitalization related information, pathogen and pathogen groups and antibiotics and antibiotic groups. Their experiments with the data show that dynamic integration of classifiers built over small time intervals can be more effective than the best single learning algorithm applied in combination with feature selection, which gives the best known accuracy for the considered problem domain [START_REF] Tsymbal | Dynamic Integration of Classifiers for tracking concept drift in antibiotic resistance data[END_REF]. Lamma et al. described the application of data mining techniques in order to automatically discover association rules from microbiological data and obtain alarm rules for data validation. Their dataset consists of information about the patient such as sex, age, hospital unit, the kind of material (specimen) to be analyzed (e.g., blood, urine, saliva, pus, etc.), bacterium and its antibiogram. They applied the Apriori algorithm to the dataset and developed some interesting rules [START_REF] Lamma | The automatic discovery of alarm rules for the validation of microbiological data[END_REF].

Methods

The Study Population and Data Sources

The study was done on the population of 1491 children (769 children of the school age, 7-18 years old, the rest of the preschool age), all patients in the same Health Center in the town of Osijek, Eastern Croatia, cared for by a family physician and a primary pediatrician teams.

Data were extracted from the health records of these children. Knowledge of risk factors for ARA on antibiotics in children are scarce. In making a choice for data collection, a co-author physician used personal knowledge on factors influencing the immunologic reactions together with information from the studies on risk factors for allergic diseases in children [START_REF] Harris | Recorded infections and antibiotics in early life: associations with allergy in UK children and their parents[END_REF], [START_REF] Johnson | Antibiotic exposure in early infancy and risk for childhood atopy[END_REF], [START_REF] Halken | Prevention of allergic disease in childhood: clinical and epidemiological aspects of primary and secondary allergy prevention[END_REF], [START_REF] Headley | Medication administered to children from o to 7.5 years in the Avon longitudinal study of parents and children (ALSPAC)[END_REF], [START_REF] Hawkins | A survey of the administration of drugs to young infants. The Alspac survey team. Avon longitudinal study of pregnancy and childhood[END_REF], [START_REF] Bremner | Early-life exposure to antibacterials and the subsequent development of hayfever in childhood in the UK: case-control studies using the general practice research database and the doctors` independent network[END_REF], [START_REF] Thomas | Atopic wheezing and early life antibiotic exposure a nested case-control study[END_REF], [START_REF] Kozyrskyj | Increased risk of childhood asthma from antibiotic use in early life[END_REF]. Data extraction, from the patients health records, was guided by a multi-item chart, in an advance prepared by this co-author. In addition, parents of children recorded on ARA on antibiotics were interviewed by telephone, on a family history of ARA on antibiotics and other allergic and chronic diseases, in which pathogenesis, in a great part, immunologic mechanisms are involved. Data were summarized.

Registered information on ARA on antibiotics was found in health records of 46 children, out of a total of 1491 children screened, implicating the overall prevalence of ARA on antibiotics of 3,15%. However, higher prevalence was found in children of the school age (4,9%), then in those of the preschool age (1,1%), data probably reflecting the cummulative incidence rates with age. When the incidence data were however estimated, it has been shown that ARA on antibiotics, in our study population, can be expected to occur predominantely in preschool age (33/46 cases, 71,1%).

Of registered ARA events, almost all were mild-moderate skin reactions. Only one case was in need for hospitalization (a18-year-old girl, treated with the combination of amoxicillin and clavulonic acid). All data, including descriptions of ARA events (upon which classification of severity reaction was made) and diagnoses of diseases, were based on the native physicians` records.

Clustering Analysis by k-means Algorithm

Cluster analysis is one of the main data analysis method in data mining research.The process of grouping a set of physical or abstract objects into classes of similar objects is called clustering. A cluster is a collection of data objects that are similar to one another and are dissimilar to the objects in other clusters. Cluster analysis has been widely used in numerous applications, including pattern recognition, data analysis, image processing and biomedical research.

In this study, we use k-means algorithm to survey results on adverse reactions and allergy (ARA) on antibiotics in children. The k-means algorithm is a type of partitioning algorithm and is simple and effective. The k-means algorithm is widely used due to easy implementaion and fast execution. The algorithm takes the input parameter, k, and partitions a set of n objects into k clusters so that the resulting intracluster similarity is high but inter-cluster similarity is low. Cluster similarity is measured with regard to the mean value of the objects in a cluster, which can be viewed as the cluster's center of gravity. The pseudo code of a k-means algorithm is as follows:

1. arbitrarily choose k objects as the initial cluster centers 2. repeat 3. (re)assign each object to the cluster to which the object is the most similar, based on the mean value of the objects in the cluster 4. update the cluster means, i.e., calculate the mean value of the objects for each cluster 5. until no change.

The distance from the mean values of the objects in the clusters are calculated by using distance measures. The Euclidean distance is one of the common distance measures and is defined as the square root of the squared discrepancies between two entities summed over all variables (i.e., features) measured. For any two entities A and B and k=2 features, say X1 and X2, d ab is the length of the hypotenuse of a right triangle. The square of the distance between the points representing A and B is obtained as follows:

d ab =[ (X a1 -X b1 ) 2 + (X a2 -X b2 ) 2 ] 1/2 [20].

Experimental results

We selected samples from the survey results and created a dataset. Table 1 lists the antibiotics used in the dataset. The dataset consists of 26 attributes and 42 instances (Table 2 andTable 3). The k-means algorithm was used to explore some hidden clusters in the dataset. WEKA 3.6.8 software was used. WEKA is a collection of machine learning algorithms for data mining tasks and is an open source software. The software contains tools for data pre-processing, classification, regression, clustering, association rules and visualization [START_REF] Hall | The WEKA data mining software: an update[END_REF], [START_REF]WEKA: Weka 3: Data Mining Software in Java[END_REF].

K-means algorithm requires the number of clusters (k) in the data to be prespecified. Finding the appropriate number of clusters for a given dataset is generally a trial and error process made more difficult by the subjective nature of deciding what "correct" clustering. The performance of a clustering algorithm may be affected by the chosen value of k. Reported studies on k-means clustering and its applications usually do not contain any explanation or justification for selecting particular values for k [START_REF] Pham | Selection of k in k-mens clustering[END_REF]. The k-means algorithm implementation in many data-mining or data analysis software packages requires the number of clusters to be specified by the user. To find a satisfactory clustering result, usually, a number of iterations are needed where the user executes the algorithm with different values of k [START_REF] Pham | Selection of k in k-mens clustering[END_REF]. In order to evaluate the performance of simple k-means algorithm in our study, two test modes were used, training set and percentage split (holdout method).The training set refers to a widely used experimental testing procedure where the database is randomly divided into k disjoint blocks of objects, then the data mining algorithm is trained using k-1 blocks and the remaining block is used to test the performance of the algorithm, this process is repeated k times. At the end, the recorded measures are averaged. It is common to choose k=10 or any other size depending mainly on the size of the original dataset. In percentage split (holdout method), the database is randomly split into two disjoint datasets. The first set, which the data mining system tries to extract knowledge from called training set. The extracted knowledge may be tested against the second set which is called test set, it is common to randomly split a dataset under the mining task into 2 parts and has 66% of the objects of the original database as a training set and the rest of objects as a test set. Once the tests were carried out using our dataset, results were collected and an overall comparison was conducted [START_REF] Tiwari | Enhancing the performance of data mining algorithm in letter image recognition data[END_REF]. We also tried different number of clusters (2<=k<=5) for each test mode and we observed the results of number of iterations, sum of squared errors and runtime. Sum of squared error (SSE) is an evaluation measure that determines how closely related are objects in a cluster. The formula of SSE is as follows: 2C i is the jth cluster, m i = centroid of cluster C i (the mean vector of all the data points in C j ), and dist(x, m j ) is the distance between data point x and centroid m j [START_REF] Tan | Introduction to data mining[END_REF].

Table 1. Type of antibiotics used in survey

Type of antibiotics

SSE=    i Ci x i m x dist ) , (
The results after analysis are described in Table 4 and5. We compared the results of the number of clusters obtained by simple k-means algorithm and we found that greater number of clusters produced smaller sum of squared errors. For example, when k value is 2 which is default in Weka, sum of squared error is 459.114, on the other hand, when k value increased to 4, new value of sum of squared error is 430.279(Fig 1). Table 6 shows clusters with training set mode and with k=4. Family history on ARA negative negative negative positive antibiotics form their own clusters such as cef&pen, pen, fenoksi and ampicilin. Medical researchers and clinicians can consider and explore these patterns to create some medical ideas.

Discussion

This is a collaborative study of an interdisciplinary team, composed of informaticians and a physician (a GP). The role of a physician was in forming a research question and data collection and in providing comments on health-related issues.

An overall frequency of ARA on antibiotics of 3,15% was observed. Rarely available data for the paediatric population indicates the overall incidence of 9,35% in hospitalized children and 1,46% in outpatients [START_REF] Gomes | Drug allergy claims in children: from self-reporting to confirmed diagnosis[END_REF]. Many factors can affect the variation in the frequency of this disorder, including the children age (as shown in our paper), the natural distribution of risk factors in the population, the types of antibiotics prescribed, the custom of ARA recording and physicians` education on both, symptoms and mechanisms of ARA and antibiotic prescription [START_REF] Impicciatore | Incidence of adverse drug reaction in paediatric in/out-patients: a systemic review and meta-analysis of prospective studies[END_REF].

When all four clusters in parallel were put into consideration, some general rules, in regard to ARA in children, coud be observed. As the first, there were two time peaks of the ARA occurrence: in the year of birth and in the late pre-school age (around 5-6 y). In older children with ARA, the causing antibiotics were classified as with higher historical use (penicillin).

Some common characteristics of children with ARA might include: 1) predisposition to allergic disorders (positive IgE blood test), 2) however, not manifested with allergic respiratory diseases (hay fever and asthma). This connection should be taken into account even if it is known that allergic diseases show the timedependent occurrence during the childhood (the so-called "allergic march", manifested as a progression of atopic diseases from eczema to asthma), for reason that the current age of cases with ARA corresponds with adolescence (14-16 year). These results seem contrary to what is known from the early studies, that atopic subjects do not show higher incidence of penicillin allergy, in comparison to the general population [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF]. It cannot, in fact, be known, from our results, whether atopy in children can also increase their predisposition for ARA on drugs (especially on antibiotics other than penicillin), or whether, on the contrary, early antibiotic exposure increases the risk for atopic diseases, as postulated traditionally [START_REF] Johnson | Antibiotic exposure in early infancy and risk for childhood atopy[END_REF]. Or, these results may be only due to the confounding effects, consequently to the predominant use of -lactam antibiotics in children. Namely, undesirable reactions on these antibiotics are known as being predominantly caused by allergic mechanisms, usually mediated with IgE antibodies [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF]. Nevertheless, these results can direct future prevention strategies, mainly by means of preserved prescriptions of antibiotics in children with increased IgE antibodies.

Other constant and common features of children with ARA include: 3) at least one episode of infections (other than respiratory infections, also including otitis media) experienced before the time of ARA occurrence, as well as an early antibiotic use (in the first year of life). These results might be reflective of the immune system disturbation, in the early childhood, which can increase the chance for both, ARA on antibiotics and infections. Also, there are information that some infections can serve as a promoting factor, by ensuring conditions for the immune reaction on a drug to start, which otherwise could not be the case [START_REF] Thong | Update on the management of antibiotic allergy[END_REF]. In addition to these explanations, the second result might also implicate the increased risk for ARA to occur, through the negative effect of an early antibiotic use on the commensal intestinal flora and the subsequent impairments of the immune system development [START_REF] Bremner | Early-life exposure to antibacterials and the subsequent development of hayfever in childhood in the UK: case-control studies using the general practice research database and the doctors` independent network[END_REF], [START_REF] Thomas | Atopic wheezing and early life antibiotic exposure a nested case-control study[END_REF]. Some additional factors, found to commonly occur in children with ARA, include: 4) frequent infections (defined as two or more times per year), reflecting poor hygiene, or the immune system dysfunction, and 5) low antibiotic pre-exposure counts (1-2 times), indicating sensitizing reaction as the possible mechanism of ARA. In accordance to the latter, it is commonly known that patients usually develop allergic reactions when reexposed to an antibiotic [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF].

When clusters 3 and 4, representing an early onset of ARA (during the first year of life), were compared to each other, somewhat different patterns were obtained, probably indicating different mechanisms between ARA on ampicilin (a broadspectrum antibiotic) and fenoksimetilpenicilin (a narrow-spectrum penicillin for an oral use). Otherwise, these antibiotics share the common structure, that of the lactam antibiotic group, also sharing some common features [START_REF] Thong | Update on the management of antibiotic allergy[END_REF].

In regard to ampicilin, other allergic diseases, including skin eczema and obstructive bronchitis (both disorders occurring early along the course of the "allergic march"), may contribute to the onset of ARA. These results are likely to support the hypothesis, already presented above, about the common pathogenetic background of both, atopic diseases and ARA on antibiotics, in children. As an alternative explanation of this connection, evidence has been provided by many clinical studies, although not consistently, that antibiotic exposure in early infancy is likely to increase the risk for childhood atopy [START_REF] Johnson | Antibiotic exposure in early infancy and risk for childhood atopy[END_REF], [START_REF] Bremner | Early-life exposure to antibacterials and the subsequent development of hayfever in childhood in the UK: case-control studies using the general practice research database and the doctors` independent network[END_REF]. This inconsistency in knowledge gained on this issue, might be the consequence of the different behavior of otherwise similar substances, such as in our study the case with fenoksimetil penicillin (cluster 3) and ampicillin (cluster 4). The unfavourable drug reaction, in ampicilin risk group (cluster 4), according to our results, might also be supported with the existence of perinatal disorders, implicating immunodeficiency and obstacles in the postnatal immune system development. In numerous studies, conducted to-date, an attention has not been payed to the importance of these very early developmental disturbances. Furthermore, our results also indicate that the occurrence of otitis media in early life (in some reports considered as the complication of influenza virus infection and, as such, the manifestation of the immune system dysfunction) can also be considered as a contributing factor for the early onset of ARA on ampicillin (cluster 4). This risk group, in contrast to the comparative one, for the time of onset (cluster 3), was also prone to the development of severe respiratory disease, although with the onset later in life (at six age), further indicating immunodeficient disorders. When positive family history on ARA is added to this risk group (cluster 4), this all together indicates that a set of inherited and acquired immune system disorders can be important for the occurrence of ARA on this broad-spectrum antibiotic. Some elements of this pattern, associated with ARA on ampicillin (cluster 4), can be recognized as a part of the cluster describing ARA on cefalosporins (cef&pen, cluster 1), another broad-spectrum group of antibiotics. These elements, overlapping between the two clusters, include perinatal disorders and severe respiratory disease, although here, the severe respiratory disease preceded (and probably contributed to) the onset of ARA (cluster 1). The combined cef&pen ARA event probably means allergic cross-reaction that may occur between penicillin and cephalosporins of the older generation [START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF].

Also, it is interesting to observe that two very similar antibiotics, from the common penicillin groups (clusters 2 and 3), have gained much of the similarity in their risk factors patterns.

These results, indicating multiple factors clustered within distinct patterns, each of them specifically associated with a particular risk group (or an antibiotic), are similar to the results of the studies on the association of an early antibiotics use and the occurrence of allergic diseases later in the childhood. According to these studies, a complex cause/outcome model should be formed, in order to make conclusions on this issue, and it is not possible to achieve by analyzing only one, or even a few risk factors [START_REF] Johnson | Antibiotic exposure in early infancy and risk for childhood atopy[END_REF], [START_REF] Halken | Prevention of allergic disease in childhood: clinical and epidemiological aspects of primary and secondary allergy prevention[END_REF], [START_REF] Thomas | Atopic wheezing and early life antibiotic exposure a nested case-control study[END_REF].

All these factors, extracted from the health records and selected within four clusters, reflect patients` (children`s) clinical and pathophysiological features. We can speculate that the reason why ARA on some other antibiotics, also listed above, have not been presented with a cluster, might be the need for different clinical parameters selection, those ones not recorded in the health records. Alternatively, some other factors could be responsible for ARA, such as, for example, differences in pharmacodynamic mechanisms of drug action. In contribution to this latter explanation, very low ARA rates for macrolide antibiotics have been reported [START_REF] Thong | Update on the management of antibiotic allergy[END_REF].

Results of this study have confirmed some relatively known facts about ARA in children, including the influence of early life infections and antibiotic prescriptions, as well as the predomination of allergic mechanisms underlying ARA, mostly mediated with IgE antibodies. The nature of the association between atopy and ARA in children, also important for understanding childhood allergic diseases, remain to be elucidated in the future. In fact, our results indicate that this association might be important only for early ARA onset (in the first year of life) and for a particular antibiotic used. The main contribution of this paper is in the results clearly showing for the first time that only a cluster of factors can explain ARA, specifically for a particular children group, or an antibiotic.

Results of this study can further be utilized for planning future research on this issue. They can also be useful when preparing recommendations for antibiotics prescription and to guide the standardized health data record. Merely an increase in awareness of physicians on risk factors for ARA in children can be sufficient to change their attitudes towards antibiotics prescription. Computer-based tools would be helpful in many aspects when managing these issues, especially by means of the possibility for systematic data recording and data modeling, suitable for the purpose of prediction and risk factors identification. Also important would be the drug allergy alert and prescription support systems, as well as programs for education promotion [START_REF] Madle | Bugs and drugs on the Web: changes in knowledge of users of a web-based education resource on antibiotic prescribing[END_REF], [START_REF] Farrell | Computer games to teach hygiene: an evaluation of the e-Bug junior game[END_REF].

We analyze health records created in a health center in East Croatia to explore new knowledge for adverse reactions and allergy (ARA) on antibiotics in children. The broad application of business enterprise hospital information systems amasses large amounts of medical documents, which must be reviewed, observed, and analyzed by human experts. There is need for techniques which enable the quality-based discovery, the extraction, the integration and the use of hidden knowledge in those documents [START_REF] Holzinger | Quality-based knowledge discovery from medical text on the Web Example of computational methods in Web intelligence[END_REF]. Human-Computer Interaction and Knowledge Discovery along with Biomedical Informatics are of increasing importance to effectively gain knowledge, to make sense out of the big data. In the future, we can combine these fields to support the expert end users in learning to interactively analyze information properties thus enabling them to visualize the adverse reactions and allergy (ARA) on antibiotics data [START_REF] Holzinger | On Knowledge Discovery and Interactive Intelligent Visualization of Biomedical Data -Challenges in Human-Computer Interaction & Biomedical Informatics[END_REF].

Conclusion

Biomedical research aims to explore new and meaningful knowledge to provide better healthcare [START_REF] Holzinger | Disease-disease relationships for rheumatic diseases: Web-based biomedical textmining and knowledge discovery to assist medical decision making[END_REF]. Adverse reactions and allergy (ARA) from antibiotics in children is an important research issue for the medical domain. In this study, we focused on knowledge discovery for this problem and perform a study based on data mining to predict clusters in the survey data extracted from health records of children in Eastern Croatia.

We used computational techniques and then applied k-means algorithm to the dataset to generate some clusters which have similar features. Our results highlight that some type of antibiotics form different clusters. Medical researchers and pharmaceutical companies can utilize and interpret our results. Despite that our study has some limitations, for example we have small dataset consisting of 42 instances, we hope that we can extend the dataset and apply data mining algorithms on it in the future.

In conclusion, we believe that our study can be good example on data mining for adverse reactions and allergy (ARA) from antibiotics in children.

  acid klav amoxicillin+clavulanic acid -a broad-spectrum azitrom azithromycin -a macrolide group cef cefalosporins -a broad-spectrum fenoksi fenoksimetil penicillin -per os penicillin, a narrowspectrum cefuroks cefuroxime -the second generation of cefalosporinsa broad-spectrum pen penicillin sulfa sulfamethoxazole eritrom erythromycin -a macrolide antibiotic of an older generation

Table 2 .

 2 The attributes used in the dataset[START_REF] Langley | Allergy to antibiotics in children: perception versus reality[END_REF][START_REF] Kramer | Adverse drug reactions in general pediatric outpatients[END_REF][START_REF] Menniti-Ippolito | Active monitoring of adverse drug reactions in children.Italian Paediatric Pharmacosurveillance Multicenter Group[END_REF][START_REF] Cirko-Begovic | Intensive monitoring of adverse drug reactions in infants and preschool children[END_REF][START_REF] Thong | Update on the management of antibiotic allergy[END_REF][START_REF] Robinson | Practical aspects of choosing an antibiotic for patients with a reported allergy to an antibiotic[END_REF][START_REF] Macy | Self-reported Antibiotic Allergy Incidence and Prevalence: Age and Sex Effects[END_REF][START_REF] Krizmanic | Adverse reactions and allergy on antibiotics in children[END_REF][START_REF] Kadoyama | Hypersensitivity Reactions to Anticancer Agents:Data Mining of the Public Version of the FDA Adverse Event Reporting System, AERS[END_REF][START_REF] Tsymbal | Dynamic Integration of Classifiers for tracking concept drift in antibiotic resistance data[END_REF][START_REF] Lamma | The automatic discovery of alarm rules for the validation of microbiological data[END_REF][START_REF] Harris | Recorded infections and antibiotics in early life: associations with allergy in UK children and their parents[END_REF][START_REF] Johnson | Antibiotic exposure in early infancy and risk for childhood atopy[END_REF][START_REF] Halken | Prevention of allergic disease in childhood: clinical and epidemiological aspects of primary and secondary allergy prevention[END_REF][START_REF] Headley | Medication administered to children from o to 7.5 years in the Avon longitudinal study of parents and children (ALSPAC)[END_REF][START_REF] Hawkins | A survey of the administration of drugs to young infants. The Alspac survey team. Avon longitudinal study of pregnancy and childhood[END_REF][START_REF] Bremner | Early-life exposure to antibacterials and the subsequent development of hayfever in childhood in the UK: case-control studies using the general practice research database and the doctors` independent network[END_REF]

	No	Attribute	Description	Type
		Age	The patient`s age	Numeric
		Age of ARA	Age when the allergic/adverse	Numeric
			reaction on antibiotics occurred
		Type of antibiotic	Generic name of the antibiotic	Nominal
			by which the allergic reaction
			was provoked
		Severity reaction	The clinically graded	Ordinal
			allergic/adverse reaction
		Age of the 1st	Age when the first antibiotic	Numeric
		antibiotic use (y)	was used
		Other allergic	Does a child have some other	Nominal (Yes, No)
		disease (skin)	allergic disease? (manifestation
			on the skin)
		Other allergic	Does a child have some other	Nominal (Yes, No)
		disease ( rhinitis)	allergic disease? (in the form
			of allergic rhinitis)
		Other allergic	Does a child have some other	Nominal (Yes, No)
		disease	allergic disease? (in the form
		(bronchitis)	of obstructive bronchitis)
		Other allergic	Does a child have some other	Nominal (Yes, No)
		disease (asthma)	allergic disease? (in the form
			of asthma)
	10	Blood test on	Have the antibodies of the IgE	Nominal (Positive,
		allergy -IgE	type (which usually raise in	Negative)
			allergic diseases) been
			measured?
	11	Perinatal disorders	Disorders occurring during	Nominal (Yes, No)
			delivery and the first hours
			after the birth
	12	The child birth	Born as the first, or the second,	Ordinal
		order	etc., child in order
	13	Severe respiratory	A respiratory disease which is	Nominal (Yes, No)
		disease	severe enough to be a life
			frightening (e.g. laryngitis,
			pneumonia)
	14	Age of severe	Age when some type of severe	Numeric
		respiratory disease	respiratory disease occurred
	15	Otits media	Otits media	Nominal (Yes, No)
	16	Age of otitis	Age when otitis media	Numeric
		media	occurred
	17	Other infections	Had there been some other	Nominal (Yes, No)
			infection before the
			allergic/adverse reaction on
			antibiotics occured?

Table 3 .

 3 The attributes used in the dataset[START_REF] Thomas | Atopic wheezing and early life antibiotic exposure a nested case-control study[END_REF][START_REF] Kozyrskyj | Increased risk of childhood asthma from antibiotic use in early life[END_REF][START_REF] Han | Data mining: concepts and techniques[END_REF][START_REF] Hall | The WEKA data mining software: an update[END_REF][START_REF]WEKA: Weka 3: Data Mining Software in Java[END_REF][START_REF] Pham | Selection of k in k-mens clustering[END_REF][START_REF] Tiwari | Enhancing the performance of data mining algorithm in letter image recognition data[END_REF][START_REF] Tan | Introduction to data mining[END_REF][START_REF] Gomes | Drug allergy claims in children: from self-reporting to confirmed diagnosis[END_REF]

	No	Attribute	Description	Type
	18	Other infections	How many episodes of	Nominal
		(the number of	infections had there been
		episodes)	before the allergic/adverse
			reaction on antibiotics
			occurred?
	19	Varicella	Did the varicella infection	Nominal (Yes, No)
			occur?
	20	Age of varicella	Age when varicella infection	Numeric
			occurred
	21	Hospitalization	Hospitalization in the very	Nominal (Yes, No)
		<2y of age	early childhood
	22	Number of	An average number of	Numeric
		infections per year	infections per year in a
			particular child, independently
			on when the allergic/adverse
			reaction on antibiotics occurred
	23	Antibiotic	How many times antibiotics	Ordinal
		exposure before	had been prescribed before the
		ARA	allergic/ adverse reaction on
			antibiotics occurred?
	24	Family history on	Family history on	Nominal(Positive,
		ARA	allergic/adverse reactions on	Negative)
			antibiotics
	25	Allergic diseases	Have there been other allergic	Nominal(Yes, No)
		in family	diseases in family members?
	26	Chr diseases	Have there been other chronic	Nominal (Yes, No)
		diseases in family	diseases in family members?

Table 4 .

 4 Evaluation of cluster analysis with training set mode

	K value	Number of	Within cluster sum of	Runtime(Seconds)
		iterations	squared errors
	2	3	459.114	0.01
	3	4	444.553	0.01
	4	3	430.279	0.01
	5	5	415.160	0.01

Fig. 1 Sum of squared errors and k values with training set mode

Table 5 .

 5 Evaluation of cluster analysis with percentage split test set mode

	K value	Number of	Within cluster sum of	Runtime(Seconds)
		iterations	squared errors
	2	3	459.114(66%)	0
		3	293.226(34%)
	3	4	444.553(66%)	0.01
		5	279.846(34%)
	4	3	430.279(66%)	0.01
		5	264.258(34%)
	5	5	415.160(66%)	0.01
		2	248.785(34%)

Table 6 .

 6 Clusters obtained by k-means algorithm with training set mode and k=4

	Attribute	Cluster1 Cluster2 Cluster3 Cluster4
	Age	14.5	14.0	16.0	16.0
	Age of ARA	5.0	6.0	0.4	<1
	Type of antibiotic	cef&pen	pen	fenoksi	ampicilin
	Severity reaction	skin	skin	skin	skin
	Age of the 1st antibiotic	5.0	<1	<1	<1
	use (y)
	Other allergic disease
	(skin)
		1.5	6.0	6.0	6.0
	Otitis media	yes	yes	no	Yes
	Age of otitis media	9.0	<1	<1	<1
	Other infections	yes	yes	yes	Yes
	Other infections	1X	2X	2X	2X
	(the number of episodes)
	Varicella	yes	no	yes	no
	Age of varicella	7.5	3.0	3.0	3.0
	Hospitalization <2y of age	no	no	no	no
	Number of infections per	3-4X	2-3X	2-3X	3X
	year
	Antibiotic exposure before	2X	1X	1X	1X
	ARA

Acknowledgements. We thank the CD-ARES reviewers for their thorough review and helpful comments to further improve our paper.


Nazila Gol Mohammadi
email: nazila.golmohammadi@paluno.uni-due.de

Azadeh Alebrahim
email: azadeh.alebrahim@paluno.uni-due.de

Thorsten Weyer
email: thorsten.weyer@paluno.uni-due.de

Maritta Heisel
email: maritta.heisel@paluno.uni-due.de

Klaus Pohl
email: klaus.pohl@paluno.uni-due.de

A Framework for Combining Problem Frames and Goal Models to Support Context Analysis during Requirements Engineering

Keywords: Requirements engineering, security requirements, problem frames, goal modeling

Quality requirements, like security requirements, are difficult to elicit, especially if they cross multiple domains. Understanding these domains is an important issue in the requirements engineering process for the corresponding systems. Well-known requirements engineering approaches, such as goal-oriented techniques provide a good starting point in capturing security requirements in the form of soft-goals in the early stage of the software engineering process. However, such approaches are not sufficient for context and problem analysis. On the other hand, the context and problem modeling approaches like e.g., problem frames, do not address the system goals. Integrating the relevant context knowledge into goal models is a promising approach to address the mutual limitations. In this paper, we propose a framework for combining goal models and problem frames. The framework makes it possible to document the goals of the system together with the corresponding knowledge of the system's context. Furthermore, it supports the process of refining (soft-) goals right up to the elicitation of corresponding security requirements. To show the applicability of our approach, we illustrate its application on a real-life case study concerning Smart Grids.

Introduction

Requirements engineering (RE) is an engineering activity that ties up the development activities with the real-world problems. It performs a series of activities based on the recognition of a problem to be solved and leads to a detailed specification of that problem [START_REF] Nuseibeh | Requirements engineering: a roadmap[END_REF]. This specification includes the requirements of the system-to-be in a way that the system meets the expected quality concerns of the stakeholders as well as the functional ones. Although the treatment of quality requirements in software development is not yet as well mastered as the treatment of functional requirements [START_REF] Bass | Software Architecture in Practice[END_REF], it has recently caught more attention. Quality requirements such as security requirements must be elicited, analyzed, and documented as thoroughly as functional ones.

Understanding the context is an important issue in RE for eliciting and analyzing requirements. During context analysis, the analyst anticipates how the system-to-be will be integrated in its real world context, once it is in operation. Due to the fact that the size and complexity of the environment (context) of typical software-intensive systems, e.g., as integrated in smart grid, grew very fast in the last decade, e.g., systems-of-systems, the context analysis activities during RE become more and more crucial. Context analysis techniques support the requirements engineer to specify the requirements of the system in a systematic way. Therefore, the first mandatory task in RE is to know and explore the context, which the system will interact with. Focusing on the system itself prior to modeling its context lacks considering domain knowledge in eliciting requirements. The elicited requirements might be built on incomplete or even wrong domain knowledge. This can lead to failure of the system due to incorrect or incomplete requirements. Considering security requirements, this might be even more costly and disastrous because of business critical data losses and violation of security rules or any unacceptable outcome.

Goal modeling approaches support the elicitation of system purposes in the RE process, but they have shortcomings as well. First, they tend to be inadequate and imperfect in describing the problem context [START_REF] Gross | From Non-Functional Requirements to Design through Patterns[END_REF]. Second, the goal models grow quickly, posing a threat to manageability and traceability [START_REF] Liu | From Requirements to Architectural Design -Using Goals and Scenarios[END_REF]. Third, goals are hierarchical, hence, it sometimes becomes difficult to determine where a goal is situated in the hierarchy and how it relates to the problem context. Moreover, for every goal, there is always a discoverable super-goal. Thus, goal modeling techniques need to be bounded by the problem domain [START_REF] Rolland | Guiding goal modeling using scenarios[END_REF].

Problem frames [START_REF] Jackson | Problem Frames. Analyzing and structuring software development problems[END_REF] are concerned with the context modeling and the understanding of the context in RE. They analyze the problem context as it is in the real world. However, they lack addressing the goals of the system under consideration.

Therefore, problem frames have the potential to be combined with other RE techniques, such as goal-oriented approaches [START_REF] Yang | Modelling requirements patterns with a goal and pf integrated analysis approach[END_REF][START_REF] Hall | Problem frame semantics for software development[END_REF]. Goal-oriented approaches investigate goals of the system, whereas in problem frames goals can be identified by investigating the context of the problem. The relationship and the gap we identified between problem frames and goal-oriented approaches suggest the combination of these techniques. In the problem frames approach, there is no way to connect the requirements to the goals or to identify new goals. The goals can be identified by determining why we want to find a solution for this problem. After finding the way to identifying the goal, which is relevant to analyze the specific problem, the goal could be connected to the requirements.

On the other hand, both approaches are not able to show the dynamic behavior of the situation. They are not expressive in showing requirements behavior and the real world interactions. In this paper, we propose a framework based on problem frames and goal models with support of Message Sequence Charts (MSCs) [START_REF] Harel | Message Sequence Charts[END_REF] that provides support for the RE phase. The dynamic behavior of the problem context is modeled using MSCs. The gaps and drawbacks mentioned above are addressed using our framework. This combination can provide a good understanding and overview of the real world prior to structuring the system and map the problem to its solution.

The remainder of this paper is organized as follows: In Section 2 we explain the fundamentals of our method. Section 3 presents our approach for combining problem frames and goal models to support context analysis during requirements engineering. To demonstrate the usefulness of the framework we demonstrate its application on a case study taken from the smart grid domain in Section 4. Section 5 discusses related work. Finally, Section 6 gives a conclusion and sketches future work.

Fundamentals

In this section we briefly introduce the problem frames approach, goal modeling, and the use of MSCs in RE. These techniques are the fundamentals for the framework that is described in Section 3.

Problem Frames

Problem frames [START_REF] Jackson | Problem Frames. Analyzing and structuring software development problems[END_REF] are one of the RE approaches, located in the early life-cycle of software engineering. Problem frames capture information from the context of the system in a simple way. A problem frame consists of domains, interfaces between them, and a requirement. Domains describe entities in the real world that are distinguished in three different types: biddable domains that are usually people, causal domains that comply with some physical laws, and lexical domains that are data representations. Interfaces connect domains, and they contain shared phenomena. Shared phenomena may be events, operation calls or messages. They are observable by at least two domains, but controlled by only one domain, as indicated by the name of that domain and "!". An example can be find in Section 4 (see Fig. 6).

When we state a requirement, we want to change something in the world with the machine (e.g., software) to be developed. Therefore, each requirement constrains at least one domain. Such a constrained domain is the core of any problem description because it has to be controlled according to the requirements. Hence, a constrained domain triggers the need for developing a new software (the machine) that provides the desired control. A requirement may refer to several domains in the environment of the machine. The task is to construct a machine that improves the behavior of the real world (in which it is integrated) in accordance with the requirements. According to the problem frames approach, the problem is decomposed into subproblems, which are represented by problem diagrams. A problem diagram consists of a submachine, the relevant domains, the interfaces between these domains, and a requirement.

In this paper we describe problem frames using UML4PF (UML profile for Problem Frames) [START_REF] Hatebur | A UML profile for requirements analysis of dependable software[END_REF][START_REF] Côté | UML4PF -a tool for problemoriented requirements analysis[END_REF] that is based on UML class diagrams. In Section 4, we model the context of our application example using the UML notation for problem frames.

Goal Modeling

In the RE community, goal modeling approaches have gained considerable attention. These approaches aim at capturing the rationale for the software system development. Goal models are mostly represented in tree-like structures that define the intentions of different stakeholders at different levels of abstraction [START_REF] Pohl | Requirement Engineering: Fundamentals, Principles, and Techniques[END_REF]. Goal modeling links the high-level goals to the low-level requirements [START_REF] Van Lamsweerde | Goal-oriented requirements engineering: a guided tour[END_REF]. Goal-oriented approaches, such as KAOS [START_REF] Van Lamsweerde | Goal-oriented requirements engineering: a guided tour[END_REF], i* [START_REF] Yu | Towards modelling and reasoning support for early-phase requirements engineering[END_REF] and goal graphs [START_REF] Pohl | Requirement Engineering: Fundamentals, Principles, and Techniques[END_REF], seek reasons or purposes to design the system (purpose of the system). These approaches use AND/OR connectors to represent the goal decomposition and to define the alternative solutions for fulfilling the super-goal. Goals can be classified into two different categories: hard-goals and soft-goals. Hard-goals may refer to the functional properties of the system behavior, whereas, soft-goals represent quality preferences of the stakeholders. Soft-goals can be achieved at different levels of satisfaction, which means that there is no clear-cut definition for their satisfaction. Examples can be find in Section 4 (see Fig. 5 and Fig. 8). In KAOS notation the goals are modeled as parallelograms and soft-goals in form of dashed parallelograms. Among different goals in the hierarchy of KAOS goal model, there are either AND-refinement or OR-refinement. A positive or negative influence on a soft-goal can be represented using +, ++ or -, --. A contribution operator represents a positive (+, ++) or negative (-, --) influence on soft-goals. It documents to which level of satisfaction a soft-goal is influenced either positively or negatively.

Message Sequence Charts

MSCs [START_REF] Harel | Message Sequence Charts[END_REF] have proven to be successful in system development, in particular for RE. They are widely used for the concrete description of not only the system behavior, but also the context. They are especially used to describe the context behavior by requirements engineers and later validate the requirements for an acceptance test. In addition, they provide a convenient notation to describe behavioral requirements in the form of interaction diagrams. MSC consists of a set of actors/entities of the system (boxes), life-lines (vertical dashed lines), messages between the actors (arrows), and states (ovals). Actors can send and receive messages ordered by their occurrence within their life-lines. The state of different actors may be changed upon to receiving a message. An example can be found in Section 4 (see Fig. 7). When using MSCs for modeling behavioral requirements the corresponding diagram specifies the flow of interactions between the system and its context that has to be performed to satisfy a specific purpose of the system.

Framework for Combining Problem Frames and Goal Models to Support Context Analysis

We show how the problem frames approach can be enhanced by linking goals to the problem diagrams satisfying that goal. The goal in the KAOS goal model (Goal X in Fig. 1) will be localized by setting up a problem diagram. By using the established problem diagram, domains that contribute to the satisfaction of Goal X will be identified. The Goal X in the KAOS model is modeled in the problem diagram, as well as using the stereotype goal . The Requirement(s) in the problem diagram (Fig. 1) is a placeholder for requirements, which will be elicited when using our method. Requirement(s) for satisfying the goal under consideration (e.g., Goal X) will be elicited with the knowledge gained from domain analysis based on domains and phenomena between them. The use of MSC models helps to represent the dynamics of the problem diagrams. The goal model that will be further refined is based on the knowledge gained from the domain analysis using the problem diagram. Our framework provides support for the requirement elicitation considering its respective goal. Note that this process is iterative and recursive. It means that the new refined goals (added to the goal model) will be selected in following iterations for deriving refined requirements. In Section 3.1, our method is described in a detailed and methodic way. In Section 3. select a goal (e.g., Goal X). This goal can be one of the major concerns of stakeholder(s), which should be followed systematically until its satisfaction is achieved. To this end, the Goal X will be further enhanced with domain knowledge gained in the next steps. Goal X is the input for the next step. -Step 3 -Identify Relevant Domains: For the selected goal (Goal X), we identify the domains from the problem context under consideration. These domains are involved in the satisfaction of Goal X. The output of this step is a list of contributor domains that will set up the corresponding problem diagram in the next step. -Step 4 -Set up the Problem Diagram: By using the domains identified in the previous step, we set up problem diagrams. These problem diagrams depict a small and focused portion of the problem context related to the selected goal. This supports a more objective and structured way of addressing the problem rather than having the overall one. In this way, the goal located in the goal model is mapped to at least one problem diagram. In this step, we do not yet know the requirements that satisfy the selected goal. We only keep a placeholder for the requirements that we extract in the next step. Figure 1 on the left-hand side shows how a problem diagram can be linked to the part of the goal model, which is realized using that problem diagram. -Step 6 -Set up the MSC: In this step, we take the problem diagram annotated with the goal as input. Then, we model and document the interactions of the domains for the realization of the goal. As mentioned in Section 1, the problem diagrams themselves are not able to visualize or represent the interactions between the domains in the required order. The MSCs should capture the following information:

• Initialization. The sequence of actions and events, which would bring the machine to its initial state. In this state, the machine begins its operation. The context domains have also some sets of states. • The dynamic behavior of the requirement and the interactions between the domains. It is not clear which phenomena will trigger the machine for solving the represented problem. • Breakage. A causal domain may be damaged if certain sequences of operations are performed on it. Such kinds of sequences should be identified and avoided [START_REF] Jackson | Problem frames and software engineering[END_REF][START_REF] Cox | A roadmap of problem frames research[END_REF]. The MSC related to a problem diagram and its addressed goal shows how the goal can be realized. It includes the context domains identified in the problem diagram. The phenomena in the problem diagram form the messages. The mapping between the problem diagram on the left-hand side of Fig. 1 to the MSC for describing the dynamic behavior and the interaction between the domains in the context is shown in Fig. 2. The actors in the MSC should be

Location of Our Framework in the RE Technology Map

Our approach mainly focuses on the early requirements process dealing with requirements elicitation. Among a number of available RE techniques, we make use of three widely practiced ones: problem frames, goal-oriented, and scenariobased approaches. Our method uses these three techniques that clearly differ from each other in nature. To characterize the differences of these techniques and the benefits of combining them as a framework, we use a map for RE techniques [START_REF] Nakatani | Instructional Design of a Requirements Engineering Education Course for Professional Engineers[END_REF]16] shown in Fig. 3. This map has two dimensions. One of these dimensions concerns the elicitation operation types and the other one concerns target object types. The operational type illustrates how the requirements elicitation and acquisition process is conducted. This is done by focusing on either static structures or dynamic behaviors:

-Static: The static structure of the domains in the context is analyzed for requirements elicitation. The methods belonging to this category, e.g., problem frames and KAOS goal models try to accomplish the RE activities in a structured and systematic way. There are rules or guidelines how to decompose the problem or how to refine the goals, respectively. -Dynamic: Requirements are elicited from the domain focusing on their dynamic behaviors. Requirements are elicited in an imaginative and unmethodical way like scenarios and interviews. For many stakeholders, it is often easier to think in terms of procedural behaviors or situational changes over time. The dynamic behavior is modeled in our framework using MSCs, which are easy understandable.

The second dimension, the object type, is concerned with the properties of the target context, which has to be analyzed. It can be either closed or open:

-Closed: The target context is relatively stable, known, and closed. This space is basically structured and bounded by a particular syntax. Therefore, it can be understood by focusing on the syntax. Hence, using a closed RE technique bounds the scope of meaning.

-Open: The object space is relatively unstable, unknown, changing, and open.

Here, meanings should be well considered for analysis the target context. The approaches belonging to this category are more human oriented, e.g., brainstorming and goal modeling techniques belong to this category.

Figure 3 maps the three techniques used in our approach with regard to the dimensional spaces. Nakatani et al. and Tsumaki et al. [START_REF] Nakatani | Instructional Design of a Requirements Engineering Education Course for Professional Engineers[END_REF]16] allocated various RE techniques in this map. The allocation of these techniques in different quadrants in the RE map demonstrates the coverage of our approach that bridges the lower-left quadrant to the upper-right quadrant. We begin in our framework with a KAOS goal model, which is open and static. Then, we carry on with problem frames for decomposing and structuring the context. Problem frames are closed and therefore bound the scope of meaning the KAOS goal models. Subsequently, we use MSCs, which are closed and can express the dynamic behavior.

Application Example

In this section we show the application of our approach to the real-life case study "Smart Grids" adapted from the European Network of Excellence on Engineering Secure Future Internet Software Services and Systems (NESSoS)1 .

Introduction to the Case Study "Smart Grid"

To use energy in an optimal way, smart grids make it possible to couple the generation, distribution, storage, and consumption of energy. Smart grids use Information and Communication Technologies (ICT), which allow for financial, informational, and electrical transactions. In order to define the real functional and security requirements, we considered the documents "Protection Profile for the Gateway of a Smart Metering System" [START_REF] Kreutzmann | Protection profile for the gateway of a smart metering system[END_REF] provided by the German Federal Office for Information Security2 and "Requirements of AMI" [START_REF]Requirements of AMI[END_REF] provided by the EU project OPEN meter 3 . Figure 4 shows the simplified context of a smart grid system based on [START_REF] Kreutzmann | Protection profile for the gateway of a smart metering system[END_REF].

A smart grid involves a wide variety of data that should be treated in a secure way. Protection profile defines security objectives for the central communication unit (Gateway in Fig. 4) in a smart metering system. Beforehand, we define the terms specific to the smart grid domain taken from the protection profile:

Gateway represents the central communication unit in a smart metering system. It is responsible for collecting, processing, storing, and communicating meter data. Meter data refers to meter readings measured by the meter, regarding consumption or production of a certain commodity. Meter represents the device that measures the consumption and production of a certain commodity and sends it to the gateway. Authorized external entity could be a human or IT unit that communicates with the gateway from outside the gateway boundaries through a WAN. The roles are defined as external entities that interact with the gateway and the meter are consumer, grid operator, supplier, gateway operator, gateway administrator, . . . (For the complete list of possible external entities see the protection profile [START_REF] Kreutzmann | Protection profile for the gateway of a smart metering system[END_REF]). WAN (Wide Area Network) provides the communication network that interconnects the gateway with the outside world.

LMN (Local Metrological Network) provides the communication network

between the meter and the gateway. HAN (Home Area Network) provides the communication network between the consumer and the gateway. Consumer refers to end user or producer of commodities (electricity, gas, water, or heat).

Application of the Approach to the Smart Grid

Applying our approach to the case study implies the following activities and working results.

Step 1 -Set up the Goal Model: The intentions of the stakeholders are reflected in the documents mentioned above. Therefore, they provide a good basis for setting up a goal model for the smart grid system. We set up the goal model by locating the super-goal Develop Gateway for Smart Meter System at the top of the goal model. The Gateway has to satisfy the required behavior for such a system. It has to achieve 20 goals as stated in [START_REF]Requirements of AMI[END_REF]. The goals are divided into three categories minimum, advanced, and optional. Thirteen Goals are contained in the category minimum that represents the necessary ones to achieve the super-goal of the system. For reasons of clarity and comprehensibility, we only show three of 20 goals required to achieve the super-goal in Fig. 5. Step 2 -Select a Goal: We select the goal Meter Reading for billing, which is contained in the category minimum. According to [START_REF]Requirements of AMI[END_REF], this goal deals with gathering, processing, and providing of meter reading for the billing process. The selected goal serves as input for the next step.

Step 3 -Identify Relevant Domains: To identify the relevant domains, we make use of the selected goal and the context of the smart grid system. For the gathering of meter readings we need to connect to the smart meter. The gathered meter readings have to be processed. Therefore, we need to store them into meter data. After processing, the meter data should be provided to the authorized external entity in order to create the bill. The domains we identified are therefore smart meter, meter data, and authorized external entity.

Step 4 -Set up the Problem Diagram: We set up a problem diagram, which contains the domains SmartMeter, MeterData, and AuthorizedExternalEntity identified in the previous step. SmartMeter ) means that the phenomenon sendMeterData is controlled by the domain SmartMeter. The requirement Requirements constrains the domains Me-terData and AuthorizedExternalEntity. This is expressed by a dependency with the stereotype constrains . It refers to the domain SmartMeter as expressed by a dependency with the stereotype refersTo . Note that the requirement Requirements acts as a placeholder in this step. It will be extracted in the next step. In this way, the goal located in the goal model is mapped to the context.

Step 5 -Extract the Requirements: Inputs for this step are the domains from the problem diagram and the related goal. The domains SmartMeter, Me-terData, and AuthorizedExternalEntity are contained in the problem diagram HandlingMeterData. The related goal Meter Reading for billing is concerned with gathering, processing, and providing of meter reading for the billing process. Based on this information, we identify four new refined requirements, which replace the requirement Requirements in Fig. 6.

-R1: The smart meter sends meter data to the Gateway.

-R2: The Gateway shall process the received meter data.

-R3: The Gateway shall store the result of the process into meter data.

-R4: The Gateway shall submit the result to external parties.

Step 6 -Set up the MSC: In this step, we model and document the dynamic behavior of the context using MSCs. We represent the sequence of phenomena in the initialization of the problem and the realization of the goal. Figure 7 shows the dynamics of the goal Meter Reading for billing. The same domains depicted in the problem diagram become actors in MSC and related phenomena are the messages between them. Step 7 -Refine the Goal Model: Considering the requirements R1 and R4 and security issues, we determine a need for protection of data during transmission. There is no security issue for the requirement R2. The requirement R3 is concerned with storing of data. We therefore need to protect the data during storage. Hence the goal Meter Reading for billing is further refined into two soft-goals Protection of data during transmission and Protection of data during storage. The refined goal model is represented in Fig. 8. At this point, we reached the Step 7 of the method and continue with the step two by selecting a goal. As our approach is a recursive technique, we select the refined goal Protection of data during transmission (Step 2) to continue before applying the approach to the next higher level goal (see Meter registration in Fig. 5) in the next iteration. As in the previous step, the selected goal is related to the requirements R1 and R4. We carry on with the next step only for the requirement R4 to identify the relevant domains. From the context of the smart grid depicted in Fig. 4, we identify the new domain WAN, when submitting the result to external parties (R4) (step 3). We set up the problem diagram for the requirement R4 considering the new identified domain WAN (Step 4). Figure 9 shows the corresponding problem diagram. It describes that the machine SubmitMD submits MeterData through the WAN to the AuthorizedExternalEntity. To achieve the selected soft-goal, we identify two security requirements Conf DataTransmission and Int DataTransmission using the problem diagram from the previous step.

These security requirements state the preservation of confidentiality and integrity of data during transmission. They complement the functional requirement R4 to satisfy the soft-goal Protection of data while transmission (see Fig. 9) (Step 5). Since the requirements analysis based on the classical problem frames does not support analyzing quality requirements, we extended it by explicitly taking into account quality requirements, which complement functional requirements [START_REF] Alebrahim | Towards Systematic Integration of Quality Requirements into Software Architecture[END_REF]. We use a UML profile for dependability [START_REF] Hatebur | A UML profile for requirements analysis of dependable software[END_REF] to annotate problem diagrams with security requirements.

To represent the dynamic behavior of the related context, we set up a MSC shown in Fig. 10 At this point, there is no further refinement on the goal model necessary (Step 7). Next, we would proceed with Step 2 in the next iteration for the goal Protection of data during storage. Ones we treated all the refined goals belonging to the goal Meter Reading for billing, we carry on with the next higher level goal Meter registration.

Applying our framework to the example of a smart grid system, we have shown how to combine the problem frames approach with a goal modeling technique to use the strengths of each technique and ameliorate the weaknesses. We have analyzed the context of the problem and related it to the goals of the system, explicitly to elicit (quality) requirements systematically. New (soft-)goals have been identified using the knowledge gained from the context analysis. Furthermore, we have used MSCs and related them to the problem diagrams to represent the dynamic behavior of the system-to-be additionally to its static structure represented by the problem frames approach.

Related Work

In some work on context modeling, a context diagram is used prior to problem diagrams [START_REF] Jackson | Problem Frames. Analyzing and structuring software development problems[END_REF]. The context diagram represents the context by capturing the domains and interconnections of them. A problem diagram contains additionally to the relevant domains, the corresponding requirement. Therefore, the information from the context diagram can also be obtained by using problem diagrams.

We use problem diagrams in our approach to represent the relevant context of each problem we want to treat.

There are other problem frame approaches in literature that aim at structuring the solution by fitting the problem to an appropriate problem frame [START_REF] Choppy | Architectural Patterns for Problem Frames[END_REF]. The authors provide architectural patterns for each problem frame. In this way, they map each problem fitted to a problem frame to one possible solution. The proposed approach is more oriented on the architecture phase. In contrast, our work is concerned with requirements elicitation and their refinement.

A combination of use cases with problem frames is introduced in the work proposed by Del Bianco and Lavazza [START_REF] Del Bianco | Enhancing problem frames with scenarios and histories in uml-based software development[END_REF][START_REF] Del Bianco | Enhancing problem frames with scenarios and histories: a preliminary study[END_REF]. The authors investigate the possibility of enhancing the problem frames with concepts derived from requirements modeling techniques like use cases based on scenarios and histories. This approach does not cover capturing and modeling the goals of the system. It is similar to the work proposed by Choppy and Reggio [START_REF] Choppy | A UML-based approach for problem frame oriented software development[END_REF].

Goal-oriented approaches are integrated within problem frames in [START_REF] Bleistein | Problem Frames Approach for e-Business Systems[END_REF][START_REF] Bleistein | Validating strategic alignment of organizational IT requirements using goal modeling and problem diagrams[END_REF][START_REF] Liu | Integrating Goals and Problem Frames in Requirements Analysis[END_REF]. Bleistein et al. construct a business strategy in a goal model [START_REF] Bleistein | Problem Frames Approach for e-Business Systems[END_REF][START_REF] Bleistein | Validating strategic alignment of organizational IT requirements using goal modeling and problem diagrams[END_REF]. Parts of these goal models are integrated in different problem diagrams instead of requirements. This approach is used to validate system requirements against the constructed business strategy. The proposed approach does not treat the elicitation of requirements and the identification of system goals. The goal models used in these two works are based on i* notation, which makes the requirement part of the problem diagram complex when it comes to defining the requirement.

Liu and Jin use i* goal models and problem frames to enhance the information about the actors in an i* model [START_REF] Liu | Integrating Goals and Problem Frames in Requirements Analysis[END_REF]. The authors map the domain constraints from problem diagrams to i* models. The tasks, which the machine would take over from the actor in a problem diagram are modeled in i* using tasks. The authors do neither consider the elicitation of the requirements nor the definition of goals or mapping them to the context.

Conclusions and Future Work

In this paper, we proposed an iterative and recursive approach to bridge the gap between the knowledge of the context and the system purposes. Being aware of the context and relevant domains is essential to avoid extra cost and disastrous situations, in particular when considering security issues of the system. Our approach integrates goal modeling with problem frames and MSCs.

Our main aim is the systematic elicitation of requirements using related goals and relevant domains in the problem context. The problem frame approach enables us to identify the relevant domains in the context of fulfilling a goal. The goals within goal models are mapped to the context of the system. MSCs are used to model the dynamic behavior of the context to satisfy a goal. Furthermore, we provided support for the refinement of goals and soft-goals right up to the elicitation of corresponding requirements, in particular security requirements. Hence, the problem diagrams not only act as a glue for tying a high-level goal to the requirements and the related behavior, but they also support the refinement of goals.

We showed the applicability of our framework using the case study smart grid. We applied our approach on embedded systems with example application of Automatic Cruise Control (ACC) system as well.

The combination of problem frames and goals with support of MSCs provides an innovative step toward analyzing dynamic behavior and static structure of requirements. The overall contribution of our approach can be summarized as follows: (1) eliciting requirements using the related goal and relevant domains in the context; (2) relating requirements -in particular security requirements -to the system goals, in particular soft-goals; (3) identifying new (soft-)goals using problem diagrams; (4) relating dynamic behavior of the system-to-be to the static problem;

We used the UML profile for problem frames (UML4PF), which is conceived as an Eclipse plug in using Eclipse Modeling Framework (EMF) [START_REF]Eclipse Modeling Framework Project (EMF)[END_REF]. We enhanced the UML4PF to represent goal notations. The requirements engineer applying our framework has to actively be involved in the process of requirements elicitation and refinement. Therefore, (s)he does not strive for an automatic tool, but for a tool that supports the requirements engineer in applying our approach and facilitate his/her work. In the next step we aim at providing an integrated tool support for the whole approach.

Fig. 1 .

 1 Fig. 1. Relation between the goal and related requirement(s)

Fig. 2 .

 2 Fig. 2. MSC for the realization of the goal addressed in the problem diagram

Fig. 3 .

 3 Fig.3. RE technology map based on[START_REF] Nakatani | Instructional Design of a Requirements Engineering Education Course for Professional Engineers[END_REF] 16]

Fig. 4 .

 4 Fig.4. The context of a smart grid system based on[START_REF] Kreutzmann | Protection profile for the gateway of a smart metering system[END_REF]

Fig. 5 .

 5 Fig. 5. Simplified goal model for the smart meter system including the super-goal and its directly related goals

Figure 6

 6 shows the corresponding problem diagram in UML notation. The machine HandlingMeterData has to meet the requirement Requirements, which leads to satisfying the related goal Meter Reading for Billing. The problem diagram describes that the machine HandlingMeterData receives meter data from the SmartMeter, writes it into MeterData, and submits it to the AuthorizedExternalEntity. Note that the problem diagram does not make any statements about the order of performing the phenomena. The notation SM !{sendM eterData} (between the domains HandlingMeterData and

Fig. 6 .

 6 Fig. 6. Linking of the selected goal to the related problem diagram

Fig. 7 .

 7 Fig. 7. MSC for the problem diagram related to the goal Meter Reading for billing

Fig. 8 .Fig. 9 .

 89 Fig. 8. Goal model and its identified new goals after first iteration of the approach

Fig. 10 .

 10 Fig. 10. MSC for the problem diagram related to the soft-goal protection of data while transmission

  (Step 6). To simplify the MSC, we combine the domains WAN and AuthorizedExternalEntity. The message sendDataToAuthorizedExternalEntity represents the phenomena sendDataIntoWAN and forwardData in the problem diagram 9. Further, a security mechanism is needed to satisfy the security requirements represented in the problem diagram.

http://www.nessos-project.eu/

http://www.bsi.bund.de

http://www.openmeter.com/