画面の構成やユーザインタフェースの詳細をこれから作っていくにあたり、どういう人がどういうシーンで、どういう心境で使うのか、といったことを想定するのはソフトウェア設計の初期段階において非常に大事です。この使用シーンを文書化して仕様書の一部に盛り込む手法は業界のベテラン開発者も提唱しており、今回僕もそれに倣って、仕様書の一部としてシナリオを盛り込むことにしたわけです。
さて本題ですけれども、ソフトウェア開発者はプログラミングさえできればいいわけでは勿論ありません。上で述べたように、自分が開発しているソフトウェアがどのような人達にどういうシーンで使われるのか、想像力を駆使しなければ良いソフトウェアが開発できません。
そういえば、昔ながらのウォーターフォール型開発においては、設計部分とプログラミング部分が分離しており、ともすればそれらが別々の人間、あるいは別々の会社で行われることも多々あるように思います。僕自身もそのようなプロジェクトに携わった経験もあります。しかし、今現在は設計もプログラミングもどちらも行う状況にあります。要するに、プログラミングの工程になったら仕様通りに作ればいいとか言う話では全くなく、プログラムの実装中であっても、ユーザビリティを常に考慮して細かい仕様を変更できるし、すべきだということなのです。
このボタンの位置はもっと右にあると押しやすいとか、あるいは後戻りできない決定のボタンだから逆に押し間違い防止のためあえて押しにくい位置にするとか、選択肢の順序を入れ替えて最も選ばれる頻度の高い選択肢を選びやすくするとか、そもそも本来次の画面での入力項目だったが、よく検討してみたらその前の画面で入力できたほうが分かりやすいから移動するとか、もう色々様々ありとあらゆる細か〜い仕様を使い手の視点に立って最適化しなければいけません。だから、想像力が重要なのです。
このような状況は僕自身については今後も続くと思いますし、業界全体としても、設計からプログラミングを同じ人間、同じチームが行う状況はますます多くなっていくでしょう。そうなると、ソフトウェア開発者全てにおいてやはり想像力の重要性はもっと高くなっていくと言うべきでしょう。
※この記事について指摘・意見・提案・感想などありましたら下のコメント欄にどうぞ。
0 件のコメント:
コメントを投稿