スクラッチ開発

当社がスクラッチ開発のターゲットとしているIT市場は、主に中堅・中小企業の会社様です。

スクラッチ開発の基本的な考え方

中堅・中小企業様の悩み

  • 基幹システムや部門システムがあるが、「Access」や「Excel」の個人開発システム等が散在している
  • 企業の成長に伴って、システムの対応力が無くなっている。
  • 整合性、メンテナンス保守性に対する悩み
  • システムの老朽化に対する悩み
  • 既存システムと新しい解決策の間でどうすれば良いのか
  • 開発手法、投資効果面での悩み

当社がスクラッチ開発のターゲットとしている、中堅・中小企業様のシステムでは、こうした悩みを抱えているのではないかと認識しております。

「うちのシステムは古くなってるし、作り変えるとお金がかかり過ぎる。社員の作ってくれたシステムも何とか使いたいし、新しい技術も使いたい。検討してくれる社員もいないし、社員をリードしてうまい提案をしてくれる会社はないかなぁ!」

当社なら既存のシステムを分析し、適切な手法、コストで整合性を持った解決策がご提供できます。

システム開発提案の基本的な考え方

当社のシステム提案は、既存システムに対して現状を分析し、「適切な手法・コストで整合性を持った解決策をご提供する」ことが基本姿勢です。

1.ハイブリッドなシステム構築提案
例えば「Access」や「Excel」のシステムも否定するものではありません。
往々にして整合性が無くなり、二重入力等の弊害、データの増加による処理能力の問題、その対応への保守の難しさ等も発生させているのが現状では無いでしょうか?
それらを解決し、適切な開発手法で整合性を持ったハイブリッドなシステム提案をしていきます。
2.再構築ありきでは無い
経営に貢献するシステムは、既存システムを部分的に修正し、必要なシステムを小規模に作成して、それらの整合性をとる事が重要という考え方でご提案いたします。
3.新しい技術への対応
タブレット端末やスマートフォン対応などは、ゲートウエイ的なシステムを構築し、既存のシステムとの整合性を保つようにご提案いたします。

システム開発の手法

当社は「スクラッチ開発」をサービスとしてご用意し、お客様と密接にコンタクトを取り、お客様の業務の分析・変更などを議論しながら、最適なシステム要件をご一緒にまとめます。そして、「適切な開発方法(方式・言語)」を選択して、全体的な整合性と投資対効果を最大限に活かしたご提案を行います。

システム開発の手法
No. 言語 開発手法の概略
1 VB.NET・C# Web方式、クラサバ方式の開発(Microsoft)
2 NXJ Java系の簡易言語でのWebシステムの開発(Unify)
3 Access VBA 技術的工夫をして中規模の基幹システムに適用(Microsoft)
4 Excel VBA VBAを駆使しシステムとの連携を保って適用(Microsoft)
5 COBOL オフコン、ホスト系のアプリケーション開発

スクラッチ開発の管理プロセス(SIMPLE)

当社のスクラッチ開発の進め方

  1. IT投資は、お客様にとって経営上重要なテーマであり、その成否が経営に与える影響は非常に大きなものです。同様に、そのプロジェクトに参画させていただく当社にとっても、成否は経営に大きな影響を及ぼします。
  2. 近年、双方の思惑違いによって、重大な問題を引き起こしているITプロジェクトの事例も見受けられます。当社では、そうした事態を未然に防止し、発生しても即座に対応することを目的に、プロジェクトの善管注意を双方で、かつ経営も含めて推進することを前提に進めることが、最重要課題と捉えております。
  3. 当然、当社の内部品質を高めることも重要であると認識をして、そのプロセス管理が全体として整合性を持つような運用も重要課題と捉えております。

当社では、これら重要課題でのプロセス管理に対し、「SIMPLE」(SI管理プロセスルール)という体系化したルールを構築する事で、常にプロセスが正常運用されるよう監視しながら、ITプロジェクトを推進しております。

SIMPLE(SI Management Process ruLE)のコンセプト

SIMPLEは、当社のお客様とシステム開発を推進する3つの管理プロセスで構成しています。

1.お客様との管理プロセス
お客様との合意を形成するプロセス
2.社内の管理プロセス
当社内部のプロジェクト状況を経営と一体になって監視、対応するプロセス
3.開発部隊内の管理プロセス
開発執行部隊の中の品質管理をするプロセス

SIMPLEのプロセスをお客様と一緒に行い、お客様の望む物を着実に作り上げる事を目指しています。

常にお客様の経営と当社の経営が意思疎通を行い、プロジェクトの円滑な推進を心がけていくことを基本理念として、システム開発を推進していきます。

SIMPLEの3つのプロセス概要

1.お客様との管理プロセス
1.SC会
お客様の経営者と当社経営が定期的に共通認識、確認を行う場です。定期的に開催することが重要と認識しており、月一回の開催を推奨しています。
2.定例進捗会議
お客様とプロジェクト進捗状況、課題を審議する場です。週1回など、定期的に開催します。
2.社内の管理プロセス

1.商談フェーズ

「ご提案方針協議会」(商談推進協議会)
お客様の要件をどんな方法で実現をするか、経営を含めて協議をする場です。
「ご提案審査会」(見積審査会)
お客様に提案する内容や費用等を当社経営が判断をする場です。「ご提案方針協議会」 (商談推進協議会) 、「ご提案審査会」 (見積審査会)によって、当社経営層は、成約の如何に関わらず、プロジェクト内容を全て把握します。

2.開発フェーズ

BA会
プロジェクトの進捗状況を、営業面と執行面における状況と課題を、当社経営層として対策を協議する場です。通常、最低月に一回開催します。課題があればSC会議で課題を共有して対策を検討します。
3.開発部隊内の管理プロセス
PA会
開発部隊の推進状況を組織から審査をし、課題の洗い出しと対策を協議する場です。

SIMPLEの具体的な管理プロセスと時間軸(商談開始から稼働まで)の相関図

SIMPLEの具体的な管理プロセス

SIMPLEの管理プロセスと役割(双方の経営から執行部隊まで)の相関図

SIMPLEの管理プロセスと役割

スクラッチ開発の中での「Access」開発

当社が中堅・中小企業様のスクラッチ開発で、有効性に着目しているのが、「Microsoft Access」による開発です。

EUCで多用されるAccess開発

Microsoft Office 製品群の中の「Access」は、その簡便性からEUC開発で多用されるほど、非常に便利なツールです。

その一方で、「保守性の問題」や「基幹システムへの適用、性能問題に対する解決策がない」などの理由で、顧客やITの専門家等から軽視されるきらいがあるのも事実です。

しかし、技術の進化、当社の技術的工夫、開発方式の工夫によって適用性が大きく変わってきており、「Access」も可用性の幅が非常に大きくなってきていると当社は考えています。

当社が考えるハイブリッド的な提案の中にこそ、「Access」の存在価値が活かされると考えているからです。

EUCで抱える「Access」開発の問題とは

修正・拡張をしようとすると……作者自身も業務の変化に対応出来ない。作りっぱなしのシステムと化している。
  • プロパティ設定だけだと設定値があっちこっちに有って、判りづらい
  • データが何をメインに使っているか、探るだけでも階層が深く設定されており、解析しづらい
  • 入力画面を見ればイメージが掴みやすいが、データはどこに格納され、どこにどう活かされているかが判らない
  • 複数人で同時に使用していると、処理が固まり、スムーズに業務が回らない
  • データが多くなってパフォーマンスが落ちているが、どうすればいいかわからない

「Access」は、単なる開発ツールでは無い

一般的な「Microsoft Access」のイメージ
  1. 簡単に画面や帳票を作れる(ノンプログラミングで作れる)
  2. スタンドアロンでしか使えない
  3. データベースが壊れやすい(大量データを扱えない)
  4. 高度な開発には向かない
  5. 大量のデータ処理には向かない(データが肥大化するとパフォーマンスが低下する)
  6. バッチ処理が遅い
EUC開発で抱えるAccess開発の実態
  1. プロパティ重視(ノンプログラミング)のため階層が深くなり、解析が困難で作成者しか判らない
  2. 仕様書などのドキュメントがない(「Access」標準の解析ドキュメントだけでは不十分)
  3. 修正や拡張性が容易でない
当社のAccess開発の実態
  1. アプローチ(DOA・POA)による基本設計(業務を理解し、データ中心で設計)
  2. 見える化による詳細設計(プロパティなどを多用せずVBAプログラムによる可視化を重視)
  3. データベースには、「SQL Server」や「Oracle」を活用(大容量でMDBより高い堅牢性)
  4. リッチクライアントとしての「Access」の位置づけ(高い操作性を活かしたFEPとして活用)
  5. レスポンスが求められるバッチ処理には、DB側のストアドプロシージャやオンメモリ対応DBで対応
  6. 小規模開発から大規模開発まで、幅広いレンジで「Access」開発を実践。

「Access」開発のメリット

1.ソフトウェア導入コストが安い
  1. クライアントは、「Accessランタイム(無償版)」があれば実行可能
  2. データベースも無償版(SQL Server Expressなど)で大容量が可能
  3. 余計なライセンス(運用ライセンスなど)や専用機器(AP・DBサーバ)が不要
2.リッチクライアントの実現
  1. 「Microsoft Office」製品群の1つなので、「Excel」「Word」との親和性が高く、共通の操作性(「Excel」間でのカット&ペーストなど)
  2. 「Microsoft Windows」の操作と同様の操作性が可能(サイズ変更やショートカットキーなど)
3.高い拡張性
  1. 全て揃っているオールインワン開発ツールなので、画面処理、帳票処理、Office連携処理の新規作成・修正が容易に実現可能
  2. 将来的なEUC独自開発も可能

当社の「Access」開発の考え方

当社が培ってきた「Access」のスクラッチ開発における工夫の数々をお見せします。

当社のAccess開発の考え方

当社独自の高度な開発ツールとしての取組み

1.品質向上への取組
  1. プロパティ設定からVBAプログラミング設定方式による可視化を実現
  2. 共通処理の部品化による一貫性を保持
  3. 開発規約などの標準化により高品質を確保
2.性能向上への取組
  1. クラサバ型の開発方式による高いレスポンスを確保
  2. ビジネスロジック(イベント処理・チェック処理)はVBAでプログラミング
  3. データ操作ロジック(DML)はデータベース側ストアドプロシージャでプログラミング
3.生産性への取組
  1. 処理パターン開発(単純フォーム、明細付き、照会画面、請求書など)による、ロジックの標準化
  2. 分散開発(チーム開発)により生産性を向上
  3. AccessオブジェクトのVisual Source Safeによる、一元管理方式を採用
  4. ビジネスロジック(VBA)とデータ操作ロジック(DML)の分離で、分散開発を実現
  5. ストアドプロシージャや設計書などのドキュメンテーションはSubversion(TortoiseSVN)による一元管理方式を採用
  6. Office連携(Excel、Word)処理などをフォームクラスモジュールから標準モジュールに分離させ、高いデバッグ効率を実現

当社の「Access」開発の概要

当社のAccess開発の概要
完全なクラサバ方式を実現
  1. 「Access」側よりデータベースに要求(Request)を発行
  2. データベース側で要求に対する処理を実行し、結果(Response)を返す
  3. 「Access」側で結果を処理(テーブルに格納、画面に表示、レポートに印刷など)

※要求・結果をコンパクトにする事で遠隔地(LAN・WAN)でも軽快な動作を確保

ハイブリッドシステムの一例(製造業P社の事例)

業務運用に関わる全てのデータ管理をAccessを中心に構築し、一貫した管理・運用を実現させています。

繋がる「Access」

LAN・WAN運用の一例

特に台数の制限はありません。Accessプログラムの配布は、ログインスクリプトなどで配布して常に最新状態を保ちます。

リモート保守管理の一例

リモート接続には暗号化や承認制による安全な接続ソフトウェアを使用します。

ページ上部へ戻る