Conceptual design of web application families: the BWW approach OOPSLA th Workshop on Domain-Specific Modeling October 22, 2006 Oregon Convention Center, Portland, Oregon Roberto Paiano – Anna Lisa Guido – Andrea Pandurino –
2 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The scenario When the application domain is very large and several applications can be obtained from the design, it is important to formalize in some way the domain knowledge. To manage this complexity in the design of specific application many methodologies are born; especially in the design of web application. The scenario becomes more and more complex when the designer has to model not a specific application (that solves a specific problem) but a family of applications about a knowledge domain.
3 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon ModelMethodology Domain Layer Conceptual Layer Application Layer Domain Knowledge Application Knowledge Conceptual Domain Model Requirement Elicitation Application Model User Experience Model Conceptual Application Model Technology Model BWW/UML AWARE/ Goal oriented approach IDM P-IDM W2000-UWA JAVA/ MS.NET The overall scenario
4 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The conceptual model experience Many well-known methodologies exist to model and develop the specific application but there isn’t a standard approach to model the whole domain knowledge. The main goal is to introduce an experience in the conceptual model of a specific domain. This experience has been performed into the industrial research project called “Genesis-D” (Global Environmental Network System of Information for Sustainable Development) sponsored by Edinform SpA.
5 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The environment domain It is a very complex application domain Great number of stakeholders The necessity to acquire and to organize the knowledge from different sources Coherent data exchange between the different stakeholders Different objects are used with the same semantic in different contexts
6 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The two approach In detail, we evaluate the objectiveness and usefulness (in order to design and to develop a web information system) two different approaches: The use of classic techniques within software engineering. Due to the domain dimension and complexity, it is too hard to use a fully-compliant UML approach, thus, the UML-like approach adopts the main concepts of Object Oriented customized for the specific purpose. The use of the formal ontology. This approach uses the classification of the concepts proposed by BWW in order to represent the domain concepts and their relationships with a well-known semantics.
7 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The UML-like approach At the conceptual modeling abstraction level it seems unsuitable to use a fully-compliant Object Oriented approach. According to the abstraction level and to the necessity to manage all the information in a few diagram (in order to not have a fragmented design), in the conceptual model we use only the class diagram.
8 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The UML-like approach In the UML-like approach the modeling process is made up through several iterations: each iteration has the goal to refine the analysis and therefore to describe the application domain in a more and more precise way. Because of the conceptual modeling abstraction level, it is not possible to use “object” for which it is necessary to identify the state and behavior of entire domain reality. In the diagram, we use the “Entity” that may contain some attributes.
9 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The UML-like approach steps StepDescriptionExample 1. Analysis of entities Provide a description of the information entities and the relationships among them Alteration biological variety, climatic change, consumption of soils, soil degradation, pollution, wastes radiation, noise, FIA class (Fact of Environmental Interest) For FIA class all the parameters are grouped in the IIP class (Indicator, Index, Parameter) 2. Analysis of entities attributes Entities are refined (through the definition of the attributes, of their type and of the methods) For Features: Name, period of life, Category, status
10 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The UML-like approach example In the UML-like approach the designer describes the phenomena creating the FIA class (Fact of Environmental Interest) and all the parameters are grouped in the IIP class (Indicator, Index, Parameter) strictly related to the Metrics class. Using an analogous procedure, other abstract classes are identified: Objects, Subjects and Structures (OSS) to which each FIA makes reference. FIA, IIP and Metrics are Abstract Classes. The class OSS contains the Subjects (physical or juridical person that can be interested or involved in facts and environmental phenomena), the Objects (any object or territorial structure inside which the characteristic processes of the human social lifetime are based and are developed) and the Structures.
11 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The use of BWW concepts The BWW concepts classification are adapted to our needs: Adding the relationship of a thing with itself; Adding property in order to characterize the events. In detail, using the OWL: first we defined the meta-model of BWW concepts; then using the meta-model, the environment domain model (target of our research work) is modeled.
12 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The BWW approach steps StepDescriptionExample 1. Analysis of things Highlight domain thinks Water Basin, Water Body, Public Corporation 2. Analysis of classes Highlight domain classes The properties shared between Water Basin and Water Body define a class (Hydrographic object) 3. Mutual propertySelect mutual property of each class For Public Corporation: Regulation, dimension, category,.. 4. Intrinsic property Select intrinsic property of each thinks and classes For Public Competence : Name, function,..
13 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The BWW approach steps StepDescriptionExample 5. Characterization of property each mutual / intrinsic property is tied up to both human and natural laws. This characterization of the properties introduced by BWW, has led us to reflect them in the environmental domain. The territorial competences of the Public Corporation are, for instance, defined by decrees. The decrees result, therefore, in a characterization of the Intrinsic Property territorial competences and, particularly they are Human Law: this means that territorial competencies are constraints by the Human Law decree. BWW attributes allow us to take into consideration the correct semantic of a concept (decree).
14 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon The BWW approach steps StepDescriptionExample 6. Events Define what it happens: the events are in partnership with a thing or class and, when they occur, change a well defined property of the Thing or of the class to which they are associated. An OSS creates a FIA that, in turn, is created when the variation of an indicator produces an alarm. The alarm is an events. Using the BWW approach the FIA has been modeled as an history of the value of indicators; thus, the concept of FIA has the correct semantics. 7. SystemSelect different part of the same Conceptual model BWW defines the systems as the joining of things intending that the things belonging to the system influence the properties of each other
15 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Comparison between the two approaches BWW approach advantages: Objective: the concepts classification helps to represent the application domain without focus on a particular point of view. the domain model is directly expressed using well defined and categorized domain concept through real world concept such as thing, classes, law and so on where the domain concept is easy to map. It supports directly Events and the concept of input and output in relationship with the concept of thing: is coupled with, generate output and so on (intrinsic in BWW) give the right semantics. It is easy to realize and easy to use for those who will deal with the following phases of analysis and implementation. It is technology independent.
16 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Comparison between the two approaches The UML-like approach allows to describe a domain using an incremental method. Advantages: the designer improves the analysis step by step the output can be directly used through the UML standard notation to create the final product Disadvantages: the output is an Object Oriented model that implements the typical constructs of this paradigm. the process is strongly dependent on the experience of the designer who must analyze the application domain and must be skilled at OO modeling
17 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Comparison between the two approaches The main UML-like disadvantage is that the semantic is flattened and the concept of entity is used also to model very different concepts; For instance, in the UML-like modeling, the FIA and the indicator are both modeled as entity but the FIA is a set of values (not previously defined) that the indicator can assume at the time: a FIA is registered when some value of an indicator changes.
18 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Conclusions The case study presented in this research work is very complex, so we think that the considerations made for this case study are also valid for other case studies. To check the BWW domain model, we also studied the WA used by the Authority of basin of PO river that is perfectly represented into the conceptual model designed.
19 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Conclusions The BWW approach allows the provision of the right semantics and therefore it expresses all the domain details directly using the domain concepts. The model is objective thanks to the classification of the concepts provided by BWW and it is not tied to a specific implementation technology. The UML-like approach appears particularly effective because, being a lot closer to an implementation technology, allows us to directly reach the realization of a family of applications in a particular application domain. The objectivity and the simplicity of the BWW approach encourages the use of this approach for the conceptual modeling of application domains of great dimensions.
20 of 20 Workshop on Domain-Specific Modeling October Portland, Oregon Future trend In order to keep under control the typical aspects of web applications and therefore to manage the user experience, we are designing two web application starting from the conceptual model of the environment domain. Our efforts are focused on the definition of guidelines to obtain an IDM (Interactive Dialog Model) design starting from the domain modeling. As future work we plain to design and implement an editor in order to help the designer to apply the guidelines that we are defining.