<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"><channel><title>Disruptive Library Technology Jester &#187; service-oriented architecture</title> <atom:link href="http://dltj.org/tag/soa/feed/" rel="self" type="application/rss+xml" /><link>http://dltj.org</link> <description>We&#039;re Disrupted, We&#039;re Librarians, and We&#039;re Not Going to Take It Anymore</description> <lastBuildDate>Mon, 06 Feb 2012 20:04:22 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <cloud domain='dltj.org' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' /> <creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/us/</creativeCommons:license> <item><title>Adding Educause Connect&#8217;s &#8220;Service Oriented Architecture&#8221; Term to Planet LibrarySOA</title><link>http://dltj.org/article/educause-soa-librarysoa/</link> <comments>http://dltj.org/article/educause-soa-librarysoa/#comments</comments> <pubDate>Mon, 12 Nov 2007 19:26:43 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Educause]]></category> <category><![CDATA[higher education]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2007/11/educause-soa-librarysoa/</guid> <description><![CDATA[Richard Akerman&#8217;s recent post highlighting SOA resources at Educause reminded me about the aggregation point on Educause Connect for SOA resources. I&#8217;m assuming significant number of those interested in applying SOA to library systems are at an institution of higher &#8230; <a href="http://dltj.org/article/educause-soa-librarysoa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2007/11/educause-soa-librarysoa/"></abbr><p><a href="http://scilib.typepad.com/science_library_pad/2007/11/soa-and-escienc.html" title="Science Library Pad: SOA and escience info via EDUCAUSE"> Richard Akerman&#8217;s recent post highlighting SOA resources at Educause</a> reminded me about the <a href="http://connect.educause.edu/term_view/Service-oriented+Architecture" title="Service-oriented Architecture | EDUCAUSE CONNECT [Term View]" class="broken_link" rel="nofollow">aggregation point on Educause Connect for SOA resources</a>.  I&#8217;m assuming significant number of those interested in applying SOA to library systems are at an institution of higher education or in some related organization, so I&#8217;m adding the RSS feed for that aggregation to <a href="http://librarysoa.dltj.org/">Planet LibrarySOA</a>.  This will undoubtedly result in a large spike of &#8220;new&#8221; postings to the planet aggregator, but should settle down after that.</p><p>If you are blogging about the application of SOA to libraries and want your postings to see a wider audience, <a href="http://dltj.org/librarysoa-request/">let me know</a> and I&#8217;ll add you to the aggregator.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/educause-soa-librarysoa/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Eric Schnell&#8217;s Introduction to Library SOA</title><link>http://dltj.org/article/schnell-on-librarysoa/</link> <comments>http://dltj.org/article/schnell-on-librarysoa/#comments</comments> <pubDate>Wed, 17 Oct 2007 16:16:07 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2007/10/schnell-on-librarysoa/</guid> <description><![CDATA[Back in June, Eric Schnell posted a five part introduction to applying Service-Oriented Architecture (SOA) concepts to library applications. Along with his comparison of the predominant ILS architecture with Henry Ford&#8217;s application of assembly line manufacturing this is a great &#8230; <a href="http://dltj.org/article/schnell-on-librarysoa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2007/10/schnell-on-librarysoa/"></abbr><p>Back in June, Eric Schnell posted a five part introduction to applying Service-Oriented Architecture (SOA) concepts to library applications.  Along with his <a href="http://ericschnell.blogspot.com/2006/10/what-do-henry-ford-and-online-catalog.html" title="What Do Henry Ford and the Online Catalog Have In Common?">comparison of the predominant ILS architecture with Henry Ford&#8217;s application of assembly line manufacturing</a> this is a great non-techie introduction to SOA form a library application perspective.  I had reason to run across these again earlier this month and remembered that I had not posted a summary and pointers here.</p><p><a href="http://ericschnell.blogspot.com/2007/06/service-oriented-library-systems-part.html" title="The Medium is the Message: Service-Oriented Library Systems Pt.1: Introduction">Part 1 is an introduction</a> with a brief overview of why SOA is interesting. <a href="http://ericschnell.blogspot.com/2007/06/service-oriented-library-systems-pt-2.html" title="The Medium is the Message: Service Oriented Library Systems Pt. 2: What We Have Today">Part 2 is a description of the silos</a> of content that exist today which in <a href="http://ericschnell.blogspot.com/2007/07/service-oriented-library-systems-pt-3.html" title="The Medium is the Message: Service Oriented Library Systems Pt. 3: Where Are We Heading?">part 3 Eric describes how the silos can be collapsed</a> and the structure of services that surround them. <a href="http://ericschnell.blogspot.com/2007/07/service-oriented-library-systems-pt-4.html" title="The Medium is the Message: Service Oriented Library Systems Pt. 4: Challenges">Part 4 describes the challenges</a> of doing this from the vendor lock-in that makes is financially not viable for SOA-based solutions to break into the space.  In <a href="http://ericschnell.blogspot.com/2007/07/service-oriented-library-systems-pt-5.html" title="The Medium is the Message: Service-Oriented Library Systems Pt. 5: Final Comments">part 5 Eric offers some final comments</a> on the introduction of SOA into library applications.</p><p>Well worth reading and bookmarking for future reference.  Nice job, Eric!</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/schnell-on-librarysoa/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Introducing &#8220;Planet Library SOA&#8221;</title><link>http://dltj.org/article/planet-librarysoa/</link> <comments>http://dltj.org/article/planet-librarysoa/#comments</comments> <pubDate>Tue, 19 Jun 2007 18:21:11 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[programming]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2007/06/planet-librarysoa/</guid> <description><![CDATA[Your Name(required) Email(valid email required) Receive an E-mail Copy of this Request? Website(required) Message &#160; cforms contact form by delicious:daysResources tagged with &#8216;librarysoa&#8216; in del.icio.us will also appear in the aggregator.MechanicsPlanet Library SOA is created using the Planet software &#8212; &#8230; <a href="http://dltj.org/article/planet-librarysoa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2007/06/planet-librarysoa/"></abbr><div id="usermessage2a" class="cf_info "></div><form enctype="multipart/form-data" action="/tag/soa/feed/#usermessage2a" method="post" class="cform" id="cforms2form"><ol class="cf-ol"><li id="li-2-1" class=""><label for="cf2_field_1"><span>Your Name</span></label><input type="text" name="cf2_field_1" id="cf2_field_1" class="single fldrequired" value=""/><span class="reqtxt">(required)</span></li><li id="li-2-2" class=""><label for="cf2_field_2"><span>Email</span></label><input type="text" name="cf2_field_2" id="cf2_field_2" class="single fldemail fldrequired" value=""/><span class="emailreqtxt">(valid email required)</span></li><li id="li-2-3" class=""><label for="cf2_field_3" class="cf-before"><span>Receive an E-mail Copy of this Request?</span></label><input type="checkbox" name="cf2_field_3" id="cf2_field_3" class="cf-box-b"/></li><li id="li-2-4" class=""><label for="cf2_field_4"><span>Website</span></label><input type="text" name="cf2_field_4" id="cf2_field_4" class="single fldrequired" value="http://"/><span class="reqtxt">(required)</span></li><li id="li-2-5" class=""><label for="cf2_field_5"><span>Message</span></label><textarea cols="30" rows="8" name="cf2_field_5" id="cf2_field_5" class="area"></textarea></li></ol><fieldset class="cf_hidden"><legend>&nbsp;</legend> <input type="hidden" name="cf_working2" id="cf_working2" value="One%20moment%20please..."/> <input type="hidden" name="cf_failure2" id="cf_failure2" value="Please%20fill%20in%20all%20the%20required%20fields."/> <input type="hidden" name="cf_codeerr2" id="cf_codeerr2" value="Please%20double-check%20your%20verification%20code."/> <input type="hidden" name="cf_customerr2" id="cf_customerr2" value="yyn"/> <input type="hidden" name="cf_popup2" id="cf_popup2" value="nn"/></fieldset><p class="cf-sb"><input type="submit" name="sendbutton2" id="sendbutton2" class="sendbutton" value="Send Comment"/></p></form><p class="linklove" id="ll2"><a href="http://www.deliciousdays.com/cforms-plugin"><em>cforms</em> contact form by delicious:days</a></p><p>Resources tagged with &#8216;<a href="http://del.icio.us/tag/librarysoa" title="Pages tagged with &amp;quot;librarysoa&amp;quot; on del.icio.us">librarysoa</a>&#8216; in del.icio.us will also appear in the aggregator.</p><p><h2>Mechanics</h2><br /><i>Planet Library SOA</i> is created using the <a href="http://www.planetplanet.org/" title="Planet Feed Reader">Planet</a> software &#8212; a tool for aggregating and republishing RSS feeds.  In the case where the contributor runs the WordPress software, <i>Planet Library SOA</i> subscribes to the RSS feed of a category or tag from that blog.  In the case where the contributor runs the Movable Type software, a Yahoo! Pipe is used to extract SOA-related postings from the blog&#8217;s general feed.  (For example, see this <a href="http://pipes.yahoo.com/pipes/pipe.edit?_id=rtYodYEe3BG6g7sVJhOy0Q" title="http://pipes.yahoo.com/pipes/pipe.edit?_id=rtYodYEe3BG6g7sVJhOy0Q">Yahoo! Pipe for Lorcan Dempsey&#8217;s blog</a>.  My gratitude goes out to Stephen Anthony for <a href="http://ea.typepad.com/enterprise_abstraction/2007/06/yahoo_pipes.html" title="Enterprise Abstraction: Yahoo Pipes">his example on how to get Yahoo! Pipes to extract content from feeds</a> and Ryan Gallagher for <a href="http://discuss.pipes.yahoo.com/Message_Boards_for_Pipes/threadview?m=tm&#038;bn=pip-DeveloperHelp&#038;tid=905&#038;mid=1632&#038;tof=2&#038;rt=2&#038;frt=2&#038;off=1" title="http://discuss.pipes.yahoo.com/Message_Boards_for_Pipes/threadview?m=tm&#038;bn=pip-DeveloperHelp&#038;tid=905&#038;mid=1632&#038;tof=2&#038;rt=2&#038;frt=2&#038;off=1">a workaround</a> to <a href="http://discuss.pipes.yahoo.com/Message_Boards_for_Pipes/threadview?m=tm&#038;bn=pip-DeveloperHelp&#038;tid=905&#038;mid=1332&#038;tof=2&#038;rt=2&#038;frt=2&#038;off=1" title="http://discuss.pipes.yahoo.com/Message_Boards_for_Pipes/threadview?m=tm&#038;bn=pip-DeveloperHelp&#038;tid=905&#038;mid=1332&#038;tof=2&#038;rt=2&#038;frt=2&#038;off=1">a bug in Pipes</a>.)</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/planet-librarysoa/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Combining Service Oriented Architecture with a Single Business Approach</title><link>http://dltj.org/article/library-soa-sba/</link> <comments>http://dltj.org/article/library-soa-sba/#comments</comments> <pubDate>Fri, 30 Mar 2007 18:27:11 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2007/03/library-soa-sba/</guid> <description><![CDATA[This month I&#8217;ve come across one great article and one great report on Service Oriented Architectures. The first came from Sally Rogers at Ohio State University in the form of an article from CIO magazine last year:Koch, Christopher. 2006. The &#8230; <a href="http://dltj.org/article/library-soa-sba/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2007/03/library-soa-sba/"></abbr><p>This month I&#8217;ve come across one great article and one great report on Service Oriented Architectures.  The first came from Sally Rogers at Ohio State University in the form of an article from CIO magazine last year:</p><p style="text-indent: -2em; padding-left: 4em;"><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rfr_id=info%3Asid%2Focoins.info%3Agenerator&amp;rft.genre=article&amp;rft.atitle=The+Truth+About+SOA&amp;rft.title=CIO+Magazine&amp;rft.date=2006-06-15&amp;rft.aulast=Koch&amp;rft.aufirst=Christopher&amp;rft.au=Christopher+Koch"><br />Koch, Christopher. 2006. The Truth About SOA. CIO Magazine, June 15. <a href="http://www.cio.com/article/21975/The_Truth_About_SOA" title="">http://www.cio.com/archive/061506/soa.html</a> (accessed March 27, 2007).<br /></span></p><p>This article does a great job at laying the groundwork for the broad &#8220;what&#8221; and &#8220;why&#8221; (as well as the &#8220;why not&#8221;) of SOA, and I agree with Sally that it makes a better introduction to the topic than most of the white paper that I presented at the meeting.  The two best paragraphs out of the article come towards the very end:</p><blockquote><p> In the &#8217;90s, your integration strategy was simple: Buy as many preintegrated applications from a single vendor as possible. That worked for you, and it worked extremely well for the vendor; integrated application suites fetched a high price and required long-term maintenance and support contracts that promised a steady, predictable stream of revenue from customers.<br /> [...]<br /> But the rise of service-oriented architecture has produced a shift in integration strategy. SOA makes the radical assertion that the enterprise application infrastructure is irrelevant. Technology is constructed according to services specified by the business, not by processes contained within an enterprise application vendor&#8217;s software box. In this scenario, packaged software is a piece of the service, just another component in a larger business process &mdash; such as an insurance claims process that links a jumble of functions and data inside [Enterprise Resource Planning], [Customer Relationship Management] and old mainframe legacy systems. The application&#8217;s vendor doesn&#8217;t matter anymore; the linkages between the applications is the important thing.</p></blockquote><p>Does that sound familiar to anyone?  I&#8217;d like to couple this with a paragraph from the report by the National Library of Australia on a &#8220;Single Business Approach&#8221; (discovered via a <a href="http://orweblog.oclc.org/archives/001307.html" title="Lorcan Dempsey&#039;s weblog: Moving to a &#039;single business&#039; systems environment">blog posting by Lorcan Dempsey</a>):</p><p style="text-indent: -2em; padding-left: 4em;"><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info%3Asid%2Focoins.info%3Agenerator&amp;rft.genre=report&amp;rft.btitle=IT+Architecture+Project+Report+&amp;rft.title=IT+Architecture+Project+Report+&amp;rft.date=2007&amp;rft.pub=National+Library+of+Australia&amp;rft.tpages=30"><br />IT Architecture Project Report. 2007. N.d. National Library of Australia. <a href="http://www.nla.gov.au/dsp/documents/itag.pdf" title="" class="broken_link" rel="nofollow">http://www.nla.gov.au/dsp/documents/itag.pdf</a> (accessed March 28, 2007).<br /></span></p><p>The paper defines Single Business Approach in a library context this way:</p><blockquote><p>Even with a service-oriented approach, the Library&#8217;s capacity to meet its directions will continue to be eroded as new applications are brought online. As budgets continue to tighten and the Library needs to do more with less, there will come a time when a large proportion of development effort will be spent just maintaining existing applications.</p><p>To address this issue, and as part of implementing the service-oriented architecture, it is proposed that the Library regard its digital library services as a single business with a single data corpus that can be deployed in a range of contexts. Rather than developing separate applications to meet a new requirement, each requirement would be viewed as an enhancement to the business that could be deployed across all relevant business contexts.</p><p>This is a significant change to the way the Library currently works. As well as resulting in further significant efficiencies for IT staff, it has the potential to bring library staff together in unprecedented ways to work on problems and ideas and to prototype solutions that enhance the user experience regardless of the point of access.</p></blockquote><p>The Australia report focuses on this Single Business Approach along with SOA and the adoption of open source solutions to come up with a vision to support the management, discovery and delivery of the National Library of Australia&#8217;s collections.  There is a lot here that could be adopted to other similar situations, such as OhioLINK&#8217;s.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.cio.com/archive/061506/soa.html to http://www.cio.com/article/21975/The_Truth_About_SOA on June 9th, 2011.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/library-soa-sba/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>The Dis-integration of the ILS into a SOA Environment</title><link>http://dltj.org/article/ils-disintegration-to-soa/</link> <comments>http://dltj.org/article/ils-disintegration-to-soa/#comments</comments> <pubDate>Thu, 21 Sep 2006 03:29:56 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[libraries]]></category> <category><![CDATA[library 2.0]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[ngc4lib]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2006/09/ils-disintegration-to-soa/</guid> <description><![CDATA[This is part three of a continuing series on the application of the Service Oriented Architecture (SOA) design pattern to library systems. In the first part, the SOA concept was compared to a transportation network and the basic foundation for &#8230; <a href="http://dltj.org/article/ils-disintegration-to-soa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/09/ils-disintegration-to-soa/"></abbr><p>This is part three of a continuing series on the application of the Service Oriented Architecture (SOA) design pattern to library systems.  In the first part, the <a href="http://dltj.org/2006/09/defining-soa-by-analogy/">SOA concept was compared to a transportation network</a> and the basic foundation for defining SOA was set down.  The second part <a href="http://dltj.org/2006/09/services-in-soa/">described what a &#8220;service&#8221; in SOA could be</a> and proposed an example using OCLC&#8217;s WorldCat interface with item status information being pulled from a library catalog system.  That part also left off with a teaser about the juxtaposition of &#8220;inventory control system&#8221; with &#8220;local catalog system&#8221; &mdash; a foreshadowing of the topic of this post:  what to do about the <span style="text-decoration: line-through;">Monolithic</span> (<i>er&#8230;</i> &#8220;Integrated&#8221;) Library System.</p><p><h2>How did we get where we are today?</h2><br />Wikipedia has the most concise description of the state of library automation today:</p><blockquote><p>Before the advent of computers, libraries frequently used a card catalog to index its holdings. Computers were used to automate the card catalog, thus the term <em>automation system</em>.  Since the late 1980s, multi-tasking modules allowed business functions to be integrated. Instead of having to open up separate applications, library staff could now use a single application with multiple functional modules. <sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_0_125" id="identifier_0_125" class="footnote-link footnote-identifier-link" title="Adapted from &amp;#8220;Integrated library system.&amp;#8221; Wikipedia, The Free Encyclopedia. 20 Sep 2006, 19:29 UTC. Wikimedia Foundation, Inc. 20 Sep 2006 http://en.wikipedia.org/wiki/Integrated_library_system&amp;#038;oldid=76840266#History.">1</a></sup></p></blockquote><p>As this article points out, libraries have a grand tradition of applying technology to its business problems.  These &#8220;integrated library systems&#8221; (ILS) &mdash; so named for their unified functions of public search, circulation (check-in/check-out), acquisitions, and cataloging (description) &mdash; propelled library staff productivity to magnitudes not seen before. &#8220;Those systems,&#8221; notes Marshall Breeding, &#8220;came quite close to delivering comprehensive automation for libraries.&#8221;<sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_1_125" id="identifier_1_125" class="footnote-link footnote-identifier-link" title="Breeding, Marshall. &amp;#8220;Re-Integrating the integrated library system.&amp;#8221; Computers in Libraries. 25(25): Jan 2005.  20-Sep-2006 http://www.librarytechnology.org/ltg-displaytext.pl?RC=11340.">2</a></sup></p><p>So why change?  Marshall goes on to say, &#8220;the ILS remains shackled to the antiquated print-based paradigm for library automation.&#8221;  Today&#8217;s integrated library system is ill-equipped to handle the desired integration of formats (audio, video, journal article) and delivery mechanisms (online versus on-site) of our users.  It is also not a nimble platform; as a single, all-encompassing application, bug fixes and new functionality across the entire must be wrapped in a software distribution to be released to users.</p><p>This post is not intended to be an exhaustive examination of the problems with the software design model of current ILS applications; there is a growing body of analysis and commentary on that point.  Rather, the rest of this post seeks to point a way forward &mdash; a path that involves the dis-integration (&#8220;un-integration&#8221;? or, as Marshall put it, &#8220;re-integration&#8221;?) of the integrated library system.</p><p><h2>What <em>is</em> the Integrated library System?</h2><br />What I propose is that we think back to a time before we had the luxury of an integrated library system, and remember the pieces that over the past few decades we have worked so hard to bring together. <sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_2_125" id="identifier_2_125" class="footnote-link footnote-identifier-link" title="A note out to those of you outside the library community who still seem to be reading this series, if the blog statistics are to be any guide:  you can help us out with your ideas here &amp;mdash; many of us have had our heads buried in ILS systems for so long (my entire career, for instance) that it is difficult to think outside that box.  Let me know in the comments if I&amp;#8217;ve missed anything.">3</a></sup> As we start to pull things apart, it will be helpful to think of actions and activities that we and our users do and not on the outcomes or the objects that the actions are performed upon.  It might be tempting to call these actions and activities &#8220;Services&#8221;, but I would like to reserve that word for the SOA notion of services; instead, I&#8217;ll call these things &#8220;Tools.&#8221;  Keep in mind one of the things that we&#8217;ve already learned:  a single page on Amazon can call on more than 100 services to build up the contents of the page <sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_3_125" id="identifier_3_125" class="footnote-link footnote-identifier-link" title="&amp;#8220;A Conversation with Werner Vogels.&amp;#8221;  ACM Queue. 4(4): May 2006. 19-Sep-2006 http://www.acmqueue.com/modules.php?name=Content&amp;#038;pa=showpage&amp;#038;pid=388">4</a></sup> &mdash; by their nature these calls need to be very quick and light-weight.  This is what I&#8217;ve come up with so far as the actions and activities of an ILS:</p><p><h3>Discovery Tool / Indexing Tool</h3><br />Sometimes called a &#8220;search engine&#8221;, the term &#8220;Discovery&#8221; more accurately describes the activity of our users.  There is more here, though, then just splitting off the public interface of the existing ILS.  A true SOA Discovery Tool is more akin to Roy Tennant&#8217;s <a href="http://www.cdlib.org/inside/news/presentations/rtennant/2005niso/" title="PowerPoint Presentation  -  Only Librarians Like to Search, Everyone Else Likes to Find : MARC, Metasearching, &amp;amp;  Marginalization">&#8220;Only Librarians Like to Search, Everyone Else Likes to Find&#8221;</a> mantra &mdash; there should be one Discovery Tool for the user that, <i>a la</i> Google or Amazon, searches across the entire content space to bring the best information results back to the user.  Maybe it helps to think of the Discovery Tool as a portal through which the user finds any nugget of information available in the library&#8217;s sphere of content; that nugget may be a book, a journal article, a web page, a video, a dissertation, or any other piece of content.</p><p>Speaking of Roy&#8217;s mantra, I may be showing a bit of a bias here towards one particular solution by pairing the Discovery Tool with an Indexing Tool.  The underlying presumption here is that there will be One Common Index for all library content.  Given the issues surrounding metasearch (particularly the speed at which a metasearch query can be executed), getting a zippy response for a SOA interaction really requires that an index already exist that is used to answer the query.  This bias is fueled, admittedly, by OhioLINK&#8217;s fortunate position of storing and serving much of the content under license from publishers/producers from our own servers.  When you actually have access to the content and underlying metadata, you can think about creating One Common Index for all of that content.  So use of the Discovery Tool is inexorably linked to the Indexing Tool.</p><p><h3>Inventory Control Tool</h3><br />Based on the previous posting, you could probably guess that this tool was coming.  What else would you call an activity that keeps track of what items are located where in, if you&#8217;ll pardon the analogy, a warehouse full of books?  Inventory Control is a problem that has been solved time and time again with greater and greater efficiency by industries other than libraries, and I think it is about time that we start to be able to take advantage of some of those efficiencies.  (Interestingly enough, I&#8217;ve noticed an increase of &#8220;global logistics&#8221; companies on the ALA exhibitor floor.  I stopped and talked with one of them, and he mentioned some of the work that his company was doing &mdash; fascinating stuff for perhaps another blog post someday.)</p><p>A library&#8217;s inventory control challenge is modestly similar to that of a video rental store:  we need to track what is within our confines and what has been &#8220;rented.&#8221;  That leads us right into the next tool.</p><p><h3>Point-of-Sale (<i>a la</i> video rental) Tool / User Directory Tool</h3><br />If our inventory control is similar to that of a video rental store, our &#8220;check out&#8221; is their &#8220;rental&#8221; and our &#8220;check in&#8221; is their &#8220;return.&#8221;  If we can make that analogy, our circulation system is a kind of Point-of-Sale system. <sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_4_125" id="identifier_4_125" class="footnote-link footnote-identifier-link" title="For a definition and description of Point-of-Sale systems, I recommend this Wikipedia article.">5</a></sup></p><p>If that analogy holds, then their customer database is like out patron database.  In any case, we will need a User Directory Tool where demographic information is kept as well as information about users&#8217; &#8220;rentals.&#8221;  The User Directory Tool can also be a source of authentication and authorization as well as other functions such as storing recommendations and annotations.  (More on this topic to come at a later time.)</p><p><h3>Ordering and Receiving Tool</h3><br />This, quite frankly, has to be the least &#8220;library&#8221; of all of the components that make up an ILS.  After all, doesn&#8217;t just about every business have some sort of acquisitions, receiving, and accounts payable workflow?  Is there anything about an Ordering and Receiving Tool that is unique to the libraries?  From a broad perspective, what is being &#8220;bought&#8221; is a description of an item &mdash; a record number, if you will, coming out of the Description Tool (see below).</p><p><h3>Description Tool</h3><br />If ordering and receiving is the least &#8220;library-like&#8221; aspect of the ILS, item description has to be the most uniquely library activity.  Who else gets as passionate about how items are described?  Large parts of our professional training are devoted to the creation and use of descriptive metadata.  (For the outsiders peeking into the library profession through these postings:  yes, it&#8217;s true&#8230;this is what most librarians, at some level, get really excited about.)</p><p>Unlike the integrated library systems in use today, however, our next generation Description Tool must be multi-lingual:  MARC <sup><a href="http://dltj.org/article/ils-disintegration-to-soa/#footnote_5_125" id="identifier_5_125" class="footnote-link footnote-identifier-link" title="Machine Readable Cataloging">6</a></sup>, while very expressive to the point of obsessive, cannot capture all of the information about every object.  If metadata is going to truly encapsulate the descriptive fidelity of the object, we need to look at standards other than MARC.  For example, OhioLINK&#8217;s current media content repository has object that are digitized bird calls; the description of those audio files includes elements such as genus and species, the type of microphone used to record the bird call, and a notation of whether the bird was seen or not seen.  Odds are those elements will never find their way into MARC, so the Description Tool must be able to pull together schema such as the <a href="http://services.natureserve.org/technical2/species_schema.jsp" title="NatureServices: Acknowledgements">Nature Services Species Schema</a>, some other schema that describes recording devices, and something that we&#8217;ll likely have to make up to represent whether the bird was observed.  (See, I told you we were obsessive about description.)  In addition, a really good Description Tool would pull in authority files and ontologies of various sorts, beyond the Name Authority File and Library of Congress Subject Headings that enable similar topics to be grouped together.  Above all, this tool needs to be easy to use to promote a quick workflow and response SOA Service requests.</p><p><h2>What&#8217;s Next</h2><br />There is more to come in our exploration of general Tools and specific Services that we might find in a Library Service Oriented Architecture environment.  The next posting in this series, however, will explore the important distinction between SOA and another buzz-phrase making the rounds:  &#8220;Web Services&#8221;.</p><p>Thanks go out to <a href="http://blogs.talis.com/panlibus/archives/2006/09/a_library_soa_e.php" title="panlibus" class="broken_link" rel="nofollow">Richard Wallis at Talis</a> and <a href="http://orweblog.oclc.org/archives/001148.html" title="Lorcan Dempsey&#039;s weblog: D2D in Ohio">Lorcan Dempsey at OCLC</a> for their comments so far.  I&#8217;m on the home stretch towards a plateau in this series and which point I&#8217;ll take a step back, absorb your observations, and reflect them back out in subsequent postings.  Everyone else, please feel free to join in on the conversation as well, whether it be through comments here or commentary elsewhere.</p><p>[20060921T0820 Missed the "p" in Lorcan's last name -- my humble apologies, Lorcan.]<p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://en.wikipedia.org/wiki/Integrated_library_system&#038;oldid=76840266#History to http://en.wikipedia.org/wiki/Integrated_library_system?oldid=76840266#History on January 13th, 2011.</p><h2>Footnotes</h2><ol class="footnotes"><li id="footnote_0_125" class="footnote">Adapted from &#8220;Integrated library system.&#8221; Wikipedia, The Free Encyclopedia. 20 Sep 2006, 19:29 UTC. Wikimedia Foundation, Inc. 20 Sep 2006 <a href="http://en.wikipedia.org/wiki/Integrated_library_system?oldid=76840266#History" title="Integrated Library System">http://en.wikipedia.org/wiki/Integrated_library_system&#038;oldid=76840266#History</a>.</li><li id="footnote_1_125" class="footnote">Breeding, Marshall. &#8220;Re-Integrating the integrated library system.&#8221; Computers in Libraries. 25(25): Jan 2005.  20-Sep-2006 <a href="http://www.librarytechnology.org/ltg-displaytext.pl?RC=11340" title="Library Technology Guides:  Re-Integrating the integrated library system -- Breeding, Marshall">http://www.librarytechnology.org/ltg-displaytext.pl?RC=11340</a>.</li><li id="footnote_2_125" class="footnote">A note out to those of you outside the library community who still seem to be reading this series, if the blog statistics are to be any guide:  you can help us out with your ideas here &mdash; many of us have had our heads buried in ILS systems for so long (my entire career, for instance) that it is difficult to think outside that box.  Let me know in the comments if I&#8217;ve missed anything.</li><li id="footnote_3_125" class="footnote">&#8220;A Conversation with Werner Vogels.&#8221;  ACM Queue. 4(4): May 2006. 19-Sep-2006 <a href="http://www.acmqueue.com/modules.php?name=Content&#038;pa=showpage&#038;pid=388" title="">http://www.acmqueue.com/modules.php?name=Content&#038;pa=showpage&#038;pid=388</a></li><li id="footnote_4_125" class="footnote">For a definition and description of Point-of-Sale systems, I recommend <a href="http://en.wikipedia.org/wiki/Point_of_sale" title="Point of Sale -- Wikipedia">this Wikipedia article</a>.</li><li id="footnote_5_125" class="footnote"><a href="http://en.wikipedia.org/wiki/MARC_standards" title="MARC Standards">Machine Readable Cataloging</a></li></ol><div class='series_links'><a href='http://dltj.org/article/services-in-soa/' title='Services in a Service Oriented Architecture'>Previous in series</a></div>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/ils-disintegration-to-soa/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Services in a Service Oriented Architecture</title><link>http://dltj.org/article/services-in-soa/</link> <comments>http://dltj.org/article/services-in-soa/#comments</comments> <pubDate>Wed, 20 Sep 2006 03:08:36 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[libraries]]></category> <category><![CDATA[library 2.0]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[ngc4lib]]></category> <category><![CDATA[OCLC]]></category> <category><![CDATA[OhioLINK]]></category> <category><![CDATA[opac]]></category> <category><![CDATA[service-oriented architecture]]></category> <category><![CDATA[WorldCat]]></category><guid isPermaLink="false">http://dltj.org/2006/09/services-in-soa/</guid> <description><![CDATA[This post is the second in a series about the application of the Service Oriented Architecture (SOA) system design pattern to library services. The first post in this series focused on defining &#8220;Service Oriented Architecture&#8221; using the analogy of a &#8230; <a href="http://dltj.org/article/services-in-soa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/09/services-in-soa/"></abbr><p>This post is the second in a series about the application of the Service Oriented Architecture (SOA) system design pattern to library services.  The first post in this series <a href="http://dltj.org/2006/09/defining-soa-by-analogy/">focused on defining &#8220;Service Oriented Architecture&#8221;</a> using the analogy of a transportation network.  This post goes into some detail about what makes a &#8220;service&#8221; in this architecture and offers an example using a hypothetical use case:  a union library catalog (Open WorldCat) making a statement about the availability of a book.</p><p><h2>Why are we even looking at SOA?</h2><br />This is a good question to ask before we get much further.  SOA adds a new layer of complexity on top of existing systems and services, so &mdash; other than being a neat new set of buzzwords &mdash; there had better be a good reason for investigating and adopting pattern for designing systems.  Answering this question also helps us in defining what a &#8220;service&#8221; is in an SOA.  The most concise answer can be found in <i>OASIS Reference Model for Service-Oriented Architecture:</i></p><blockquote><p>SOA is a means of organizing solutions that promotes reuse, growth and interoperability. It is not itself a solution to domain problems but rather an organizing and delivery paradigm that enables one to get more value from use both of capabilities which are locally “owned” and those under the control of others.  It also enables one to express solutions in a way that makes it easier to modify or evolve the identified solution or to try alternate solutions. <sup><a href="http://dltj.org/article/services-in-soa/#footnote_0_118" id="identifier_0_118" class="footnote-link footnote-identifier-link" title="OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 175-179.  The document was retrieved from http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf on 18-Sep-2006.">1</a></sup></p></blockquote><p>The first sentence is a statement that reflects SOA position as the latest step on an evolutionary path from monolithic to modular computing.  In the really old days of electronic computing, every sequence of processing instructions was defined from scratch &mdash; you programmed the computer to do everything.  Very quickly one realized that the programming code being written contained a lot of redundancy, so &#8220;code libraries&#8221; were formed that held all of the repeated instructions; no longer did everyone have to write and debug their own code routines to get the current date or write out a character&#8230;you used the supplied code libraries.</p><p>Gradually, as systems became more and more complex, the computing profession came up with more code libraries and developed higher levels of abstraction to deal with the complexity.  &#8220;Objects&#8221; as programming entities were introduced in the 1960s via Simula 67, a programming language designed for making simulations, and Smalltalk, a programming language developed at Xerox PARC in the 1970s, introduced the term <em>Object-oriented Programming</em> (OOP) to represent the pervasive use of objects and messages as the basis for computation.  OOP became the dominant programming methodology during the mid-1980s largely due to the influence of C++, an extension of the C programming language, but for the most part the applications developed using the OOP methodology remained as applications running on a solitary computer system. <sup><a href="http://dltj.org/article/services-in-soa/#footnote_1_118" id="identifier_1_118" class="footnote-link footnote-identifier-link" title="Summarized version of &amp;#8220;Object-oriented programming.&amp;#8221; Wikipedia, The Free Encyclopedia. 19 Sep 2006, 18:27 UTC. Wikimedia Foundation, Inc. 19 Sep 2006 http://en.wikipedia.org/wiki/Object-oriented_programming&amp;#038;oldid=76627897#History. ">2</a></sup></p><p>OOP and SOA are similar in that each seeks to encapsulate activities to an abstract level at which point the abstractions can be reused as building blocks to larger applications.  Where they differ, as explained by the <i>OASIS Reference Model for Service-Oriented Architecture</i> <sup><a href="http://dltj.org/article/services-in-soa/#footnote_2_118" id="identifier_2_118" class="footnote-link footnote-identifier-link" title="OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 243-259.">3</a></sup>, is at the level of abstraction:  in the OOP paradigm the focus is on packaging data and operations whereas in the SOA paradigm the focus is on &#8220;the task or business function &#038;mdash getting something done.&#8221;  Or, if you will, providing a <em>service.</em></p><p><h2>Definition of &#8220;Service&#8221;</h2></p><p>In the SOA sense of the word, a service is a set of capabilities offered by a service provider through a service definition that makes the capabilities discoverable by a service consumer.  The implementation of the service is &#8220;opaque&#8221; to the consumer, and the invocation of a service itself may seek out the SOA-defined capabilities of another service provider.  The real-world consequences of a service invocation can be:  1) information transferred from a provider to a consumer (e.g. &#8220;read&#8221;); 2) a change in the state of information at the provider (e.g. &#8220;write&#8221;); or 3) a combination of both.</p><p>The amount of information received and/or changed per service invocation can be rather small, and the transaction itself can be rather light-weight.  For instance, in an ACM QUEUE interview Werner Vogels, Amazon&#8217;s Chief Technical Officer says that when &#8220;you hit the Amazon.com gateway page, the application calls more than 100 services to collect data and construct the page for you.&#8221; <sup><a href="http://dltj.org/article/services-in-soa/#footnote_3_118" id="identifier_3_118" class="footnote-link footnote-identifier-link" title="&amp;#8220;A Conversation with Werner Vogels.&amp;#8221;  ACM Queue. 4(4): May 2006. 19-Sep-2006 http://www.acmqueue.com/modules.php?name=Content&amp;#038;pa=showpage&amp;#038;pid=388">4</a></sup> If it took seconds rather than miliseconds to respond to a SOA query, Amazon&#8217;s architecture would clearly be unsustainable.</p><p>Back up to the quotation near the top of this post, the second sentence ends by speaking of &#8220;capabilities which are locally &#8216;owned&#8217; and those under the control of others.&#8221;  SOA, by defining this abstract notion of service and focusing on the semantics surrounding a service, promotes the exchange of services across organizational boundaries.  This is the subject of the following hypothetical use case.</p><p><h2>Hypothetical Use Case:  Reflection of Local Library Holdings in Open WorldCat</h2><br />So, you might be asking yourself, what does this mean for the systems and services delivered by the library community?  (The first post in the series generated a lot of hits that, judging by the quantity and the HTTP referrer strings, are not from the the library community so you might be asking &#8220;who cares about libraries?&#8221;  Welcome to DLTJ &mdash; a blog about the application of technology changes that are disruptive to the library community status quo&#8230;and you may have thought that libraries are boring&#8230;)  Suppose for a moment that you decided to replace the public interface of your local library catalog with that of, say, <a href="http://worldcat.org/" title="WorldCat">Open WorldCat</a> &mdash; you like the design and functionality better than what is offered by your library automation vendor plus Open WorldCat offers the very neat find-a-copy-in-a-nearby-library feature.  (Again, for those coming in from outside the library community, WorldCat is a combined database of the holdings of thousands of libraries worldwide offered by a not-for-profit cooperative called OCLC.  You can, no pun intended, <a href="http://worldcat.org/whatis/" title="What is WorldCat?">read more about it</a>.  A database of, at the time of writing 68,338,776 works represented by <a href="http://www.oclc.org/worldcat/newgrow.htm" title="Watch WorldCat Grow (LIVE)">1,081,317,008 distinct holdings in libraries</a>.  Still think libraries are boring?)</p><p>You are all ready to proceed with this plan, <sup><a href="http://dltj.org/article/services-in-soa/#footnote_4_118" id="identifier_4_118" class="footnote-link footnote-identifier-link" title="For the record, please note the word &amp;#8220;hypothetical&amp;#8221; sprinkled liberally throughout this example.  WorldCat cannot now do the things that are described in this post, the screenshots are unauthorized adaptations of WorldCat web pages, and, to the best of my knowledge, OCLC is not planning on doing anything like what is described here.  Although it would be really neat if they could do it&amp;#8230;.">5</a></sup> but there is one sticking point:  your local public catalog displays the status of the item (&#8220;available&#8221;, &#8220;checked out&#8221;, &#8220;lost&#8221;, etc.).  And WorldCat, although it contains the combined holdings of thousands of libraries, it doesn&#8217;t know whether any particular item is available or not &mdash; the only thing stored in the WorldCat database is whether an item is owned, not whether it is checked out.  The status of the item is only known to the local catalog system.</p><p>Enter a Service Oriented Architecture.  The local catalog system makes known a service whereby an service consumer can ask for the status of an item.  What is returned by the service provider can be as simple as a string of text that is a spelled-out version of the item status or it can be as complex as an XML schema with attributes for &#8220;checked out&#8221; or &#8220;lost&#8221; and parsable date fields and so forth.  Remember, though &mdash; these SOA exchanges need to be processed quickly.  As WorldCat is generating the screen of the search results for the user, it calls back to the library catalog system to find the status of the item and then displays it for the user.  The result might be something like this: <br /><img id="image124" src="http://cdn.dltj.org/wp-content/uploads/2006/09/screenshot_01.png" alt="WorldCat example with &quot;Status&quot;" style="border: 1px solid silver; margin: 1em 0 1em 0;" /></p><p><h2>Okay, but is That What the User Really Wanted?</h2><br />I have my wife to thank for the next part; she, too, is a librarian <sup><a href="http://dltj.org/article/services-in-soa/#footnote_5_118" id="identifier_5_118" class="footnote-link footnote-identifier-link" title="yeah, yeah &amp;#8212; I can almost hear the sharp-witted speculations about our dinner-time conversations from those outside the library community.">6</a></sup> and as I was describing this scenario she was most emphatic about the relative uselessness of the status display.  After all, if your question is &#8220;how can I get this item?&#8221; does the answer &#8220;due back on&#8230;&#8221; or &#8220;declared lost&#8221; or even &#8220;available&#8221; answer that question?  What if we were to really answer the question; the answer might look something like:<br /><img id="image123" src="http://cdn.dltj.org/wp-content/uploads/2006/09/screenshot_021.png" alt="WorldCat example with &quot;Availability&quot; added" style="border: 1px solid silver; margin: 1em 0 1em 0;" /><br />We&#8217;re translating the raw status information from our inventory control database following these rules:</p><dl><dt>Available Online</dt><dd>If we see in the description of the item that it is on the web somewhere.  In this case, the word &#8220;Online&#8221; can link right to the item.</dd><dt>Available Onsite; Delivered in 1-2 days</dt><dd>This item is physically held in the library and the inventory control aspect of the library system says that it is available.  So the choices to the user are &#8220;onsite&#8221;, which could link to a page that describes which library holds the item and the approximate location of the item within the library, or &#8220;delivered in 1-2 days&#8221; for a user service that will pull an item from the shelves and deliver it to an office or home.</dd><dt>Delivery on or about&#8230;</dt><dd>This item is checked out.  A hold has been placed on it, and when the item is returned (hopefully no later than the original due date) it will be turned around to the next user.</dd><dt>Delivered in 3-4 weeks</dt><dd>This item was declared lost, so the 3-4 week delivery statement represents the estimated time to get the item from another library through interlibrary loan.  Ultimately, does the user really care if the item was declared lost?  Probably not &mdash; they just want to get to the item!</dd></dl><p><h2>Layers of Services</h2><br />Here in Ohio we can actually do one better than those last two.  In addition to our local catalog systems, Ohio academic libraries have a <a href="http://olc1.ohiolink.edu/" title="OhioLINK Library Catalog - Main Search Menu">combined catalog of their own</a> and a requesting/delivery service that can move an item from one institution to another in a matter of days.  What would this mean in terms of our emerging SOA?  The service provider that WorldCat asks for the local item status doesn&#8217;t have to be the local catalog system.  Instead, it could be an intermediary service that would first ask the local catalog system if the item is available.  If not (such as in the &#8220;checked out&#8221; or &#8220;lost&#8221; examples), the intermediary service would query the OhioLINK combined catalog service provider to see if the item is available at any other OhioLINK member institution.  If so, the display might look something like this:<br /><img id="image122" src="http://cdn.dltj.org/wp-content/uploads/2006/09/screenshot_03.png" alt="WorldCat example with &quot;Availability&quot; line and with value-added delivery time" style="border: 1px solid silver; margin: 1em 0 1em 0;" /><br />Here again is the translated message:</p><dl><dt>Delivered in 2-3 days</dt><dd>The item was not available at the local site (so we don&#8217;t see an &#8220;on-site&#8221; link) but it is available from an OhioLINK member institution.  The average turn-around time for an OhioLINK physical delivery request is about 2 to 3 days.  But again, the user doesn&#8217;t care at this point where the item is coming from &mdash; their local library or one somewhere across the state; the only thing the user likely cares about is how long it would take to get the item if he or she asked for it to be delivered to their home or office.</dd></dl><p><h2>But What of the &#8220;Integrated Library System&#8221;?</h2><br />If you read closely and have your internal sensors calibrated to such things, you may have noticed the juxtaposition of &#8220;inventory control system&#8221; with &#8220;local catalog system&#8221; in the descriptions above.  That is no mistake &mdash; in the next posting of this series we&#8217;ll take a look at the disaggregation of the traditional integrated library system in a SOA environment.<p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://en.wikipedia.org/wiki/Object-oriented_programming&#038;oldid=76627897#History to http://en.wikipedia.org/wiki/Object-oriented_programming?oldid=76627897#History on January 13th, 2011.</p><h2>Footnotes</h2><ol class="footnotes"><li id="footnote_0_118" class="footnote">OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 175-179.  The document was retrieved from <a href="http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf" title="OASIS Reference Model for Service-Oriented Architecture">http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf</a> on 18-Sep-2006.</li><li id="footnote_1_118" class="footnote">Summarized version of &#8220;Object-oriented programming.&#8221; Wikipedia, The Free Encyclopedia. 19 Sep 2006, 18:27 UTC. Wikimedia Foundation, Inc. 19 Sep 2006 <a href="http://en.wikipedia.org/wiki/Object-oriented_programming?oldid=76627897#History" title="Object-Oriented Programming">http://en.wikipedia.org/wiki/Object-oriented_programming&#038;oldid=76627897#History</a>.</li><li id="footnote_2_118" class="footnote">OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 243-259.</li><li id="footnote_3_118" class="footnote">&#8220;A Conversation with Werner Vogels.&#8221;  ACM Queue. 4(4): May 2006. 19-Sep-2006 <a href="http://www.acmqueue.com/modules.php?name=Content&#038;pa=showpage&#038;pid=388" title="">http://www.acmqueue.com/modules.php?name=Content&#038;pa=showpage&#038;pid=388</a></li><li id="footnote_4_118" class="footnote">For the record, please note the word &#8220;hypothetical&#8221; sprinkled liberally throughout this example.  WorldCat cannot now do the things that are described in this post, the screenshots are unauthorized adaptations of WorldCat web pages, and, to the best of my knowledge, OCLC is not planning on doing anything like what is described here.  Although it would be really neat if they <em>could</em> do it&#8230;.</li><li id="footnote_5_118" class="footnote">yeah, yeah &#8212; I can almost hear the sharp-witted speculations about our dinner-time conversations from those outside the library community.</li></ol><div class='series_links'><a href='http://dltj.org/article/defining-soa-by-analogy/' title='Defining &#8220;Service Oriented Architecture&#8221; by Analogy'>Previous in series</a> <a href='http://dltj.org/article/ils-disintegration-to-soa/' title='The Dis-integration of the ILS into a SOA Environment'>Next in series</a></div>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/services-in-soa/feed/</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>Defining &#8220;Service Oriented Architecture&#8221; by Analogy</title><link>http://dltj.org/article/defining-soa-by-analogy/</link> <comments>http://dltj.org/article/defining-soa-by-analogy/#comments</comments> <pubDate>Tue, 19 Sep 2006 03:05:45 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[libraries]]></category> <category><![CDATA[library 2.0]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2006/09/defining-soa-by-analogy/</guid> <description><![CDATA[This post is the first in a series over the next few days that in total will attempt to lay the groundwork for a discussion of applying the Service Oriented Architecture (or SOA) software design pattern to systems and solutions &#8230; <a href="http://dltj.org/article/defining-soa-by-analogy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/09/defining-soa-by-analogy/"></abbr><p>This post is the first in a series over the next few days that in total will attempt to lay the groundwork for a discussion of applying the Service Oriented Architecture (or SOA) software design pattern to systems and solutions in the library space.  It starts with comparing the SOA concept with a multi-modal transportation network.  Subsequent posts will outline use cases and describe how SOA can be applied to libraries.</p><p><h2>An Analogy:  Transportation</h2><br />Imagine for a moment that you have a goal to get from your house in Cleveland, Ohio, to a hotel in Denver, Colorado.  How might you accomplish this?  Perhaps you will drive in your car to off-site parking near an airport.  You&#8217;ll park your car and ride a shuttle bus to the airport where (if you successfully get through security) you board an airplane for Denver.  When you get off, you walk to the taxi stand and take a taxi to the hotel.</p><p>Each of these modes of transportation &#8212; your car, the shuttle bus, the airplane, and the taxi &#8212; came together as you needed them.  Or, said another way, when you set out from your home in Cleveland, you had not specified the entire transportation network from exactly which shuttle bus you would take to exactly which taxi you would use.  In addition, at the intersection of each of these transportation modes &#8212; where one mode stopped and you were not yet at your goal &#8212; there is likely more than one option you can use that will take you a step closer to your destination.  For example, you could have started from your house with a walk to a light rail station that took you directly into the airport terminal, thus eliminating the car ride and the shuttle bus.</p><p>In this analogy, one could call the transportation modes <em>&#8220;services.&#8221;</em> A service can be defined as &#8220;the capability to perform work for another, the specification of the work offered for another, and the offer to perform work for another.&#8221; <sup><a href="http://dltj.org/article/defining-soa-by-analogy/#footnote_0_117" id="identifier_0_117" class="footnote-link footnote-identifier-link" title="OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 169-171.  The document was retrieved from http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf on 18-Sep-2006.">1</a></sup> The car, airplane, bus, taxi, and light rail are all services used to reach the end goal.</p><p><h2>Definition</h2></p><p>In the same way that the airplane, bus, taxi, and/or light rail came together to form a transportation conglomerate, we can combine units of software applications in new ways to reach goals.  This pattern of combining pieces to reach a whole is called <em>&#8220;Service Oriented Architecture.&#8221;</em> For a formal definition, one can turn to the <a href="http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf" title="">OASIS Reference Model for Service-Oriented Architecture</a> which says</p><blockquote><p>Service Oriented Architecture (SOA) is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. <sup><a href="http://dltj.org/article/defining-soa-by-analogy/#footnote_1_117" id="identifier_1_117" class="footnote-link footnote-identifier-link" title="A product of the OASIS Service Oriented Architecture Reference Model Technical Committee (abbreviated as OASIS SOA-RM TC), Committee Specification 1, dated 2 Aug 2006, lines 128-129.  The document was retrieved from http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf on 18-Sep-2006.">2</a></sup></p></blockquote><p>But what of another alternative to our transportation analogy &#8212; you could have driven your car the entire way from Cleveland to Denver, right?  That is a single service that would certainly allow you to reach your end goal.  Is it the most efficient way, though?  The cheapest, fastest, safest?  To continue the analogy into SOA, reaching your goal in this way is like &#8220;hard coding&#8221; an application to do only one thing.  By making this choice to structure the solution as a single path, options that may be cheaper and more efficient over some portion of the solution are eliminated.</p><p>There are several key aspects to pull out of the OASIS <sup><a href="http://dltj.org/article/defining-soa-by-analogy/#footnote_2_117" id="identifier_2_117" class="footnote-link footnote-identifier-link" title="OASIS is the Organization for the Advancement of Structured Information Standards &amp;#8212; a not-for-profit, international consortium that sponsors the development and adoption of standards for security, e-business, and for public sector and application-specific markets.">3</a></sup> definition that distinguish a multi-modal system from a single tool solution.  First is &#8220;distributed capabilities&#8221; &#8212; the concept that the solution&#8217;s components are not collocated.  In the transportation analogy, the car, bus, airplane, and taxi are spread across the continent.  In a system based on the SOA concepts, services are spread across the network.  A corollary to the &#8220;distributed capabilities&#8221; concept is that the components are found and brought together on an <i>ad hoc</i> basis.  Just as the how the shuttle bus, airplane, and taxi were brought together in the right sequence of time and space, components of of an SOA system can be discovered and linked at the time of the request of service.  In a static system, as with the car-only analogy, the components are pre-defined to run in a single pattern within a closed system.</p><p>The second distinguishing characteristic is arguably more important than the first:  the distributed components of the SOA system &#8220;may be under the control of different ownership domains.&#8221;  Back to the analogy &#8212; there isn&#8217;t one entity that owns the car, the bus, the airplane and the taxi.  Yet these components, in spite of different business rules and schedules, come together in a solution to transport you from here to there.  The same is true in SOA systems; in an e-commerce transaction that results in the shipping of a Bose QuietComfort 2 Noise-Canceling Headset from Amazon.com to your home, you can bet that as part of the execution of that request there are communication between Amazon&#8217;s order fulfillment services and UPS&#8217;s shipping manifest services.</p><p><h2>Next up&#8230;</h2><br />The next posting in this series will look at a few use cases and begin to describe the granularity of the term &#8220;service&#8221; in an SOA.</p><h2>Footnotes</h2><ol class="footnotes"><li id="footnote_0_117" class="footnote">OASIS Reference Model for Service-Oriented Architecture, Committee Specification 1, dated 2 Aug 2006, lines 169-171.  The document was retrieved from <a href="http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf" title="">http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf</a> on 18-Sep-2006.</li><li id="footnote_1_117" class="footnote">A product of the OASIS Service Oriented Architecture Reference Model Technical Committee (abbreviated as OASIS SOA-RM TC), Committee Specification 1, dated 2 Aug 2006, lines 128-129.  The document was retrieved from <a href="http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf" title="">http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf</a> on 18-Sep-2006.</li><li id="footnote_2_117" class="footnote"><a href="http://www.oasis-open.org/who/" title="OASIS - Who We Are - Mission">OASIS</a> is the Organization for the Advancement of Structured Information Standards &#8212; a not-for-profit, international consortium that sponsors the development and adoption of standards for security, e-business, and for public sector and application-specific markets.</li></ol><div class='series_links'> <a href='http://dltj.org/article/services-in-soa/' title='Services in a Service Oriented Architecture'>Next in series</a></div>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/defining-soa-by-analogy/feed/</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>Seeking Documents on the Application of Service Oriented Architectures in Academic Libraries</title><link>http://dltj.org/librarysoa-bibliography/</link> <comments>http://dltj.org/librarysoa-bibliography/#comments</comments> <pubDate>Tue, 18 Jul 2006 17:02:11 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Raw Technology]]></category> <category><![CDATA[Digital Library Federation]]></category> <category><![CDATA[jisc]]></category> <category><![CDATA[library consortia]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2006/07/seeking-documents-on-the-application-of-service-oriented-architectures-in-academic-libraries/</guid> <description><![CDATA[I&#8217;ve been tasked to write a whitepaper envisioning a Service Oriented Architecture for OhioLINK&#8217;s services and operations. I&#8217;ve found a bit of information through my own networking and searching, but in putting out this list and asking for additions I &#8230; <a href="http://dltj.org/librarysoa-bibliography/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/07/seeking-documents-on-the-application-of-service-oriented-architectures-in-academic-libraries/"></abbr><p>I&#8217;ve been tasked to write a whitepaper envisioning a Service Oriented Architecture for OhioLINK&#8217;s services and operations.  I&#8217;ve found a bit of information through my own networking and searching, but in putting out this list and asking for additions I want to be sure that I&#8217;m not already missing the holy grail of documents that I could just rebrand as an OhioLINK document.  (With appropriate permission, of course.)  I&#8217;m looking for strategic/explanatory documents over technical documents, although the latter will undoubtedly be useful in later iterations and derivatives of the whitepaper.</p><p><h2>CDL Common Framework</h2></p><p>The <span class="removed_link" title="http://www.cdlib.org/inside/projects/common_framework/">CDL Common Framework</span> is an open, services-oriented technical architecture that provides an integrating framework for services related to digital libraries. As a layered architecture it aims to separate front-end tools from back-end services from underlying data storage so that different components can be reused in multiple applications, reducing the time and money it takes to develop and maintain code.  The Common Framework also supports easy integration of local and third party tools and services through a plug-in approach.  It is available through both machine (i.e. web services) and human interfaces.</p><p><h2>A &#8216;service oriented&#8217; view of the JISC Information Environment</h2><br /><a href="http://www.ukoln.ac.uk/distributed-systems/jisc-ie/arch/soa/" title="JISC Information Environment Architecture - Distributed Systems - UKOLN">This document</a> is intended to help clarify the relationship of the JISC IE architecture to &#8216;service oriented&#8217; architectures such as those adopted by the <a href="http://www.diglib.org/architectures/serviceframe/dlfserviceframe1.htm" title="DLF Service Framework for Digital Libraries">DLF Abstract Services Taskforce</a> and the <a href="http://www.e-framework.org/" title="the e-Framework for Education and Research - Welcome to the e-Framework for Education and Research">e-Framework for Education and Research</a>.  It starts from the set of &#8216;service components&#8217; shown in the JISC IE architecture diagram, extrapolating a list of the &#8216;abstract services&#8217; that are expected to be offered and then listing a set of candidate &#8216;service bindings&#8217; (that correspond with the protocols and standards listed in the <a href="http://www.ukoln.ac.uk/distributed-systems/jisc-ie/arch/standards/" title="http://www.ukoln.ac.uk/distributed-systems/jisc-ie/arch/standards/">JISC IE technical standards</a> document. This document builds on an earlier attempt to develop a tentative &#8216;<a href="http://www.ukoln.ac.uk/distributed-systems/jisc-ie/arch/dlf" title="301 Moved Permanently">reference model</a>&#8216; for the discovery to delivery space occupied by the JISC IE. The previous document took a functional approach, using UML use cases to document the anticipated behaviour of end-users of the JISC IE, then building up a set of &#8216;business processes&#8217;, &#8216;abstract services&#8217; and &#8216;service bindings&#8217;. However, the list of abstract services provided in the older document is too simplistic and incomplete to be useful.</p><p><h2>e-Framework for Education and Research</h2><br /><a href="http://www.e-framework.org/Resources/tabid/609/Default.aspx" title="the e-Framework for Education and Research - Resources">Resources</a> on this site include: <a href="http://www.e-framework.org/Portals/9/docs/papers/Briefing060802.pdf" title="http://www.e-framework.org/resources/eframeworkrV1.pdf">The eFramework for Education and Research; an overview</a> briefing paper provides an overview of the e-Framework for Education and  Research (the e-Framework), its strategic context, its aims and objectives, its overall approach, the stakeholders, the benefits and its expected outcomes and impact. <a href="http://www.e-framework.org/Portals/9/Resources/SOAandWorkflow2.pdf" title="http://www.e-framework.org/resources/SOAandWorkflow2.pdf">Workflow and Webservices</a> examines the topic of coordinating workflows of web services within an elearning context, and identifies the requirements, challenges, and technology choices involved. <a href="http://www.ukoln.ac.uk/distributed-systems/jisc-ie/arch/" title="JISC Information Environment Architecture - Distributed Systems - UKOLN">The JISC Information Environment (JISC IE)</a> technical architecture specifies a set of standards and protocols that support the development and delivery of an integrated set of networked services that allow the end-user to discover, access, use and publish digital and physical resources as part of their learning and research activities. <a href="http://elframework.org/" title="The E-Learning Framework - Welcome to the E-Learning Framework Site">The E-Learning Framework (ELF)</a>constitutes the e-learning domain within the e-Framework. The abstract service definitions and resources within the ELF will be merged with those of the JISC Information Environment, and the emerging domain factorisations for e-science and e-administration to form  the e-Framework.</p><p><h2>DLF Service Framework for Digital Libraries</h2></p><p>A <a href="http://www.diglib.org/architectures/serviceframe/dlfserviceframe1.htm" title="DLF Service Framework for Digital Libraries">progress report for the DLF Steering Committee</a> from 17 May 2005.  Has headings of Context, Why is a Digital Library Service Framework needed?, Some benefits of a Service Framework for DLF and research libraries, What has the DLF Service Framework Group done so far?, Some open issues, and Recommendations moving forward.</p><p><h2>ALA TechSource&#8217;s Web Services and the Service-Oriented Architecture</h2></p><p>&#8220;In an era of computing dominated by the World Wide Web, technology referred to as Web services stands as a key one for allowing computers to communicate machine to machine, program to program&#8230;.Web services make it easy to connect all types of computer applications to each other. As you will see throughout this report, Web services deliver a foundation of interoperability greatly needed in a world where computer services and digital information exist in many different forms and flavors,&#8221; says Breeding in his &#8220;Introduction&#8221; in the latest issue of Library Technology Reports, &#8220;<a href="http://www.alatechsource.org/ltr/web-services-and-the-service-oriented-architecture" title="ALA TechSource | Web Services and the Service-Oriented Architecture">Web Services and the Service-Oriented Architecture</a>.&#8221;</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.cdlib.org/inside/projects/common_framework/ on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.cdlib.org/inside/projects/common_framework/ on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/ to http://www.e-framework.org/Resources/tabid/609/Default.aspx on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/ to http://www.e-framework.org/Resources/tabid/609/Default.aspx on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/eframeworkrV1.pdf to http://www.e-framework.org/Portals/9/docs/papers/Briefing060802.pdf on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/eframeworkrV1.pdf to http://www.e-framework.org/Portals/9/docs/papers/Briefing060802.pdf on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/SOAandWorkflow2.pdf to http://www.e-framework.org/Portals/9/Resources/SOAandWorkflow2.pdf on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.e-framework.org/resources/SOAandWorkflow2.pdf to http://www.e-framework.org/Portals/9/Resources/SOAandWorkflow2.pdf on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.techsource.ala.org/ltr/web-services-and-the-service-oriented-architecture.html to http://www.alatechsource.org/ltr/web-services-and-the-service-oriented-architecture on November 17th, 2010.</p><p style="padding:0;margin:0;font-style:italic;">The text was modified to update a link from http://www.techsource.ala.org/ltr/web-services-and-the-service-oriented-architecture.html to http://www.alatechsource.org/ltr/web-services-and-the-service-oriented-architecture on November 17th, 2010.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/librarysoa-bibliography/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Minutes of the FEDORA Workflow Working Group meeting of 18-Jun-2006</title><link>http://dltj.org/article/fedora-workflow-minutes/</link> <comments>http://dltj.org/article/fedora-workflow-minutes/#comments</comments> <pubDate>Wed, 21 Jun 2006 01:10:44 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Library SOA]]></category> <category><![CDATA[Meta Category]]></category> <category><![CDATA[Workflow]]></category> <category><![CDATA[activebpel]]></category> <category><![CDATA[bpel]]></category> <category><![CDATA[Fedora]]></category> <category><![CDATA[jbpm]]></category> <category><![CDATA[library 2.0]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[service-oriented architecture]]></category><guid isPermaLink="false">http://dltj.org/2006/06/fedora-workflow-minutes/</guid> <description><![CDATA[Please note &#8212; this is a copy of the FEDORA Workflow Working Group minutes from the FEDORA Wiki. It is being posted here in order to get it into the blogosphere at the right places. Please make comments on the &#8230; <a href="http://dltj.org/article/fedora-workflow-minutes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/06/fedora-workflow-minutes/"></abbr><div style="border: 1px dashed black; padding: .75em">Please note &#8212; this is a copy of the <span class="removed_link" title="http://www.fedora.info/wiki/index.php/Working_Group:_Workflow:Minutes-20060618">FEDORA Workflow Working Group minutes</span> from the FEDORA Wiki.  It is being posted here in order to get it into the blogosphere at the right places.  Please make comments on the FEDORA Wiki <span class="removed_link" title="http://www.fedora.info/wiki/index.php/Talk:Working_Group:_Workflow:Minutes-20060618">&#8220;talk&#8221; page</span> rather than on this posting.</div><p><h1>FEDORA Workflow Working Group Meeting</h1></p><p>18-Jun-2006, University of Virginia</p><p>Attending:  Grace Agnew, Rutgers U.; Chris Awre, U. of Hull; Dan Davis, Harris Corp.; <span class="removed_link" title="http://www.fedora.info/wiki/index.php/User:Richard_green">Richard Green</span>, U. of Hull; <span class="removed_link" title="http://www.fedora.info/wiki/index.php/User:PeterAtOhioLINK">Peter Murray</span>, OhioLINK; <span class="removed_link" title="/wiki/index.php/User:Matthias">Matthias Razum</span>, FIZ Karlsruhe; Bill Parod, Northwestern U; Adam Soroka, U. of Virginia; Thorny Staples, U. of Virginia; <span class="removed_link" title="http://www.fedora.info/wiki/index.php/User:Rwayland">Ross Wayland</span>, U. of Virginia</p><p><h2>Review of Minutes from 6 Dec 2005</h2><br />One of the assumptions in the 6 Dec 2005 minutes is:  &#8220;an object repository built on FEDORA should be seen as a write rarely, read mostly application&#8221;.  Some participants noted that the repository is viewed as part of a working tool for scholars, which makes &#8220;writes&#8221; not so &#8216;rare&#8217;. This kind of assumption is useful for characterize FEDORA-based application as something other than a RDBMS. A clarifying comparison is the frequency of transactions when &#8220;saving a file&#8221; (once every 10 minutes) versus &#8220;banking transactions&#8221; (thousands of transactions/second).  This characterization helps define the efficiency needs of reads over writes.</p><p>A revised assumption was offered: &#8220;<i>FEDORA is typically an application where reads typically exceed writes.</i>&#8221;</p><p>It was also noted that the working group charter and the assumptions make reference to &#8220;BPEL&#8221; as the only workflow orchestration engine, excluding other tools such as JBPM.  This is not intentional, and does not necessarily reflect a decision to use only BPEL-based engines.  The participants noted, however, that no one envisions writing a new workflow engine from scratch.</p><p><h2> Participant Desires and Status Review of Workflow-related Activities</h2></p><p><h3> FIRE/Workflow 0.1 client update</h3></p><p>The December meeting envisioned work on the NSDL NCCS/FIRE client as the starting point for embedding workflow capabilities into FEDORA.  The FEDORA core development team looked at both ActiveBPEL and JBPM for integration into the FEDORA-SF and determined that within their available time that the core developers needed to hardwire the workflow into the client with the desire to apply a workflow orchestration engine in a later release.</p><p><h3> FEDORA Repository update</h3><br />Transforming FEDORA to be built as a WAR file is almost completed.  Adding generic &#8220;messaging&#8221; in FEDORA is one task on the list of desired for core developer team to prioritize and assign in September.</p><p><h3> Max Plank Society: eSciDoc</h3></p><p><h4> Overview</h4></p><p>Max Planck Society is made up of 82 institutes, each with many working groups.  The <span class="removed_link" title="http://www.fedora.info/wiki/index.php/ESciDoc_Project">ESciDoc_Project</span> is building one repository for all of these institutes and working groups in disciplines ranging from humanities to sciences.  In interviews with users, the eSciDoc development team has determined that each user group will likely want a near infinite diversity of combination of workflow steps.  eSciDoc developers have built a framework layer around FEDORA and will be putting a workflow engine for human-in-the-loop and process-to-process steps.</p><p><h4> Update</h4><br />The eSciDoc development team has decided to use JBPM.  In an experiment with ActiveBPEL, without using advanced tools (at the time of the experiment, the ActiveBPEL editor tool was not freely available), setting up a workflow involving interactions between two services took several days and editing 13 BPEL-related files as opposed to just editing one file with JBPM.  Their thinking is that the eScieDoc developers will interview users to model the end users&#8217; workflow needs, then create the workflow script in JBPM for that group.</p><p><h3> Harris Corporation</h3></p><p><h4> Update</h4><br />Submitted a bid for NARA&#8217;s ERA system (records management archive) but were not successful.  Harris Corp. is still working with FEDORA and is looking for other opportunities to use it in service integration proposals.  Harris Corp. is using the IBM engine (has both the human-in-the-loop and the process-to-process capabilities); it is arguably the most advanced out there, but it is still not mature as this field continues to grow.  Existing engines &#8220;make it look easy&#8221; by limiting the kinds of workflow activities that can be done, and open source implementations are many steps back because the advanced tools are only now coming out.</p><p><h3> U. of Hull: RepoMMan</h3><br /><h4> Desires</h4></p><p>The <span class="removed_link" title="http://www.fedora.info/wiki/index.php/University_of_Hull">RepoMMan project</span> seeks to give researchers some &#8216;extra services&#8217; almost without them being aware of it:  managing work in progress; access for themselves and small collaborative group; safety (backup) of work &#8212; and be as easy to use a network drive on their desktop plus interface for repository-related activities.  The RepoMMan project is funded to bring a BPEL workflow to a FEDORA system to fulfill a part of this vision.</p><p>The development team has surveyed and interviewed researchers about how they did research to understand what repository processes and features might help them.  In the autumn, the development team plans to conduct the same survey and interview techniques to get the teaching/learning needs and administrator needs.  They are managing the evolving expectations for a general document management system from university&#8217;s administration.</p><p><h4> Technology</h4><br />Use of ActiveBPEL is mandated by the JISC funding.  Initially, the inability to validate FEDORA&#8217;s WSDL was a showstopper, but the WSDL was recently rewritten by the FEDORA core developer team and is being tested now.  The RepoMMan developers have gained a great deal of experience with the BPEL engine outside of FEDORA.  With a rewritten WSDL, the development is expected to move faster.</p><p><h2> Discussion</h2></p><p><h3> Overlap with FEDORA Preservation Services Working Group</h3></p><p>It was noted and discussed that the <span class="removed_link" title="http://www.fedora.info/wiki/index.php/Working_Group:_Preservation">Preservation Services Working Group</span> has begun defining the &#8216;events&#8217; associated with objects in the repository and was looking for an &#8216;event management engine&#8217; of some sort.  It is clear that there is some overlap in these working group activities and some coordination would be beneficial to both groups. The Preservation Services Working Group refers to this activity as &#8220;Event Management&#8221; which seems to be equivalent to our &#8220;Orchestration Management&#8221;.</p><p><h3>Areas where the Workflow Working Group can make a meaningful contribution</h3></p><p>It was observed that collectively we&#8217;re reaching for the final plateau of the desired service, but there are many layers from where we are now to there that needs to be built (e.g. message-oriented middleware).  In the course of the afternoon discussion, two work areas were identified.</p><p>First, defining and coding the building blocks of repository activities as discrete, WSDL-addressable web services.  This work needs to be done in conjunction with the FEDORA Preservation Services Working Group &#8212; building on their existing work and aid in specifying these events as discrete web services.  These &#8216;event&#8217; building blocks are likely to be generic to many workflow orchestration engines or other mechanisms to build workflow steps into an application.</p><p>Second, building a reference implementation of a workflow stack into the FEDORA-SF using open source components.  It is envisioned that this stack will consist of a &#8220;workflow engine&#8221; layer (BPEL-based, JBPM-based, other, or a combination of these); a &#8220;workflow management system&#8221; that provides the human interface to instantiate and track workflow scripts in flight (interfaces could be JSR-168 portlets, dedicated web servlet, a desktop Swing-based app, etc.); and a &#8220;workflow editor system&#8221; for creating new workflow scripts.</p><p><h2>Next steps</h2></p><ol><li> Create a narrative of these two work areas</li><li> Participants review Preservation WG workflows<ol><li> Peter will get with Ron Jantz to begin the dialog</li><li> WG members will review the Preservation WG &#8220;events&#8221; as the basis of creating the orchestration &#8220;building block&#8221; activities</li></ol></li></ol><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/Working_Group:_Workflow:Minutes-20060618.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/Talk:Working_Group:_Workflow:Minutes-20060618.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/User:Richard_green.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/User:PeterAtOhioLINK.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to /wiki/index.php/User:Matthias.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/User:Rwayland.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/ESciDoc_Project.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/University_of_Hull.</p><p style="padding:0;margin:0;font-style:italic;" class="removed_link">The text was modified to remove a link to http://www.fedora.info/wiki/index.php/Working_Group:_Preservation.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/fedora-workflow-minutes/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Is the Writing on the Wall for the Integrated Library System?</title><link>http://dltj.org/article/dis-ils/</link> <comments>http://dltj.org/article/dis-ils/#comments</comments> <pubDate>Wed, 14 Jun 2006 02:50:31 +0000</pubDate> <dc:creator>Peter Murray</dc:creator> <category><![CDATA[Blue Sky]]></category> <category><![CDATA[Disruption in Libraries]]></category> <category><![CDATA[Library SOA]]></category> <category><![CDATA[libraries]]></category> <category><![CDATA[library 2.0]]></category> <category><![CDATA[library service-oriented architecture]]></category> <category><![CDATA[ngc4lib]]></category> <category><![CDATA[opac]]></category> <category><![CDATA[service-oriented architecture]]></category> <category><![CDATA[standards]]></category><guid isPermaLink="false">http://dltj.org/2006/06/dis-ils/</guid> <description><![CDATA[While in UNC-CH for JCDL I&#8217;ve had occasion to rant with/at some people about the state of the integrated library system marketplace &#8212; including, of course, how we got into the spot we&#8217;re in and how we might get out &#8230; <a href="http://dltj.org/article/dis-ils/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description> <content:encoded><![CDATA[<abbr class="unapi-id ignore noPrint" title="http://dltj.org/2006/06/dis-ils/"></abbr><p>While in UNC-CH for JCDL I&#8217;ve had occasion to rant with/at some people about the state of the integrated library system marketplace &mdash; including, of course, <a href="http://dltj.org/2006/02/our-destiny/">how we got into the spot we&#8217;re in</a> and <a href="http://dltj.org/2006/06/evergreen-goes-beta/">how we might get out of it</a> (and those people were kind enough to engage in the rant).  Along comes a series of posts from <a href="http://maisonbisson.com/blog/post/11311">Casey Bisson</a> and <a href="http://www.web2learning.net/archives/332">Nicole Engard</a> ultimately pointing back to <a href="http://www.blyberg.net/2005/11/20/ils-customer-bill-of-rights/">John Blyberg&#8217;s &#8220;ILS Customer Bill-of-Rights&#8221;</a> that is singing the same tune.  There still seems to be a desire for a solution from an existing vendor, and in fact that was part of counter-points brought up by some on the receiving end of the ILS-must-go rant.  (Paraphrased: &#8216;No one can satisfy the need of a library like a library automation vendor&#8217; and &#8216;As libraries we&#8217;re not strong enough to take on the task of building the next ILS ourselves.&#8217;)  Yet there does seem to be this mounting pressure to get control again over our data and how we present it to patrons.</p><p><h2>What&#8217;s In A Name?</h2><br />&#8220;What is the OPAC?&#8221; is a question that has been bothering me for quite some time and the reasons why got crystalized earlier this month on the Code4Lib mailing list with Eric Morgan from Notre Dame proposing <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00568.html">the creation of a mailing list to talk about &#8220;The Next Generation OPAC.&#8221;</a> I couldn&#8217;t help but <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00569.html">fire back </a>with &#8220;Perhaps I&#8217;m too much of a radical, but for me even leaving &#8216;OPAC&#8217; in the<br />mailing list name would be to already admit defeat.&#8221;</p><p>That started a great discussion.  There was <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00590.html">this comment from Peter Schlumpf</a>:</p><blockquote><p>The catalog is going to be with us in one form or another.  One thing that never ceases to amaze me is how the library field is sooo quick to throw overboard useful tools just for the sake of something different.  The ILS in its present form has LOTS of room for improvement but it doesn&#8217;t mean we have to hide it behind other labels or have to turn it into some nebulous concept that doesn&#8217;t mean anything&#8230;.The catalog is one of the the main interfaces to the library that all patrons use.  How can we make that experience most productive?  We need to pay lot of attention to that.</p></blockquote><p>I would challenge the notion that the OPAC is a &#8220;useful tool&#8221; &mdash; if it was, our patrons would still be using it.  As it is, anecdotal evidence suggest that the OPAC is the <i>last</i> thing they would choose to use.  And <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00591.html">this reply by Alexander Johannesen</a>:</p><blockquote><p>I don&#8217;t think the OPAC will go away, nor that it absolutely must, but the very idea of an OPAC is based on knowing what our patrons want; books that we&#8217;ve cataloged. But all too often we have no idea what they want; all we&#8217;ve got are assumptions. I think we&#8217;ve come a long way, but the time to look anew to what purpose the OPAC serves certainly is ripe.</p></blockquote><p>I&#8217;ll agree with Alexander, and I hope it is for the same reason.  If you want to call the ILS/OPAC an inventory of our physical collections, then that&#8217;s okay.  By definition that means that it is <i>not</i> an inventory of our digital holdings.  We can have a debate about whether AACR is a good way to describe a physical item.  (MARC, on the other hand, as a container of a descriptive record has got to go.)  On the other hand, you&#8217;ve got to be prepared to add to that debate what is the proper way to describe other assets &#8212; and it ain&#8217;t AACR/MARC.</p><p>Then there was this <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00588.html">exchange between Eric Hellman</a> (first) and <a href="http://www.mail-archive.com/code4lib@listserv.nd.edu/msg00612.html">Teri Sierra</a> (second):</p><blockquote><p>Is it just me, or does anyone else feel that the very idea of having a catalog as an important component of a library smacks of retrograde thinking? To my mind, in a clean-slate NG Library architecture, the library catalog should only exist as a facade that recognizes of the vanity of libraries and the people who fund them.</p><p>I can think of no technical justification for library catalogs as we look forward. If not the next generation, then the next-next generation of libraries. The functions that exist today in library catalogs need to be pushed in two directions- toward the user on one hand, and towards global registries on the other.</p></blockquote><p>Along with Teri, I&#8217;ll disagree with Eric on the extreme perspective of a (presumably single) global registry.  One thing that I suspect I&#8217;ve learned with the OhioLINK DRC project is a phrase I <a href="http://www.google.com/search?q=%22institutional+ego%22">can&#8217;t claim to have coined</a> called &#8220;institutional ego.&#8221;  It is important that an institution maintain its identity.  But I also disagree with Teri about the solution:</p><blockquote><p>I agree that we need to be thinking about the way libraries will look in the future. But to say that the library catalog is serving only the purposes of the people who fund them and feed on their vanity, is pretty strong and misguided. Maybe you ought to sit with a reference librarian and ask why and how the catalog and OPAC are used.</p></blockquote><p>Listening to ourselves (librarians in general) is what is getting us into this situation in the first place.  We keep focusing on increasingly small improvements with a relatively low return on investment while users of a whole new modality of communication (call it &#8220;Web 2.0&#8243;, if you will) look over their shoulder (if we&#8217;re lucky) and wonder why we&#8217;re not keeping up.</p><p><h2>The Disaggregated Library System</h2><br />Throughout the discussion there were those that offered points of view of what the ILS/OPAC actually is &mdash; or at least what it could be if you were to start from scratch.  And because we need to do it inexpensively and have it communicate with a variety of other systems, let&#8217;s see what kind of off-the-shelf software we might be able to use:</p><ol><li><strong>An inventory control system.</strong> We&#8217;ve got to know what we&#8217;ve got and where it is.</li><li><strong>A &#8220;point-of-sale&#8221; system.</strong> Yeah, we&#8217;re not selling our books &#8212; it&#8217;s more like a rental.  So we&#8217;re up to an inventory control component plus a rental tracking component.</li><li><strong>An acquisitions/accounts-payable system.</strong> We&#8217;ve got to buy stuff.  But I think we can buy record numbers &#8212; record numbers that point back into the inventory control system for things that we have, if you will, &#8220;backordered.&#8221;</li><li><strong>A description system.</strong> Let&#8217;s face it &#8212; the obsession with which a library describes an item is second to none.  Of all of the pieces that could be found off-the-shelf, this one is the least likely to be found.  If after all of the discussion of the pieces we come back to needing a really good description system, then let&#8217;s focus our energies on <em>that</em> rather than the rest.</li></ol><p>With a foundation based on these components &mdash; a &#8220;Library Service Oriented Architecture&#8221; if you will &mdash; we&#8217;ll be in a much better position to meet the needs and desires of the users today and change to meet their new needs and desires in the future.  It&#8217;s not everything we need (I hear there is the rumblings of a debate on the cost effectiveness of serials control systems &#8212; do we have to have one of those), but it is a place to start.</p>]]></content:encoded> <wfw:commentRss>http://dltj.org/article/dis-ils/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> </channel> </rss>
<!-- Served from: dltj.org @ 2012-02-11 08:25:07 by W3 Total Cache -->
