การเตรียมการพัฒนาเว็บและเวิร์กโฟลว์โครงการทั้งหมด


9

ฉันทำงานเป็นโปรแกรมเมอร์คนเดียวในโครงการพัฒนาเว็บไซต์ (ด้านหน้าและด้านหลัง) - ฉันทำโครงการเสร็จสองสามโครงการดังนั้นฉันจึงค่อนข้างใหม่ในเรื่องนี้ฉันได้อ่านและทดลองวิธีการสองสามอย่าง เกี่ยวกับพวกเขา. คำถามและคำอธิบายของฉันค่อนข้างยาวดังนั้นโปรดอดทนรอ

สิ่งที่ฉันกำลังมองหาคือ:
1.การเตรียมการ / การวางแผนที่โดยทั่วไปแล้วจะทำก่อนที่คุณจะเริ่มพัฒนาเมื่อคุณรู้ว่าต้องสร้างอะไร
2.จากประสบการณ์ของคุณโปรดให้ข้อเสนอแนะ / คำแนะนำเกี่ยวกับกระบวนการที่ฉันติดตามในขณะนี้

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

นี่เป็นกระบวนการที่ฉันปฏิบัติอยู่ในขณะนี้:
1.วัดขอบเขตของโครงการและพยายามเข้าใจสิ่งที่พวกเขาพยายามทำให้สำเร็จในการประชุมสองครั้ง
2.ให้คำพูดที่อธิบายโดยทั่วไปเกี่ยวกับสิ่งที่พวกเขาคาดหวังว่าจะได้รับจากโครงการฉันพยายามที่จะเจาะจงเกี่ยวกับคุณสมบัติ แต่ฉันไม่ได้ใช้เวลามากเกินไปในเรื่องนี้เพราะฉันรู้ ลูกค้าอาจจะถามราคาและไม่แปลง
3.ฉันทำตามคำแนะนำของ Jeff Atwood สำหรับการชำระเงินและงาน:

การชำระเงิน15% - ล่วงหน้าก่อนที่จะเริ่มทำงานใด ๆ
ในระหว่างขั้นตอนนี้การจำลอง HTML ของเว็บไซต์ปลายทางนั้นเป็นผังงาน (ที่มีyEd ) อธิบายเว็บไซต์ในรายละเอียดมากที่สุดเท่าที่จะทำได้และเอกสารที่กล่าวถึงคุณสมบัติอื่น ๆ ที่ไม่ได้อยู่ในผังงาน . สิ่งนี้ทำได้โดยการเข้าไปดูรายละเอียดทั้งหมดของโครงการและทำการสรุปบิตที่จะเหมาะสมและสิ่งที่เกินกว่าที่จะนำไปใช้ในราคาที่ตกลงกันได้ เนื่องจากข้อ จำกัด เฉพาะไม่ได้กล่าวถึงก่อนหน้านี้บางส่วนของสิ่งเหล่านี้จึงมีการต่อรองมากขึ้นในสิ่งที่พวกเขาจะได้รับ เนื่องจากนี่เป็นโครงการงบประมาณคงที่จึงจำเป็นต้องมีข้อกำหนดคงที่มิฉะนั้นราคาของฉันจะลดลงเมื่อมีการเพิ่มคุณสมบัติเพิ่มเติม
โครงร่างสีการออกแบบโครงลวดและการออกแบบ PSD ก็ถูกสรุปไว้เช่นกัน

การชำระเงิน 35% - เริ่มพัฒนา
โครงการได้รับการแก้ไขแล้วเริ่มพัฒนา ฉันโฮสต์ไซต์บนเซิร์ฟเวอร์ของฉันโดยที่ไคลเอ็นต์สามารถเข้าถึงส่วนหน้าได้ แต่ไม่สามารถเข้าถึงรหัสใด ๆ ได้

การชำระเงิน 30% - เปลี่ยนรหัสไปยังเซิร์ฟเวอร์ของลูกค้า / ให้รายละเอียดการเข้าถึงเซิร์ฟเวอร์แก่ลูกค้า
ทำให้ไซต์อยู่ในสภาพดี

การชำระเงิน 20% - สองสามสัปดาห์หลังจากเว็บไซต์เริ่มใช้งานอีกครั้งเมื่อบั๊กทั้งหมดได้รับการแก้ไขแล้ว


คำถาม:
1.เมื่อคุณรู้แน่ชัดว่าคุณกำลังจะสร้างอะไรคุณวางแผนแบบไหนก่อนที่จะเริ่มเขียนโปรแกรม

2.จากประสบการณ์ของคุณส่วนใดของกระบวนการทั้งหมดที่คุณจะทำแตกต่างกันอย่างไร


น่าเสียดายที่ลูกค้าจำนวนมากไม่เคยรู้ว่าพวกเขาต้องการให้คุณสร้างอะไร วิธีที่ดีที่สุดที่ฉันพบคือทำการจำลองหน้าสำคัญบางหน้าจากนั้นนั่งลงแล้วเริ่มเล่าเรื่องราวของผู้ใช้ ฉันจงใจทำให้บางเรื่องผิดอย่างเห็นได้ชัดเพื่อบังคับให้ลูกค้าพูดว่า "ไม่ฉันต้องการให้มันทำงานแบบนี้ ... " ในที่สุดสิ่งนี้ทำให้เรามีบางสิ่งบางอย่างที่เข้าใกล้ข้อมูลจำเพาะของโครงการ ถอนหายใจ
Peter Rowell

@ ปีเตอร์การแนะนำเรื่องราวของผู้ใช้เป็นการหลอกลวงบางครั้งสามารถย้อนกลับมาหาคุณและทำให้ลูกค้าสูญเสียความมั่นใจในตัวคุณ ควรใช้เทคนิคนั้นอย่างระมัดระวัง
maple_shaft

@maple_shaft: ฉันรู้ว่า เมื่อฉันพูดว่า 'เห็นได้ชัดว่าผิด' ฉันหมายถึงการลวงตาอย่างโจ่งแจ้งซึ่งโดยปกติฉันจะได้รับมากกว่าหัวเราะเบา ๆ การให้ลูกค้าลงทุนอย่างเต็มที่ในเว็บไซต์ (วิสัยทัศน์ / เวลา / เงิน) มีความสำคัญต่อโครงการที่ประสบความสำเร็จ มันเป็นเรื่องที่น่าตกใจ (อย่างน้อยสำหรับฉัน) มีกี่คนที่คิดว่าเว็บไซต์ใหม่เป็นสิ่งที่พวกเขาสามารถจัดการด้วยมือและมันจะปรากฏขึ้นอย่างน่าอัศจรรย์
Peter Rowell

ฉันเห็นด้วยเกี่ยวกับการเยาะเย้ยเช่นกันไม่มีข้อความที่เป็นลายลักษณ์อักษรใด ๆ ที่จะทำให้ลูกค้าเข้าใจสิ่งที่พวกเขาจะได้รับ (ส่วนใหญ่ไม่เข้าใจหรือไม่เข้าใจที่จะเข้าใจ) - การเยาะเย้ยจะทำให้สิ่งต่าง ๆ ชัดเจนสำหรับลูกค้า (ข้อมูลจำเพาะ) + สัญญาหรือสิ่งที่กล่าวว่า: "คุณจะได้รับทั้งหมดนี้และสิ่งนี้ไม่มีอะไรเพิ่มเติม" ในขณะที่การพัฒนาฉันคิดว่าอาจมีความยืดหยุ่นในการเปลี่ยนแปลงสิ่งต่าง ๆ แต่ถ้ามีอะไรบางอย่างที่แสดงให้เห็นว่าเป็นงานมากกว่าที่คุณคิดไว้ฉันคิดว่าต้องดึงงานเอกสารและเอกสารอ้างอิงและงานเพิ่มเติมหมายถึงต้นทุนเพิ่มเติมด้วย
DMin

คำตอบ:


10

จุดที่ดีสำหรับการอภิปราย!

เพื่อมีคุณสมบัติ - ฉันทำงานในโครงการพัฒนาเว็บไซต์ขนาดใหญ่ในอุตสาหกรรมป้องกันประเทศ โดยทั่วไปเรามีทีมงาน 10-40 คนที่สนับสนุนลูกค้ารายเดียวโครงการปีที่แล้วและลูกค้ามีทั้งเงินและความต้องการสูง ดังนั้นไมล์สะสมอาจแตกต่างกัน - คุณไม่ต้องการที่จะทำเกินกำลัง!

1 เมื่อคุณรู้แน่ชัดว่าคุณกำลังจะสร้างอะไรคุณวางแผนแบบไหนก่อนที่จะเริ่มเขียนโปรแกรม

นี่คือส่วนหลัง 15% ที่จุดเริ่มต้นของ 35% ใช่ไหม

  • ตัดสินใจเลือกเว็บเซิร์ฟเวอร์และภาษาเป้าหมาย
  • ตัดสินใจเกี่ยวกับการจัดเก็บข้อมูล - XML, ฐานข้อมูลซึ่งฐานข้อมูลใด
  • ตัดสินใจเกี่ยวกับ API ที่สำคัญ - การคงอยู่ของข้อมูล, GUI, การบันทึก, การฉีดพึ่งพา ฯลฯ
  • ตัดสินใจเกี่ยวกับกลไกการเข้าสู่ระบบ - ด้วยความเสี่ยงและข้อมูลที่คุณพยายามปกป้อง อาจรวมถึงกลไกการชำระเงิน
  • วางแผนสถาปัตยกรรมระดับสูงและแบบแผนการตั้งชื่อ
  • เลือกลำดับของการเปิดตัวคุณลักษณะเพื่อให้คุณทราบว่าเป็นจุดเริ่มต้นที่ดี
  • ตัดสินใจเกี่ยวกับกลยุทธ์การทดสอบและกรอบการทดสอบอัตโนมัติหากมี
  • ตั้งค่าระบบ CM

2 จากประสบการณ์ของคุณส่วนใดของกระบวนการทั้งหมดที่คุณจะทำแตกต่างกันอย่างไร

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

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


2

คำแนะนำที่ดีที่สุดสำหรับคุณคือต้องระมัดระวังอย่างยิ่งกับงานพัฒนาราคาคงที่ หากคุณไม่ได้รับการจัดการที่ดีเกี่ยวกับข้อกำหนดก่อนเริ่มงานก็อาจเกิดขึ้นได้หนึ่งในสองสิ่ง

  1. การประมาณขอบเขตกลายเป็นขีดล่างและคุณสูญเสียเสื้อของคุณ
  2. ลูกค้าไม่ทราบหรือไม่ทราบขอบเขตทั้งหมดก่อนที่คุณจะเริ่มทำให้พวกเขาไม่พอใจกับผลลัพธ์ที่ได้

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

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.