3

良質のソフトウェアを書くことが最初のステップです。今のところ、それは一種の動く目標です。( https://stackoverflow.com/questions/3716203/automatic-code-quality-and-architecture-quality-static-code-analysisに沿っていくつかのことがあります。一部の一部の顧客と同様の回帰テストスイートとテスト環境があります。)何をするにしても、顧客だけがクラッシュ/エラーを確認して取得する場合があります。パフォーマンスの問題がある場合もあります。クラッシュすることもあれば、アプリケーションオブジェクトモデルエラーになることもあります。

一般的に、どうすれば痛みを軽減できますか?このような状況からほとんどの(データ)を取得するにはどうすればよいですか?問題が1回目と2回目に発生したときに、より多くの情報を取得するのに役立つコーディング/アーキテクチャの手順はどのようなものですか?

出発点は次のとおりです。

良好なロギング: log4jが開始点です。ユーザーはファイルを簡単に変更できるはずです。そのようなファイルを編集するための小さなGUIを提供することはさらに良いでしょう。(私たちのログ設定は、Windows 7のc:/ Program Files /領域にありました。通常のユーザーにとって簡単ではない編集-魔法の「管理者として実行」オプションが必要です。)

ヒープダンプ:メモリ不足が発生したときにヒープをダンプします。

エラーレポートの自動送信: Firefox、intellijなどが良い例です。このための既製のライブラリがあるかどうかはわかりません。

JMX:サーバーアプリケーションの場合、これは非常に便利なようです。私はそれを使ったことがありません。

システム要件を検出するためのツール: 私はまだそれをしていません。

自動的にアップグレードする機能:

私たちのものは主にサーバーと相互作用するJavaデスクトップアプリケーションです。希望の品質が得られるまで、採用できるステップは他にもあると思います:)

4

2 に答える 2

1

サーバーアプリケーションの場合は、Dynatrace(無料ではありませんが優れています)などのツールを検討して、コードを半リアルタイムで調べます。

あなたの質問と完全に一致しているわけではありませんが、一般的に、 FindBugsSonarなどのツールを使用してGAに到達する前にエラーを見つけようとします。

自動エラー送信ライブラリについては知りませんが、RESTfullWebサービスをすばやく作成すると非常に価値のあるものを簡単に作成できます。

申し訳ありませんが、これは完全な答えではありませんが、私が何年にもわたって取り上げてきたいくつかのビットです。

于 2011-06-11T15:02:24.277 に答える
1

いくつかの提案:

  1. パフォーマンスや負荷テストなど、製品を顧客に展開する前の優れたQA。
  2. 問題が発生したときに診断するのに役立つ、十分な/適切なクライアントおよびサーバー側のロギング。
  3. バグ作成ガイドラインに関する(ベータ)顧客のトレーニング。これには、ヘルプ|からのリリース情報の取得が含まれる場合があります。問題を再現するための正確な手順、スクリーンショット、ログ情報などについて。レポートが不完全な場合、問題を診断するのははるかに困難です。
  4. 多くの問題はデータ固有であり、再現するには顧客データのコピーが必要です。可能であれば、顧客データ/構成を含むテスト環境を維持します。
于 2011-06-11T15:07:30.077 に答える