・背景
自社製品である流体解析ソフトウェアのGUI部分の設計、開発を行っていました。
・チーム構成
PM1人、メンバー5人程度
・使用技術、開発環境
開発環境はVisual Studio、言語はC、C++で開発を行っていました。最初はtortoisehgで構成管理していましたが途中でAzure上にGitを用いて管理するようになり、その移行作業の一部も担当しました。
・取り組み方
ユーザーからの要望をもとにGUIの画面の設計、開発、簡単なテストを行っていました。GUIの開発には明確な正解がなく、試行錯誤しながらどうすれば使いやすいかを考えながら開発に取り組んでいました。自分の担当外の部分でも必要であればコードを見て間違いを指摘するなど考える力を生かすことができました。ユーザーから使いやすいとフィードバックをいただくこともありやりがいを感じながら業務に取り組めていました。
・具体的な実装内容
1.部品一覧表の作成、改良
ソフトウェア内部で保持しているデータをリスト形式で出力する機能の実装。CSV形式での出力や特定の形式のCSVをインポートして設定を変えたりリストのヘッダーをクリックしてソートするなどの機能を持たせました。
2.製品の条件設定リストを改良
以前までは自社製品の条件設定リストでは部品や領域を一つずつ選択して条件を設定していましたが、複数選択して一括で条件を設定できるようにしました。条件設定リストのほぼ全て(10程度)に適用しました。
3.製品の条件の設定ページの作成
特定の条件を設定する機能の実装。ページ数は5つ程度、設定項目は数十にわたる規模のものをGUI案の設計から実装まで行いました。規模が大きかったため1つずつ着実に実装しました。
4.製品のバッテリー関連の条件設定ページの作成
バッテリー関連の条件を設定する機能を実装しました。複数の条件を自動で設定できるようにするなどユーザーの使いやすい機能を実装しました。セールスエンジニアと共に議論を重ねながら使いやすい機能の実装を目指して取り組みました。
5.製品の定常判定収束機能の強化
内部実装エンジニアの設計したGUI案をもとに開発を行いました。そのままでは問題が発生することが予測できたため案を設計したエンジニアと議論を重ねて無事機能を実装することができました。
6.メッシュ品質を確認できるダイアログを作成
メッシュの品質指標を表示する機能の実装。アプリケーションエンジニアとの設計案のすり合わせや内部の品質指標を計算する機能を実装する開発エンジニアとのすり合わせなど他部署との連携する経験を積むことができました。特にこのプロジェクトには複数のアプリケーションエンジニアが関わっていて様々な要望がある中で全員にとって納得できるような機能を実装することは経験になりました。