謎テクノロジー

ユニケージ開発手法とは

2015/02/18
有限会社ユニバーサル・シェル・プログラミング研究所

1

㈲ユニバーサル・シェル・プログラミング(ＵＳＰ)研究所
http://www.usp-lab.com/
設
立：２００５年４月
事業内容：ユニケージ開発手法の研究・教育・普及、システム開発

代表：當仲 寛哲（とうなか のぶあき）略歴
1966年
1992年

2005年
2008年
2011年
2014年

兵庫県生まれ東京大学大学院修士課程（情報工学専攻）中退
株式会社ダイエー入社、現場主導のシステム内製化を行う
ＵＳＰ研究所を設立
ＩＰＡ「ソフトウェア・プロダクト・オブ・ザ・イヤー」授賞
システムイニシアティブ協会設立
ＭＩＴ（マサチューセッツ工科大学）と共同研究

講演：Agile Japan 2011 基調講演
講師：コーネル大学ＲＭＰジャパン
執筆：情報処理学会誌「情報処理」「販売革新」「食品商業」「商業界」「Software Design」「日経Linux」© USP Lab. 20152

ユニケージ開発手法採用企業© USP Lab. 20153

出版
 ソフトウェア開発の名著の復刊『プログラミング言語ＡＷＫ』『伽藍とバザール』

 ユニケージ関連書籍の発行『ユニケージ原論』『Ｃプログラム高速化研究班』『シェルスクリプトシンプルレシピ』
 世界で唯一のシェルスクリプト雑誌『月刊シェルスクリプトマガジン』© USP Lab. 2015

4

コミュニティ活動
 ＴｅｃｈＬＩＯＮ：IT猛者トークライブ

http://techlion.jp
次回：３月２４日（火）１９：３０ ＠スーパーデラックス（六本木） システムイニシアティブ協会

http://system-initiative.com
次回：３月１６日（月）１８：００ ＠新丸ビルなど© USP Lab. 20155

ユニケージ開発手法とは
巷では…

謎テクノロジーと、呼ばれている…

https://www.hands-lab.com/tech/entry/62.html© USP Lab. 20156

ユニケージ開発手法とはシェルスクリプトとテキストファイルの使い方？

アジャイル？

ビッグデータ処理ツール？

流通業界専用ソフト？
一体その実像は何なのか?!
© USP Lab. 20157

ユニケージ開発手法とは答え…

© USP Lab. 20158

謎は謎のままが美しい･･･（冗談です）© USP Lab. 20159

ユニケージ開発手法：デモ
今回は、謎テクノロジーの片鱗をチラ見せします。

お題

時制データベースを実現する!!
時制データベースとは？
データ履歴を制限なく持ち、過去の状態をいつでも遡って調べることができる。
え?

© USP Lab. 201510

ユニケージ開発手法：デモ
今回用意したのは、わかりやすい人事の履歴、マスターの項目がどんどん変化します。
0001 柳家 なつみ 女性 19590824 札幌 企画 無し 20130724
0001 柳家 なつみ 女性 19590824 札幌 設計 無し 20130824
0001 柳家 なつみ 女性 19590824 福岡 生産 無し 20131002
0001 柳家 なつみ 女性 19590824 仙台 営業 無し 20131013
0001 柳家 なつみ 女性 19590824 名古屋 人事 係長 20131110
0001 柳家 なつみ 女性 19590824 仙台 経理 係長 20131120
0001 柳家 なつみ 女性 19590824 大阪 経理 係長 20131209
0001 柳家 なつみ 女性 19590824 札幌 人事 係長 20140215
0001 柳家 なつみ 女性 19590824 東京 企画 係長 20140421
0001 柳家 なつみ 女性 19590824 大阪 営業 課長 20140724
規模は、１０００人分。
0001 柳家 なつみ 女性 19590824 札幌 生産 無し 20100206
1人分0001 柳家 なつみ 女性 19590824 東京 設計 無し 20100407
0001 柳家 なつみ 女性 19590824 福岡 企画 無し 20100704…
1000 戸田 だん吉 男性 19660921 福岡 経理 無し 20121214© USP Lab. 201511

ユニケージ開発手法：デモ
内部構造は、ユニケージのお作法どおり。
Ｌ１ : 登録したトランザクションファイルを保持
Ｌ３ : 項目ごとに、時系列に分割したファイル構造
Ｌ４ : 表示のために、人単位の履歴ファイル登録Ｌ１

リアルタイム 更新表示

© USP Lab. 2015

Ｌ４

バッチ処理

夜間処理

Ｌ３
Ｌ３
Ｌ３

バッチ処理
12

ユニケージ開発手法：デモ

さっそくアプリを動かしてみましょう。
マスターの更新
履歴の参照
過去の時点の姿© USP Lab. 201513

ユニケージ開発手法：デモプログラムは、こんな感じ。簡単です。
23 # POSTされたデータからIDを取得
24 id=$(nameread ID $tmp-name)25
26 # IDのデータを取得
上から下に
27 cat $lv4d/ID.$id|
素直に読める28 getlast 1 1|
29 delf 1 9> $tmp-migi
30
31 # formhameのための下準備
32 cat << FIN > $tmp-hidari
33 SEI NAMAE SEIBETU BIRTH KINMUCHI SHOZOKU YAKUSHOKU
34 FIN35
36 # formhameをする
37 cat $tmp-hidari $tmp-migi|38 tateyoko|
短い
39 formhame $dir/HTML/JINJI.HTML - > $tmp-html

ソース© USP Lab. 201514

ユニケージ開発手法：デモ排他制御機能でツッコミ入れたい人！
27 # LV1ファイルからLV4を作成
28 cat $lv1d/ID.${id}_$(date +%Y%m%d%H%M) |29 tateyoko|
30 self 1 3/9 2|
31 tateyoko|
32 self 2|
33 tateyoko>> $lv4d/ID.$id

27 # LV1ファイルからLV4を作成
28 if ulock L4.lock; then29
cat $lv1d/ID.${id}_$(date +%Y%m%d%H%M)|
30tateyoko|
31self 1 3/9 2|
32tateyoko|
33self 2|
34tateyoko>> $lv4d/ID.$id35
rm L4.lock
36 fi© USP Lab. 2015

排他される15

ユニケージ開発手法：デモユニケージでは、データベースが提供している機能を、シェルの書き方とファイルの持ち方で実現しています。

通常のデータベースでは、提供していない機能でも実現している！
ま・さ・に、謎テクノロジー© USP Lab. 201516

ユニケージ開発手法とはポイント

整理整頓

テキストファイルの物理構造を設計
お作法に従うテキストファイルを自在にハンドルするコマンド群+
これもお作法に従う＝とても良いことがある© USP Lab. 201517

ユニケージ開発手法とは２１年以上の歴史をもつ、日本発の技術です。
習得したい方は、ぜひ、お声をかけてください。
謎を、やさしく、楽しく、伝承します。

やすい© USP Lab. 2015

はやいやわらかい

18ユニケージの習得

技術概論講座ユニケージ技術全般について解説

3月12日(木)、４月２日(木)http://www.usp-lab.com/lecture1.html

教育講座
実践スキルを習得できる９コース

3月4日(水)・5日(木)3月9日(月)・10日(火)K-BASIC1
K-BASIC2

http://www.usp-lab.com/LECTURE/CGI/LECTURE.CGI© USP Lab. 201519