新人Aさんは今「険しい大きな壁」に阻まれている。
開発環境はMVC、業務ロジック、コントローラーはC#とPLSQLで
ViewはjavaScript、JQuery、cshtml、DBMSはOracle
この関係性を理解するだけでも新人には一苦労なはず。
案の定まだ、把握はしていない様子だ、しかし、そこは対した問題ではない。
そんな中、任せているタスクは、既存システムへ新規帳票を追加するもしくは既存帳票修正する
タスクなので、今までは見よう見まねでどうにか組んできた。
しかし、ここに来て、エンドユーザが何か正しいのか説明するのに苦労する複雑な「管理帳票」
を作成するタスクを任せて状況が一変した。
残業時間が発生し、進捗も先が見えない状態に。
なぜなのか?
それは、複雑な業務ロジックを理解せずに、取りあえずプログラムをコーディングしていることにある。
その結果として、部分的に要件を満たしても、他のケースが満たせなくなっている。
出力される帳票の「全体イメージが出来ていない」
簡易的な仕様書の内容が全く理解できていない訳ではなく、全体を見渡せていない。
部分的にはプログラミングできるが、全体としては機能要件を満たせない。
結果として「 いきなりコーディングするのは止めた方が良い 」との助言をするに至った。
①仕様書を自分で分かる、判るかたちにおき直す
②「判るかたちにおき直したもの」が提示されているケースに対して機能を満たしているか
サンプルデータを頭の中、いや、今はまだ机上でトレースする。
③SQL文でどこまで処理するか、サービス側でC#でコントロールブレークで処理するか
、既存プログラム部分をどう生かすかプログラム分割を考える。
④プログラミングする。
⑤単体テスト仕様書を下記のことを考慮して作成する。
イレギラーケースや、上限値、下限値、コントロールブレークの単位について
漏れなくテストできるか
⑥単体テスト仕様書のレビューを受け、修正する。
⑦単体テストを行う。
教育とは寄り添うことだと思う。
株式会社クロノステクノロジー
Web・業務システム 言語・環境別 MS系 具体例としてはMVCを用いたWEBベースの独自フレームワーク上で、日本独自な、かゆい所に手が届く製造業や設備管理向けのWEBベースの業務アプリケーションの提供を行っています。 JAVA系 レガシーシステムの改善。代理店からの不具合情報を元に、調査・対策の進捗や結果を管理するシス テムの開発 特別な投資なく駐車場の予約と駐車管理を行うシステム <概要> 名古屋と東京でシステム開発やインフラを中心に下記事業を行っている会社です。 (1) コンピュータシステムのコンサルティング・設計・開発・販売・保守 (2) コンピュータシステムの運用管理に関わる業務 (3) セキュリティシステムの企画・開発・制作・販売 (4) コンピュータシステムに関するソフトウェア及びハードウェアの販売 (5) WEB、マルチメディアに関するソフトウェアの企画 (6) その他、各種コンピュータ関連事業