Tags:
advocacy2Add my vote for this tag create new tag
, view all tags
This is the presentation material for the Wiki Based Collaboration and Web Development for the Enterprise conference talk in the Emerging Technologies Track at LinuxWorld in Boston, 17 Feb 2005

This presentation is outdated, see the latest presentation Addressing Customer Value Using Structured Wikis - Personas and Kanban Approach.

Start Presentation

Slide 1: Wiki Based Collaboration and Web Development for the Enterprise

Writable webs empower employees to share knowledge effectively and to be more productive

  • Wiki, a writable web: Communities can organize and share content in an organic and free manner
  • If extended with the right set of functionality, a Wiki can be applied to corporate groups to schedule, manage, document, and support their daily activities
  • TWiki is both a leading open-source Wiki for the enterprise and a platform to build web applications
  • This talk explains what TWiki is, its history, how it is used, and how to get started

Conference talk in the Emerging Technologies Track at LinuxWorld in Boston, 17 Feb 2005
-- Peter@ThoenyPLEASENOSPAM.com

Slide 2: Agenda

  • What is a Wiki?
  • Wiki in the Enterprise
  • What is TWiki?
  • TWiki Highlights
  • Initial Deployment
  • Example
  • Advanced Features
  • Web Applications
  • Case Study

  • Questions & Answers

Slide 3: What is a Wiki?

  • WikiWikiWeb = Writable Web
    • As quick to contribute as e-mail
    • As easy to use as a website
  • Ward Cunningham implemented the original WikiWikiWeb in 1995 to collaborate on software patterns
  • Inspired by HyperCard; some call it a Blog for groups
  • Wiki design principles:
    • Open - Should a page be found to be incomplete or poorly organized, any reader can edit it as they see fit
    • Incremental - Pages can cite other pages, including pages that have not been written yet
    • Organic - The structure and text content of the site is open to editing and evolution
    • more...

Slide 4: What is a Wiki? (cont.)

  • The original WikiWikiWeb has these features:
    • Read-write web, every page can be edited using just a browser
    • HTML form based editing
    • Pages are served dynamically
    • Pages are linked automagically with WikiWords
    • Simple markup, no need to learn HTML
  • Try the WikiWikiSandbox

  • Over 200 Wiki engines based on the original Wiki idea, mostly open source
  • Wiki has geek appeal
  • Mainly used by Internet communities and academia

Slide 5: Blogs and Wikis

  • Blog: (Weblog)
    1. Key: Easy to publish opinions of individual, in sequential posts
    2. Media to express individual voice
    3. "Post media" (like e-mail), many times with feedback and talkback
    4. Usually hosted service (e.g. Six Apart's TypePad)
  • Wiki: (WikiWikiWeb)
    1. Key: Easy to create and refactor content owned by group
    2. Media to express group voice, deemphasizing identity of individuals
    3. "Refactor media", content may change at any time
    4. Usually open source software, installed on own server
  • Some Blogs have Wiki-like features, some Wikis have Blog capabilities

Slide 6: Wiki Systems

  • Open Source Wiki engines: Download and install
  • Hosted Wiki services: Wiki farms
    • Socialtext Workspace: Open source Wiki (Kwiki) with Blog extensions; for corporate use ($$$)
    • EditMe: Simple Wiki and Blog ($4.95/month)
    • Teamflux: Simple Wiki ($20/quarter/person)
  • Wiki appliance: Wiki in a preconfigured box

Slide 7: Wikipedia

Wikipedia
  • Wikipedia: Wiki + Encyclopedia
  • A free encyclopedia that is being written collaboratively by its readers
  • Project started in January 2001
  • The most active public Wiki: There are over 420,000 articles in English; more in 150 other languages; 150,000 registered users
  • Anyone in the world can edit any page.
  • Doesn't that lead to chaos?
    • Domain experts contribute
    • Well defined policies for contributing and handling content
    • Graffiti gets removed quickly (many eye balls, rollback available)
  • Content can be freely distributed and reproduced under the terms of the GNU Free Documentation License (GFDL)

Slide 8: Wiki in the Enterprise

  • Issues with conventional Wikis in the corporate world:
    • Perceived as chaotic
    • No security
    • No audit trail
  • A Wiki system with the right extensions can be used in a corporate environment
  • It can address some internal challenges:
    • Maintenance of static Intranets
    • Internal E-mail flood
    • Implementation of business processes

Slide 9: Challenges of Static Intranets

Challenges - Static Intranet
  • Some content is outdated
  • Incomplete content
  • When was the page last updated?
  • Difficult to find content
  • Inconsistency across departments
  • Special tools, knowledge and permission required to maintain
  • Content is static, it has a "webmaster syndrome":
    If an employee discovers a page with incorrect or insufficient information, the employee will often ignore it because it takes too much time to find out who the webmaster is and to write an e-mail requesting an update

Slide 10: Challenges of E-mail

Challenges - E-mail
  • E-mail and mailing lists are great, but:
    • Post and reply vs. post and refine/refactor
    • Great for discussion, but ... hard to find "final consensus" on a thread
    • E-mail is not hyper-linked and is not structured, content can't be grouped easily into related topics
    • E-mail and attachments are not version controlled and it is difficult to determine the history of a document
    • Not all interested people / too many people in the loop

Slide 11: Challenges of Business Processes

Challenges - Business Processes
  • Business processes are implemented in large scale by IT department (Sarbanes-Oxley compliance etc.)
    • Rigid structure by design
  • Teams follow formal/informal workflow to accomplish tasks, which is often a paper-based process:
    • Roll out laptops to employees
    • Status board of call-center
    • Sign-off for export compliance of a software release
  • No resources allocated to implement applications to automate those processes
    • IT department has no bandwidth to implement light weight applications for a variety of teams

Slide 12: Wikis and Static Intranets

Wiki and Static Intranet
  • Move some/all Intranet content into a Wiki
    • No difference for readers to browse and search content
    • Employees are empowered to fix content on the spot
    • Ease of maintenance
    • No need to install client side software
  • Paradigm shift
    • from: webmasters maintain content
    • to: domain experts and casual users maintain content

Slide 13: Wikis and E-mail

Wiki and E-mail
  • Move some E-mail traffic into a Wiki or Blog
    • Ease of reference (cross-linking)
    • Flexible notification (favorites only, daily digest, RSS feed)
    • Pockets of knowledge made available to interested parties
    • Audit trail / domain experts
  • Paradigm shift
    • from: post & reply
    • to: post & refine & cross-link
  • Send e-mail with link to content instead of content itself

Slide 14: Wikis and Business Processes

Wiki and Business Processes
  • A Wiki is a flexible tool to support evolving processes
    • in the free-form Wiki way -- linked pages, collaboratively maintained
    • or with a structured Wiki application -- forms, queries, reports
  • Content contributors with moderate skill sets can build web applications
  • Paradigm shift
    • from: programmers create applications
    • to: content contributors build applications
  • Similar shift happened with the introduction of spreadsheet programs

Slide 15: Requirements for a Corporate Wiki

  • What to look for:
    • Version control -- audit trail
    • Access control -- security
    • File attachments -- document management
    • Ease of use -- productivity
    • Feature set -- create web applications
    • API -- integration with existing enterprise applications
    • Support -- get help when needed

Slide 16: Open Source Wikis for the Enterprise

  • PHPWiki: A feature-rich implementation with support for various databases (PHP)
  • Tiki: A CMS with Wiki, Slashdot-style forums, blogs, image galleries, chat, etc. (PHP)
  • TWiki: Heavily featured Wiki variant and application platform for the enterprise, many Plugins (Perl)
  • XWiki: Feature rich Wiki implementation, compatible with some TWiki Plugins (Java)
  • ZWiki: A Wiki implementation that runs on the Zope application platform (Python)

  • We will use TWiki to see how a Wiki can be applied in an enterprise

Slide 17: What is TWiki?

  • TWiki started as a Wiki engine, but has outgrown its roots and is now a platform for web applications
  • Mission:
    TWiki is a leading-edge, web-based collaboration platform targeting the corporate intranet world. TWiki
    • fosters information flow within an organization
    • lets distributed teams work together seamlessly and productively
    • eliminates the webmaster syndrome of outdated intranet content
  • Open Source software (GPL), hosted at http://TWiki.org/

Slide 18: What is TWiki? (cont.)

  • A Wiki in the original sense, but also:

  • A shared notebook for projects: Repository, scheduling, meetings
  • A departmental collaboration tool: Processes, project reviews, QA tracking
  • An Intranet publishing tool: IT, HR, ISO standards
  • A CMS with focus on free-form collaboration: Requirements capture
  • A knowledge base: Problem/solution pairs with attached patches
  • A platform to create web based applications like news portals, inventory systems, issues tracking systems

Slide 19: Who is using TWiki?

Slide 20: Who is developing TWiki?

  • Six active Core team members: PeterThoeny (CA), RichardDonkin (England), ArthurClemens (Netherlands), ColasNahaboo (France), SvenDowideit (Australia) and SamHasler (England)
  • Six additional developers with SVN write access to DEVELOP branch
  • Over 100 developers contributing spec, code, patches
  • Main communication vehicle: TWiki at TWiki.org for brainstorming, feature and bug tracking, doc authoring, and support
  • Lots of ideas ready to be implemented smile
    • Talk to us if you are interested in participating in building the future

Slide 21: Highlights: Web Environment

Slide 22: Highlights: Interactive Environment

  • Add and refactor content - "Share Knowledge"
    • Vs. posting e-mail
  • Notification of changes:
    • Get notified of page changes by e-mail or RSS feed
    • A way to keep everybody in synch
    • Also a way to check content by senior engineers
  • Peer review for up to date content:
    • Fix a posting that is inaccurate or insufficient

Slide 23: Highlights: WikiWords for Linking

  • Easy to create hyperlinks within TWiki pages, just use a WikiWord
  • WikiWords are capitalized words, run together, e.g., WebCollaboration, IntranetTools
  • To create a link to an existing page, edit a page and type:
    • For more info, see IntranetTools
  • If the 'IntranetTools' page exists, it is turned automatically into a link:

Slide 24: Highlights: Creating New Pages

  • First, edit the page where you want to spin off a new page, and type in some text including a WikiWord for the new page:
    • For more info, see WebServices
  • After you save the page you will get:
    • For more info, see WebServices?.
  • The '?' is a link (to a page that doesn't exist, yet)
  • Now, to create the WebServices page, click on this link, type in some text and save it
  • If you return to originating page and hit Refresh, the link now covers the whole WikiWord:

Slide 25: Highlights: Context of Content - Database Table

Flat, no hierarchy:
Database table -- flat
Context: Mainly next/previous; search

Slide 26: Highlights: Context of Content - File System

                Tree hierarchy:
File system -- tree hierarchy
Context: Down/up; search

Slide 27: Highlights: Context of Content - HTML Pages & Wikis

                                Hyperlink structure:
HTML pages -- hyperlinks
Context: "What is related" browsing; search

Slide 28: Highlights: Context of Content - TWiki Structure

                                                Tree + hyperlink structure:
TWiki -- tree + hyperlinks
Context: Down/up browsing; "what is related" browsing; search

Slide 29: Highlights: Context of Content - TWiki Breadcrumb

                                                Where am I?
TWiki breadcrumb -- path to home
Breadcrumb example: Home > Plugins > PluginPackage > PluginDevelopment

Slide 30: Highlights: TWiki Shorthand for Content

  • TWiki Shorthand
    • Simple formatting
    • Easy to learn
    • Content is more important than nice formatting
      • "Think e-mail"
  • What about HTML?
    • TWiki renders HTML
    • Better practice to use TWiki shorthand, easier to maintain by other users
  • Limitation: HTML form based editing, not WYSIWYG

Slide 31: Highlights: Version Control

  • Pages are under revision control:
    • See previous page revisions
      • Click on the r1.4 type links at bottom of page
    • See differences between revisions
      • Click on the Diffs link at bottom of page
    • See who changed what and when
  • 'Soft Security' - anyone can change anything, but changes are logged
  • Complete audit trail, even for meta data like access control

Slide 32: Highlights: Access Control

  • Default - use Soft Security
    • Avoid roadblocks to knowledge sharing
  • Special applications - use Access Control
    • Avoid write access restrictions - "If you can see you can play"
  • Access Control:
    • Define groups in Main.TWikiGroups
    • Set read/write/rename access restrictions to webs and pages based on these groups
  • Complete audit trail of access control settings

Slide 33: Initial Deployment

  • Install TWiki on web server
  • Plan rollout and content
    • Pain killer vs. vitamins
  • Build initial structure
  • Populate initial content with help from early adopters
  • Initial rollout with smaller group
  • Train and coach users
  • Do not underestimate inertia and time

Slide 34: Resources for Learning TWiki

  • It takes 20 minutes to learn TWiki essentials and start sharing knowledge!

Slide 35: Example: Call-Center Status Board, v1

  • Requirement for status board:
    • Easily see who is on call at what time
    • Easily change the status board
  • Start simple with status board v1:
    • 07:00am - 11:00am: Richard
    • 11:00am - 03:00pm: Peter
    • 03:00pm - 07:00pm: Sam

Slide 36: Example: Call-Center Status Board, v2

  • Status board v1 does the job, but lets make it more presentable and useful:
    • Convert the bullets into a table
    • Use WikiWord links to team member's home pages for easy reference
    • Add Backup person
  • Improved status board v2:
    Start End Primary Backup
    07:00am 11:00am RichardDonkin  
    11:00am 03:00pm PeterThoeny  
    03:00pm 07:00pm SamHasler  

Slide 37: Advanced: TWiki Skins

  • TWikiSkins change the look of a TWiki topic, for example the style of the text and the layout of the header and footer
  • Separation of program logic, look and content
  • Corporations typically create their own skin to match the corporate branding standard
  • Many SkinPackages available for download at TWiki.org

Slide 38: Advanced: TWiki Skin Samples

Skin samples

Slide 39: Advanced: TWiki Variables

  • TWiki Variables are what environment variables are to an OS, or macros are to a programming language
  • TWiki Variables are text strings - like %SCRIPTURL%, %URLPARAM{"city"}%, %INCLUDE{"OtherPage"}% - that get rendered at page view time
  • Types of variables: Predefined variables; preferences variables; user defined variables
  • Useful to create web applications

Slide 40: Advanced: TWiki Forms

  • Use TWikiForms to add form-based input to free-form content, e.g., you can structure topics with unlimited, easily searchable categories
  • A form is defined in a topic - (DB table definition)
  • Forms can be attached to topics - (DB table row)
  • The form appears in edit mode, and its content gets rendered as a table when viewing the page

Slide 41: Advanced: Formatted Search

  • Use FormattedSearch to generate customized reports in list format or table format
  • Typically used to list topics with form data
  • Report is embedded in a page with a %SEARCH{...}% variable
  • Example applications:
  • Example report:
    Example Plugins report

Slide 42: Advanced: TWiki Plugins

  • TWikiPlugins enhance the functionality of TWiki
  • Growing Plugins repository at TWiki.org - over 140 Plugins available for download
  • A great resource for administrators and web developers to tailor TWiki to their needs, like for example with:

Slide 43: Advanced: TWiki Plugins - Spreadsheet

  • SpreadSheetPlugin: Add spreadsheet formulae to TWiki tables
  • Over 60 formulae available like $AVERAGE(), $IF(), $REPLACE(), $TIME(), $SET(), $GET()
  • You type:
    | *Region:* | *Sales:* |
    | East    |  320 |
    | Central |  580 |
    | West    |  240 |
    | Total: |  %CALC{"$SUM($ABOVE())"}% |
  • You get:
    Region: Sales:
    East 320
    Central 580
    West 240
    Total: 1140

Slide 44: Advanced: TWiki Plugins - XP Tracker

  • The XpTrackerPlugin allows teams to track Extreme Programming (XP) projects
  • Create a page for each Project, Team, Iteration, Story
    • Content in some pages is generated automatically
  • Task details are tracked in a Story page
  • Example: %XPSHOWITERATIONTERSE% shows the summary of iterations in a project:
    StoryFEAEstimateSpentToDoProgressDoneOverrunCompletion
    DemoStory
    Summary of story
      3 1.5 2.5
      
    37%+33%In progress
    SecondDemoStory
    Finish remaining tasks
      4 3 1
      
    75%+0%In progress
    Team totals   7 4.5 3.5
      
    56%+14% 

Slide 45: Advanced: Plugin API and Plugin Internals

  • A TWikiPlugin is composed of a Perl module that gets installed on the server and a topic with help and Plugin configuration
  • A Plugin implements callbacks that extend the functionality of TWiki: Init, render, save, session
  • An API for TWikiPlugins provides the specifications for hooking into the core TWiki code from your external Perl Plugin module: CGI environment, preferences, access control, content handling, I/O
  • Diagram of TWiki core and Plugins:
    TWiki core and Plugins

Slide 46: Web Applications

  • The basic feature set of TWiki can be used to implement web applications
  • We look at three examples:
    • Call-Center Status Board, v3
    • TWiki Installation Directory
    • Feature Tracking
  • Use/create Plugins for more advanced applications

Slide 47: Web App: Call-Center Status Board, v3

  • Status board v2 is presentable, now lets make it more user friendly:
  • Improved status board v3, view and edit:
    statusboard.gif

Slide 48: Web App: TWiki Installation Directory

Slide 49: Web Application: Feature Tracking

Slide 50: Case Study Wind River: Initial deployment

  • Wind River offers real-time operating systems, development tools and middleware with services. This enables companies to develop and run software for devices which are used in aerospace and defense, automotive, digital consumer, industrial, and network infrastructure markets
  • Wind River started a large software project in spring 2000, involving around 100 engineers located in 7 offices on two continents
  • Evaluated two web based products to keep track of teams, schedules, milestones, meeting minutes, code reviews, and to store all project related documents:
    • eRoom: Was in use by merged company ISI
    • TWiki: Was in use by acquired company TakeFive
  • Decided for TWiki because it was more flexible and configurable than eRoom, even though eRoom had a more polished UI and more out-of-box applications

Slide 51: Case Study Wind River: Build and Coach

  • Initial time was spent to compile the requirements with key stakeholders, and to build the content structure
  • Gave virtual trainings for each office on collaboration, with focus more on "pros and cons of e-mail, webmaster maintained Intranets, and TWiki based collaboration", and "why it pays off using online collaboration"
  • Coached employees by monitoring content and sending "collaboration hints"

Slide 52: Case Study Wind River: Growing Up

TWiki stats at Wind River
  • Other groups within the company started using TWiki after seeing how projects can be managed in TWiki
  • Big push after a cross-functional council started using TWiki to document its initiatives, metrics and processes
  • Several skins have been created in the familiar Wind River Intranet look
  • The Intranet home is now a TWiki driven news portal
  • Large deployment:
    • 1600 registered users (1000 current)
    • 120 webs, 50K pages
    • 220K actions / month   (11 / employee workday)
    • 20K updates / month    (1 / employee workday)

Slide 53: Summary

  • TWiki is a powerful platform for web collaboration
  • Free form content and content with structure where needed
  • Easy to share knowledge online
  • Careful coaching is needed
  • Viral growth after people "get it"
  • TWiki is a platform to build web-based applications efficiently

Slide 54: Questions & Answers




Slide 55: References

Slide 56: References, cont.

Slide 57: About Peter

  • Peter Thoeny - Peter@ThoenyPLEASENOSPAM.com
  • Software developer with over 15 years experience, with interests in corporate collaboration, web technology and UI design
  • Author of the open source collaboration software TWiki, managed the project over the last six years
  • Graduate of the Swiss Federal Institute of Technology in Zurich
  • Lived in Japan for 8 years working as an engineering manager for Denso Create, developing case tools
  • Now in the Silicon Valley for 7 years, managing the Engineering Operations group at Wind River

Notes

-- PeterThoeny - 07 Jan 2005

Edit | Attach | Watch | Print version | History: r16 < r15 < r14 < r13 < r12 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r16 - 2011-08-31 - PeterThoeny
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2015 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.