Pythonで作るパスワードマネージャ。詳細設計編

本格的な詳細設計をしているといつまで経っても作れないので、機能ごとの処理のみとし、フローチャートや画面や帳票の項目、データベースの物理設計は省くものとする。

随時更新して行こう。

この記事の開発環境

  • バージョン: Python3.8
  • IDE: spacemacs
  • ライブラリ: まだ不明
  • 環境構築: pyenv、pyenv-virtualenv
  • OS: macOS

変更履歴

  • 新規作成:2020/02/16

パスワードマネージャ機能一覧

機能一覧

  • ログイン画面
    • アプリアカウント機能
    • アプリアカウント作成機能
    • ログイン機能
  • アカウント一覧画面
    • 共通メニュー
      • ログアウト機能→ログイン画面
      • アカウント作成画面
        • アカウント情報作成機能
      • ランダム文字列生成画面
        • ランダム文字列生成機能
      • ファイル出力画面
        • カウント情報ファイル出力機能
    • アカウント情報一覧機能
      • アカウント編集画面
        • アカウント機能更新機能
        • アカウント情報削除機能
      • アカウント詳細画面
        • アカウント詳細参照機能
      • アカウント情報コピー機能

アプリアカウント機能

アプリにログインするためのアカウント。アプリアカウントごとに情報を区別し保持する。ログイン状態でのみ情報を閲覧、操作でき、ログアウト状態では再びログインが必要となる

アプリアカウント作成機能

アプリアカウントはIDとPWを持つ。ログイン画面で作成する。

ログイン機能

アプリアカウントのIDとPWでログイン画面からログインできる。ログアウトするとログイン画面に必ず戻るので、ログインはログイン画面からのみ行う。

ログアウト機能

アプリアカウントをログアウトする。ログアウトはアカウント一覧画面からログアウトボタンを押下することによって行う。ログアウト後は必ずログイン画面へ戻る。

アカウント情報一覧機能

アプリアカウントに紐ずくアカウント情報の全てを一覧表示する。一覧としてはSITEとIDとPWとのみをタイル状に上下に並べる。PWは基本的に伏せ字とし文字列表示もできる。

カウント情報機能の更新、削除、参照の機能をもつボタンを有する。

アカウント情報作成機能

共通メニューの作成ボタンから作成画面へ遷移する。SITEとI DとPWとメモを入力できる。SITEとIDとPWが入力必須。決定ボタンで保存。OKボタンで画面を一覧画面へ遷移させる。

アカウント情報更新機能

アカウント情報一覧の編集ボタンから編集画面へ遷移する。SITEとIDとPWとメモを編集できる。決定ボタンで保存。OKボタンで画面を一覧画面へ遷移させる。

アカウント情報削除機能

アカウント情報一覧の編集ボタンから編集画面へ遷移する。削除ボタンで削除。OKボタンで画面を一覧画面へ遷移させる。

アカウント情報コピー機能

アカウント情報一覧のコピーボタンでそれぞれIDとPWをクリップボードにコピーできる。

ランダム文字列生成機能

共通メニューの生成ボタンから生成画面を新規ウィンドウで開く。以下の条件を指定できる。

  • 最小文字数の指定
  • 最大文字数の指定(32文字まで)
  • 英字を含める(なんの指定もない場合は英字のみとなる)
  • 数字を含める
  • 記号を含める
  • 最初の文字の種類を指定できる
  • 大文字を指定できる
  • 小文字を指定できる(何の指定のない場合は小文字のみとなる)

生成ボタンで生成する。生成するのは1個だけ。繰り返し生成できる。

カウント情報ファイル出力機能

共通メニューの出力ボタンから出力画面を新規作成する。全情報をファイル出力する。選べるファイル形式は次の通り。

  • CSV形式
  • PDF形式
  • Excel形式

ファイル出力する場所を選べる。

こんな感じでやってみよう。

コメントする