ความแตกต่างระหว่างวิศวกรรมล่วงหน้าและวิศวกรรมย้อนกลับ
เนื้อหา
- แผนภูมิเปรียบเทียบ
- ความหมายของวิศวกรรมไปข้างหน้า
- ความหมายของวิศวกรรมย้อนกลับ
- ความสัมพันธ์ระหว่างวิศวกรรมไปข้างหน้าและวิศวกรรมย้อนกลับ
- ข้อสรุป
วิศวกรรมไปข้างหน้าและวิศวกรรมย้อนกลับเป็นส่วนหนึ่งของกระบวนการ re-engineering และเกี่ยวข้องอย่างใกล้ชิด ความแตกต่างที่สำคัญระหว่างวิศวกรรมด้านหน้าและวิศวกรรมย้อนกลับคือวิศวกรรมก้าวหน้ามีการเปลี่ยนแปลงระบบเรื่องระหว่างการปรับโครงสร้าง ในทางกลับกันวิศวกรรมย้อนกลับวัตถุประสงค์เพียงอย่างเดียวคือการตรวจสอบระบบเพื่อให้ได้การออกแบบที่เป็นนามธรรมมากขึ้น
การปรับโครงสร้างซอฟต์แวร์ไม่ได้เป็นเพียงแค่การนำระบบเดิมมาใช้เพื่อให้เกิดความยั่งยืนมากขึ้น วิวัฒนาการของระบบต้องมีการดูดซึมของระบบที่มีอยู่ซึ่งจะต้องมีการเปลี่ยนแปลงเพื่อให้ระบบสามารถเปลี่ยนแปลงได้โดยการใช้การเปลี่ยนแปลง
-
- แผนภูมิเปรียบเทียบ
- คำนิยาม
- ความแตกต่างที่สำคัญ
- ข้อสรุป
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | วิศวกรรมการส่งต่อ | วิศวกรรมย้อนกลับ |
---|---|---|
ขั้นพื้นฐาน | การพัฒนาแอปพลิเคชันพร้อมข้อกำหนดที่ระบุไว้ | ข้อกำหนดจะถูกอนุมานจากแอปพลิเคชันที่กำหนด |
ความเชื่อมั่น | สร้างแอปพลิเคชันที่ปฏิบัติตามข้อกำหนดเสมอ | หนึ่งสามารถให้ความคิดต่าง ๆ เกี่ยวกับความต้องการจากการใช้งาน |
ธรรมชาติ | กำหนดให้ | ปรับได้ |
ทักษะที่จำเป็น | ความสามารถสูง | ความเชี่ยวชาญระดับต่ำ |
ต้องใช้เวลา | มากกว่า | น้อยกว่า |
ความถูกต้อง | แบบจำลองต้องแม่นยำและสมบูรณ์ | โมเดลที่ไม่แน่นอนสามารถให้ข้อมูลบางส่วนได้ |
ความหมายของวิศวกรรมไปข้างหน้า
วิศวกรรมการส่งต่อ เป็นกระบวนการสร้างแอปพลิเคชันด้วยความช่วยเหลือของข้อกำหนดทั่วไปของการดำเนินการขั้นสุดท้าย Elliot J. Chikofsky และ James H. Cross ใช้คำว่า "forward engineering" ในบทความของพวกเขาในปี 1990 และเชื่อมโยงกับการพัฒนาแบบดั้งเดิม ดังกล่าวข้างต้นเทคนิคการวิวัฒนาการของระบบจำเป็นต้องมีความเข้าใจที่ถูกต้องของซอฟต์แวร์หรือโปรแกรมที่มีอยู่จากนั้นการเปลี่ยนแปลงใหม่เท่านั้นที่จะสามารถนำมาใช้และนำไปปฏิบัติได้
วิศวกรรมไปข้างหน้าเกี่ยวข้องกับการสร้างผลิตภัณฑ์โดยทำตามข้อกำหนดทั่วไปซึ่งมีการวิเคราะห์ข้อกำหนดของระบบเก่าปรับโครงสร้างและสร้างใหม่เพื่อให้ได้ผลิตภัณฑ์ที่มีคุณภาพดีที่สุด
ชื่ออื่นที่ใช้สำหรับวิศวกรรมล่วงหน้าคือ“การปรับปรุงและการบุกเบิก” เพราะมันไม่เพียง แต่ดึงข้อมูลการออกแบบจากซอฟต์แวร์ที่มีอยู่ แต่ยังใช้ข้อมูลนี้ในการสร้างผลิตภัณฑ์ที่มีคุณภาพดีกว่า
ความหมายของวิศวกรรมย้อนกลับ
วิศวกรรมย้อนกลับตามชื่อที่แนะนำคือกระบวนการผกผันของวิศวกรรมไปข้างหน้าซึ่งมีการวิเคราะห์ระบบที่มีอยู่เพื่อผลิตเอกสารของระบบที่มีอยู่ เริ่มแรกวิศวกรรมย้อนกลับถูกนำไปใช้กับฮาร์ดแวร์ซึ่งการออกแบบการถอดรหัสจากผลิตภัณฑ์สำเร็จรูปนั้นแพร่หลาย
อย่างไรก็ตามเมื่อมีการพัฒนาแอปพลิเคชันใหม่วิศวกรรมย้อนกลับมีวัตถุประสงค์เพื่อค้นหาส่วนประกอบของระบบและความสัมพันธ์ของพวกเขา รหัสซอฟต์แวร์ที่มีอยู่ถูกวิเคราะห์ในระดับที่เป็นนามธรรม - ระบบ, ส่วนประกอบ, โปรแกรม, คำสั่งและรูปแบบ
การกู้คืนข้อมูลสถาปัตยกรรมข้อมูลการออกแบบขั้นตอนสามารถทำได้เพื่อสร้างการเป็นตัวแทนของโปรแกรมพิจารณาในระดับที่สูงขึ้นของนามธรรมที่เกี่ยวข้องกับรหัสที่มา
- วิศวกรรมไปข้างหน้าเริ่มต้นด้วยข้อกำหนดของระบบและรวมถึงการออกแบบและการดำเนินการตามระบบการพัฒนา ในทางตรงกันข้ามขั้นตอนเริ่มต้นในวิศวกรรมย้อนกลับเริ่มต้นด้วยระบบที่มีอยู่และเทคนิคการพัฒนาเพื่อทดแทนจะขึ้นอยู่กับการตีความ
- มีความแน่นอนเสมอในการสร้างผลพลอยได้ของวิศวกรรมล่วงหน้า แต่ในกรณีของวิศวกรรมย้อนกลับความคิดหลายอย่างถูกสร้างขึ้นเกี่ยวกับข้อกำหนดที่ไม่จำเป็นต้องสร้างผลิตภัณฑ์
- วิศวกรรมไปข้างหน้าเป็นสิ่งกำหนดล่วงหน้าในลักษณะที่ผู้พัฒนาจำเป็นต้องปฏิบัติตามกฎเฉพาะสำหรับผลลัพธ์ที่เหมาะสม ในทางกลับกันวิศวกรรมย้อนกลับสามารถปรับเปลี่ยนได้โดยวิศวกรต้องค้นหาสิ่งที่นักพัฒนาทำจริง
- วิศวกรรมไปข้างหน้าใช้เวลามากขึ้นเมื่อเทียบกับวิศวกรรมย้อนกลับ
- ผลิตภัณฑ์สุดท้ายของวิศวกรรมการส่งต่อจะต้องสมบูรณ์และแน่นอน ในทางตรงกันข้ามรูปแบบทางวิศวกรรมย้อนกลับอาจไม่สมบูรณ์การดึงข้อมูลบางส่วนยังคงมีประโยชน์
ความสัมพันธ์ระหว่างวิศวกรรมไปข้างหน้าและวิศวกรรมย้อนกลับ
ข้อสรุป
วิศวกรรมไปข้างหน้าเกี่ยวข้องกับการปรับเปลี่ยนในระบบเรื่องในขณะที่วิศวกรรมย้อนกลับเพียงแค่วิเคราะห์ระบบ นอกจากนี้สิ่งเหล่านี้เป็นองค์ประกอบของกระบวนการวิศวกรรมซ้ำ