タグ付けされた質問 「client-relations」

契約交渉、要件分析、開発、保守の側面を含む、クライアントとのやり取りに関する質問。

14
悪いコードをクライアントに示しますか?
クライアントから、別のコンサルタントが開発したASP.NET WebformsアプリケーションであるWebサイトの再設計を依頼されました。比較的簡単な仕事のように見えましたが、コードを見てみると、そうではないことは明らかです。 このアプリケーションはうまく書かれていません。まったく。SQLインジェクション攻撃に対して非常に脆弱であり、ビジネスロジックがアプリケーション全体に広がっており、多くの重複があり、デッドコードは何もしません。その上、それは窒息させられている例外をスローし続けるので、サイトはスムーズに実行されるように見えます。 私の仕事は単純にHTMLとCSSを更新することですが、HTMLの多くはビジネスロジックで生成されており、整理するのは悪夢です。再設計に関する私の見積もりは、クライアントが目指していたよりも長くなっています。彼らはなぜそんなに長いのか尋ねています。 このコードがどれほど悪いかをクライアントに説明するにはどうすればよいですか?彼らの頭の中では、アプリケーションは素晴らしい動きを見せており、再設計は一回限りのものにすべきです。前のコンサルタントに対する私の言葉です。非技術系クライアントが理解できる簡単で具体的な例を挙げるにはどうすればよいですか? 更新 すべての回答をありがとう。SQLインジェクション攻撃のデモは理にかなっており、これをテスト環境でデモします。これは、このアプリケーションの多くの問題のほんの一部です。私は、htmlとcssの更新を行うために、他の部分(データレイヤーで生成されるhtmlなど)をより良いプラクティスに置き換える必要がある理由を説明する方法を探していました。ここには多くの良い提案がありますが、クライアントと話をするときに一緒にまとめます。


12
クライアントは現在のプロジェクトのコメントの25%を望んでいますが、どのように対応しますか?[閉まっている]
ジュニア開発者はこちら。 私は現在、私の会社の大顧客向けのWebアプリケーションで単独で作業しています。先月始めました。クライアントは、各ソフトウェアプロジェクトに少なくとも25%のコメントを求めています。 私は以前のアプリケーションのコードをチェックしました、そして私の観察はここにあります: 各ファイルはコメントブロックで始まります(パッケージ、最終更新日、会社名、著作権) すべての変数は名前でコメント化されます // nameOfCustomer public String nameOfCustomer すべてのゲッターとセッターがコメントされます 非常に少数の有用なコメント 開発者は、品質や有用性に関係なく、25%のしきい値に達するためにできるだけ多くのコメントを配置するようです。私の会社は、「クライアントが望んでいるとおりにそれを行う」と言っています。 私はこれについてクライアントと直接話しませんでした。これまでの私の議論は次のとおりです。 読み書きする無駄な行(時間の無駄) コメントが時々更新されない(混乱の原因) 開発者が実際に役立つコメントを使用または信頼する可能性が低い このテーマに関するアドバイスは何ですか?状況をどのように処理すればよいですか?

24
嫌がるクライアントからお金を得る方法は?[閉まっている]
このウェブサイトは4か月前に完成しました。(私はこのウェブサイトを匿名にしたいと思います-この投稿が顧客によるグーグル検索で出てきた場合、それは彼らのビジネスに悪影響を及ぼします)。私たちは何度も繰り返しましたが、クライアントは非常に要求が厳しく(そしてうるさい)、私は美的外観をかなり破壊したフッターのフォントサイズを含め、求められていたすべてのことを順守しました。(そして、彼らも色を台無しにして、危険なほどに幼稚でプロフェッショナルではないように見せています)。 とにかく、クライアントはプロセス全体を通してとてもフレンドリーでした。すべての要件を取得した後、ウェブサイトを950ポンドで構築することに同意し、作業を開始した後に彼が救済したくないように、事前に150ポンドを請求しました。要件は非常に大きく変化し続け、私は調整を行い、5日遅れでWebサイトを完成させました。 それは4ヶ月前でした。それ以来、彼らは私の電話を返さず、メールにも返信していません。どうすれば彼らからお金を取り戻すことができますか?私はこれについていくつかのアドバイスが本当に必要です。これは誰かが私にお金を払っていないのは2度目です。 注意すべき点: 私たちは契約に署名しませんでした-クライアントは友人の友人でした。 私はまだftp、cpanelおよびすべてのパスワードを保持しています。サイトを停止したくありません。どういうわけか、私には倫理的ではないようです。 これをStack Overflowに投稿して閉じました。ここにリダイレクトされました。 編集 皆さん、多大な支援をありがとう。さらに詳細を含める必要があると考えました。クライアントがサイトをホストしています。のように、登録して自分のデビットカードを使用してドメイン名、ウェブスペース、すべてを購入し、彼のcpanelとftpのパスワードを持っています(まあ、私は多くの人にアクセスできるcpanelにアクセスしていますもの)。 今、私が彼らに警告を出すと、彼はパスワードをcpanelに変更するかもしれませんが、彼らはftpについて知らないと確信しています。 更新 私はAnna Lear土曜日に、彼のアドバイスに従い、火曜日までに私のメールに返信しなかった場合にサイトを削除するという警告とともに最終請求書を送信しました。彼らは私のメールにまだ返信していませんが、これがどうなるかをお知らせします。ご支援いただきありがとうございます。Darknight火曜日以降に提案されたとおり、保留ページを作成する予定です。 ポイント 自分のサーバースペースはありませんが、クライアントのWebスペースはほとんどありませんが、この種の目的には使用したくありません。 結果 最終請求書と警告のフォローアップの後、クライアントは何も拒否しました。職人のアドバイスは私にとって最も賢明であると思われました。私は自分のウェブスペースにサイトをミラーリングし、彼のCPanelにログインし、ウェブサイトを私のサイトに転送しました。それが完了したら、サイトに保留ページを設置し、ウェブサイトにアクセスした人に保留ページが表示されるようにしました(怪しいものは何もありません。ただのUnder Constructionページです)。もちろん、これはクライアントがCPanelを知っていればリダイレクトを削除できるという意味で非常に弱かった。しかし、私は彼に戻ってくるこの二度目の機会があり、彼が何も知らないことに頼っていました。 2時間後、私はそのクライアントから電話を受け(そして彼らが私のボイスメールやメールを受け取らなかったかのように振る舞い)、サイトをバックアップするように頼みました。もちろん、私は支払わなければならないと言い、その2日後に銀行振込を受け取りました。サイトのバックアップと実行が完了しました。 どうもありがとうございました。この質問を始めたとき、私は非常に必死でした。あなたは最高です、レッスンを学ぶように私に言っただけでなく(私はそれをしました)、あなたは私に非常に倫理的(ほとんど)に思えた非常に非常に良い解決策を与えました。 職人に感謝します! 複数の回答を選択できる場合は、私も選択しますAnna Lear が、職人のアドバイスに従ったので、それを拾わなければなりませんでした。弁護士に相談せずにサイトを削除しないことを主張してくれた人々、ありがとう。

8
パスワードの再利用を「保護」するために、送信する前にクライアントでパスワードをハッシュするWebページがほとんどないのはなぜですか(そしてサーバー上で再度ハッシュするのですか)。
インターネットにはログイン情報を必要とする多くのサイトがあり、パスワードの再利用を防ぐ唯一の方法は、サーバー上でパスワードがハッシュされるという「約束」です。 したがって、パスワードを再ハッシュするサーバーに送信する前に、クライアントコンピューターで(Javascriptを使用して)パスワードをハッシュするWebページを作成するのはどれくらい難しいでしょうか。理論的には、これは追加のセキュリティを提供しませんが、実際には、サーバーでパスワードをハッシュしない「不正サイト」から保護するために使用できます。

14
クライアントがパスワードを取得する必要がある場合はどうなりますか?
現在、職場でアプリケーションを継承していますが、残念なことに、データベースに保存されているユーザーパスワードは社内暗号化機能を使用して暗号化されており、暗号化解除機能も含まれています。 したがって、誰かが本当にする必要があるのは、ユーザーテーブルをコピーし、暗号化アセンブリ(データベースの実稼働アクセス権を持つユーザー)をコピーするだけです。そうすれば、100,000の電子メールアドレスと潜在的なパスワードにアクセスできます。 なぜこれが良いアイデアではないのかをビジネスに説明しようとしていますが、セキュリティの概念は技術的にあまり気になっていないので頭に浮かぶようです(政府向けです)。さらに、管理者ユーザーがユーザーのパスワードを取得してログインし、作業を行うために必要な機能を実行するための、アプリケーション内に実際に存在する機能があります。 そのため、彼らはセキュリティへの影響を理解していません。また、強力なセキュリティポリシー(パスワードを簡単に取得できないようにハッシュする)を実装するには、既存の機能を削除する必要があります。 私は何をすべきか?そもそもパスワードシステムを構築していなかったので、何か問題が発生しても非難できるわけではありません。一方、私はそれについて気分が悪く、また、100,000の潜在的な電子メールログオンにアクセスしたくありません。

7
誰が修正/バグを支払うべきですか?[閉まっている]
だから、デスクトップ/ Web開発と、すでに私の仕事を受け入れているこのクライアントの両方でフリーランスを開始しました。バグなどを見つけるたびに私に戻ってきます。無料です。これで大丈夫ですか、それともサポート料金の請求を開始する必要がありますか? 受け入れられ、完了したと思われる作業の修正に対処する最良の方法はどれですか?

6
ユーザーに適切で有用なバグレポートを作成させる
誰もがユーザーに半ばまともな(読む:役に立つ)バグレポートを書かせる良い方法を知っていますか? ほとんどのユーザーにとって意味のある(読みやすく、理解しやすい)ものの、開発者にも役立つ情報を提供したかったのです。 青いボタンをクリックしても機能しません!ああ、私はちょうど一週間の仕事を失った...それを機能させる。 そのままではあまり役に立ちません。 私はリストについて修正し始めましたが、同様の方法が既に存在するかどうか、皆さんに確認することを考えました。

18
クライアントがオブジェクト指向プログラミングを使用しないように要求した場合はどうしますか?
グリッド内のアリの活動をシミュレートするプログラムを作成しています(PDF)。アリは動き回り、物を拾い、物を落とします。 問題は、アリのアクションと各アリの位置をクラス属性で簡単に追跡できる(そして、そのようなアリの多くのインスタンスを簡単に作成できる)一方で、クライアントは関数型プログラミングのバックグラウンドがあるため、関数型プログラミングを使用して行われるシミュレーション。 明確にするために、クライアントからの元の単語は「クラスなし」のみであり、「関数型プログラミング」ではありません。だから私は彼が関数型プログラミングを意味するのではなく、私が命令的にそれを行うことができると思います。さらに、関数型プログラミングの経験はありません。 ただし、単に「命令的に実行する」よりも、特に関数型プログラミングの要件に関するこの質問に焦点を当てることが有益だと思います。 この状況にどのように対処しますか?クライアントに、オブジェクト指向プログラミングを使用する方がはるかにクリーンであると説得して、彼が要求したものに従い、質の悪いコードを与えようとしますか、それとも何か他のことをしますか?

12
クライアントはどこにありますか?[閉まっている]
私の主な分野:ウェブ開発。 もちろん、誰もが自分の「ゴールドマイン」やその他のものを配ることは期待していませんが、自分のサービスを宣伝する場所を見つけるのに苦労しています。私と一緒に仕事をする開発者が1人いて、フリーランスのWebサイトにたくさんの幸せなクライアントがいます。 つまり、フリーランスのウェブサイトは、ばかげた料金に負けてしまったときに、あなたの命を奪ってしまうようです。価格よりも品質と説明責任に関心がある顧客を引き付けたい。 何か提案はありますか?私はこれでとても迷っています。 編集:200の賞金を追加-私のすべての「評判」。編集:50の2番目の賞金を追加 斬新なアイデアを聞いたことがあります。オープンソースプロジェクトで働き、「信頼できる開発者」セクションがある場合は、そのセクションで紹介されます。入力?

4
クライアントを選択するための「FizzBu​​zz」に類似したものはありますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 これはフリーランサー向けです。 フルタイムの従業員としての私の人生の中で、私は雇用に関与し、多くの開発者にインタビューしました。経験などについて話すよりも、どんなに小さな問題であっても、開発者が問題を解決するのを見るほうがはるかに価値があることを学びました。 現在、私はフリーランサー/コンサルタントとして働いています。より良いことの一つは、私がやりたいことを選択する自由です。しかし、今、数年後、私は(難しい方法で)一部のクライアントはお金の価値がないことを学びました。彼らは気まぐれで、理不尽で、要求が多く、非常に士気をくじく方法で働くのが難しい場合があります。 だから私は疑問に思っていました:クライアントを「インタビュー」するより良い方法はありますか?クライアントはおそらくテストされることを期待していないので、明らかにメソッドは微妙でなければなりません。しかし、「FizzBu​​zz」に類似したものがあり、サインオンするか、ゆっくり戻るかを教えてくれますか?

7
クライアントが非現実的な期待を抱いている場合はどうしますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Software Engineering Stack Exchangeのトピックになるようにします。 7年前に閉鎖されました。 クライアントサイトではデータの機密性が必要であり、私たちが自分のオフィスで働きたくないので、私は過去6か月間クライアントサイトでプロジェクトに取り組んできました。 このクライアントサイトに一人で現れたとき、2か月でプロジェクトを完了する必要があると言われました。 クライアントはソフトウェア会社ではないため、さまざまなポリシーがあるため、Eclipse、Tomcatなどをインストールする権利を自分のマシンに与えるだけで約20〜25日かかりました。環境のセットアップが遅れても、彼らは、私が同じ2か月の期間でプロジェクトを完了することを期待していました。 要件文書は提供されませんでしたが、私はクライアントサイトで作業しているため、以前は定期的に会議を開いて要件について話し合いました。 6か月後もアプリケーションはまだ完成しておらず、誰もが私を非難していますが、最初の数回の会議で説明した機能よりも多くの機能を追加したことに気づきません。 この期間中に多くのことをやり直す必要がありました。たとえば、フォームを2つのセクションに分けます。数週間後、彼らは混乱を招くので2つのフォームを再度マージするように頼まれました。 アプリケーションの範囲は日々拡大していますが、彼らはまだそれが遅れた2ヶ月のプロジェクトだと考えています。範囲が増えたと彼らに言ったとき、彼らは最初に要件を求めなかった理由を尋ねます。 私はすでに毎日11〜12時間働いており、3〜4時間旅行していますが、今では土曜日にも来ることを期待しています。 ここですべてを行う必要があります。要件、設計、コード、およびテストを行います。 そのような場合はどうすればいいですか? その他の詳細:成果物のリストがありましたが、それらも重要であると言っていくつか追加しました。また、いくつかの成果物を変更しました。彼らはUATサーバーさえ持っておらず、IPアドレスを介して私の開発マシン自体でテストします。

5
非倫理的な開発プロジェクトを引き受けるのを防ぐにはどうすればよいですか?
自営業の時代に戻って、私はかつて小規模でかなり高額なプロジェクト「ニュースレターシステム」を採用しました。 すべてが順調で、マイルストーンが到達するたびに請求書が支払われ、私は幸せな開発者でした...クライアント氏がメールヘッダーのなりすましやその他の機能を要求し始めるまで、最終的に私は非常に洗練されたスパムメーラーを構築しているという結論に至りました。 長い話を短くするために:経済的な考慮により、私が始めたものを終わらせました。私は今日までそもそも仕事に就いたことをresしている。もしもクライアントの名前をグーグルで悩ませたら、警告されただろう。 誰かの手で見たくないコーディングを終わらせないために、どのような戦略を使用できますか?

4
彼のプロジェクトで働きたくないことをクライアントに伝える方法
これはおそらくめちゃくちゃに聞こえるかもしれませんが、ここに行きます。 私はしばらくの間、クライアントのプロジェクトに取り組んでいます。「それはXYZプラグインであり、ABC製品とのインターフェースでなければならない」ことを除いて、詳細は与えられませんでした。それは大丈夫でしたが、今は終わりに向かっていると思います(私は思う)、それはちょうど引きずり出しています。私はそれに費やす時間がなく、すでに3ヶ月までにスケジュールを超過しています。クライアントがどのようにデータをナビゲートできるようにしたいか(UIの問題)をクライアントに説明させようとするのは難しいだけです。私は彼が望んでいると思うもののモックアップを提出しましたが、彼の最新の回答は「XXX製品を見てください」で、同様の機能があります。 もちろん、私はそれを見て、私が提出したものに似ていますが、私がフレームワークを構築した方法が、彼が現在私に説明していることをサポートするとは思わない。私たちはプロセスをうまくやり取りしてきましたが、彼は何を望んでいるかわかりません。フレームワークをどのように構築するかを説明したところ、彼は同意したので、設計に関しては悪い選択ではありません。 完成したモジュールだと思うものを調べてみると、彼は「あなたはこの方法でやるべきだった」と言います。いくつかの小さなアイテムを考え抜いたかもしれませんが、大事なことは彼の要件をどのように解釈したかであり、開発中にこのモジュールを何度か試しました。 私は先月、すでに最終的な資金を受け取っているので、この時点で無料で働いています。私はもうこのプロジェクトに対処したくありません。私はすでに支払いを受けています。私は以前にこのクライアントで他の成功したプロジェクトをやったことがあり、彼はやりたい他の多くのプロジェクトを持っています。 一体どうすればいいですか?私はもうこのプロジェクトに取り組みたくありません。私はこれ以上お金を要求したくありません(お金は本当に問題ではありません)。私も彼を怒らせたくありません。ケーキを持って食べたいと思っているようです。 私がそれをやめるべきだと思うなら、状況を考えてどうすればいいですか?

7
「phpは悪い言語です」というパラダイムを破る方法は?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は、事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は、議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターをご覧ください。 7年前に閉鎖されました。 PHPは悪い言語ではありません(または、少なくとも一部の人が示唆するほど悪くはありません)。PHPがオブジェクト指向であることさえ知らない教師がいたのです。私たちがPHP開発者であると言うとすぐに私たちを信用しないクライアントがいて、DjangoやRoRなどのシックな言語やフレームワーク、またはJavaやASP.NETなどの「エンタープライズで堅実な」言語を使用していないことに疑問を呈しています。 FacebookはPHP上に構築されています。企業や政府で使用されているJoomlaやDrupalのようなWebを動かす多くの堅実なプロジェクトがあります。すべての言語(Symfony 2、Doctrine)で見た中で最高のアーキテクチャを備えたフレームワークとライブラリがあります。PHPには、私が見た中で最高のドキュメントと、専門家の大きなコミュニティがあります。 PHPには、リフレクション、インターフェイスなどの高度なオブジェクト指向機能があります。もちろん、PHPはtraitを介してネイティブかつクリーンに水平再利用をサポートします。 PHPに悪い評判を与えるが、同時にPHPコミュニティに力を与える悪いプログラマーとスクリプトキディがあります。PHPの処理は非常に簡単であるため、多くの場合、間違った方法で物事を行うことができますが、なぜ言語?。 さて、これを実際の答えのできる質問に要約すると、あなたがPHP開発者であると言うとき、眉をひそめることを避け、偏見を一気に止めてあなたの名誉を守るための良い、堅実で短く、甘い議論は何でしょうか?。 (ホイップクリームを含む無料のCookieは、その場で誰か(クライアントまたはその他)を説得するという経験的証拠がある人に提供します) PS:私たちはSymfonyを使用し、コードは美しく、保守可能になりました PPS:Facebook は PHPで作成され、HipHopを介してC ++にコンパイルされ、Hadoopにデプロイされます。ここ:http : //arstechnica.com/business/2012/04/exclusive-a-behind-the-scenes-look-at-facebook-release-engineering/1/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.