วิธีถอดประกอบโปรแกรม

สารบัญ:

วิธีถอดประกอบโปรแกรม
วิธีถอดประกอบโปรแกรม
Anonim

ในการทำกิจกรรมอย่างมืออาชีพ โปรแกรมเมอร์ต้องรับมือกับสถานการณ์ต่างๆ ที่ต้องใช้การวิเคราะห์ที่ซับซ้อนของซอร์สโค้ดจำนวนมาก หรือแม้แต่แอปพลิเคชันทั้งหมด การค้นคว้าวิธีแก้ปัญหาและแนวทางปฏิบัติที่ประสบความสำเร็จ การวิเคราะห์อัลกอริทึมที่นำไปใช้งานแล้ว หรือเพียงแค่ถ่ายโอนโครงการอื่นไปยังทีม มักจะทำให้จำเป็นต้องแยกส่วนโปรแกรมที่เขียนโดยบุคคลอื่น

วิธีถอดประกอบโปรแกรม
วิธีถอดประกอบโปรแกรม

จำเป็น

  • - โปรแกรมสำหรับดูซอร์สโค้ด
  • - อาจเป็นวิศวกรรมย้อนกลับและเครื่องมือเคส

คำแนะนำ

ขั้นตอนที่ 1

ตรวจสอบโฟลว์ของการถ่ายโอนการควบคุมของโปรแกรมที่กำลังแยกวิเคราะห์ ระบุจุดเริ่มต้น ตัวอย่างเช่น เป็นฟังก์ชันหลักใน C และ C ++ ซึ่งเป็นจุดเริ่มต้นของบล็อกโครงสร้างระดับแรกที่ไม่มีชื่อ ซึ่งลงท้ายด้วยคีย์เวิร์ด END ด้วยจุด ในภาษาปาสกาล เริ่มจากจุดเริ่มต้น ติดตามเส้นทางทั้งหมดของ การเรียกใช้ฟังก์ชัน ขั้นตอน วิธีการของคลาส วาดไดอะแกรมการควบคุมระดับสูง คุณสามารถใช้เครื่องมือวิศวกรรมย้อนกลับต่าง ๆ เพื่อทำให้กระบวนการนี้ง่ายขึ้น วิเคราะห์ซอร์สโค้ดขององค์ประกอบโครงสร้างของโปรแกรมที่แยกวิเคราะห์โดยละเอียดยิ่งขึ้น วาดไดอะแกรมควบคุมการไหลหรือแผนภาพการไหลสำหรับฟังก์ชันและวิธีการแต่ละอย่าง

ขั้นตอนที่ 2

วิเคราะห์สตรีมข้อมูลของโปรแกรมที่กำลังแยกวิเคราะห์ ระบุโครงสร้างที่ใช้เก็บข้อมูลและถ่ายโอนระหว่างองค์ประกอบการทำงานของแอปพลิเคชัน ระบุข้อมูลโค้ดที่แปลงข้อมูลจากแบบฟอร์มหนึ่งเป็นอีกรูปแบบหนึ่ง ทำรายการสถานที่ในโปรแกรมที่รับข้อมูลจากสภาพแวดล้อมภายนอกรวมถึงเอาต์พุตที่ใดที่หนึ่ง เครื่องมือการรื้อปรับระบบและเครื่องมือเคส (เช่น เพื่อสร้างไดอะแกรมการสืบทอดและไดอะแกรมการพึ่งพา) จะช่วยในการวิเคราะห์ประเภทนี้ด้วย

ขั้นตอนที่ 3

ถอดแยกชิ้นส่วนโปรแกรมโดยมีความเข้าใจอย่างถ่องแท้ถึงหลักการทำงานของโปรแกรม บนพื้นฐานของความรู้เกี่ยวกับการไหลของการถ่ายโอนการควบคุมระหว่างองค์ประกอบโครงสร้างเช่นเดียวกับภายในพวกเขาความรู้เกี่ยวกับกระแสและประเภทของการแปลงข้อมูลระบุอัลกอริธึมหลักของงานแยกอัลกอริธึมสำหรับการประมวลผลข้อมูลและการควบคุมส่วนต่อประสาน เลือกอัลกอริธึมการประมวลผลทั่วไปและจัดประเภท ระบุอัลกอริธึมตามการทำงานร่วมกันของส่วนประกอบต่างๆ (เช่น การค้นหาสามารถใช้ได้ทั้งแบบแยกอิสระและเป็นส่วนหนึ่งของการจัดเรียง) หากจำเป็น ให้วาดผังงานที่มีระดับรายละเอียดต่างๆ กันเพื่อแสดงการทำงานของโปรแกรม