Webサイト制作演習③~⑥ DBシステムまとめ

今回は技術的な話ではなく、システム構築そのものに対する記事です。

データベースを使ったシステム構築

先週から、データベースを使ったシステムの構築作業の講義を簡単に行った。
「システム構築」というと難しい響きだが、データベースを使ってやることはかなり限られる。

  • 追加
  • 更新
  • 検索
  • 削除

大きく分ければこの四種類だけ(閲覧も「全データを表示」するという検索の一種になる)。
SQLで言えば、「INSERT」「UPDATE」「SELECT」「DELETE」の四種である。
PHPではPDOを使って、これらのSQL文を利用できるので、「どんなデータを」「どんな風に表示するのか」を考え、実現する。
最終的にはこれらの作業が行える管理画面を作る事が目的になる。

プログラム的には
入力(データを打つ・ボタンを押す) → 処理(追加・削除・更新・検索) → 出力(結果を画面に表示)
の三工程までに単純化できる。
工程を単純にした上で書いていけば、やる事はそう難しくはない。

利用しているところで言えば、WordPressのダッシュボードもデータベースを利用したシステムの一つと言える。
また、PHPMyAdminも管理ツールではあるが、実際には「クライアント目線」に立った構築が求められる。
普段利用しているSNSなども、実際にはデータベースと連携しているが、顧客として使う時にはそれを意識する事は無い。「誰でも使える分かりやすいシステム」が理想形になる。

UI(ユーザーインターフェース)を意識したデザイン

「システム構築」なんていうと、プログラマーだけの仕事の様に思えるが、デザイナーの役割は従来より高まっている。上の項で述べた様に、システム画面は「クライアント目線」での使いやすさが非常に重要。
現状ではSNSや会社などで使われるローカルのシステムなど、いろんな場面で使う機会は多いはずだが、使い勝手の悪いシステムは多い。
ここで登場するのがUI(ユーザーインターフェース)という概念で、かなり幅広い意味があるが、ものすごく大雑把に言えば「使い勝手の良さ」を示す。
最近では「UIデザイン」「UIデザイナー」という言葉がよく使われる。単に見た目を考えるだけでなく、より使いやすいシステム画面を考えたデザインの事。
ボタンの押しやすさや、入力欄の量やメニューの配置など、一つ一つの工夫で、システムの使い勝手は大きく変わる。

スマホアプリの普及以後、これまで以上にUIの向上が求められる時代。
Webデザインでもそうだが、「クライアントの目線」に立った「使いやすさ」まで意識できると、デザイナーとしての幅は大きく広がる。
成果を出すUIデザイン9つのメソッド

「権限」について

システムを構築する上で、必要な項目はかなり単純化出来た。
しかし実際のWebシステムを構築する上で重要になるのが、「権限」である。
システム画面は基本的に、多くの人々が利用する。
その上で、それぞれがデータの管理を行うわけだが、そこで問題が発生する。
そもそも、不特定多数の誰もが、データベース上の全てのファイルを更新したり削除したりできる様な状態では、システムは成り立たない。

そこで、多くの場合はシステムに関わる人間を絞る為に、ログイン機能を導入する。
そもそもログインできる人間以外には触れらない状態にしておけば、間違いが起こる可能性は減る。

その上で、更にユーザー毎に権限を割り振る場合も多い。
SNSを筆頭にしたシステムでは、基本的に自分の投稿したものに関してのみ、変更や削除の権限が与えられる。
それに対し、ごく一部の管理者は全ての情報を一限で閲覧・変更・削除できる権限を持っている。

システムを構築する上では、「権限を幾つ用意するのか」、「それぞれどこまでできるのか」を考えるのも重要な要素になる。
基本的にはユーザー権限もデータベースに登録しておき、IF文などで使える機能を絞っていく