The New Architecture for Collaboration

thickbugΛογισμικό & κατασκευή λογ/κού

28 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

94 εμφανίσεις

The New Architecture for
Collaboration

Brent McConnell

David LaPalomento



Understand



Find / Reuse



Tacit => Explicit

Collaboration Cycle

Publish


Process by which information/knowledge is codified for
others


Experience, education, wisdom, data transformed into
information


Many forms


o
Blog, Wiki, Document, Webpage


Potential for collaboration (Collaboration Objects)




Understand



Find / Reuse



Tacit => Explicit

Collaboration Cycle

Discovery


Finding the needle in the haystack


Search

o
Wisdom of the Crowd

o
Indexed Search


Shared


Recommendation

o
Intelligent systems



Understand



Find / Reuse



Tacit => Explicit

Collaboration Cycle

Discuss


Information is being processed and better understood

o
IM

o
Email

o
Discussion Forums


Communication or other publications may be required



Understand



Find / Reuse



Tacit => Explicit

Collaboration Cycle

Add Value


Adding your perspective


Wisdom of the Crowd


Tags


Rating


Comment


Review



Understand



Find / Reuse



Tacit => Explicit

Collaboration Cycle

Extend


Information is understood and has been extended into
your scenarios


Information is now being reused and extended in new
ways

What is Collaboration


Working together with others to achieve a common goal


No hidden agendas


Requires open and trusting relationships between parties


Probably includes some form of "play" and must be
accepted


Mandatory in the Knowledge Economy

Identify a Successful Project


Find a Business Sponsor


Solve an Important Problem


Start Small

Implementing Collaboration


Communicate with the users


User training


Document successes


Balancing pre
-
population with organic growth


Creating incentives with recognition and reward => positive
reinforcement creates a grass
-
roots movement


Providing users with ongoing support


Learn from mistakes => Be flexible in the tool's evolution

Kablink Project


Provides tools that meet the needs of the
Collaboration Cycle


Publish


blogs, wikis, forums,


Search


integrated search across everything, share
with others in system


Discuss


survey, forums, comments


Add value


tags, ratings, editorial comment


Extend
-

create new business types, business
workflows (new this week :
-
)


Creating New Social Objects


Extensions


Remote Applications

Extensions


Fully
-
integrated Kablink objects

o
Searchable

o
Trackable

o
Sharable

o
Persistent


Simple, distributable deployment

o
Java .war file

Getting Started


Model
-
View
-
Controller Paradigm

o
Definitions and templates make up Kablink's model

o
Kablink provides default controllers for all the objects
it manages


Create a Java web application project


Public resources at the .war root


Place system resources (i.e. definitions and
templates) off of /WEB
-
INF

Model: Definitions


Define the fields that create an object and its
representations

o
Form: object creation



OSCON Session

o
Start Time

o
End Time

o
Title

o
Speakers

Model: Definitions (cont.)



Use
Form & View Designer

to create your
definition

o
Customize the default form, entry and summary
views

Model: Definitions (cont.)



Export the completed definitions

o
The deployer will find them anywhere
but they probably end up in the WEB
-
INF directory of your project

Model: Templates


Hierarchies of objects


Site Administration
> Form and View
Designers

to create
templates


Export completed
templates

View: JSPs


Create a custom JSP to display more complex
objects


<blink:url />
: add the URL to a resource off
the root of your war as an attribute to the
contained XML element


<blink:attachment />
: add the URL of any
file attachment as an attribute to the contained
XML element

View: Enhancements


Include additional client
-
side enhancements:

o
Javascript

o
Flash

o
Images

o
Et cetera


Reference them via
<blink:url />

in your
JSP

Remote Applications


Integrate existing web
-
tools


Utilize existing development expertise

o
Web frameworks

o
Programming languages


Integrated security model

o
Remote Application is registered as a principal in
system

o
Can apply ACL to a specific remote application

o
Lesser of user or application permissions are applied


Still under development

View: Callback


Remote applications appear inline, like regular
objects


Kablink calls to your application to provide a
view snippet


Post to your URL

o
User info in post

o
Respond with HTML fragment

Model: SOAP


Use SOAP calls to manipulate other kablink
objects

o
http://example.com/ssr/ws



folder_addEntry


definition_getDefinitions



profile_getGroups

Examples


VideoEntry


Twitter