就転活のコツ・秘訣

【未経験からIT転職】40代に期待するのは設計スキル!【基本設計】

2020年3月3日

21世紀の現在、ネット上では掲示板やアンケートフォームと言った一見簡単に見えるサービス機能から、商品カタログ、eコマースなどのスケールの大きなコンテンツまで、様々なダイナミックコンテンツが普及するようになってきました。

ドラスティックに変革を求められる日本社会において、キャリアを重ねたシニア層なら、IT業界に携わる・携わらないに関係なく、現状のままで良いと考えている人はいないでしょう。

ITエンジニアへの転職を考える方にとって、ダイナミック(動的)サイト構築を自在に行えるスキルを身に着けたいと思っている人は少なくないと思います。

40代に期待するのは設計スキル!

スクールや独学でプログラム技術を習得した中高年が、IT転職に躓く話をよく耳にします。

ズバリ言います。

企業が40代に求めるスキルは、プログラミングスキルだけでは足りていません。

何故なら、中高年にプログラミングを期待する企業はないからです。

すこし整理してみましょう。

本当に求められるのは何スキル?

身に付けなければならない事が多すぎて、本当に必要なスキルが何なのか、よく判らないという話をよく耳にしますが、企業が40代の中途社員に求めるものはマネジメント力です。

若手プログラマーを多く抱える企業であれば、プログラマーをまとめる力を持った人材を欲しがるはずです。

では、マネジメント能力さえあれば通用するのでしょうか?

マネジメントとは、総合的なITスキルによって成り立つ能力な為、未経験者では正直厳しいと言わざるを得ません。

無理をせずに経験豊富なシステムエンジニアに任せた方が無難です。

では他に何があるか一般的なダイナミックコンテンツの作業フェーズを参考に掘り下げてみましょう。

40代ともなれば、一般的にはシステムエンジニア の立ち位置「① 設計フェーズ」を求められると思いますが、キャリアが無い場合は厳しいと言わざるを得ません。

次に候補となるフェーズは「② 実装・構築フェーズ」になりますが、実績のない場合は・・・

では、「③ テストフェーズ」ではどうでしょう。

テスターとは、テストエンジニアの設計した「テスト設計書」を元に、淡々とテストを行っていく「エンジニア見習い?」や「アルバイト」を指すことが多いです。

私は長年この業界で働いていますが、テスターでキャリアアップした人を見たことがありません。

あくまでも、IT業界の空気を感じる程度にとどめ、間違ってもテスターとして居座ってはいけません

やはり無難なのは、システムエンジニアの補佐的な立ち位置になりそうですね。

そのためには、プログラミングスキルの他、必要なスキルは何か探してみます。

  • システムエンジニアの実作業フェーズ
    • 要求分析
      クライアントが解決したい課題などをヒアリングして取りまとめる作業となります。
    • 要件定義
      クライアントはITについてはよく解らないことが多く、システムエンジニアがどのような技術で問題解決できるか取りまとめます。
    • 基本設計 or 外部設計
      本フェーズは基本設計や外部設計とも呼ばれ、一般的に外部設計までが上流工程に含まれます。
      基本設計書、外部設計書 、レビュー報告書 、システムテスト計画書 などが成果物となります。
    • 詳細設計 or 内部設計
      詳細設計では基本設計を基に、システム内部の動作や機能、物理データなど、ユーザーから見えにくい詳細な部分の設計を行います。
      詳細設計書、内部設計書、レビュー報告書などが成果物となります。
    • プログラム設計
      昨今では工数削減の影響から、プログラム設計フェーズを行わない現場が増えています。
    • 実装(プログラミング)
      プログラマーの作業
    • テスト
      テスターの作業
    • 納品
    • 運用

上記の作業フェーズ(青文字)のうち、「要求分析」と「要件定義」はクライアント側業務内容の理解が必要なため、候補からは外します。

残るのは「基本設計 or 外部設計」と「詳細設計 or 内部設計」と言うことになり、プログラミングのスキルを持っていれば、基本設計書を理解するのに必要知識は何とかなりそうです。

あとは上記2つの成果物の内容が具体的にどんなものか理解するだけです。

基本設計書(外部設計書) とは?

本フェーズは基本設計や外部設計とも呼ばれ、一般的に本フェーズまでが上流工程に含まれます。

基本設計書(外部設計書)とは、画面の表示方法や操作方法など、ユーザーから見えるインターフェース部分の基本設計を行います。

注意ポイント


今回は、私が過去に請け負った某派遣エージェント様の人材管理システム(Java)の設計書を例に基本設計書を説明します。
そのまま、すべてを公開することは出来ないため、かなり端折ってしまう箇所があるかもしれませんがご了承ください。

ナビゲーション設計書とは?

ナビゲーション設計フェーズで作成されるドキュメントは、プログラム設計時の基礎資料となるものです。

ナビゲーション設計では「画面一覧」「画面遷移図」が代表的な成果物となります。

画面一覧

下記は画面一覧の例です。

それぞれの画面に、画面IDを付与することで、 全体的に一貫した思想でサイトを設計してゆくことが可能になり、メンテナンス性も向上します。

上記画像は、私が過去に受けた案件の画面一覧です。クライアントに許可取得済み!

上記の画面一覧は、ユーザーの権限毎に画面表示可否を記載しています。

動的プログラムを利用したタイナミックコンテンツでは、画面表示とその画面を実際に生成するブログラムファイルが必ずしもイコールとはなりません。

例えば、ひとつのブロクラムで異なる複数の画面を表示できたり、逆にまったく画面出力を行わず、単にデータの処理のみ行うといったプログラムも存在します。
これがダイナミックコンテンツを難しくしている原因の一つです。

画面遷移図

画面毎の遷移関係を画面遷移図上へ表現しています。

実線は遷移、点線は戻り遷移を表現しており、番号は機能IDとしています。
私のスタイルでの記法なので、ここら辺の作法については、現場毎に変わって来ます。

ブロクラマーが必要とする情報は、なるべくこのナビゲーション設計書に盛り込み、視覚的に理解できるように作成します。

上記画像は、私が過去に受けた案件の画面遷移図です。クライアントに許可取得済み!

画面遷移図でフォローしきれないようなボタン押下時の動作などは、ナヒゲーション機能設計時に改めて整理します。

ナビゲーション機能設計書とは?

画面遷移図は、主要な部分の画面遷移については表現できますが、いろいろな手順で画面を遷移してきたときに、ページ内の各ボタンやリンクをクリックした際、画面の表示項目やレイアウトにどういった変化が起こるか、というところまでは説明できません。

ナビゲーション機能設計書とは、画面出力時の「表示順」や、ボタン押下時の「挙動」など、動作の内容を設計します。

ナビゲーション機能設計の段階で、 設計すべきポイントを明確にしておきます。

ポイント

  • ボタンやリンクの種類と表示 (機能毎の分類)
    ボタンやリンクの属性「テキスト」「リスト」「リンクリスト」などを画面項目一覧で管理します。
  • ボタンやリンクのクリック時の動作
    ボタンやリンク押下時に起動するチェック機能「入力チェック」「文字数チェック」「数値チェック」などを項目チェック一覧で管理します。
  • 画面出力時の項目取得元情報
    画面表示された際に、出力されるべき項目の取得元情報を画面項目一覧で管理します。
  • ボタンやリンクのクリック時に送信されるパラメータ
    ボタンやリンク押下時に送信されるパラメータ情報をパラメータ一覧で管理します。

画面イメージ

完成後の画面イメージを作成します。

情報をリスト形式で表示する際に重要なのは「イベント」と「ソート順」をどうするかというポイントです。

ソート順をどう設計するかで、絞り込まれた情報へのアクセスや理解の容易さの部分で、ユーザービリティに差が出ててきます。

  • 例)イベント「リスト連動方式」
    1. 絞り込み条件選択と同時( OnChange )にリスト表示。
    2. 絞り込み条件選択後「検索」ボタン 押下後 (OnSubmit) リスト表示。

ちなみに下記の画面イメージでは「2.絞り込み条件の選択後「検索」ボタンを(OnSubmit) 押下後 」を採用しています。

上記画像は、私が過去に受けた案件の画面イメージです。クライアントに許可取得済み!

画面編集仕様書

クライアントとの打ち合わせの中で受け取った資料やデータなどを洗い出し、各画面において表示すべき情報をプロットします。

文字サイズやフォント、桁数などの情報も画面イメージ編集仕様書の中に記載しておきます。

画面項目一覧

画面表示された際に、出力されるべき項目の取得元情報を管理します。

例えば、案件管理詳細画面の「案件NO」は、案件テーブルの「案件NO」フィールドの値を取得する。と言った具合です。

上記画像は、私が過去に受けた案件の画面項目一覧です。クライアントに許可取得済み!

項目チェック一覧

ボタンやリンク押下時に起動するチェック機能「入力チェック」「文字数チェック」「数値チェック」情報などを管理します。

例えば、ログイン画面のログインボタン押下時には、メールアドレス蘭及びパスワード蘭に記入された情報に対して「入力必須チェック」及び「入力文字チェック(半角)」機能が起動する。と言った具合です。

上記画像は、私が過去に受けた案件の項目チェック一覧です。クライアントに許可取得済み!

パラメータ一覧

ボタンやリンク押下時に送信されるパラメータ情報を管理します。

例えば、企業マスタ一覧画面で送信ボタンを押下時に、「ジョブID」や「ページカウント」等、同時に送信されるパラメータを管理しています。

上記画像は、私が過去に受けた案件のパラメータ一覧です。クライアントに許可取得済み!

画面共通イメージ

すべての画面に共通で使用される「メニュー情報」や「ヘッダー」「フッター」などを管理します。

上記画像は、私が過去に受けた案件の画面共通イメージです。クライアントに許可取得済み!

ダイナミックコンテンツの機能性を表現するための画面遷移図は全体像の把握には役立ちますが、実際のプログラミングを考えた場合、画面遷移図には表現されないさまざまな処理が発生します。

プログラムチャート

各種エラー処理などプログラム内部の処理の流れを表現するにはプログラムチャートを作成します。

ダイナミックコンテンツの場合、「一覧表示機能」「詳細表示機能」「改ページ実行機能」「登録実行機能」「編集実行機能」「削除実行機能」など、多岐にわたって処理が存在しますが、すべての機能ごとにプログラムチャートを記載していきます。

下記イメージは、アプリケーション情報管理画面の「削除実行処理」プログラムチャートを抜粋しています。

上記画像は、私が過去に受けた案件のプログラムチャートです。クライアントに許可取得済み!

実際の制作現場においては、プログラムチャート作成用に規定されている各種図形をフルに活用するという必要性はなく、単純な図形のみを使って表現した方が、第三者にも理解しやすいフローチャートとなることも多いです。
上記は私の我流チャートになります。

赤の点線はエラー処理を表現しています。


以上、簡単に基本設計フェーズの設計書作成について説明してきました。

現場によって、扱う設計書のフォーマットは異なります。
現場では現場の方針に従ってください。

最後に最も重要なこと、それは設計思想を持つことです。

「なぜこうしたいのか」という思いを設計書に記述してくことです。
現場では「魂を入れる」と表現されます。

鉛筆なめて、既存の設計書の数字をチョコッと変更して「設計しました!」なんてエンジニアが増えてきましたが、結局はその後のレビューでボロボロされ、途中で消えてしまうことになります。

まとめ

まとめ

プログラミングスキルを身に付けたら、簡単なシステムを作成してみることをお勧めします。

何度も何度もコードを書き続けて、プログラムの特性が掴めるころには、この基本設計書の意味が理解できるようになってくるはずです。

基本設計書の作成が出来るようになりさえすれば、もう未経験者ではありません。

上流工程(基本設計フェーズ)専門のエンジニアとして 、積極的に転職活動が出来ると思います。

後は、残る詳細設計書についての知識を得れば、より実践でキャリアを積んでいくだけです。

よく読まれている記事

1

21世紀の現在、ネット上では掲示板やアンケートフォームと言った一見簡単に見えるサービス機能から、商品カタログ、eコマースなどのスケールの大きなコンテンツまで、様々なダイナミックコンテンツが普及するよう ...

2

テクノロジーの進化により今後10年で50%以上の仕事がなくなると言われています。 それは現在の仕事がプログラムに取って代わられることを意味します。 今後「プログラミング」は「文字」と同様に「一般教養」 ...

3

2019年、出生数は過去最小の86万4千人!推計より2年早く、初めての90万人割れ日本の経済成長(2019年10~12月期の実質GDP)は、年率6.3%減! コロナウィルスとは関係なく急落しています。 ...

4

ITエンジニア転職に必要な知識として一番最初に挙げられるのは「プログラミング」の知識でしょう。 20代、30代であれば確かにそれは正しいと言えます。 しかし、40代、50代を対象にした場合、果たして「 ...

5

ここ数年、メディアなどでフリーランスという言葉を耳する機会が増え、それに比例するようにフリーランスを志す人が急増しています。 テクノロジーの進歩により、個人単位でのロケーションにとらわれないスタイルで ...

6

人口知能や機械学習というキーワードは、IT業界で働く人にとっては馴染みが深くなりつつあります。 これらを駆使するAIエンジニアには高いスキルが要求され、日本だけでなく世界的に見ても不足している状況です ...

-就転活のコツ・秘訣

Copyright© Beエンジニア , 2020 All Rights Reserved.