こんにちは!  
iUから実習に参加している小林歩夢です。  

今週は大きくわけて2つの業務に取り組みました。  

1つ目は、在庫管理アプリの報告です。  
2つ目は、お客様からもらったフィードバックを元にアプリの修正 です。

今週の業務内容

在庫管理アプリの報告 

今週の月曜日、私にとって大きな節目となる業務に挑戦いたしました。 

かねてよりA社様からご依頼をいただいておりました「在庫管理アプリ」の進捗報告会において、私が報告担当を務めさせていただきました。 

今回の報告会はMicrosoft Teamsを用いたオンライン形式で行われ、画面の向こうにはA社の社長様、そしてシステムの専門知識を持った実務担当の方が同席されていました。 

自社からは、私の他にチームメンバーが2人、サポートメンバーが1人、そして自社の社長も同席し、一丸となってこの報告会に臨みました。その中でメインの報告担当を務めることとなり、私にとっては、今回が人生で「初めての外部向け報告」という緊張の舞台となりました。 

今回報告を行った「在庫管理アプリ」は、Microsoft Power Appsをプラットフォームとして構築しており、現場の業務効率化をスピーディに実現することを目指して開発を進めています。 

本アプリは、部品を登録する「入庫登録」とその「入庫履歴」、部品を使用した際の「出庫登録」とその「出庫履歴」による入出庫管理をはじめ、実際の在庫数とシステム上の数値を合わせる「棚卸登録」とその「棚卸履歴」、そして現在の状況を把握できる「在庫管理」といった機能を主に備えています。今回は、これら一連の基本機能がPower Apps上で実装され、実際に動作する段階になった中での進捗報告となりました。 

オンラインでの発表ということもあり、対面とは違った独特の緊張感がありました。相手の表情や細かなリアクションが画面越しでは伝わりづらい分、「こちらの説明のペースは早すぎないか」「画面共有している資料やアプリのデモ画面はしっかり見えているか」と、本番直前まで細心の注意を払って準備を進めました。 

終始声が震えてしまうほど緊張していましたが、チームメンバーが作り上げてくれたアプリの魅力や進捗状況を、最後までしっかりと説明しきることができました。 

しかし、報告を進める中で、実際の業務フローにおける「認識の違い」に直面する場面もありました。 

私たちが設計していた「出庫登録」の機能は、単純に「入庫した部品を使用した際に、その部品の数量がシステム上から引かれる仕組み」だけを想定していました。しかし、社長様やシステム担当者様とお話しする中で、実際の実務においてはそれだけでなく、「完成した製品の在庫(完成在庫)」の管理も密接に関わっていることを初めて知りました。部品の消費だけでなく、完成品としての在庫登録までを一連の流れとして捉える必要があったのです。 

この認識のギャップについて、話が本筋から脱線しかけそうになった瞬間、焦る私を察して同席していたチームメンバーがすかさず補助に入ってくれました。 

メンバーが仕様の補足やPower Appsでの今後の対応策について冷静にフォローしてくれたおかげで、無事に本来の流れに戻すことができました。自分一人では立ち応生してしまっていたかもしれない局面で、チームの連携の強さに本当に救われ、感謝の気持ちでいっぱいになりました。 

無事にTeamsのミーティングを退出し、張り詰めていた緊張から解放された瞬間は、安堵感と同時に「やり遂げた」という強い達成感がこみ上げてきました。 

もちろん、すべてが完璧だったわけではありません。実際にフロントに立ってお客様からのご質問やご指摘、フィードバックをいただいたからこそ、自分自身のいくつかの課題が見えてきました。「ビジネスシーンに適した受け答えと言葉遣い」、「説明の順序と論理成」、そして「お客様の業務を深く理解したうえで提案する姿勢」の大切さです。これらは、画面共有をして一方的に資料を読み上げるだけでは気づけなかった、双方向のコミュニケーションが発生する「本当の報告の場」だからこそ得られた貴重な学びでした。今回いただいたフィードバックを今後の開発や報告に活かし、より実践的なシステム開発と、お客様に分かりやすく伝えられる説明力の向上に努めていきたいと思います。 

お客様からもらったフィードバックを元にアプリの修正 

火曜日の業務では、お客様から前日にいただいたフィードバックを基に、在庫管理アプリの修正作業を行うとともに、その修正内容を翌日に技術担当者様へ報告するという流れで業務を進めました。 

お客様からいただいた主なフィードバックとして、入庫登録機能では、品名を入力した際に部品IDや品種名を自動取得できるようにすること、仕入先名の候補を自動表示すること、さらに単位や単価も自動取得し、保管場所についても候補を表示して選択できるようにしてほしいというご要望がありました。また、入庫履歴出庫履歴・棚卸履歴については、単価と単位も表示できるようにしてほしいという改善要望をいただきました。さらに、在庫管理画面では、品名を入力すると仕入先名の候補が表示され、その候補を選択することで検索条件を絞り込み、目的の在庫情報を表示できるようにしてほしいというご意見もいただきました。 

私はこの中で、在庫管理画面の修正を担当しました。品名の入力内容に応じて仕入先名の候補を表示し、その候補を利用して検索を絞り込めるよう、Power Appsの前方一致検索やフィルター機能を活用しながら実装を進めました。利用者がより少ない操作で目的の在庫情報を検索できるよう意識し、お客様の要望を反映したシステムになるよう修正を行いました。 

しかし、修正内容の報告を行う当日、思いがけないトラブルが発生しました。Power Appsで最終確認を行っている最中に、突然私のPower Appsが正常に動作しなくなり、アプリの編集や確認ができない状態になってしまいました。そのため、急遽チームメンバーの1人に画面を共有してもらい、その画面を使用して修正内容の発表を行うことになりました。 

ところが、発表の途中でさらにアクシデントが発生しました。画面共有を行っていたメンバーのPower Appsも突然フリーズしてしまい、アプリの操作ができなくなってしまったのです。私は発表担当だったこともあり、その瞬間は頭が真っ白になってしまい、どう対応すればよいのか分からず焦ってしまいました。しかし、画面を共有していたメンバーがすぐに補足説明を行い、その場をフォローしてくれたおかげで、何とか最後まで発表を終えることができました。メンバーには本当に助られてます。 

発表終了後は、発表前に完了できていなかった修正箇所を引き続きPower Appsで編集しようとしました。しかし、今度はチームメンバー全員のPower Appsでも同様のフリーズが発生し、誰も編集できない状態となってしまいました。そのため、その日の作業は中断せざるを得ず、修正作業は翌日に持ち越しとなりました。 

翌日になっても状況は改善されておらず、Power Appsの再起動、キャッシュの削除など、考えられる復旧方法をいくつか試しましたが改善には至りませんでした。その日はPower Appsでの作業を進めることができなかったため、それぞれが別の作業を行いながら復旧を待つことになりました。 

そして本日(7月17日)、Power AppsのVersions(バージョン履歴)を利用して以前の正常な状態へ復元を試みたところ、無事にアプリを復旧させることができました。しかし、復元したバージョンは修正作業を行う前の状態であったため、発表前までに対応していた修正内容の一部がリセットされていることが判明しました。そのため、復旧後は発表前に完了できていなかった修正箇所と、リセットされてしまった修正内容をメンバーの1人が確認しながら再度実装を行いました。今回の経験を通して、Power Appsのバージョン管理機能の重要性だけでなく、こまめに保存やバックアップを行うことの大切さも改めて学ぶことができました。 

今週は、お客様からいただいたフィードバックを基にシステムを改善する経験だけでなく、Power Appsの予期せぬトラブルにも直面した一週間でした。発表中のアクシデントやシステム障害など、想定外の出来事が続きましたが、そのたびにチームメンバーと協力しながら乗り越えることができました。また、システム開発では機能を実装する技術だけではなく、トラブル発生時に冷静に対応する力や、チームで状況を共有しながら問題を解決する力も重要であることを実感しました。今回の経験を今後の開発業務に活かし、より安定したシステム開発と、お客様の要望に迅速に対応できるのを目標に精進したいと思います。 

学んだこと・気づいたこと

新しく理解したこと  

今回の業務を通して、システム開発ではお客様の要望を実装するだけでなく、実際の業務を理解した上で改善案を考えることが重要であると学びました。また、Power Appsでは予期せぬ不具合が発生することもあり、バージョン履歴(Versions)を利用することでアプリを復元できることや、日頃からこまめに保存やバックアップを行うことの重要性を理解しました。さらに、発表中のトラブルでは一人で対応するのではなく、チームで協力して問題を解決することが円滑な業務につながることを実感しました。 

今後にどう活かすか

今後は、お客様からいただいたフィードバックを正確に理解し、利用者の立場に立ったシステム開発を意識して取り組みたいと考えています。また、Power Appsのバージョン管理を活用しながら定期的に保存を行い、トラブル発生時にも迅速に対応できるよう備えていきます。さらに、発表や打ち合わせでは、想定外の状況が発生しても冷静に対応できるよう事前準備を徹底するとともに、チームメンバーとの情報共有や連携をこれまで以上に大切にし、より質の高いシステム開発につなげていきたいと思います。