問題タブ [software-quality]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
software-quality - 大規模なプロジェクト全体でコードの「品質」をどのように測定しますか
私は非常に大規模なプロジェクトに取り組んでおり、作成に数年かかり、かなり大きな会社で、全体的なコード品質の向上に向けた作業を行っています。
この文脈で、品質と複雑さを測定するためにどのような種類の指標を使用するのか疑問に思っていました. 私は絶対的な対策を求めているわけではありませんが、時間をかけて改善できる一連の項目を探しています。これは何百ものプロジェクトにまたがるちょっとした大規模な操作であることを考えると (私はもっと小規模なプロジェクトについて尋ねられたいくつかの質問を見てきました)、もっと自動化可能で全体論的なものを探しています。
これまでのところ、次のようなリストがあります。
- 全機能テスト中のコード カバレッジ率
- BVT 障害の再発
- nDepend などのツールに基づく依存関係グラフ/スコア
- ビルド警告の数
- 見つかった/抑制された FxCop/StyleCop 警告の数
- 「キャッチ」ステートメントの数
- 手動展開ステップの数
- プロジェクト数
- どこにも参照されていない「死んだ」コード/プロジェクトの割合
- コード レビュー中の WTF の数
- コードの総行数。層ごとに分類される場合があります
software-quality - QA対開発比率
私はソフトウェア開発者として働いており、今日、QAチームと次のことについて喧嘩をしました。
QAチームのメンバーは、同じ製品に取り組んでいる開発者の数をどのくらい超える必要がありますか?
これは何かをプログラムする方法についての質問ではないことを私は知っていますが、この質問はソフトウェア開発にかなり関係していると思います。ですから、この質問が閉じられないことを願っています。代わりに、SW開発会社での作業に優れた経験を持つプロのプログラマーから回答を得て、優れた統計を作成できるようにします。
java - 長期間にわたるJavaのコードメトリックの監視
傾向と弱点を確立するために、できればCVSのデータによって、Javaプロジェクトのさまざまなメトリックを長期間監視するためのツールはありますか?これは、継続的なコードレビューとコード品質の維持のための良い出発点になります。
特に、参照の数、クラスとメソッドのサイズ、循環的複雑度に関心があります。
programming-languages - より良いプログラマーへのロードマップ
プログラミングをすればするほど、上手になるといつも言われています。良いと真実に聞こえます。しかし、より良いプログラマーになるための実証済みのルートがあるかどうか疑問に思っていました.
何かのようなもの:
- 学ぶ
- 学びます
- Learn c > 「これでエンジンを燃やしても大丈夫です」
- 学んだことをもとにいろいろ試してみてください。
答えは CS コースのロードマップに似ているかもしれませんが、成功したプログラマーの意見を聞きたいと思っています。
ありがとう
python - coverage.py: ファイルを除外します
coverage.pyレポートからファイル全体を除外するにはどうすればよいですか?
ドキュメントによると、行を一致させることでコードを除外できます。レポートにサードパーティのライブラリが含まれないように、ファイル全体を除外したいと考えています。何か不足していますか?それはできますか?
python - テストディレクトリをcoverage.pyレポートから除外することは可能ですか?
私は Python 単体テスト、特に coverage.py の新人です。カバレッジ レポートに実際のテスト ファイルのカバレッジを含めることは望ましいことですか?
例として、 HTML レポートのスクリーンショットを次に示します。
レポートに が含まれていることがわかりますtests/test_credit_card。tests/最初は、次のように、レポートからディレクトリを省略しようとしていました。
私はそのコマンドのいくつかのバリエーションを試しましたが、テスト/除外を得ることができませんでした。敗北を受け入れた後、私はテストファイルがレポートに含まれることになっているのではないかと考え始めました.
誰でもこれに光を当てることができますか?
software-quality - コード指標の評価
コード メトリクスについてはかなりの量の議論がありました (例:コード メトリクスの魅力は何ですか? )。私は (ソフトウェア開発者として) これらの指標に非常に興味を持っています。なぜなら、それらの指標はより良いコードを書くのに役立つと思うからです。少なくとも、リファクタリングが必要なコードの領域を見つける場合に役立ちます。
ただし、知りたいのは以下の点です。メソッドのバグ率や保守性と実際に相関していることを証明するソース コード メトリックの評価はありますか。例: 循環的複雑度が非常に高いメソッドは、複雑度が低いメソッドよりも多くのバグを本当に導入するのでしょうか? それとも、難易度の高いメソッド (Halstead) は、難易度の低いメソッドよりも維持するために本当に多くの量が必要ですか?
誰かがこの分野の信頼できる研究について知っているかもしれません。
どうもありがとう!
math - AMN と数学論理表記
これがstackoverflowに適しているかどうかはわかりませんが、他にどこに尋ねるべきかわかりません。要求仕様の一貫性を証明するための B メソッドを研究していますが、操作の事前条件を指定する際の論理演算表記に問題があります。
元の問題を単純化すると、FLIGHT_NO x TIME x TIME の間のデカルト積のサブセットフライトである変数があります。ここで、各メンバー (no、td、ta) について、no はフライトの番号、td は出発時刻を意味します。そして到着時刻。数学論理表記法を使用して、td の最大値を持つフライトの要素を取得するにはどうすればよい ですか?
architecture - e コマース Web アプリケーションに不可欠な品質属性は何ですか?
この質問は興味の対象外であり、おそらく私の論文に役立つ可能性があります。
Web アプリケーションは、特にビジネスが財政的に依存している場合、生き残るために特定の要件を満たす必要があります。Web アプリケーションに関して、どのような (ソフトウェア) 品質属性が最も重要だと思うか (いくつか挙げてください) をお聞きしたいと思います。
私は自分の分け前を与えます: パフォーマンス(訪問者が 2 秒以上待たなければならない場合、50% 以上がサイトを離れます。つまり、販売の可能性が低くなります)。
セキュリティ、少なくともOWASPに注意してください
信頼性を高めるために、Web アプリはエラーのある入力を処理できる必要がありますが、それらの負荷も処理できなければなりません。
保守性、この世界では、迅速に変化し、売上を増やす必要があるユーザーに適応できることは、生き残るために不可欠です.
maintainability - コーディングの実践: 170 万の LOC プロジェクトについてどう思いますか?
「エンジン」は 1.3 ではなく、現在は 170 万行のコードであると述べているパネル ディスカッションを聞いています。それは私を怖がらせます。その行数やモジュールの量などを想像することはできません.C++は他の言語ほどモジュールを処理できないといつも感じていました。大規模なプロジェクトは管理が難しく、コード行を合理的に抑えることが好ましいと感じました。10kラインを打つと違和感があります。20k、50k、500k、または 100 万がどのように感じられるか想像できません。
この規模のプロジェクトを開発および維持する際に、どのような慣例がありますか?