タグ

japaneseとengineeringに関するmasterqのブックマーク (2)

  • uftrace を使ってプログラムの中身を解析/リバースエンジニアリングする (1) uftrace 紹介編 - namopa’s blog

    はじめに Linuxのuftraceというツールを使うと, あるプログラムを実行している際の関数呼び出しの回数や 呼び出しの履歴(呼び出された順番)を記録, 表示することができます. この記事では, uftraceの使い方と, それを使って中身のよくわからない プログラムの中身を調査する(リバースエンジニアリングする) 方法を紹介します. 例題として, スプレッドシートプログラムgnumericのセルに 式を入力した際, その中身を読み取っている関数名や, そのソースコードの場所を突き止めることを目標にします (例えばgnumericに新しい関数を付け加えるという変更を したいと想像してください). このように, あるプログラムの機能変更や拡張をしたいというときに, ある機能を担っているのは, どのソースファイルや関数なのか を調べるという調査がしばしば必要になります. この時, uftr

    uftrace を使ってプログラムの中身を解析/リバースエンジニアリングする (1) uftrace 紹介編 - namopa’s blog
    masterq
    masterq 2021/09/11
    これすごい記事なのでは
  • 誰もが無視したがるソフトウェア・エンジニアリングの10の法則

    Signs of Trivialityより。 1. コンウェイの法則 別名:「組織図を出荷する(You will ship your org chart)」 「システムを設計する組織は、その構造をそっくりまねた構造の設計を生み出してしまう」 部門横断的なスタンドアップ・ミーティングや利害関係者の更新、意思決定マトリクスで回避できると思うかも知れませんが、最終的には必然的に優先順位の衝突や分裂が、同じように相反するプロセスや発散する結果につながることになります。 2. ブルックスの法則 人月の神話から: 「遅れているソフトウェアプロジェクトへの要員追加は、プロジェクトをさらに遅らせるだけである」 思ったように進捗が見られないことに気付き、経営陣が組織の別の部署からリソースを再配分しようとすると、プロジェクトを遅らせるだけでなく、より脆く、より複雑な製品を出荷する可能性があります(コンウェイの

  • 1