30
NextL Enju Leaf 1.1.0 リリースに向けて 20159月5日 Code4Lib JAPAN Conference 2015 田辺 浩介 TANABE, Kosuke TwiFer / GitHub: @nabeta

Next-L Enju Leaf 1.1.0 リリースに向けて

Embed Size (px)

Citation preview

Next-­‐L  Enju  Leaf  1.1.0 リリースに向けて 

2015年9月5日  Code4Lib  JAPAN  Conference  2015  

田辺 浩介 TANABE,  Kosuke  TwiFer  /  GitHub:  @nabeta

Next-­‐L  Enjuとは

•  Project  Next-­‐Lによって開発されている  オープンソース図書館システム  – hFps://github.com/next-­‐l/enju_leaf  – hFp://enju.next-l.jp  

•  2008年ごろから継続して開発中  – 主たる開発者は田辺  – ほか数名の開発者(コミッター)が存在  

•  図書館管理システムのenju_leafと  FRBR化書誌管理システムのenju_rootが存在  

hFp://enju.next-­‐l.jp  

Project  Next-­‐Lとは

•  図書館関係者で新しい図書館システムを  作り上げるプロジェクト  – hFp://www.next-­‐l.jp  

•  2006年に開始  – 代表は原田隆史先生(同志社大学)  

•  毎月1回の開発ワークショップ

オープンソース

•  MITライセンスを採用  •  自由に利用・改変可能  •  著作権表示を含めれば再配布も可能  •  改変部分の公開義務なし  – 業者に改変や機能追加を依頼した場合、  

その変更点を公開する義務はない  

開発の実態

•  月1回の開発ワークショップ  – 毎回5〜6名が参加  

•  その他、開発者に時間があるときに随時実施  •  ソースコードはGitHubで公開

•  不具合報告や機能追加依頼もGitHubで実施  

Next-­‐L  Enjuの動作環境

•  オープンソースソフトウェアを用いて構築  されるWebアプリケーション  – 開発言語:  Ruby  – フレームワーク:  Ruby  on  Rails  – データベース:  PostgreSQL/MySQL/SQLite3  – 検索エンジン:  Apache  Solr  

•  上記が動作する環境であれば、ほとんどの  レンタルサーバやクラウドで動作可能  

Next-­‐L  Enjuの機能

•  書誌・所蔵管理  – 受入・検索  

•  貸出管理  – 貸出・返却・予約・督促  

•  利用者管理  – 個人情報・利用者区分・権限管理  

•  施設管理  – 分館・書棚管理  

Next-­‐L  Enjuの特徴(1)

•  普通のRuby  on  Railsのアプリケーションである  •  = 多くのOSで動作する  – Unix系OS(OSX含む)、Windows  

•  =  多くのクラウドサービスやVPSで動作する  – Heroku,  Amazon  EC2など  

Next-­‐L  Enjuの特徴(2)

•  書誌・所蔵・貸出状態・分館情報など、  システム上の各情報が一意のURLを持つ  – 「パーマリンク」と呼ばれる機能  

•  XMLやTSVでの  出力もサポート  – 「WebAPI」と  

呼ばれる機能  

Next-­‐L  Enjuの特徴(3)

•  外部ツールとの連携を重視  – 外部ツールを使うほうが早ければそれを使用  – CSVファイルでExcelやAccessとやりとり  – 利用者情報はローカルのAccessで管理することを

想定。Enju上には利用者IDしか持たない  – Enjuとの接続はAccessにEnju上の利用者IDのURL

を入力することで実現  – 全データにURLがあることによるメリット  

利用者情報のXML

•  このXMLを他のアプリケーションで読み込む

Next-­‐L  Enju  

hFp://enju.example.jp/  profiles/nabeta.xml

id name address

nabeta 田辺浩介 つくば市

Excelファイル

Next-­‐L  Enjuの特徴(4)

•  モジュール化構造による容易な機能追加  – 各機能を小さなソフトウェアの部品として作成  – enju_biblio(書誌・所蔵管理)、enju_circulagon(貸出管理)  enju_ndl(NDLからの書誌インポート)など

•  新規機能の追加はモジュール開発で対応  

モジュール構造

Ruby  on  Rails

enju_leaf

enju_biblio enju_library

enju_ndl enju_circulagon enju_loc

モジュールの例:  DOI管理モジュール

• 図書館管理システムNext-­‐L  EnjuをベースにJaLC  DOI付与機能を追加  • 機関リポジトリを補完するサブシステムとして動作  

アイテムの登録画面

アイテムをアップロード、  もしくはアップロード済みアイテムの  URLを指定

アイテム詳細画面とDOIの取得リンク

JaLC  DOIの取得画面

DOI取得成功

•  このDOIを機関リポジトリや研究者総覧に  送信する  

現在の目標は  バージョン1.1.0のリリース

バージョン1.1.0

•  1.0系に対する大幅な修正と新機能の追加  – 書誌インポート・エクスポート機能の大幅な強化  – アメリカ議会図書館からの書誌のインポート  – 画面表示キャッシュの見直しによる高速化  – 最新のアプリケーション実行環境への対応。  Ruby  2.2,  Rails  4.2,  Apache  Solr  4.x  

•  リリースに向けて作業中です

興味を持ちましたら

•  懇親会で声をかけてみる  •  仮想マシンをダウンロードしてみる  – hFp://www.next-­‐l.jp/?page=VM  

•  開発ワークショップに参加してみる  •  GitHubのアカウントを取って、Issueに  

不具合報告を書き込んでみる  •  修正パッチを送ってみる  •  モジュールを書いてみる  

Next-­‐L  Enju  Leaf  1.1.0  2015年11月11日リリース予定!

(図書館総合展2日目です)

リンク集

•  Webサイト  hFp://www.next-­‐l.jp  

•  GitHub  hFps://github.com/next-­‐l/enju_leaf  

•  Facebookページ  hFps://www.facebook.com/projectnextl  

•  デモサーバ  hFp://enju.next-­‐l.jp  

•  私のアカウント  @nabeta  (TwiFer,  GitHub)