システム開発コラム集
システム開発に関するコラム集です。
24.システムの使いやすさ(速度)
使いにくいシステムとは、どんなところが使いにくいのですか?と聞かれると即答する事が難しいですね。
あのシステム使いにくかったと思いだす事は出来るのですが、どうして使いにくかったのか具体的には思い浮かばないと思います。
なぜなら使いにくさとは色々な小さな要因が積み重なって使いにくいと判断しているからです。
ストレスのたまるシステム
使いにくいシステムとは、どんなシステムなのかと考えた時、ストレスのたまるシステと言うと分りやすくなると思います。 ストレスが溜まる事って何でしょうか?イライラする。まどろっこしい。そんなシステムの事です。 思い当たるシステムがあるはずです。また、なぜストレスがたまるのかを考えると使いにくいと呼ばれる原因が見えてきます。
ストレスのたまる原因
今まで使用されてきたソフトでも、画面遷移だけではなく、ストレスのたまるシステムがあったと思います。
ストレスの溜まる原因は、だいたい以下の様な事があげられると思います。
- 処理速度が遅く、ちっとも動かないソフト
- 操作に対するレスポンスが遅いソフト
- 次に何を操作すれば良いかわからないので、なかなか先に進めないソフト
- 見たい項目や操作したいボタンがなかなか探せないソフト
- 文字が小さくて読みにくいソフト
- 専門用語だらけで先に進めないソフト
- いっぱい確認画面やメッセージが出てきて先に進めないソフト
- 知りたい情報を見るのに、ずっと奥の階層まで何度も遷移しないと見られないソフト
この中で、視認性、操作性について書いていますので、今回は、速度についてです。
処理速度
ストレスと言う言葉に最も当てはまるのは、やはり処理速度が遅いシステムでしょう。
動作速度があまりにも遅いため、次の仕事に移れないとストレスを感じてしまいます。
これに関しては、現代は速度の速いコンピュータの時代ですからコンピュータ任せなところもあります。
環境による要因
環境による処理速度の遅さは、システムチューニングをしてもどうにもなりません。
Webシステム利用環境で考えられる事は、LAN環境で低速度の機器やケーブルを使用していたり、 サーバ自体が古い事により遅かったり、また、サーバ内に他のシステムやデータベースが動作していたり、 閲覧しているPCやブラウザが古かったり、等、色々な要因があります。
以前に、同時アクセスが数ユーザーしか出来ないデータベースをシステム会社が理解せずに間違えて提案をしてしまい最大同時アクセス数以上のユーザーがアクセスすると、 順番待ちになって画面を開くのに20分待ち、1時間待ちとなってしまう現象を見た事があります。
この場合、最大同時アクセス数が今より多いデータベースに切り替える事により解決できます。(アクセスライセンスを増やしたり、別のデータベースに入れ替えたり、等)
プログラムによる要因
プログラミング技術的には、だいたい、どんなプログラマがプログラムを書いてもストレスがたまる様な遅いプログラムを書く事はできません。 無理に遅い処理のプログラムを書いたとしても意外に早く動作します。
意図的に処理を繰り返させたりしない限り、どんな初心者でも遅い処理のプログラムは書けません。
ただし、メモリを使いすぎる様な処理をしたり、使用しているフレームワークやテンプレートエンジンで内部的な動作を理解せずに特殊な処理をさせたりした事により動作が重くなる事はあります。
データベースによる要因
システムで速度に影響するのは、どちらかというとプログラムよりデータベースの処理の方です。 大きなデータを扱う様な処理や集計をさせる様な処理は、ある程度、データベースの知識を持っている技術者でないと処理の遅い命令を書いてしまいます。
プログラムの知識はあってもデータベースの知識が乏しい技術者は意外にいたりします。
特に大きなデータを扱う様なシステムの場合には、クエリ(データベースへ指定したデータを取得するように出す命令の事)のチューニング、データベース自身のチューニングが行える技術者が必要になります。
システム動作速度
少なくともシステムの動作速度は、「使いやすさ」の評価の中に入る要因になります。
ですが、必ずしも最新の技術が動作速度を保証している物ではありません。見た目だったり、操作性だったり、メンテナンス性だったりを追及し動作速度はコンピュータ任せの技術もあります。
ですので、最新の技術や特出した技術を必要とはしませんが、システムを作るのに支障をきたさない程度の最低限必要な技術を持った技術者が必要になります。
しかし、技術者の技量を測るのは発注者の側では難しいですね。この内容については、また別途ページを設けます。