2016年03月30日

久しぶりのシステム開発(その3)

微小規模システムながら、趣味的要素も加わりPMBOK*1的プロジェクトマネージメントを嬉しがって採用いたしました。
プロジェクト憲章の段階として、目的を明確にするために業務フローの現状図と改善案を提示し、先方と討議いたしました。
先方の担当者は極めて優秀かつ心配りが行き届く方(女性)をアサインしていただけました。
微小システムではありますが、しっかりと契約書を作成し取り交わしました。会社勤めしていた頃よくあった英文契約書と違い、日本語の契約書は分かりやすくて良いなと感じたりしました。ある程度細部まで規定した契約を作成することによりお互いの誤解が防止できると思います、特に著作権、保障、損害賠償関連などは重要だと思います。

スケジュールと見積もり額を決定、契約書作成取り交わし、業務要件策定完了時点で契約額の一部をお支払いいただくことといたしました。ここも私が嬉しがって工事進行基準*2を採用させていただきました。
先方とは毎週月曜日に打ち合わせさせて頂き、殆ど滞ることなく設計、開発を進めることができました。業務要件定義は予定通り9月末に完了しました。

10月から製作にはいりました。
書道会は私にとっては初めての業界で、見ること聞くこと知らないことばかりで大いに興味が引き立てられました。
システム化による業務形態の改善も途中の試行錯誤により二転三転しましたが、常に書道会様の前向きな姿勢と十分な討議によりとても楽しく進めることができました。業務形態が改善されるたびに関係者一同に喜びを分かち合えることができました。
今回の方式はプロトタイプ方式(試行錯誤方式)で、開発コスト面は少し嵩みますが結果としてしっかり改善された業務形態とそれにマッチしたシステムを開発することができます。

ソフト制作面では、昔の開発環境から考えるとアクセスの便利さは驚くばかりです。RDBの定義・変更、画面設計・定義、クエリの設計・定義が殆どすべてGUI*3で行えます。もちろん各処理の細部はかなりVBA*4で書く必要がありますが、SQL*5を直接記述する必要もほとんどありませんでした。
11月末に製作と基本テストが完了しました。

(ご参考)
*1 PMBOK:Project Management Body of Knowledge プロジェクトマネージメントの手法の一つ。システム開発の計画・進捗管理によく使用される。

*2 工事進行基準:工事(プロジェクト)遂行への対価の支払い方法のひとつで、進捗に応じて工事期間中に対価を支払う方式。システム開発では昔は全て完了時に一括で支払うことが多かったが、新会計基準導入以降は進捗度合により都度支払うこととなっている。

*3 GUI:Graphical User Interface。システム製作過程でプログラムコードなど分かりづらい方式ではなく、図形表示等分かりやすい方式でシステムを製作できる方式。これによりシステム開発の高速化と正確さが著しく向上しました。

*4 VBA:Visual Basic for Applications。プログラム言語の一つで、比較的シンプルな言語。マイクロソフトのエクセル、アクアセスなどで使用されることが多い。アクセスではこれを組み込むことで細かい処理が可能で、システムの使用勝手は非常によくなる。ただし、反面、システムの変更等のメインテナンスは難しくなる。昔からのプログラムコーディングとなり、上記GUIとは対照的な方式。

*5 SQL:Structured Query Language RDBを操作するための言語。
posted by ビールとワン at 21:09| Comment(0) | TrackBack(0) | 日記

2016年03月23日

久しぶりのシステム開発(その2)

定年退職後は趣味を兼ねて、「パソコン出張教授」というパソコン出前講師やパソコン出前トラブル対応などを楽しんでおります。時にはプレゼンテーション資料の作成指導、プレゼンテーション指導の依頼などもあります。

昨年(2015年)の夏にある書道会様が当方のHP(ホームページ)を御覧になり、「現在膨大な書道作品を毎月評価し、段級審査決定後、部門段級別の名簿作成をエクセルにて行っている。しかし最近は量的に限界なのでアクセスで再構築できないか」という旨のご依頼をいただきました。

最初は数百ある全国各地の支部から直接データエントリすることを想定されているのであろうと当方が勝手に解釈し、アクセスでは対応できず、オラクルやSQLサーバー等の本格的なRDB*1としっかりしたサーバー*2を構築しないと対応できないと考え、当方のような趣味的牧歌的な個人事業では対応不可能なので丁重にお断りいたしました。

しかし再度メールを頂き、「作業は本部内のみで完結するので再考願いたい」とのありがたい内容でした。では一度お話しを聞かせて頂くこととし、その結果今回の「久しぶりのシステム開発」が8月からスタートいたしました。

(解説)
*1 RDB:当ブログ前回の(その1)をご参照ください。
*2 サーバー:複数のパソコン(クライアントと呼ばれる)からランダムに参照や更新されるデータを保管しておく共用倉庫みたいなコンピュータ。日本語でいうと顧客(クライアント)と提供者(サーバー)みたいな関係のサーバー側。
posted by ビールとワン at 11:03| Comment(0) | TrackBack(0) | 日記

2016年03月17日

久しぶりのシステム開発(その1)

ある書道会様から依頼を受け、微小システムですが、ものすごく久しぶりにシステム開発を行ったのでその顛末をシリーズで掲載させていただきます。システム開発期間は6か月で、開発担当は当老兵1人でした。

私ははるか昔のまだ若かりし頃、システム開発を会社で担当しておりました。
その頃のファイル方式は便利なRDB*1などまだなく、シーケンシャルファイル*2、ISAM*3、VSAM*4を使用し、コボルという言語でバッチシステムやオンラインシステムを構築しておりました。オンラインシステムを構築するにはIMS*5やCICS*6というオンラインコントロールシステム又はこれらに類するものをベースに使用しておりました。

オンラインシステムの構築は画面設計から始めて全体を仕上げるのは大層大変であったことを記憶しております。かなりの人数、期間やコストをかけてやっておりました。数十年前でも数千万〜数億円ほどかかるのはザラでした。

(ご参考)
*1 RDB:Relational Data Base ファイル間相互にキーで関連付けを行えるファイル形式。極めて便利。関連付けるキーは複数設定可能。松

*2 シーケンシャルファイル:先頭のレコードから順番に読み出したり、書き込んだりのみできるファイル形式。キーを指定して、任意のレコードを呼び出したりはできない。極めて不自由。梅

*3、*4 ISAM(Indexed Sequential Access Method)、VSAM(Virtual Storage Access Method):任意のキーを指定してレコードの読み出し、書き込みができるファイル形式。先頭から順番に読み込んだり、書き込んだりもできる。便利さはRDBとシーケンシャルファイルの中間。竹 

*5、*6 IMS(Information Management System)、CICS(Customer Information Control System):オンラインで同時に実行される複数処理の制御、ファイルの整合性制御、複数端末の制御その他諸々のオンラインシステムに必須な機能を担当する賢いマネージャー的ソフトウエア。
posted by ビールとワン at 21:12| Comment(0) | TrackBack(0) | 日記