明白なことは何もない理由: ソフトウェア開発におけるコミュニケーションの芸術

公開: 2020-10-22

私たちは皆、日常的にお互いにコミュニケーションを取らなければなりません。 プライベートでも、学校でも、職場でも。 どこでも、いつでも。 他の人よりも優れたコミュニケーションスキルを持っている人もいますが、結局のところ、私たちは皆、時々間違いを犯します.

一部の誤解は私たちの生活に小さな影響を与えますが (ノンアルコール ビールを注文しても世界の終わりではありません ;))、より大きな結果をもたらすものもあります (間違った歯を抜かなければならないことを指摘するなど)。 ソフトウェア開発におけるコミュニケーションの誤解はどちらかといえば後者であり、金銭的な影響を与える可能性があります。

私たち全員が抱える最も一般的な問題の 1 つは、他人が自分の心を読めると思い込んでしまうことです。 私たちは皆、時々これに罪を犯しています。 このフレーズを聞いたことがありますか: 「当たり前だった!」? 私はあなたが持っているに違いない。

私は客観的な自明性を信じていません。 誰にとっても明らかなことはあると思いますが、ある人にとっては明らかなことでも、他の人にとってはそれほど明白ではない場合があります。 ソフトウェア開発で効果的なコミュニケーションを実現するには、読心術を信じるのをやめて、考えていることだけを言いましょう。

言うほど簡単ではないのはなぜですか? 最初に通信プロセスを分析しましょう。

コミュニケーションの要素

50 年以上前に、Roman Jakobson は、相互理解の問題を分析するのに非常に役立つコミュニケーション モデルを発表しました。 図を見てください:

コミュニケーションが送信者と受信者の間の単なるメッセージ以上のものであることは明らかです。 コンテキスト、チャネル、およびコードはメッセージに影響を与え、言葉の受け取り方を変える可能性があります。 要素のうち 2 つが揃っていて、1 つが欠けている場合でも、問題は発生します。

具体的にはソフトウェア開発におけるコミュニケーションについて話しているので、上記の要因のいずれかを見逃すと、プロジェクトの改良セッション中に何が起こるかを分析する必要があります。 つまり、プロジェクト管理におけるコミュニケーションの重要性を詳しく見てみましょう。

常にコンテキストを提供する

コンテキストは、問題に関する全体像の説明を提供します。 製品のターゲット グループについてバックエンド開発者に伝える意味がわからない場合があります。 開発チームは、その背後にあるビジネス上の理由ではなく、自分たちの側で何が必要かを知るだけでよいように思えるかもしれません。 真実と違うことがあってはならない。

ソフトウェア開発におけるコミュニケーションは、機能要件に関するものだけではありません。 チームに提供できるコンテキストが多ければ多いほど、より良い結果が得られます。 製品コンセプトの適切な紹介は時間がかかり、時間とお金の無駄に見えるかもしれませんが、長期的には、技術的な実装の不十分さを回避するのに役立ちます.

チームが製品の長期計画を知っていれば、より適切な技術ソリューションを提供できます。 フード デリバリー モバイル アプリの最初のバージョンでプロモーション コードを実装したくない場合でも、ソフトウェア プログラマーに、次のバージョンで実装されることを知らせることをお勧めします。

完全なコンテキストを提供したことを確認するには、持っているすべての情報を共有したかどうかを自問してください。 「これは開発者にとって重要ではない、開発者はこれを知る必要はない、少なくともこの情報が役立つかどうかチームに尋ねてください。」 他の人が重要だと考える要因に驚くかもしれません。

チャンネルを賢く使う

チャネルは、プロジェクト管理において忘れられがちなコミュニケーション要素です。 現在、開発チームはさまざまな国で作業することが多く、バックエンドがインドにあり (現在、アメリカ企業の 85% もの企業が業務のほとんどをインドにアウトソーシングしています)、フロントエンド開発はポーランドにあり、プロダクト オーナーはアメリカにいます。 、私たちは皆、コミュニケーションをとるためにさまざまなツールを使用しています。

適切なチャネルを選択して効果的に使用することは、大きな影響を与える可能性があります。 電話会議、メール、チャットは素晴らしく、常に連絡を取り合うことができます。 しかし、メッセージが誤解される新しい方法も生み出します。

オンラインでチャットすることは、チームと同じ部屋で会話することと同じであるとは言えません。 私たちにできることは、リモート コミュニケーションの限界を念頭に置いて、それを克服しようとすることです。

効果的なリモート コミュニケーションのヒント

  1. 電話会議で会話しながらカメラの電源を入れます。 状況によっては、非言語コミュニケーションがメッセージの 50% 以上を占めることもあります。 たとえば、他の人があなたを見ることができるときに皮肉を言うと、はるかに簡単に見つけられます. 対話者のリアルタイムの反応も見ることができます。 他の人があなたの言葉と混同しているかどうかに気付くことができます。
  2. チャットで別の部屋を使用して、会話を分類します。 プロジェクトが複雑になると、ソフトウェア開発におけるコミュニケーションも複雑になる傾向があり、議論の新しいトピックが絶えず発生します。 別々の部屋を使用すると、メッセージを整理しておくことができ、手間をかけずに適切な受信者に到達できます。
  3. チャットで書き込み中にメッセージの受信者にタグを付けます。 それぞれの会話についていくのは簡単ではありません。 あなたが手紙を書いている人に確実に通知することは、あなたの最善の利益です.
  4. 書面による会話では、必要に応じて絵文字を使用します。 多用しすぎないでください。ただし、金曜日の午後の展開について冗談を言っていることを聴衆に知らせてください。

通信コードの見直し

作業の最初に、主要な用語を同じように理解するための共通コードを確立する必要があります。 「明らかな」ものでさえ。 たとえば、「ユーザーとして、選択した製品を同じ日に発送できるように、午前中にのみ注文することができます」という要件があります。 はっきり見えますよね?

えっと…では、この機能で朝とは正確には何を意味するのでしょうか? 朝はいつから始まりますか? 太陽が昇ったとき、または正確な時刻、つまり午前 7 時ですか? 午前 7 時の場合、どのタイムゾーンを考えていますか?

プロジェクト管理、特に IT におけるコミュニケーションは、非常に明確である必要があります。 推測する余地はありません。 私たちの場合、製品を 10 時 (主な開発者が起床する時間なので、彼にとっては朝という意味です) より前に注文できない状況が発生し、アプリの所有者は早起きの注文の不足により損失を被る可能性があります。

一般的な通信コードのベスト プラクティス

  1. よく使われる用語で用語集を作成します。 これはプロジェクトの開始時に役立ち、新規参加者が開発チームが話している言語を理解するのに非常に役立ちます。
  2. また、要件やフレーズをどのように理解しているかを受信者に尋ねることも有効です。 そして、私は役に立たないことについて話しているのではありません。 具体的に。 詳細についてお尋ねください。 あなたが理解されていることを確認してください。 通信コードのレビューを行います。

    もう一度例を見てみましょう。「朝」という用語について共通の理解を得るには、それを使用した人に言い換えてもらいます。
  3. 経験則として、ソフトウェア開発では、推測ゲームの余地を残すよりも、コミュニケーションを繰り返すほうがよいということです。

専門性の問題

上記のプロジェクト管理におけるコミュニケーションのすべての方法に加えて、ソフトウェア要件について議論する際に留意すべき重要なことがもう 1 つあります。 それがスタートアップであろうと企業向け製品であろうと、ほとんどの場合、クライアントはソフトウェアハウスに行く前に、自社の製品についてかなりの時間を費やします。 それに時間を費やすほど、彼らはそのトピックについてより経験を積むようになります。

あなたが専門家であるとき、あなたの周りの誰もがあなたと同じ分野の知識を持っているわけではないことを忘れがちです. これは、あなたにとって明らかな問題が、あなたが話している開発チームにとってはそれほど明確ではないことを意味します。

専門知識の問題を回避する方法

  1. 製品の旅の始まりに戻り、開発チームにあなたが行ったすべての決定を説明してください。 彼らがすべてがどのように始まったかを理解すると、より良い技術的解決策を見つけたり、あなたの考え方のギャップを埋めたりすることさえあります.
  2. チームが必要なだけ質問できるようにします。 愚かな質問がないということわざに誇張はありません。

ソフトウェアエンジニアリングチームで効果的にコミュニケーションする方法

できるだけはっきりと! 結果が苦痛になる可能性があるため、誤解の余地はありません。 客観的な自明性はなく、重要な情報を見逃すよりも、何度か繰り返したほうがよいことを忘れないでください。

ワークショップ アイコン

あなたのアイデアを優れたデジタル製品に変える

一緒に仕事しましょう

コミュニケーションの 3 つの要素すべてを念頭に置き、メッセージが意図したとおりに理解されたかどうかを再確認してください。 時間が経つにつれて、ソフトウェア開発におけるコミュニケーションが容易になり、要件を適切に説明することはもはや問題ではなくなります。

アプリ開発とコミュニケーションの両方の専門家であるソフトウェアハウスを探しているなら、もう探す必要はありません!

Miquido のスペシャリストに相談して、あなたのアイデアを実現してください!