代官山動物園
Hieronymus Orcinus オープンソース CassetOS
おごちゃん
全社(と言っても二人なんですが)を挙げて作っていた「Orcinus」についての発表をしたいと思います。
「Orcinus」は今まで会計システムとして開発して来たHieronymusを強化してERPシステムに昇華し、これをCasaOSからforkしたCassetteOSに載せたものを、Cassette Serverにパッケージしたシステムと、それを運用するためのサービスやネットワークと思想を含んだ概念です。
これは「バックオフィスオールインワンのサーバ」として提供するもので、今月から受注を開始します。
背景としてのORCAの話
「Orcinus」の話に入る前に、その背景の一つである「ORCA」についての話をします。 ちなみに、「Orcinus」とはシャチの学名である「Orcinus Orca」に由来します。 「Orcinus」は属名… つまり「Orca」の上位概念です。
この章は過去のシステムへの言及なので、興味がない人は次章まで飛ばして構いません。
私(生越)はかつて、「ORCA」の開発をしていました。 もうちょっと細かく言えば、
- ミドルウェアの開発
- オープンソースコンサル
- システム基盤のPM
が主な仕事でした。 その時のことはチラチラと書いてます。
その構想、構想されていて実現できなかったこと、やったけど失敗だったこと… 等々の経験を元に、今回Orcinusをリリースします。
そもそもORCAは何だったか
医療業界の外の人達にしてみると、「そもそもそのORCAって何者?」という話になると思います。 また、医療業界で現にORCAを使っている人達であっても、「そもそも」の部分はあまり知られていなかったりすると思います。 そこで、「そもそも」の部分についてちょっと説明しておきます。
「そもそも」ORCAというのは、「オフィスポータル」という構想を持った某スタートアップ(当時はベンチャーとか言いましたね)の一つとして営業されていたものと、日本医師会の構想とが合体して始まったプロジェクトです。
「オフィスポータル」というのは、企業の「購買」にフォーカスした構想で、「購買活動のためのネットワークの入口をオフィスに設置する」というような、そんな構想でした。 そのプロジェクトで私はアーキテクチャの設計とかやっていました。 ドットコムバブルの頃、Linuxがメジャーになりつつあった頃の話です。
そこに日本医師会の「ネットワーク化」という話があって(この辺のタイミングや詳細については私は知りません)、「ちょうどいい話だから合体させて一緒にやりましょう」ということになりました(ここは知っている)。
今でこそ「タダのレセコン」という面が強調され(過ぎ)ているORCAですが、そもそもの発端は
- 医療機関をネットワーク化する
- 感染症サーベイランスのような基盤として使う
- 共同購入等の事業を行う
というような壮大な構想でした。 そのための「入口(ポータル)」が「タダのレセコン」だったわけです。
時代が過ぎ、「オフィスポータル」とか言ってた会社は消え(?)、「ORCAというネットワークプロジェクト」を推進しようとしていた医師会執行部は交代し、「タダのレセコン」となったわけです。
ORCAの時に作ったもの
こういった壮大な背景を持ったプロジェクトだったことと、当時は業務システムのためのオープンソースなプラットフォームが未熟だったということ、医療データの共有も未熟だったということで、このプロジェクトでは様々なもの作ったり初物に手を出したりしました。
ソフトウェアに関するもの
当時(1999年頃)はオープンソースで業務システムを作ったという話は、世界を探しても皆無という状態でした。 そのため、必要なものは全て自分達で用意しました。
- Linuxの採用
- システムのネットワーク経由の更新
- 業務システム用ミドルウェアの開発
- 業務システム用開発言語(現GnuCOBOL)の開発
- 業務システムの開発
医療情報の共有に関するもの
主には様々なデータやマスターのオープンデータ化です。
- 保険点数情報のオープンデータ化
- 複数存在する病名コードの統合
- (医薬品の)併用禁忌情報のオープンデータ化
ネットワークに関するもの
元々が「ネットワーク化」を目的としたプロジェクトでしたので、ネットワーク関係はかなり力を入れていました。
- データやソフトウェア配布のためのデータセンタ構築
- IPv6を基盤としたネットワーク環境
- 署名等に使う認証局
- オンラインバックアップ
- クラウドサービス
人的なもの
日本医師会という看板を背負ったプロジェクトでもあったので、本来のオープンソースの趣旨とは異なり「ちゃんとしたもの」を提供するというサービスもセットでした。
- サポートセンター
- サポート事業所の登録教育
- コミュニティのサポート
これらは本来のオープンソースを歪めてしまった元凶でもあるのですが、「基幹業務システム」を運用するためには、余程力のあるユーザでない限り必要なものですね。
まとめ
つまり、ORCAというプロジェクトは、OSIアーキテクチャで言うところ(+α)の第0層(ファシリティ)から第8層(政治)までを含んだフルスタックのプロジェクトでした。
今回作ったもの
今回作ったものは、
(SMB用)ERPと提供基盤(OS)とサーバ
です。
ORCAが医事会計のシステムであったのと似ています。 こちらは財務会計のシステムを元に作ったERPシステムです。 会計だけではなくて、顧客管理や請求書発行も含んでいます。
ERP自体オープンソース(AGPL)で公開していますが、その他にこれを簡単に動かすための基盤(OS)も用意しました。
そのためにCasaOSをforkして、「CassetteOS」というものを作りました。 基本的な操作はCasaOSと同じです。 forkした理由は様々ありますが、CasaOSとは目指すものが異なるために、こちらの修正をpullしてもらうことに抵抗があるためです。 しようもないバグを作り込んだかも知れないことを除けば、CasaOSよりは安心して使えるものになっているはずです。
また、「サポートを提供する」というビジネスを容易にするために
- VPNや(逆)プロキシサービス
- オンラインサポート
- オンラインバックアップ
等の機能も実現しています(予定も含む)。
また、他のアプリケーションを載せることを容易にするために「アプリストア」のサービスも用意しました。 つまり、第三者の作ったアプリケーションも同じ基盤の上で提供でき、(ほぼ)ワンクリックでインストールできるようになっています。
そして、これらをプリインストールしたサーバである「Cassette Server」も作りました。 つまりこのサーバを購入すれば、箱から出してすぐに会計システムを初めとするバックオフィスシステムが使えるというものを作りました。
ERPシステムの概要
詳しくは別稿で書きますので、ここでは概要だけ。
これは前々から作っていたHieronymusです。 元々経理システムでしたが、今回は
- 顧客管理
- 見積もり
- 請求
等の機能を加えました。 もちろん、これらは会計システムと一体化されています。
これを Ver 2.0 としてリリース予定ですが、Ver 2.0が安定した辺りから
- 台帳管理
- 名刺管理
- 人事給与
の実装を始める予定です。
また、会計事務所との連携機能も強化して、会計事務所とのネットワーク化を容易にしようとも考えています。 この辺はいずれロードマップでも書きます。
当然ながら、AGPLのオープンソースです。
CassetteOSの概要
これも詳しくは別項で書きますので、ここでは概要だけ。
前述のように、CassetteOSはCasaOSからのforkです。 CasaOSに大幅に手を入れて、
- 独自アプリストア
- 安全性の向上
- システム管理機能の強化
等を行って、
21世紀のオフコンOS
を目指して開発したものです。
軽く内部の話をするなら、「Dockerを基盤としたアプリケーション実行環境」です。
CasaOSのアプリストアは色々あって楽しいのですが、他のオープン(オープンソースに限らず)なものの例に漏れず「整理」がされていません。 品質が微妙なものが混ざっていたり、ありがちなアプリがいくつも入っていてどれを使って良いかわからないとか、そもそも説明がなってないとか、「ワンクリックでインストール」という手軽さがありながらも、「素人」が使うにはちょっとハードルが高いものになっています。
そこでCassetteOSのアプリストアは
- 自分達がレビュー以上のことをしたもの
- 自信を持ってお勧めできるもの
- ↑と同等と思えるもの
だけを掲載してゆきます。 多分当初は弊社だけで管理して行くでしょうが、いずれはユーザレビュー等も整備して、よりオープンなものにしたいと思います。
CasseteOS自体も当然ながら、オープンソースです。 ライセンスはCasaOS由来部分はApache2ですが、弊社でいじった部分についてはAGPLです。 独自に色々いじって行きますが、「better CasaOS」としても使えるように互換性は維持し続けようと思います。 内部的には「テセウスの船」となっては行くでしょうけどね。
Cassette Serverの概要
Cassette Serverは前弊社の頃から構想していたものです。
あの頃はSBCをポケットに入れられるようなものに仕立てて、そこにバックオフィスシステムを入れたらノマドも捗るなぁという考えがあったのですが、今回はそういった発想も含めたままでこういった形にしました。つまり、
バックオフィスオールインワンのサーバ
です。
難しい、面倒臭い話抜きにして、とにかく箱から出したらバックオフィスが動くというシステムです。 設定不要はさすがに不可能なのですが、「ホームルータの設定よりは簡単」にしました。
サーバにブラウザで接続すると、CasaOSに似た画面が表示され、後は使いたいアプリをクリックするだけでインストールされて使えるようになります。 つまり、スマホに近い感覚で業務システムのサーバが運用できる、そういったサーバを提供するということです。
Orcinusサービスの概要
Orcinusはネットワークサービスを持ちます。 これは
- データのバックアップやソフトウェアの更新、提供、維持
- コミュニケーション
- 関係する士業や専門家とのチャネル
などを提供する基盤となるためです。
今のところ、Hieronymusの会計機能は独自に確定申告(青色申告)ができるようには考えていません。 原則的には税理士事務所と契約して、税理業務は税理士にお願いするものと考えています。 また、零細企業であれば「経理のプロ」がいることはあまり期待できず、「経理は社長の仕事」になったりするものです。 このことは何も「税務」に限りません。 何かをやっていて「専門家」の介入を期待したいことは少なからずあると思います。
そういった時に「ちょっと見て下さい」と言って見てもらえるようになっていれば、色々都合が良いですね。
まとめ
今回はORCAの時に多大なコストを費した
- ミドルウェアや開発言語
- システム化のための標準化
- 第8層
については全くタッチしていません。 お陰で「たった2人」でそれなりのものが作れました。 また積極的に「税務」を仕様から外したために、様々な「面倒臭い開発」に関わらずに済んだということもあります。
他方「OS」のようなORCAの時に作らなかったものまで作っています。 これは今回の目的に必須だったからです。 まぁこれ単体でプロダクト足り得るものですから、ここには工数かける意味があると考えています。
意義
今時だと、こういったものはクラウドサービスを使うのが普通でしょう。 その考えについて否定するものは全く持っていません。 クラウドサービスで満足できる人はクラウドサービスを使う方が多分良いんじゃないかと思います。 手間もかかりませんし。 運用の規模によってはクラウドの方が廉価だと思います。
それでも敢えてこういったものを作ったのは、
クラウドという軛から解放
されたいからです。
実は冒頭にORCAの話をしたのは、このことも関係しています。
ORCA以前の医療事務システムは、当然ながらプロプライエタリなものだけでしたから
- 全ての決定権がベンダーにある
- 内部のデータが自由にできない
- リプレースが容易ではない
ということがありました。 ですから、一度システムを導入してしまうと、ずっとそのベンダーの都合にふり回されますし、蓄積されたデータを「活用」することもできませんでした。
ORCAは全てがオープンでしたし、政治力のある団体が推進していたものでもありましたし、そこそこ勢いのある普及速度でもあったので、プロプラなベンダーも渋々(本当に渋々で、酷いメールが来たこともありました)対応してくれました。
ひるがえって今の「クラウド会計システム」を見ると、当時の医療事務システムの状況と非常によく似ています。 具体的に何がどうということを書くと各方面に喧嘩を売ることになってしまってそれは本意ではないので書きませんが、漠然と「似てるなー」と思う程度には似ています。 某サービスの利用料がいきなり上がってあわてた人とか、タリフ変更にあわてるとか、クラウド全体で見れば年中行事とさえ言えます。 問い合わせでしばしば言われたのは、「利用アカウント増やすと高額になる」ということです。 私は一人で使うことしか考えてなかったので気がついていませんでしたけど。
他方、クラウドサービスを使うのはとても簡単です。 必要なものは用意されていますから、「使う」だけで使えます。 この便利さは、特に非IT企業にとっては素晴しいものだと思います。 また、クラウドのデータは、滅多なことでは消えたりしません。 津波で物理サーバが流されるというようなこともありません。 この利便性は損いたくありません。
今回発表するシステムは、こういった「クラウドの軛」の部分からの解放と共に、「クラウドの便利さ」も享受できるものとして企画開発したものです。
つまり、
- 簡単に使える
- バックアップは(半)自動
- (サブスクすれば)サービスもある
という点はクラウド譲りであり、
- 透明性がある
- データの所有権は尊重される
- 自由
という点はオープンソース由来というシステムです。
「自由」については、しばしばオープンソースの「お題目」としての意味しかないと思われがちなのですが、ORCAの例を見れば「ベンダーが自社の顧客のために機能拡張する」というようなものがありますので、エンドユーザは素人であってもサポートベンダーレベルでは活用可能です。 システムに「自由」の要素があるのは良いことなのです。
当面の予定
ロードマップの詳細はいずれ詳しく書きますが、ここでは概要だけ書いておきます。
現在のCassetteOSのアプリストアはHieronymusが入っているだけです。 これではいくら何でも寂しいですから、現在CasaOSのアプリストアにあるもののうち前述の条件に合うものを選択整備して掲載するようにして行く予定です。 また、その他弊社内で使って有用だと評価したオープンソースなものも、アプリストアに掲載するようにします。 この辺はいずれ専任を雇用したりAIエージェント化したりする必要があります。
Hieronymusについても前述のようにVer 2.0の品質が十分になったあたりから、この後の開発を開始します。 これは既に契約しているパートナさん(士業)の要望を実装するということでもあります。
この辺、ある程度資金調達できれば色々スピードアップできるのになぁと思っているところですが、なければないで何とかするでしょう。 遠からずこれ単体のビジネスで回せるようになるはずなので。
まとめ
今回はざくっとした発表ですが、これから個々についての詳細やサーバ等の「販売」についてのリリースを書いて行こうと思います。 興味を感じられた方はご連絡ください。
弊社は合同会社ですから出資や資本提携についてお受けできませんが、業務提携等については歓迎します。 自社のソリューションとして扱いたいというような話も歓迎します。
よろしくお願いします。