• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

system-sekkei/library: 図書館の司書業務を支援するソフトウェア

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

system-sekkei/library

开源软件地址(OpenSource Url):

https://github.com/system-sekkei/library

开源编程语言(OpenSource Language):

Java 78.7%

开源软件介绍(OpenSource Introduction):

図書館の司書業務を支援するソフトウェア

司書業務とアプリケーションの対象範囲

このアプリケーションは、公立図書館の司書業務をサポートするソフトウェアです。

主な対象業務

  • 貸出と返却 ◎
  • 書架の整理 △
  • 選書と受入 〇

このアプリケーションでは対象としない司書の業務

司書の役割や関心事を理解するための参考情報です。 アプリケーションの仕様を検討する時に、司書の業務の全体を理解することが役に立ちます。

  • レファレンスサービス(相談) △
  • リファレンスサービス(記録) -
  • イベント(企画・運営・評価) -

図書館業務の課題

サンプルアプリケーションの使い方

利用方法

  • RDRA 2.0 ハンドブックを入手
  • このリポジトリーをクローン
  • Gradleタスク bootRunを実行(アプリケーションの起動)
  • Gradleタスク jigReportを実行(設計ドキュメントの出力)

この実装例の内容を学ぶためのチュートリアルが公開されました。
図書館サンプルのチュートリアル

アプリケーションの内容

RDRA 2.0 ハンドブックのサンプル「図書館システム」の以下の業務を実装しています。

business-usecase

アプリケーションは、http://localhost:8080でトップ画面を表示できます。

RDRA 2.0 ハンドブックの図書館システムの実装例

モデルベースの要件定義手法 RDRA2.0 ハンドブックのサンプル「図書館システム」の実装です。

設計ドキュメント

JIGを使ってソースコードから設計ドキュメントを自動生成します。ドキュメントはbuild/jig に出力されます。
JIGドキュメントの生成には、 Graphviz のインストールが必要です。

実装の範囲

ビジネスルールを中心に実装しています。

RDRA 2.0で可視化した以下のビジネスルールと関連するユースケース、画面、テーブルを実装しています。

  • 貸出制限ルール
  • 予約の状態遷移

貸出業務と貸出制限ルール

composit-usecase-loan

restriction

予約の状態遷移

reservatoin-state

以下の業務は未実装です。

  • 蔵書管理(資料の注文と蔵書として登録する)
  • 会員管理(会員の登録)

要件定義・仕様化・実装の継ぎ目をなくす開発手法

この図書館サンプルは、以下の考え方とやり方で実装しています。

  • 三層構造 + ビジネスロジック
  • 仕様の記述にプログラミング言語(Java,SQL,HTML)を使う
  • 仕様の可視化にツール(JIG)を使う

三層構造+ビジネスロジック

layers ビジネスロジックを独立させるドメイン駆動設計のアプローチを採用しています。

ドメインオブジェクトを中心にしたアプリケーション構造

mapping RDRAの要件定義モデルと実装を、以下のように対応させています。

Spring MVCとMyBatisを使い、ドメインオブジェクトを中心に周辺の外部形式との双方向のマッピングを実現するアプリケーション構造を採用しています。

ドメインオブジェクトのモデル(ビジネスロジックの表現)

model

ソースコードから、JIGで自動生成したドメインモデルのパッケージ構成図です。
このモデルを中心に図書館アプリケーションを組み立てています。

CCSR: Continuous Concurrent Stepwise Refinment

開発手法として、要件定義・仕様化・実装の継ぎ目をなくすCCSR手法を採用しています。

この図書館サンプル実装は、CCSR手法の実践例として開発しています。

ccsr

参考記事: 要件定義・仕様化・実装の継ぎ目をなくすCCSR開発手法

RDRAアドイン

RDRA手法のモデリングツールとして、Enterprise ArchitectのRDRAアドインを使っています。

JIG (設計可視化ツール)

Javaで記述した内容を、俯瞰したり、一覧するためのツールです。

プログラミング言語で仕様を記述するCCSR手法を実践するために必須のツールです。

RDRA - CCSR - JIG 関係図

RDRA-CCSR-JIG

RDRAのモデル要素(左)、三層+ビジネスロジックの構造(中央)、JIGの出力ドキュメント(右)の対応関係です。

ビジネスルール駆動

図の青背景でしめした、RDRAで可視化したビジネスルールをドメインモデルとして実装することが、このアプリケーションの中核です。

RDRA 2.0で可視化された内容と、実装された内容の対応は、以下のJIGドキュメントで確認できます。

  • ユースケース複合図
  • パッケージ関係図(depth4, depth5)
  • 区分図と区分使用図
  • メソッド呼び出し関係図

参考情報




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap