システム開発
1 最初に抑えるポイント
大小のシステムを構築するシステム開発はその規模や用途によって様々な要件が発生するが、 基本は下記の2つに属する。
A クローズドのシステム
- A-1 完全なスタンドアローン
- A-2 社内ネットワークでのみ使用するシステム
B グローバルネットワークに開いたシステム
クローズドのシステムであれば、セキュリティ的な要件もかなり少なくてすむが、完全にグローバルネットワークに対して、オープンのシステムは セキュリティに対しての考慮が必須になる。
また、何人がそのシステムを利用するかによっても、その冗長性や拡張性は変わってくる。
さらには社内システムや既存のシステムとの連携が要件に入ってくる場合などもある。
2 開発の選定
どの言語やフレームワークを使うかで大きく開発の効率や費用、時間が変わってくる。
A-1 完全なスタンドアローン
完全なスタンドアローンのシステムを作る場合は基本OSで動くネイティブな言語が選ばれる。 ウィンドウズであればVBやVC#などで行えば開発も早い。 さらにはACCESSなどのソフトにVBで処理を加える方法もかなり開発が早く、経費も抑えられる結果となる。
A-2 社内ネットワークでのみ使用するシステム
社内ネットワークで利用するシステムでも上記同様の開発手法が取れるが、この場合はウェブアプリケーションと同じ言語で社内ネットでの利用という手段が早い。 PHPやそのフレームワークで開発すれば、かなり早い開発が可能だ。.NET系での作成も含めてグローバル上に公開されてないだけで、やれる事はほぼ同じという考え方が出来る。
B グローバルネットワークに開いたシステム
グローバルネットワークを通す以上はセキュリティの強化は必須となる。 IPAなどが提供してる情報を含め将来的なアップデートも考慮する必用がある。 そういう意味ではプログラム、アプリだけでなくOSやミドルウェア自体に何を使用し、保守し続けるかも問題となる。
3 開発に利用できる言語、フレームワーク
ACCESS,ファイルメーカーなどの「DB管理ソフト」での開発
完全なスタンドアローンであれば上記で十分と言える。一応ネットワークプログラムも組める。
キントーンなどのノーコード系
昨今キントーンやZohoなど、ほぼノーコードでクラウドで利用する業務用アプリなどが開発できる。 また、GoogleのAppSheetなどもかなり簡単にスマホでも使いやすいアプリの開発が可能。 ただ、これらで済むならそもそも開発依頼も必要ないと思われる。
プログラミング言語
言語自体はこれ以外にも多数存在しており、さらにフレームワークを加えるとかなりの選択肢がある事になる。 ただ、完全に機能性で選ばない限りは汎用性が高い言語の方が後々のメンテにも求人にも有利ではある。