โปรแกรมแสดงประวัติการแก้ไขแฟ้มเอกสาร (Multi-Version Text Viewer / Editor) COE2005-06 นาย กัณวัตม์ ไชยารัศมี รหัส 453040592-6 นาย ชัยวัฒน์ สุขปัญญา รหัส 453040656-6
ทีมงาน นาย กัณวัตม์ ไชยารัศมี รหัส 453040592-6 นาย ชัยวัฒน์ สุขปัญญา รหัส 453040656-6 อาจารย์ที่ปรึกษาหลัก ดร. วสุ เชาว์พานนท์ อาจารย์ร่วมประเมิน 1. อ.อนัตต์ เจ่าสกุล 2. ผศ.บุญฤทธิ์ กู้เกียรติกูล
ที่มาและความสำคัญของปัญหา การพัฒนาซอฟท์แวร์ ในปัจจุบันก็มีความซับซ้อนสูง และยังมีการแยกออกเป็นหลายๆ version และหลาย revision ซึ่งในปัจจุบันก็ได้มี ซอฟท์แวร์ ที่ช่วยเหลือในการจัดการ source code ทีมีจำนวนมากได้ เช่นโปรแกรม Concurrent Versions System (CVS) , Subversion และ MS.Visual SourceSafe แต่โปรแกรมดังกล่าวก็ยังไม่สามารถสนองความต้องการของผู้ใช้ได้อย่างครบถ้วนโดยมีปัญหาหลักดังต่อไปนี้
ที่มาและความสำคัญของปัญหา ในการบันทึกความเปลี่ยนแปลงในลักษณะของการแสดงผล ยังไม่สามารถแสดงให้เห็นความเปลี่ยนแปลงที่ผ่านมาได้อย่างชัดเจน ไม่สามารถแยกแยะความแตกต่างระหว่างการย้ายประโยคกับการลบและเพิ่มได้ มีความต้องการ Editor ที่ช่วยผู้ใช้ในการแก้ไขไฟล์ โดยสามารถดูข้อมูลที่ถูกแก้ไขในอดีตที่ผ่านมา ได้พร้อมๆกันได้ มีความต้องการ โปรแกรมที่ช่วยในการวิเคราะห์ Source Code ที่ถูกแก้ไขหลายๆ ครั้ง เพื่อให้ สามารถพิจารณาได้ง่ายขึ้น
วัตถุประสงค์ และประโยชน์ที่จะได้รับ สร้างโปรแกรมเพื่อใช้ในการอ่านข้อมูลเอกสารจาก โปรแกรม Microsoft Visual SourceSafe ซึ่งเป็นระบบบันทึกประวัติการแก้ไข โดย โปรแกรมสามารถแสดงการแก้ไขของเอกสารได้ โดยแสดงแบบทั้งหมด, เฉพาะส่วน และสามารถนำข้อมูลเก่ามาคัดลอกได้ โปรแกรม ควรสามารถแสดงในระดับตัวอักษรที่ถูกแก้ไขทั้งที่ถูกเพิ่มเติมหรือลบ และ แสดงการย้ายที่ของข้อความ ณ วัน เวลาที่แก้ไขได้
ขอบเขตของงาน โปรแกรมในรูปแบบที่เป็น Editor แสดงการประวัติการแก้ไขของเอกสารได้ แสดงความแตกต่างระหว่าง source code ตั้งแต่ 2-4 version พร้อมๆกัน สามารถแก้ไขและคัดลอก บันทึกแต่ละ versionได้
เครื่องมือที่ใช้ Programming Language : C# or Java Microsoft Visual Studio .net Microsoft Visual SourceSafe
ทฤษฎีและงานที่เกี่ยวข้อง Tortoise CVS เป็นโปรแกรมช่วยเหลือในการจัดการ source code ทีมีจำนวนมาก โดย CVS ใช้หลักการ Optimistic Locking ก็คืออนุญาตให้ผู้ใช้หลายๆคนสามารถดาวน์โหลด (Check Out) ไฟล์อันเดียวกัน แต่ละผู้ใช้สามารถแก้ไขไฟล์ต่างๆที่ดาวน์โหลดมา และสามารถอัพโหลดไฟล์ (Check in) กลับเข้าสู่ CVS โดย CVS จะรับผิดชอบเรื่องการตรวจ Conflict ว่ามีใครแก้ไขไฟล์เดียวกันหรือไม่ ถ้ามีจะสามารถแสดงความแตกต่างระหว่างไฟล์ และ/หรือ การรวมไฟล์เข้าด้วยกัน
ทฤษฎีและงานที่เกี่ยวข้อง Microsoft Visual SourceSafe ทำงานคล้าย CVS โดยที่ ผู้ใช้ใดๆ ดาวน์โหลดไฟล์ออกมา ต้องทำการอัพโหลดไฟล์ คืน เพื่อให้ User คนอื่นๆ ได้แก้ไขไฟล์ นั้นได้บ้าง แต่ขณะที่เราดาวน์โหลดไฟล์ ออกมา ผู้ใช้คนอื่นก็สามารถอ่านไฟล์ นั้นได้ แต่ไม่สามารถ แก้ไขไฟล์ได้ ซึ่งข้อนี้เป็นข้อดีของ Microsoft Visual SourceSafe
ขั้นตอนและแผนการดำเนินงาน 1. ศึกษาวิธีการใช้โปรแกรมและการทำงานของ Visual SourceSafe และศึกษารูปแบบของไฟล์ CVS 2. ศึกษาโปรแกรมที่ช่วยในการวิเคราะห์ CODE เช่นโปรแกรม SeeSoft เพื่อเป็นแนวคิดในการออกแบบโปรแกรม 3. ศึกษาและวิเคราะห์ความต้องการของผู้ใช้ เพื่อนำมาเป็นแนวทางในการออกแบบโปรแกรม 4. ศึกษาการเขียนโปรแกรมด้วยภาษา C# และ Java 5. ออกแบบโครงสร้างของโปรแกรม 6. พัฒนาและทดสอบโปรแกรม หา bug และ debug โปรแกรม 7. สรุปผลการทำงานและเขียนคู่มือการใช้งาน
ขั้นตอนและแผนการดำเนินงาน
ผลงานที่ทำ จากขั้นตอนการดำเนิน 7 ขั้นตอน ได้ดำเนินการตามแผนแล้วเสร็จไปบางส่วนในขั้นตอนที่ 1 ดังนี้ - ศึกษาวิธีการใช้โปรแกรม การทำงาน และศึกษารูปแบบของไฟล์ ของ Visual SourceSafe และ CVS
เอกสารอ้างอิง http://msdn.microsoft.com/vstudio/previous/ssafe/productinfo/default.aspx http://ccvs.cvshome.org/fom/fom.cgi http://www.cvshome.org/ http://www.loria.fr/~molli/cvs/doc/cvs_toc.html - http://subversion.tigris.org