ユーザー中心設計では、ユーザーの種類を表すためにペルソナを作成する。ペルソナごとに、慣れているユーザーインターフェイスの種類（これまでの経験、またはインターフェイスの単純さのため）、および特定の分野や訓練での技術的な専門知識や度合いが指定されることがある。エンドユーザーのカテゴリーに制約がほとんど課せられていない場合、特に一般の人々が使うプログラムを設計する場合、最小限の技術的な専門知識または過去の教練を期待するのが一般的である。
エンドユーザー開発の分野では、ユーザーと開発者の間の典型的な区分が曖昧になる。これは、プロの開発者ではない人々が、プログラミング言語の重要な知識なしに、自動化された動作や複雑なデータオブジェクトを作成する活動や技術のことを指す。
他のシステムまたはソフトウェアエージェントを（役割をもつ実体）とするシステムには、直接のエンドユーザーは存在しない。
ユーザーアカウント.
ユーザーアカウントを用いると、ユーザーはシステムに対して認証を行い、そのシステムによって提供される、またはそのシステムに接続された資源を利用するための認可を受けることが可能となる。ただし、認証は承認を意味するものではない。アカウントにログインするために、ユーザーは通常、課金、セキュリティ、ロギング、およびリソース管理の目的で、パスワードまたは他のを用いて自分自身を認証することが要求される。
マルチユーザーシステムの各ユーザーアカウントは、通常、そのユーザーの活動のみに関連するファイルを保存するためにホームディレクトリを持つ。これは、他のユーザーからのアクセスから保護されている（システム管理者はアクセスできるかもしれない）。多くの場合、ユーザーアカウントには、そのアカウントの所有者が提供した基本情報を含むパブリックが含まれている。ホームディレクトリ（およびシステム内の他のすべてのディレクトリ）に保存されているファイルはファイルシステムのアクセス許可を持ち、オペレーティングシステムによって検査され、ファイルの読み取り、実行、またはそのディレクトリに新しいファイルを保存するためのアクセス権が与えられるユーザーが決定される。
パスワードの保存.
ユーザー名の形式.