Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

14
3 rd International Workshop on Social Software Engineering February 24, 2010 Paderborn, Germany Adding Semantics to Social Software Engineering: Social Software Engineering: d (Re-)Using Ontologies in a Community-oriented Requirements Engineering Environment Steffen Lohmann DEI Laboratory Thomas Riechert Agile Knowledge Engineering and Semantic Web DEI Laboratory Computer Science Department Carlos III University of Madrid, Spain Agile Knowledge Engineering and Semantic Web Department of Computer Science University of Leipzig, Germany Steffen Lohmann, Thomas Riechert

description

These are the slides of Steffen Lohmann and Thomas Riechert presented at the SSE 2010 workshop at the SE 2010 in Paderborn.

Transcript of Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Page 1: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

3rd International Workshop onSocial Software Engineering

February 24, 2010Paderborn, Germanyg g , y

Adding Semantics toSocial Software Engineering:Social Software Engineering:

d

(Re-)Using Ontologies in a Community-oriented Requirements Engineering Environment

Steffen LohmannDEI Laboratory

Thomas RiechertAgile Knowledge Engineering and Semantic WebDEI Laboratory

Computer Science DepartmentCarlos III University of Madrid, Spain

Agile Knowledge Engineering and Semantic WebDepartment of Computer ScienceUniversity of Leipzig, Germany

Steffen Lohmann, Thomas Riechert

Page 2: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Contents

1. Social Software Engineering

2. Ontologies in Software Engineering

3 Reusing basic ontologies from the Semantic Web3. Reusing basic ontologies from the Semantic Web

4. SWORE upper ontologie for community-oriented RE

Steffen Lohmann, Thomas Riechert

Page 3: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Social Software Engineering

‘social aspects’ are key to successful SE

‘so ial aspe ts’ e ei e ene ed attention these da s‘social aspects’ receive renewed attention these days(Social Software, Social Web, …)

Social Software Engineering (SSE) is about…

1. social interaction in software communities

2. sharing knowledge in online environments*

* The online environment’s architecture can be centralized (e.g., community website) or decentralized (e g integrated in IDE)

Steffen Lohmann, Thomas Riechert

website) or decentralized (e.g., integrated in IDE).

Page 4: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Social Software Engineering

Social Software Engineering

Social Software vs. Software Engineering

Social Software:• ad-hoc collaboration

Software Engineering:• structured processes

f f• weakly structured contents• low formal semantics

• well-defined artifacts• high formal semantics

vs.

Steffen Lohmann, Thomas Riechert

Page 5: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Ontologies in Software Engineering

General solution approach:

l i l i * SSE- applying ontologies* to SSE

Reusing ontologies to represent…

- collaboratively created artifacts

- involved participants

(self )organizing structures- (self-)organizing structures

…that emerge in online environments for SSE

* An ontology is a “specification of a conceptualization” (Gruber 1993)

Steffen Lohmann, Thomas Riechert

gy p p ( )

Page 6: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Ontologies in Software Engineering

Popular examples:

O t l D fi iti M t d l (ODM) f OMG- Ontology Definition Metamodel (ODM) of OMG

- Ontology Driven Architecture (ODA) of W3C

Applications of Ontologies in SE

OED particularly relevant for SSE

rf 2

006

Promising: Semantic Wikis*

pel &

See

dor

Hap

p

* “Semantic Wikis try to combine the strengths of Semantic Web (machine processable, data integration, complex queries) and Wiki (easy to use and contribute strongly interconnected

Steffen Lohmann, Thomas Riechert

and Wiki (easy to use and contribute, strongly interconnected, collaborativeness) technologies” (semwiki.org)

Page 7: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Ontologies in Software Engineering

Existing approaches:

- define own ontologies

- reuse software-related ontologiesg

- support ontology development

many activities and artifacts are not SE-specific

Reusing basic ontologies from the Semantic Web

Steffen Lohmann, Thomas Riechert

Page 8: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Reusing basic ontologies from the Semantic Web

Web environment for community-oriented Requirements Engineering

Based on the Semantic Wiki OntoWiki and integrating several ontologies

Steffen Lohmann, Thomas Riechert

Page 9: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Reusing basic ontologies from the Semantic Web

dc:title dc:description tags:taggedWithTagdc:subject dc:creator dc:contributor

foaf:Agent

DC (+TAGS)

dc:source

DC + SIOC + FOAF

foaf:Agent

sioc:User

SKOS

skos:Concept

skos:broader

skos:narrower

skos definition

tags:Tag

tags:name

skos:definition

skos:definition

class

TAGS (+SKOS)

<vocabulary>:<Class name>

<vocabulary>:<Property name>

propertysioc:Item sioc:Post sioctypes:Poll sioctypes:Comment

SIOC

Steffen Lohmann, Thomas Riechert

Page 10: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Reusing basic ontologies from the Semantic Web

Dublin Core (DC) for requirement metadata- DC defines general properties for information resources:DC defines general properties for information resources:

title, description, creator, contributor, subject, and source…

SKOS and TAGS for classification- SKOS for taxonomy: broader, narrower, definition…- TAGS for folksonomy: Tag as subclass of Concept

FOAF d SIOC f t k h ld d di iFOAF and SIOC for stakeholders and discussions- FOAF for stakeholders: Person, Group, Organization…

SIOC for discussions: Post Poll- SIOC for discussions: Post, Poll…

Steffen Lohmann, Thomas Riechert

Page 11: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Reusing basic ontologies from the Semantic Web

Benefits of cross-domain ontology reuse:- interoperability – extended tool range (non-CASE tools)p y g ( )- new opportunities to utilize, enhance, and analyze artifacts

• refinement of classification structurei l t k l i• social network analysis

• reasoning and consistency checking• ……

- shared understanding between participants- common practices on elaborated knowledge- no redundant modeling effort- fewer misconceptions

not all aspects covered by available ontologiesadditional modeling required

Steffen Lohmann, Thomas Riechert

g q

Page 12: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

SWORE Upperreq:isCommentedByreq:details; req:isDetailedBy; req:dependsOn;reg:invalidates; req:isInvalidFor;

t il i Si il T

req:Title req:Description

dc:description

dc:title

Ontologyreq:Requirementreq:isReferredBy

req:refersTo

dc:source

req:entails; req:isSimilarTo;

req:ReferencePoint

req:Documentreq:Stakeholder

req:refersTo

req:ApplicationPointer

dc:subject

req:Source

req:ApplicationState

dc:creatordc:contributor

foaf:Agentfoaf:Organization

foaf:holdsAccount

req:ApplicationPointer

FOAFreq:ApplicationState

sioc:Item

foaf:Person

foaf:Group

sioc:account of

sioc:about

skos:Concept

tags:Tag

skos:broaderskos:narrower

tags:taggedWithTag

SKOS

sioc:Postsioc:User

sioc:account_oftags:Tag

SIOCSKOS

TAGSsioc:modifier_of

sioc:has_modifier

sioctypes#Poll

req:Vote

req:QualityRating

sioctypes#Comment<vacabulary>:<Class name>

class:

subClassOf property:property:

<vocabulary>:<property name> subPropertyOf property:

Steffen Lohmann, Thomas Riechert

req:QualityRating req:PriorityRatingsubPropertyOf property:

Page 13: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Conclusions & Future Work

Conclusions:many domain-independent aspects of SE are already described y p p yby ontologiesreusing these ontologies can be valuable (interoperability)

lin particular in SSE (Semantic Wiki)

Limitations:Limitations:not all aspects represented (additional modeling)performance and scalability (Semantic Web technologies)performance and scalability (Semantic Web technologies)

Future Work:integration of further features and ontologiesextension of SWORE upper ontology

Steffen Lohmann, Thomas Riechert

Page 14: Adding Semantics to Social Software Engineering (by Steffen Lohmann & Thomas Riechert)

Th k f tt tiThank you for your attention.

Steffen Lohmann, Thomas Riechert