Erfahrungen mit dem Experience-Factory-Ansatz



Similar documents
Produktfamilienentwicklung

Foundations of Knowledge Management Organizational Knowledge Repositories

Foundations of Knowledge Management Organizational Knowledge Repositories. Markus Strohmaier

Intelligent Retrieval for Component Reuse in System-On-Chip Design

Current Research Topic In Software Engineering

Data Warehousing Metadata Management

Data Warehousing Metadata Management

Department of Geography - Birgit Sattler - University of Duisburg-Essen ILIAS. in geography and landscape architecture

Kapitel 2 Unternehmensarchitektur III

Allgemeines Dienstmanagement Das MNM-Dienstmodell in Herleitung und Anwendungsmethodik

Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010 MOC 10233

FUTURE RESEARCH DIRECTIONS OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING *

IBM Rational Asset Manager

Customer Intimacy Analytics

A collaborative platform for knowledge management

Smart City event Merging experiences: SCP 2.0 and PLEEC objectives, key fields and monitoring

The SPES Methodology Modeling- and Analysis Techniques

Software Requirements, Version 2015_01_12

APPLYING CASE BASED REASONING IN AGILE SOFTWARE DEVELOPMENT

Enterprise Architecture Management - Conclusion. Knut Hinkelmann

Harnessing the power of advanced analytics with IBM Netezza

Usability in SW-Engineering-Prozessen und in CMMI

MANDARAX + ORYX An Open-Source Rule Platform

Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg

<Insert Picture Here> Oracle Werkzeuge zur Geschäftsprozessmodellierung und Umsetzung in IT-Laufzeitumgebungen

Masters in Information Technology

Übersetzerbau in der Industrie: CacaoVM

Software Construction

2010 Users Symposium Berlin

Operationalise Predictive Analytics

Knowledge Barriers in CD&E Projects in the German Federal Armed Forces

Technology WHITE PAPER

Business Process Technology

A Monitored Student Testing Application Using Cloud Computing

A Framework for Adaptive Process Modeling and Execution (FAME)

J2EE-Application Server

Does Swiss IT Matter?

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

SPICE auf der Überholspur. Vergleich von ISO (TR) und Automotive SPICE

Masters in Human Computer Interaction

WebSphere Application Server for z/os

How To Design An Information System

Schöll MOC Installing and Configuring Windows Server 2012

Performance Management Systems: Conceptual Modeling

Integrating Jalopy code formatting in CVS repositories

Lecture 8. Systems engineering L E C T U R E. SIMILAR process. Zuzana Bělinová. Faculty of Transportation Sciences, CTU in Prague

Digicomp Microsoft Evolution Day MIM 2016 Oliver Ryf. Partner:

WebSphere Business Modeler

Design and Implementation of a Semantic Web Solution for Real-time Reservoir Management

Comparative Market Analysis of Project Management Systems

A New Job Opportunity for Unemployed Young People: Data Security Skilled Worker for SMEs

The Integrated Clinical Pathways -Approach Current Requirements to the Knowledge Management in Health Information Systems

User-centered Requirements Elicitation for Business Intelligence Solutions

Aktives Service-, Asset- und Lizenzmanagement mit Altiris

Expert System and Knowledge Management for Software Developer in Software Companies

Semantic Web. Semantic Web: Resource Description Framework (RDF) cont. Resource Description Framework (RDF) W3C Definition:

How To Get A Computer Engineering Degree

Open Text Social Media. Actual Status, Strategy and Roadmap

How To Write An Article For Ibm.Com

Business Application Services Testing

Five best practices for deploying a successful service-oriented architecture

The maturity level of APEX. Patrick Hellemans Competence Manager Technology

Entwicklungsstufen des Unternehmensarchitekturmanagements

SERENITY Pattern-based Software Development Life-Cycle

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

THE NATURE OF MEDICAL DEVICE SERVICES A Multiple-Case Study

Object-Oriented Systems Analysis and Design

COMPUTER SCIENCE (AS) Associate Degree, Certificate of Achievement & Department Certificate Programs

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...

AN APPROACH TO DEVELOPING BUSINESS PROCESSES WITH WEB SERVICES IN GRID

Chapter 3 Technology adapted

White Paper Converting Lotus Notes Applications to the Cloud Using the CIMtrek converter Product

DB2 z/os Data Sharing

Masters in Advanced Computer Science

Web Service Implementation Methodology

Transcription:

Erfahrungen mit dem Experience-Factory-Ansatz Klaus-Dieter Althoff & Jens Mänz Intelligent Information Systems University of Hildesheim Email: althoff maenz@iis.uni-hildesheim.de 1

Überblick Experience Factory (EF) Case-Based Reasoning (CBR) Integration von EF und CBR (DISER-Methode) Ergebnisse (Dissertation Carsten Tautz 2001) Weiterentwicklung (Erfahrungsbasierte Informationssysteme; EbIS) Ergebnisse (Dissertation Markus Nick 2005) Ausblick Arbeiten an der Universität Hildesheim teilweise in Kooperation mit dem Fraunhofer IESE 2

Experience Factory (EF) Project Organization Project N Project 1 Plan 1. Characterize 2. Set Goals 3. Choose Model Project Team Perform 4. Execute Project Knowledge from past projects Experience Engineer Experience Base Experience Factory Cases General Knowledge Feedback Learn 5. Analysis 6. Packaging 3

*nach Aamodt/Plaza (1994) Case-Based Reasoning (CBR) An approach to solve new problems by adapting solutions of similar past problems. Problem: Initial problem description defines new case Retrieve: New case is used to find a similar case in the case base Reuse: Combination of new and retrieved case provides solved case Revise: Evaluation of the suggested solution Retain: Learning of useful experience through adapting the case base and/or the general domain knowledge index extract repair fault integrate revise evaluate solution Problem retain identify features cases KB retrieve search initially match select reuse copy adapt 4

Relating CBR and EF/QIP 5

*C. Tautz (2001). Customizing Software Engineering Experience Management Systems to Organizational Needs. Dissertation, FB Informatik, TU Kaiserslautern Evaluation Experimental Results* EbIS approach (»Using the EbIS«) versus human-based approach (»Talking to colleagues«) The experiment showed: Efficiency: The EbIS approach finds more useful guidelines and observations per time period (in terms of both effort and duration). Effectivity: The EbIS approach finds useful guidelines and observations not obtained by the human-based approach. The experiment validated this in a statistically significant way. Result: Combine human-based and EbIS approach The participants agreed: 28 out of 29 participants would apply both approaches in combination. 6

EbIS-Product-Line Architecture User Interface Data Entry & Data Editing Reports Intelligent Technologies Maintenance Interface Application Logic EbIS Maintenance Support Intelligent Technologies Database Management System Data Storage Special EbIS tools Traditional tools/systems/infrastructure 7

Components of EbIS Product-Line Intelligent Search RAISIN/1 (IESE) RAISIN/3gta (IESE) Orenge (COTS from empolis) Browsing TaxBrow Taxonomy Browser (IESE) ModelExplainer (IESE) Aggregation Context Aggregator (IESE) Data Entry & Data Editing Application Logic Reports User Interface Intelligent Technologies Maintenance Support Maintenance Interface EbIS Maintenance Support Intelligent Technologies EMSIG tools for evaluation and maintenance Data Entry, Editing, and Reports J2EE-based technology Microsoft Access (cheap COTS) Eclipse IDE plugins Microsoft dotnet IDE plugins [planned] Server/Container Apache Tomcat as J2EE container (open source) IBM s Eclipse as Integrated Software Development Environment (open source, Java) Microsoft Access Microsoft dotnet [planned] Database Management System Data Storage Data Base Management System 8 Microsoft Access (cheap COTS) MySQL (open source) PostgreSQL (open source) Microsoft SQL Server Oracle (high-end solution)

EbIS Development Process EbIS Development with DILLEBIS DISER requirements environmental factors reuse of application-independent concepts Rapid EbIS Design EbIS Patterns learn pattern-based EbIS concept application-specific DISER maintenance knowledge acquisition tailoring of evaluation program tailored EbIS concept INTERESTS - reference architecture - schema guidelines - components implementation test deployment deployed & running EbIS 9

Evaluation - Applicability within Projects Broad applicability of EbIS method/tool := Occurrence in successful EbISs in real-world projects EbISs of different size and project type ( breadth ) EbIS successful Status accepted (usage >= 1 year) OR Status deployable and EbIS tightly integrated Asssumption for tight integration: Acceptance and correct usage of the tool that supports the business process Status Successful Implementation Status unknown #successful # 8 1 1 Size of EbIS (#User, #Cases) Small SKe-Pilot, ISI, SLI-EB, IPQM, KM-PEB, CBR-PEB 6 10 Medium indigo/ CoIN Project A 1 Large ESERNET T-Com SR 1(+1)

Nutzen Prototypische Realisierung von EF/EB mit CBR- Technologie Entwicklung einer systematischen, umfassenden Methode zur Entwicklung von EF/EB (DISER) Technologieabstraktion : EbIS Einbeziehung alternativer und weitergehender Technologien Organisatorische Einbettung von CBR-Systemen in Industrie und Verwaltung (Zielorientierte) Evaluation und Wartung von CBR- Systemen 11

Ausblick Nutzung detailliert beschriebener Methoden (DISER/DILLEBIS) zur (teilweisen) Automatisierung solcher Prozesse Beispiel: Intelligente Informationssysteme für Anwendungen im Ambient- Intelligence-Bereich Ziel: Integration von EF/CBR mit Software-Produktlinien (SPL) Fokus auf Wissen Nutzung von Agententechnologie zur Modularisierung auf der Wissensebene Realisierung von einzelnen Agenten als EF/CBR-System SPL als (hierarchische) EF solcher EF/CBR-Systeme Beispiel: Simulation von Unternehmensgründungsprozessen mit Multiagentensystemen 12

Softwareagentenbasierte EF Projekt A SE-Beratungsorganisation Projekt B learn reuse?! SE-Portal Evaluationsagent Erfahrungsingenieuragent Wartungsagent Fallbasis Projekt Project C Project D SE-Berater- Agent 13

*M. Nick (2005). Experience Maintenance through Closed-Loop Feedback. Dissertation, FB Informatik, TU Kaiserslautern Benefit - Case Study with Students* Ziel: Evaluation der initialen Konzepte der EbIS-Entwicklungsmethode Zwei Rollenspiele mit jeweils sieben Studenten mit nahezu identischem Design weitere Rollenspiele mit ähnlichem Design in anderen Semestern Rollenspiel: Kontext: Organisation zur Entwicklung von CBR-Anwendungen (X-CBR) Situation und Historie zu X-CBR Aufgabe: Das X-CBR-Management entscheidet, dass eine Experience Factory über CBR-Projekte aufgebaut werden soll, um das Wissen zur Kernkompetenz CBR-Anwendungen besser managen zu können Übernahme der EF- und Organisationsrollen durch Dozent, Mitarbeiter und Studenten Initiale Modellierung des EbIS Ausfüllen eines abschließenden Fragebogens Feedback-Runde Ergebnisse: Initiale Modellierung in 180 min (2 Vorlesungsblöcke á 90 min) Praktische Erfahrung für initialen Workshop mit Industriepartnern (Finanzdienstleister) Einführung des Phasenkonzeptes in der EbIS-Entwicklungsmethode 14

Erfahrungen mit dem Experience-Factory-Ansatz Klaus-Dieter Althoff & Jens Mänz Intelligent Information Systems University of Hildesheim Email: althoff maenz@iis.uni-hildesheim.de 15

Overview Case-Based Reasoning (CBR) Experience Factory (EF) Integrating CBR and EF: DISER method Evaluation of DISER Improvement of DISER: DILLEBIS method Evaluation of DILLEBIS Benefits from an SE perspective from an AI perspective Implications and Outlook 16

*nach Aamodt/Plaza (1994) Case-Based Reasoning (CBR) An approach to solve new problems by adapting solutions of similar past problems. Problem: Initial problem description defines new case Retrieve: New case is used to find a similar case in the case base Reuse: Combination of new and retrieved case provides solved case Revise: Evaluation of the suggested solution Retain: Learning of useful experience through adapting the case base and/or the general domain knowledge index extract repair fault integrate revise evaluate solution Problem retain identify features cases KB retrieve search initially match select reuse copy adapt 17

CBR Task-Method Decomposition Model problem solving and learning from experience case-based reasoning retrieve reuse revise retain collect descriptors identify features search initially match select copy adapt evaluate solution repair fault evaluate interpret copy by teacher selfproblem solution follow repair infer direct evaluate descriptors use indexes copy modify in real search calculate selection solution solution world index similarity criteria evaluate method method in model structure elaborate explain modify explanations search similarity solution general knowledge userrepair index integrate extract adjust indexes update indexes general knowledge rerun problem determine indexes generalize extract relevant descriptors extract solutions extract justifications extract solution method 18

Abstracted Method for the Retain Task IF no_similar_past_case (current_case) THEN construct_new_case; ELSE lazy_generalise (old_case); IF current_case_successful THEN integrate_into_successful_cases; ELSE integrate_into_total_problem_cases; DO adaptation UNTIL system_behaves_as_wanted 19

Case Ontology for IESE Experience Factory 0..* 0..* defines 0..* Artifact Process Improvement Suggestion 0..* 0..* Project Experience 0..* 1..* Project 0..* 1..* Problem 0..* Pragmatic Solution Observation Guideline 0..* Lesson Learned Context identifies is-a has-part has-decomposition 20

Experience Factory (EF) and Quality Improvement Paradigm (QIP) Quality Improvement Paradigm (Basili, Rombach, 1988) Experience Factory Organization (Basili, Rombach, 1988) Experience Factory Organization package characterize project #1 Project Organization analyze set goals execute project choose models Experience Base Support Organization (Experience Factory) 21

Experience Factory (EF) Project Organization Project N Project 1 Plan 1. Characterize 2. Set Goals 3. Choose Model Project Team Perform 4. Execute Project Knowledge from past projects Experience Engineer Experience Base Experience Factory Cases General Knowledge Feedback Learn 5. Analysis 6. Packaging 22

Experience Factory Roles Experience Factory Manager candidate Experience Management goals design Experimenter Technology Expert Knowledge Infusion reports Experience Manager Experience Base Librarian Consolidated description of assets experience packages Project Data Base eight different Project Support EF roles Experience Engineer Supporter Tool Supporter reusable experience a project data & lessons learned 23

Relating CBR and EF/QIP 24

DISER Method structure design EbIS implement EbIS set objectives prepare training material plan change define record identify stakeholders identify objectives select objectives survey knowledge sources define knowledge collection define split define inform define analyze reuse potential define analyze quality establish success criteria identify overlapping contents define characterize initially set subject areas conceptualize select knowledge sources define knowledge collection plan plan adaptation identify subject areas select subject areas identify scenarios define concepts define nonterminal attributes identify reuse information define dependencies define global similarity identify reuse scenarios define retrieval goals identify record scenarios define meaning of similarity determine reusability factors classify reusability factors determine minimal quality requirements acquire distinguishing characteristics define application policies define terminal attributes classify attribute define type define local similarity Identify knowledge sources describe knowledge acquisition identify reusability factors 25 determine application boundaries define value range

EbIS Aufgaben & Methoden: Conceptualize conceptualize define concepts define nonterminal concept attributes identify reuse information define global similarity define dependencies define maintenance policies determine reusability factors classify reusability factors determine determine minimal application quality boundaries requirements define application policies acquire distinguishing characteristics define terminal concept attributes define meaning of similarity identify reusability factors classify attribute define type define value range define local similarity 26

Conceptualize (1) Goal: Conceptualization of EbIS content Input: Reuse scenarios Output: Schema of EbIS (conceptual model in the sense of structure based CBR) Feedback indicators Minimal quality requirements for reuse Processes for reuse 27

Conceptualize (2) Decomposition: Define concepts Define nonterminal attributes Identify reuse information Define global similarity Define dependencies Define maintenance policies Method: Subtasks are carried out sequentially or iteratively. 28

*C. Tautz (2001). Customizing Software Engineering Experience Management Systems to Organizational Needs. Dissertation, FB Informatik, TU Kaiserslautern Evaluation Experimental Results* EbIS approach (»Using the EbIS«) versus human-based approach (»Talking to colleagues«) The experiment showed: Efficiency: The EbIS approach finds more useful guidelines and observations per time period (in terms of both effort and duration). Effectivity: The EbIS approach finds useful guidelines and observations not obtained by the human-based approach. The experiment validated this in a statistically significant way. Result: Combine human-based and EbIS approach The participants agreed: 28 out of 29 participants would apply both approaches in combination. 29

Deficiencies of DISER phase models and development strategies for a better integrability on the software process side; solutions for feedback loops as well as experience life cycle models; solutions for relating different types of knowledge/experience each represented on a different level of granularity; rapid application development approaches for a cheap start ; knowledge modeling approaches/guidelines for scaling up ; scalability of the underlying knowledge technology; integrability of knowledge technology with traditional software system technology; supporting maintenance as a knowledge-intensive task; maintenance process; decision support for maintenance; acquisition method for maintenance knowledge; maintenance enactment support (for optimizing the maintenance process); business goal oriented method for running an EbIS; relating maintenance to the goals of an EbIS to guide maintenance with evaluation; availability of an evaluation plan and maintenance knowledge already for the beginning of regular use for handling the to be expected continuous stream of experience. 30

EbIS-Product-Line Architecture User Interface Data Entry & Data Editing Reports Intelligent Technologies Maintenance Interface Application Logic EbIS Maintenance Support Intelligent Technologies Database Management System Data Storage Special EbIS tools Traditional tools/systems/infrastructure 31

Components of EbIS Product-Line Intelligent Search RAISIN/1 (IESE) RAISIN/3gta (IESE) Orenge (COTS from empolis) Browsing TaxBrow Taxonomy Browser (IESE) ModelExplainer (IESE) Aggregation Context Aggregator (IESE) Data Entry & Data Editing Application Logic Reports User Interface Intelligent Technologies Maintenance Support Maintenance Interface EbIS Maintenance Support Intelligent Technologies EMSIG tools for evaluation and maintenance Data Entry, Editing, and Reports J2EE-based technology Microsoft Access (cheap COTS) Eclipse IDE plugins Microsoft dotnet IDE plugins [planned] Server/Container Apache Tomcat as J2EE container (open source) IBM s Eclipse as Integrated Software Development Environment (open source, Java) Microsoft Access Microsoft dotnet [planned] Database Management System Data Storage Data Base Management System 32 Microsoft Access (cheap COTS) MySQL (open source) PostgreSQL (open source) Microsoft SQL Server Oracle (high-end solution)

Evaluation - Applicability within Projects Broad applicability of EbIS method/tool := Occurrence in successful EbISs in real-world projects EbISs of different size and project type ( breadth ) EbIS successful Status accepted (usage >= 1 year) OR Status deployable and EbIS tightly integrated Asssumption for tight integration: Acceptance and correct usage of the tool that supports the business process Status Successful Implementation Status unknown #successful # 8 1 1 Size of EbIS (#User, #Cases) Small SKe-Pilot, ISI, SLI-EB, IPQM, KM-PEB, CBR-PEB 6 33 Medium indigo/ CoIN Project A 1 Large ESERNET T-Com SR 1(+1)

Benefits Benefits from SE perspective Prototyping a solution for EF Developing DISER based on this prototype Abstracting/generalizing from CBR systems to EbIS... Benefits from AI perspective Evaluation approach for CBR/KBS Real-life method: used and integrated into the work process Need for additional AI techniques... 34

Implications and Outlook Integration of Multi-agent systems CBR EF Software product-lines Building intelligent information systems for supporting Ambient-Intelligence-like scenarios 35

*M. Nick (2005). Experience Maintenance through Closed-Loop Feedback. Dissertation, FB Informatik, TU Kaiserslautern Benefit - Case Study with Students* Ziel: Evaluation der initialen Konzepte der EbIS-Entwicklungsmethode Zwei Rollenspiele mit jeweils sieben Studenten mit nahezu identischem Design weitere Rollenspiele mit ähnlichem Design in anderen Semestern Rollenspiel: Kontext: Organisation zur Entwicklung von CBR-Anwendungen (X-CBR) Situation und Historie zu X-CBR Aufgabe: Das X-CBR-Management entscheidet, dass eine Experience Factory über CBR-Projekte aufgebaut werden soll, um das Wissen zur Kernkompetenz CBR-Anwendungen besser managen zu können Übernahme der EF- und Organisationsrollen durch Dozent, Mitarbeiter und Studenten Initiale Modellierung des EbIS Ausfüllen eines abschließenden Fragebogens Feedback-Runde Ergebnisse: Initiale Modellierung in 180 min (2 Vorlesungsblöcke á 90 min) Praktische Erfahrung für initialen Workshop mit Industriepartnern (Finanzdienstleister) Einführung des Phasenkonzeptes in der EbIS-Entwicklungsmethode 36

EbIS Development Process EbIS Development with DILLEBIS DISER requirements environmental factors reuse of application-independent concepts Rapid EbIS Design EbIS Patterns learn pattern-based EbIS concept application-specific DISER maintenance knowledge acquisition tailoring of evaluation program tailored EbIS concept INTERESTS - reference architecture - schema guidelines - components implementation test deployment deployed & running EbIS 37

Running an EbIS Running an EbIS with DILLEBIS deployed & running EbIS corrections & improvements development & deployment evaluation program link for guidance evaluation (incl. monitoring) guidance maintenance knowledge maintenance EMSIG process and tools 38

Research Areas in AI and SE and Their Intersections Artificial Intelligence Software Engineering KA AmI DM RE Natural Language Understanding & Dictating Vision & Image Understanding Neural Networks Learning CI PM DE Machine Learning Mathematical Knowledge Reasoning Representation Knowledge Logical & Games Engineering approximative reasoning Learning from experience Planning Agents Pattern Recognition Heuristic Search Expert Systems Robotics Problem Solving DAI Agents AOSE CE AI Fields AI Methods and Techniques AI Fields Fig. 2 CBR KBS EF 39

EF Roles The manager provides resources, defines strategic goals and initiates improvement programs. He determines the structure and content of the case base and controls its quality. The supporter is responsible for documenting new experiences and supporting the project team. He collects and qualifies artifacts from the projects in accordance with the reuse criteria and the goals of the engineer. Upon request, he supports the project team in retrieving and modifying the experience knowledge. The engineer is responsible for packaging and analyzing existing experiences. Together with the manager, he identifies new reuse criteria and, based on that, acquires new cases. He analyzes the case base in order to detect (further) improvement potential. The librarian is responsible for technical aspects like setting-up and maintaining the case base, storing, and publishing new cases. 40