seamless software development for systems based on ...

16 downloads 142 Views 1MB Size Report
SEAMLESS SOFTWARE. DEVELOPMENT FOR ... Development of software systems. Based on knowledge + Not ... Define a process model. Bayesian Network.
1

SEAMLESS SOFTWARE DEVELOPMENT FOR SYSTEMS BASED ON BAYESIAN NETWORKS An agricultural pest control system example I.M. del Águila, J. del Sagrado, S. Túnez and F.J. Orellana Dpt. Languages and Computation. University of Almería (Spain)

ICSOFT 2010

Index 2

/ 23

   



1. Introduction 2. Process model 3. Case study: pest control 4. Conclusions 5. Future works

1. Introduction 3

/ 23

Development of software systems Based on knowledge + Not based on knowledge

Approaches Acuña et Al, 1999 Alonso et Al, 2000 Águila et Al, 2006 ……………………….

Descriptive proposals

Models

Activities

Languages Documental Structure Artefacts

1. Introduction 4

/ 23

Knowledge Based Systems (KBS) Requires a methodology to ensure well-defined Knowledge-models

Bayesian Networks (BNs)

Current Approaches For BNs

Represent expert knowledge on an uncertain domain

How to build the knowledge model

BN Model

?

1. Introduction / 23

Who Defines Rules

Software Product

Integration

5

1. Introduction 6

/ 23

MAIN GOAL

Define a process model Non-knowledge-based part Knowledge-based part Bayesian Network

1 N 1

M

Generates N Uses

N

Index 7

/ 23

   



1. Introduction 2. Process model 3. Case study: pest control 4. Conclusions 5. Future works

2. Process Model. Workflows 8

/ 23

2. Process Model. Workflows 9

/ 23

PLATFORM INDEPENDENT WORKFLOWS PLATFORM DEPENDENT WORKFLOWS

2. Process Model. RM 10

/ 23

PROBLEM FORMULATION

PROCESS IDENTIFICATION

DOMAIN IDENTIFICATION

DEFINITION OF PROJECT SCOPE

Description of the processes

Specify what must be done

Build a domain model

Commitment about the project limits

Templates, diagrams, storyboards

Glossaries, ER diagrams, class diagrams

Feasibility study

Benefit, cost, impact

Interviews, brainstorming

2. Process Model. EM 11

/ 23

Bayesian Network (BN) Directed Acyclic Graph (DAG) G = (U,A) Pair (G, P)

U (Nodes) = {V1, V2, … , Vn} A (Arcs)

P joint probability distribution over U

2. Process Model. EM 12

/ 23

VARIABLE DEFINITION

QUALITATIVE STRUCTURING

Hypothesis variables are formed

Relationships between variables

V1

V2

V3 Business Level Domain Identification

V1

V2

V3

Cause-effect relationships / DAG

QUANTITATIVE ELICITATION Conditional probability distributions Undirected dependences Parent divorcing Functional dependence Machine learning

P (Vi | pa(Vi))

VALIDATION TESTING Check if the BN meets the specifications

BN Model

2. Process Model. SSS 13

/ 23

Result

Modelling Languages Interface class

Model Conceptual view of the software system.

Interactions between system and actors

Entity class

Data persistence

Control class

Sequence, transaction, calculations or controls

Knowledge class

Inference tasks implemented in the software

Index 14

/ 23

   



1. Introduction 2. Process model 3. Case study: pest control 4. Conclusions 5. Future works

3. Case study: pest control 15

/ 23

Integrated Production Quality standard

Covered surface

Implantation Rate

3%

Ministry of the environment and rural and marine affairs

a. Requirement Modelling (RM) >> Problem Formulation (PF)

3. Case study: pest control 16

/ 23

a. Requirement Modelling (RM) >> Process Identification (PI)

3. Case study: pest control 17

/ 23

a. Requirement Modelling (RM) >> Domain Identification (DI)

a. Requirement Modelling (RM) >> Definition of the Project Scope (DPS)

Commitment Pest control processes performed by growers and agricultural engineers in Monitor Crop

Result of RM - Definition of requirements and domain concepts - Limitation of scope

3. Case study: pest control 18

/ 23

b. Expert Modelling (EM)

RM - Domain Identification

RM - Process Identification

DAG for a general Integrated Production System

A BN structure for the grape’s fly case pest

3. Case study: pest control 19

/ 23

c. Specification of the Software Solution (SSS)

PLATFORM DEPENDENT WORKFLOWS

d. Design of the Software Solution e. Coding and Debugging f. Software Evolution

Index 20

/ 23

   



1. Introduction 2. Process model 3. Case study: pest control 4. Conclusions 5. Future works

4. Conclusions 21

/ 23









This work shows how to integrate methods of software and knowledge engineering into a unified perspective. We have chosen Bayesian Networks (BN’s) as technique to handle uncertainty in decision-making-problems. The process model proposed allows the seamless inclusion of BN models into a final software solution for an organizational environment. The applicability of this solution has been validated in a real world problem: Integrated Production in agriculture.

5. Future Works 22

/ 23

 



Test the applicability of this approach to other case studies. Adapt the expert modelling workflow to other modelling techniques in order to verify that the approach reduces the software development effort. Computer-aided software engineering tools must be widened to include inference processes and structures originated in each of the knowledge techniques applied.

23

/ 23

Thank you very much

Suggest Documents