ฉันเป็นเรื่องราว "ความสำเร็จ" โครงการของฉันเกี่ยวข้องกับไซต์หลักที่มีไซต์ดาวเทียมที่มีการจัดการ / เขียนอย่างอิสระ 4 โดเมน (โดเมนย่อยที่มีแอปพลิเคชันต่าง ๆ อยู่) เรามี 4 ฐานผู้ใช้หลัก (ทั้งหมดภายในไดเรกทอรีที่ใช้งานแยกต่างหาก) และไม่มีใครมีระบบการตรวจสอบสิทธิ์ทั่วไป 3 เป็นแอปพลิเคชันที่ได้รับการยอมรับเป็นอย่างดีและไซโลและดาวเทียมดวงที่ 4 เป็นแบรนด์ใหม่และได้คัดลอกฐานรหัสจำนวนมากจากไซต์ที่เป็นที่ยอมรับมากที่สุดของเรา
เป้าหมาย:ใช้ระบบเอกลักษณ์องค์กรที่สามารถรับรองความถูกต้องของบัญชีใน 4 โดเมนและจัดการบัญชี (ด้วยตนเอง) เต็มรูปแบบใน 1 โดเมน เนื่องจาก. Net มีการใช้งานบนดาวเทียมอยู่แล้วไซต์ asp แบบคลาสสิคที่ทำหน้าที่เป็น "lead-in" จะต้องถูกเขียนใหม่การจัดการข้อมูลประจำตัวที่เพิ่มเข้ามาและไซต์ทั้งหมดจะต้องทำการทดสอบการถดถอยเพื่อให้แน่ใจว่าไม่มีผลกระทบต่อบริการ
ทรัพยากร:สถาปนิกหลัก 3 คน - โปรแกรมเมอร์, การจัดการข้อมูลประจำตัว, ผู้จัดการโครงการ นักพัฒนาประมาณ 20 คนนักวิเคราะห์ 10 คนผู้ทดสอบ 10 คน
ระยะเวลาดำเนินการ (เริ่มจนแล้วเสร็จ): 1.5 ปี
เริ่มต้นความสำเร็จ:ใกล้ความล้มเหลว
ความสำเร็จที่ยืนยาว:ยอดเยี่ยม
ฉันเป็นสถาปนิกการจัดการข้อมูลผู้ใช้ดังนั้นฉันจึงออกแบบฐานข้อมูลระบบย่อยและส่วนต่อประสานแบบลอจิคัลซึ่งดาวเทียมทุกดวงจะมีปฏิสัมพันธ์ สถาปนิก "โปรแกรมเมอร์" เป็นผู้พัฒนานำที่มีความรู้ทางธุรกิจอย่างกว้างขวางเกี่ยวกับดาวเทียมและประสบการณ์ทั้งหมดเกี่ยวกับแอพพลิเคชั่นและการพัฒนาจนถึงจุดนั้น
หลังจากหลายเดือนของความต้องการที่รวบรวมกับ 50 หรือมากกว่านั้นคนที่แตกต่างกันจากแผนกต่าง ๆ ใน บริษัท ของเราเราจัดการเพื่อให้ได้สถาปัตยกรรมเชิงตรรกะรีดออกและเริ่มต้นการออกรหัส เนื่องจากลักษณะของการเปลี่ยนแปลงเราจึงต้องเขียนเว็บไซต์ของเราเองใหม่และฟังก์ชั่นทั้งหมดที่มีอยู่ใน. Net ในบางกรณีมันเป็นเพียงเรื่องของการฟื้นฟู ในหลาย ๆ กรณีมันเกี่ยวข้องกับการเขียนซ้ำกระบวนการโดยรอบ ใน 2 กรณีเราเพียง แต่ละทิ้งคุณลักษณะดั้งเดิมซึ่งไม่สำคัญ เราพลาดกำหนดเวลา 2 ครั้งในกระบวนการ (แต่จบลงด้วยการกดกำหนดเวลาเดิมที่ฉันเสนอให้ - แทบจะไม่) ในวันเปิดตัวไม่มีอะไรทำงาน เราเปิดตัวในวันเสาร์ดังนั้นผลกระทบจึงค่อนข้างน้อย แต่ฉันใช้เวลาทั้งวันในการบันทึกล็อกเขียนชิ้นงานและประเมินผลการโหลดเซิร์ฟเวอร์ การทดสอบเพิ่มเติมอาจช่วยได้
ในตอนท้ายของวันแรกเว็บไซต์ทั้งหมดทำงานและทุกอย่างทำงานได้ (ฉันจะบอกว่าประสบความสำเร็จเล็กน้อย) ตลอดระยะเวลา 2.5 ปีที่ผ่านมาทุกอย่างประสบความสำเร็จอย่างยอดเยี่ยม การมีไซต์ทั้งหมดของเราบนสถาปัตยกรรมทั่วไปที่มีพื้นฐานเฟรมเวิร์กร่วมกันทำให้การพัฒนาและการทำงานข้ามผู้พัฒนาง่ายขึ้นมาก คุณสมบัติที่ฉันเขียนลงในไซต์ของเรา 2.5 ปีที่ผ่านมา (ในระหว่างการเขียนใหม่ของเรา) ได้รับการเห็น / นำมาใช้โดยสองสามไซโลดาวเทียม
เราได้เพิ่มการบันทึก, การติดตามผู้ใช้, เวลาที่เพิ่มขึ้น, แอปพลิเคชันเอกพจน์ที่รับผิดชอบในการตรวจสอบ / การอนุญาต / การระบุตัวตน ไซโลดาวเทียมสามารถมุ่งเน้นไปที่แอปพลิเคชันของพวกเขาทั้งหมดและสามารถวางใจได้ว่าปัญหาการตรวจสอบ / การอนุญาตใด ๆ ที่มีอยู่กับแอปพลิเคชันการจัดการข้อมูลประจำตัว
โครงการของเรามีความหงุดหงิดปวดใจและภัยพิบัติมากมาย ในที่สุดก็มีการจ่ายออกไปแล้วบ้าง ฉันเห็นด้วยกับการประเมินของ Joel Spolsky ว่า 100% เป็นกฎทั่วไป แต่ก็มีข้อยกเว้นอยู่เสมอ หากคุณกำลังพิจารณาเขียนใหม่คุณเพียงแค่ต้องทำให้แน่ใจว่าเป็นสิ่งที่คุณต้องการจริงๆ ถ้าเป็นเช่นนั้นให้เตรียมพร้อมสำหรับความเจ็บปวดทั้งหมดที่มาพร้อมกับมัน