คำถามติดแท็ก development-process

สำหรับคำถามเกี่ยวกับกระบวนการพัฒนาซอฟต์แวร์

9
มาตรฐานสำหรับวิธีที่นักพัฒนาทำงานกับเวิร์กสเตชันของตนเอง
เราเพิ่งเจอหนึ่งในสถานการณ์เหล่านั้นซึ่งบางครั้งเกิดขึ้นเมื่อนักพัฒนาไม่สบายสำหรับโครงการกลางสองสามวัน มีคำถามสองสามข้อเกี่ยวกับว่าเขาจะยืนยันรหัสรุ่นล่าสุดของเขาหรือไม่หรือว่ามีบางอย่างที่ใหม่กว่าบนเครื่องท้องถิ่นของเราที่เราควรจะดูและเรามีการส่งมอบให้กับลูกค้าที่ค้างอยู่ดังนั้นเราจึงรอไม่ไหว ให้เขากลับมา หนึ่งในนักพัฒนาคนอื่นเข้าสู่ระบบเมื่อเขาเห็นและพบว่ามีพื้นที่ทำงานยุ่งมากดูเหมือนกับโครงการเดียวกันหลายโครงการโดยมีการประทับเวลาซึ่งทำให้มันไม่ชัดเจนว่าใครเป็น "ปัจจุบัน" (เขากำลังต้นแบบบิตของรุ่นอื่น ๆ "แก่น" ของเขา) เห็นได้ชัดว่านี่เป็นความเจ็บปวดในคออย่างไรก็ตามทางเลือก (ซึ่งดูเหมือนจะเป็นมาตรฐานที่เข้มงวดสำหรับการทำงานของนักพัฒนาแต่ละคนในเครื่องของตัวเองเพื่อให้แน่ใจว่าผู้พัฒนารายอื่นสามารถเลือกสิ่งต่าง ๆ ด้วยความพยายามน้อยที่สุด) นักพัฒนากระบวนการทำงานส่วนบุคคลและนำไปสู่การขาดประสิทธิภาพในระดับบุคคล ฉันไม่ได้พูดถึงมาตรฐานสำหรับรหัสเช็คอินหรือแม้กระทั่งมาตรฐานการพัฒนาทั่วไปฉันกำลังพูดถึงวิธีการทำงานของนักพัฒนาในพื้นที่โดเมนที่พิจารณาโดยทั่วไป (จากประสบการณ์ของฉัน) จะอยู่ภายใต้การควบคุมของนักพัฒนาเองเกือบทั้งหมด ดังนั้นคุณจะรับมือกับสถานการณ์เช่นนี้ได้อย่างไร เป็นหนึ่งในสิ่งเหล่านั้นที่เพิ่งเกิดขึ้นและคุณต้องจัดการกับราคาที่คุณจ่ายสำหรับนักพัฒนาที่ได้รับอนุญาตให้ทำงานในแบบที่เหมาะสมกับพวกเขาที่สุด? หรือคุณขอให้ผู้พัฒนาปฏิบัติตามมาตรฐานในพื้นที่นี้ - การใช้ไดเรกทอรีเฉพาะมาตรฐานการตั้งชื่อบันทึกบนวิกิหรืออะไรก็ตาม และถ้าเป็นเช่นนั้นมาตรฐานของคุณครอบคลุมอะไรพวกเขาเข้มงวดแค่ไหน หรือมีวิธีแก้ไขปัญหาอื่นที่ฉันขาดไป [สมมติว่ามีข้อโต้แย้งที่นักพัฒนาไม่สามารถติดต่อเพื่อพูดคุยผ่านสิ่งที่เขาทำที่นี่ - แม้ว่าเขาจะสามารถรู้และอธิบายว่าพื้นที่ทำงานใดที่มาจากหน่วยความจำจะไม่ง่ายและไร้ที่ติและบางครั้งผู้คนอย่างแท้จริงสามารถ ไม่ได้รับการติดต่อและฉันต้องการโซลูชันที่ครอบคลุมเหตุการณ์ทั้งหมด] แก้ไข:ฉันได้รับว่าการผ่านเวิร์กสเตชันของใครบางคนเป็นรูปแบบที่ไม่ดี (แม้ว่ามันจะเป็นที่น่าสนใจ - และเป็นไปได้นอกหัวข้อ - คำถามว่าทำไมถึงเป็นอย่างนั้น) และฉันก็ไม่ได้มองหาการเข้าถึงแบบไม่ จำกัด คิดให้มากขึ้นตามบรรทัดของมาตรฐานที่มีการตั้งค่าไดเรกทอรีรหัสของพวกเขาด้วยการแชร์แบบอ่านอย่างเดียว - ไม่มีอะไรที่สามารถเปลี่ยนแปลงได้ไม่มีอะไรที่สามารถมองเห็นได้และอื่น ๆ

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

3
Robustness กับการแข่งขัน Correctness [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดเมื่อปีที่แล้ว การอ่าน "รหัสสมบูรณ์ 2" ในย่อหน้าข้อกำหนดคุณภาพฉันพบสิ่งนี้: มีการแลกเปลี่ยนที่ยอมรับได้ระหว่างแอตทริบิวต์การแข่งขันที่ระบุตัวอย่างเช่นระหว่างความแข็งแกร่งและความถูกต้องหรือไม่ (นี่คือจุดของรายการช่องทำเครื่องหมายขนาดใหญ่เพื่อตรวจสอบคุณภาพของข้อกำหนด) ดังนั้นฉันจึงพบคำจำกัดความของความทนทานและความถูกต้องจำนวนมากในเว็บหนังสือวิชาการ ฯลฯ เช่น : ในหนังสือ "Object Oriented Software Construction, 2nd Edition, Bertrand Meyer, Prentice-Hall, 1997" หนังสือ: ความถูกต้อง: ระดับที่ระบบเป็นอิสระจาก [ข้อบกพร่อง] ในข้อมูลจำเพาะการออกแบบและการใช้งาน ความทนทาน: ระดับที่ระบบยังคงทำงานต่อเมื่อมีอินพุตไม่ถูกต้องหรือสภาวะแวดล้อมที่ตึงเครียด อย่างไรก็ตามเรื่องนี้ยังไม่ชัดเจนว่าทำไมและในสถานการณ์ทั้งสองนี้อาจขัดแย้งกัน คำถามของฉันคือทำไมคุณสมบัติทั้งสองนี้ในการแข่งขัน ?

3
แนะนำนโยบายการแยกการควบคุมเวอร์ชันให้กับทีมเล็ก ๆ
ฉันเป็นผู้รับเหมาที่เพิ่งเริ่มต้นกับ บริษัท ทีมคือนักพัฒนา 3 คนซึ่งประกอบด้วยผู้พัฒนา 2 คนถึงระดับกลางและอีกคนในระดับเดียวกันเริ่มเร็ว ๆ นี้และตัวฉันเอง (6 ปี xp) สำหรับนักพัฒนาทั้งสองที่มีอยู่มันเป็นงานแรกของพวกเขาที่ออกจากมหาวิทยาลัย / วิทยาลัยและพวกเขาไม่เคยมีนักพัฒนาอาวุโสที่ดูแลงานของพวกเขามาก่อน ไม่มีนโยบายการควบคุมเวอร์ชันที่ชัดเจน นักพัฒนาทำการพัฒนาทั้งหมดบนลำตัวแล้วนำไปใช้กับการผลิตโดยตรงจากเครื่องพัฒนาของพวกเขา ทีมที่มีอยู่ไม่คุ้นเคยกับการแตกแขนง ฉันกำลังเปลี่ยนแปลงทั้งหมดนี้และแนะนำเซิร์ฟเวอร์ CI, การทดสอบ TDD / การจัดเตรียม / การผลิต ฯลฯ พร้อมกับนโยบายการควบคุมเวอร์ชันเพื่อชมเชยสิ่งนี้ ระบบควบคุมแหล่งที่มาคือ TFS ซึ่งฉันไม่เคยใช้มาก่อน มันถูกกำหนดค่าให้เป็นแหล่งเก็บข้อมูลขนาดยักษ์ ฉันได้เขียนพอยน์เตอร์ให้กับพวกเขาแล้ว แต่มีอะไรอีกบ้างที่ฉันควรเพิ่ม / แก้ไขโดยคำนึงถึงประสบการณ์ของทีม นโยบายการควบคุมเวอร์ชัน การพัฒนาจะทำบนลำต้น หากการเปลี่ยนแปลงคาดว่าจะใช้เวลานานกว่าหนึ่งสัปดาห์ก็ควรจะทำในสาขาที่มีการผสานปกติจากลำตัวเข้าไปในสาขาเพื่อหยุดทั้งสองออกจากซิงค์ สร้างสาขาย่อยสำหรับรหัสการผลิต สาขานั้นควรมีรหัสที่มั่นคงเท่านั้น เราสามารถมีสาขาย่อยหนึ่งสาขาที่ได้รับการอัพเดตจากลำตัวหนึ่งครั้งต่อการวิ่งหรือเราสามารถสร้างสาขาย่อยแยกต่างหากสำหรับแต่ละสัปดาห์ หากจำเป็นต้องแก้ไขข้อบกพร่องเร่งด่วนที่มีผลกระทบต่อรหัสการผลิตรหัสนั้นจะถูกสร้างขึ้นในสาขาที่วางจำหน่ายและผสานกลับเข้าไปในลำต้น หากเรานำกลยุทธ์การเปิดตัวสาขาหนึ่งมาใช้ลำต้นจะถูกรวมเข้ากับสาขาที่วางจำหน่ายหนึ่งครั้งต่อการวิ่งไปยังจุดสิ้นสุดของการวิ่ง ถ้าเราใช้สาขาแยกต่อกลยุทธ์การปล่อยแล้วลำตัวไม่เคยถูกรวมเข้ากับสาขาการปล่อย ในบางสถานการณ์อาจจำเป็นต้องทำการแก้ไขข้อบกพร่องสองครั้งในสาขาที่แตกต่างกันหากสาขาแยกกันมากเกินไป หากเรากำลังวิ่งสั้น ๆ สิ่งนี้ไม่ควรเกิดขึ้นบ่อยเกินไป ฉันวางแผนที่จะมีสามเซิร์ฟเวอร์ …

4
นักพัฒนาส่วนหน้าควรระบุรูปแบบ JSON สำหรับนักพัฒนาส่วนหลังหรือไม่
ฉันใช้บทบาทส่วนหน้าในโครงการ ฉันควรระบุเพื่อนร่วมทีม back-end ของฉันในรูปแบบที่แน่นอนของ JSON ที่ PHP ของพวกเขากลับไปที่ JavaScript ของฉันหรือไม่ ตัวอย่างเช่นฉันควรบอกพวกเขาว่าพวกเขาควรใช้รูปแบบคล้ายกับที่อธิบายไว้ที่นี่: วิธีที่เหมาะสมในการจัดโครงสร้าง JSON สำหรับการใช้งานส่วนหน้า หรือฉันควรจะรักษาบทบาทของตัวเองให้ปลอดเชื้อมากที่สุดและอธิบายด้วยคำพูดที่ว่าอินพุตและเอาท์พุตที่ฉันต้องการจากอินเทอร์เฟซส่วนหลัง (แน่นอนถ้าเกิดเหตุการณ์นี้มันอาจเป็นเรื่องยากสำหรับฉันในการจัดการรูปแบบโครงสร้างข้อมูลที่แตกต่างกัน)

9
ฉันควรฟังนายจ้างของฉันและใช้เครื่องมือ CASE หรือไม่
นายจ้างของฉัน (ไม่ใช่นักพัฒนาซอฟต์แวร์) คิดว่าเครื่องมือ CASE จะช่วยให้เราปรับปรุงกระบวนการพัฒนาและเอกสารของเรา ฉันไม่แน่ใจเกี่ยวกับเรื่องนี้เราเป็นทีมเล็ก ๆ จาก 5 นักพัฒนาสร้างโซลูชันธนาคารบนมือถือสำหรับลูกค้าในท้องถิ่น ฉันคิดว่าเครื่องมือ CASE จะเสียเวลาและเงินตามที่จำเป็นต้องซื้อและเราจะต้องใช้เวลาก่อนที่เราจะคุ้นเคยกับพวกเขาและทำงานอย่างมีประสิทธิภาพกับพวกเขาสำหรับการสร้างแบบจำลองและสิ่งต่าง ๆ การสร้างรหัสเป็นปัญหาอีกเรื่องหนึ่งฉันคิดว่า CASE ที่สร้างรหัสจะไม่ดีเท่าโค้ดที่เขียนโดยนักพัฒนาที่ดี ฉันคิดว่าถ้าเรายึดหลักความคล่องตัวรูปแบบการออกแบบใช้ TDD และรักษาโค้ดของเราให้สะอาด เราควรจะดี และเท่าที่การวิเคราะห์และการออกแบบฉันคิดว่าไดอะแกรม UML ง่าย ๆ บนไวท์บอร์ดควรทำตามขั้นตอน เอกสารเป็นสิ่งที่ดีและสำคัญ แต่ควรทำให้น้อยที่สุดเท่าที่จะทำได้และเราไม่ควรมุ่งเน้นไปที่เอกสารและลืมรหัส นี่คือสิ่งที่ฉันคิด ฉันถูกไหม? หรือฉันควรฟังนายจ้างของฉันและเริ่มทำการวิจัยสำหรับ CASE Tool ที่เหมาะสม?

8
การจัดการกับโปรแกรมเมอร์ที่ไม่ยืดหยุ่น
บางครั้งโปรแกรมเมอร์ที่ทำงานในโครงการเป็นเวลานานจะไม่ยืดหยุ่นและมันก็ยากที่จะให้เหตุผลกับพวกเขา แม้ว่าเราจะสามารถโน้มน้าวใจพวกเขาได้ แต่พวกเขาก็ไม่สามารถใช้คำแนะนำของเราได้ ตัวอย่างเช่นฉันเพิ่งเข้าร่วมโครงการที่กระบวนการสร้างและวางจำหน่ายซับซ้อนเกินไปและมีสิ่งกีดขวางบนถนนที่ไม่จำเป็น ฉันแนะนำว่าเรากำจัดค่าใช้จ่ายในการพัฒนาบางส่วน (เช่นการกรอกสเปรดชีตไม่กี่รายการ) เพียงแค่รวมการจัดการข้อบกพร่องและเครื่องมือควบคุมเวอร์ชัน (ทั้งคู่เป็นเครื่องมือของ IBM-Rational เพื่อให้การรวมกันเป็นเรื่องง่าย นอกจากนี้หากเราใช้เครื่องมือเช่น Maven & Ant (โปรเจ็กต์เกี่ยวข้องกับ Java และผลิตภัณฑ์ COTS บางรายการ) การสร้างและวางจำหน่ายสามารถทำให้ง่ายขึ้นซึ่งควรลดข้อผิดพลาดและการแทรกแซงด้วยตนเอง ฉันพยายามโน้มน้าวผู้อื่นและฉันก็พร้อมที่จะใช้ความพยายามในการพัฒนาข้อพิสูจน์แนวคิด แต่ผู้พัฒนา 'อาวุโส' ไม่เต็มใจอาจเป็นเพราะกระบวนการปัจจุบันทำให้เขามีค่ามากกว่า เราจะรับมือกับสถานการณ์นี้ได้อย่างไรโดยไม่สร้างแรงเสียดทานในทีม?

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

5
ความต้องการข้อมูลจำเพาะเกี่ยวกับการออกแบบซอฟต์แวร์ลดลงอย่างมีนัยสำคัญเมื่อเทียบกับวิวัฒนาการของภาษาการเขียนโปรแกรมที่แสดงออกได้มากกว่านี้หรือไม่?
สำหรับคนไอทีจำนวนมากรวมถึงตัวผมเองเมื่อไม่กี่ปีที่ผ่านมากระบวนการพัฒนาซอฟต์แวร์ที่เหมาะสมจะเกี่ยวข้องกับการสร้างเอกสารการออกแบบอย่างละเอียดพร้อมไดอะแกรม UML จำนวนมากก่อนที่จะมีการเขียนบรรทัดโค้ด (ดูเหมือนว่าคำอธิบายของโมเดลน้ำตก แต่จะเหมือนกันกับว่องไวยกเว้นว่าการทำซ้ำจะเล็กกว่า) ในช่วงสองหรือสามปีที่ผ่านมาฉันเปลี่ยนใจโดยสิ้นเชิง ฉันยังคิดว่าข้อกำหนดรายละเอียดความต้องการพร้อมกรณีทดสอบที่เกี่ยวข้องนั้นเป็นสิ่งจำเป็นอย่างยิ่ง สำหรับโครงการขนาดใหญ่ฉันก็ต้องการโครงร่างของสถาปัตยกรรมโดยรวมก่อนที่จะเริ่มโค้ด แต่ส่วนที่เหลือทั้งหมดควรทำในรหัสมากที่สุด ในกรณีที่เหมาะสมไม่ควรมีคำอธิบายของการออกแบบซอฟต์แวร์ยกเว้นรหัสเอง ฉันมาถึงข้อสรุปนี้ได้อย่างไร นี่คือข้อโต้แย้งบางอย่าง: ผลตอบรับ เครื่องมือสำหรับการเขียนเอกสารหรือสร้างไดอะแกรมนั้นให้ผลป้อนกลับเล็กน้อย ใช่มีเครื่องมือสร้างแบบจำลองที่ทำการตรวจสอบความสอดคล้องบนไดอะแกรม UML แต่มีข้อ จำกัด และมาพร้อมกับค่าใช้จ่ายจำนวนมาก หากไม่มีข้อเสนอแนะมันเป็นการยากที่จะรับรู้และแก้ไขข้อผิดพลาด ทันทีที่คุณเขียนรหัสคุณจะได้รับข้อเสนอแนะมากมายเช่น: ข้อผิดพลาดและคำเตือนจากคอมไพเลอร์ ผลการวิเคราะห์รหัสคงที่ การทดสอบหน่วย สามารถจดจำและแก้ไขข้อผิดพลาดได้อย่างรวดเร็ว ความมั่นคง เพื่อให้แน่ใจว่ารหัสสอดคล้องกับเอกสารของคุณคุณต้องตรวจสอบอีกครั้งและอีกครั้ง หากมีการเปลี่ยนแปลงบ่อยครั้งจะเป็นการยากที่จะทำให้รหัสและเอกสารตรงกัน refactoring มีเครื่องมือและเทคนิคที่มีประสิทธิภาพสำหรับการ refactoring code ในขณะที่การ refactoring textual description หรือไดอะแกรมมักจะยากและเกิดข้อผิดพลาดได้ง่าย มีเงื่อนไขหนึ่งที่จะทำให้งานนี้: รหัสจะต้องง่ายพอที่จะอ่านและทำความเข้าใจ สิ่งนี้อาจไม่สามารถทำได้ด้วย Assembler, Basic หรือ Fortran แต่ภาษาสมัยใหม่ (และห้องสมุด) มีความหมายมากกว่า ดังนั้นหากข้อโต้แย้งของฉันถูกต้องควรมีแนวโน้มไปสู่ข้อกำหนดและเอกสารการออกแบบซอฟต์แวร์ที่มีน้ำหนักเบาหรือน้อย มีหลักฐานเชิงประจักษ์สำหรับแนวโน้มนี้หรือไม่?

3
Agile เป็นตัวแปรของ RAD หรือไม่?
Wikipedia บอกว่า Agile เป็น "RAD" ประเภทหนึ่งซึ่งฉันเดาว่าไม่ถูกต้อง จากสิ่งที่ฉันรู้ Agile ได้รับการพัฒนาเนื่องจาก RAD เองนั้นไม่เพียงพอใน 90'S (เข้มงวดเกินไปสำหรับการเปลี่ยนแปลง) หรือฉันผิด (หมายเหตุ: เห็นได้ชัดว่าบทความ Wikipedia เกี่ยวกับการพัฒนาซอฟต์แวร์ Agileได้รับการปรับปรุงในระหว่างนั้นเพียงแค่ระบุว่าRADเป็นผู้บุกเบิกของ Agile ไม่ใช่เป็น superset) การอ้างอิงจากหนังสือ Radical Project Management (Thomsett) ".. แฟชั่นใหม่ของการพัฒนาเช่น RAD, Agile, Object oriented ... " ผู้สอบบัญชีระบบข้อมูลรับรอง CISA: .. ตระหนักถึงซอฟต์แวร์ตัวเลือกสองตัว วิธีการ: การพัฒนาแอพพลิเคชั่นที่คล่องตัวและรวดเร็ว การจัดการแบบว่องไวสำหรับซอฟต์แวร์: วิธีการแบบว่องไวส่วนใหญ่มาจากวิธี RAD ที่มีน้ำหนักเบา แนวทางปฏิบัติที่ดีที่สุดในการประเมินซอฟต์แวร์: วิธีการหลักของ sw dev สามารถสรุปได้ดังนี้: …

6
เวิร์กโฟลว์ที่ดีสำหรับการพัฒนาซอฟต์แวร์ด้วยการต่อสู้และรวมอย่างต่อเนื่อง
ฉันกำลังศึกษาวิธีการที่จะเข้าใจได้ดีขึ้นว่าเวิร์กโฟลว์การรวมต่อเนื่องนั้นเหมาะกับ บริษัท พัฒนาซอฟต์แวร์ด้วยวิธีการแย่งชิงกันอย่างไร ฉันกำลังคิดเช่นนี้: นั่นจะเป็นขั้นตอนการทำงานที่ดีหรือไม่?

7
การเขียนโปรแกรมแบบจับคู่ทั่วไปในที่ทำงานเป็นอย่างไร?
ฉันรู้สึกทึ่งกับการเขียนโปรแกรมแบบคู่มาตลอด แต่ในการพัฒนา 12 ปีฉันไม่เคยทำงานในที่ที่พวกเขาฝึกหัดแบบนี้มาก่อนดังนั้นฉันจึงสงสัยว่าคนอื่นจะเห็นมันอย่างไร ฉันสงสัยว่านี่เป็นเพราะเงิน / เวลา (หัวหน้าผมมีจุดพบคนสองคนที่คอมพิวเตอร์เครื่องหนึ่งทำงานด้วยรหัสเดียวกัน !!!! พวกเขากล้า!) หรือด้วยเหตุผลอื่น?

7
คุณจะโน้มน้าวให้ฝ่ายบริหารทิ้งต้นแบบได้อย่างไร
ฉันชอบการสร้างต้นแบบเป็นวิธีที่มีประสิทธิภาพอย่างรวดเร็วในการทำให้ UI ต่อหน้าผู้ใช้ แม้ว่าหลายครั้งผู้บริหารจะได้รับผลกระทบในทางที่ผิดและต้นแบบถูกลากเตะและส่งเสียงกรีดร้องในการพัฒนากระแสหลัก คุณจัดการการจัดการโดยไม่ทำเช่นนี้ได้อย่างไร?

5
วิธีการแนะนำ Agile ให้กับทีมที่ใช้วิธีการที่ไม่ใช่แบบ Agile
พิจารณา บริษัท ที่ได้รับการรับรองอย่างภาคภูมิใจสำหรับวิธีการที่ไม่ใช่แบบ Agile ใช้เป็นจุดขายให้กับลูกค้าเพื่อแสดงความรับผิดชอบ คุณจะไปเกี่ยวกับวิธีการแนะนำ Kanban หรือการแย่งชิงกันมีความก้าวหน้าโดยไม่ทำลายทั้งระบบของพวกเขาและยังคงทำให้พวกเขามีความมั่นใจว่ามันยังคงสามารถเช่นเดียวกับความรับผิดชอบ / ตรวจสอบ ? ฉันรู้ว่าสิ่งนี้อาจเกี่ยวข้องกับ " คุณจะแนะนำวิธีการแบบเปรียวเช่น Scrum " ได้อย่างไร แต่ที่นี่ฉันสงสัยว่าจะหลีกเลี่ยง / หลีกเลี่ยงความจริงที่ว่า บริษัท กำหนดวิธีการจัดการ SDLC ภายใต้ข้ออ้างที่ผิด ๆ วิธีเดียวที่จะมีหลักฐานการตรวจสอบ

9
คุณจะรู้ได้อย่างไรว่าเมื่อใดจะหยุดเพิ่มคุณสมบัติ
ก่อนหน้านี้ฉันเขียนสคริปต์ python ขนาดเล็กมากที่ตรวจสอบฟีด xml เป็นระยะ ๆ สำหรับรายการใหม่และแจ้งเตือนผู้ใช้ไปยังรายการใหม่เมื่อมี ฉันเขียนสิ่งนี้ด้วยตนเองดังนั้นจึงเป็นโปรแกรมที่ใช้คอนโซลเป็นหลักซึ่งทุกคนที่คุ้นเคยกับส่วนต่อประสานคอนโซลสามารถใช้งานได้ หลังจากที่ในขณะที่ฉันตัดสินใจว่ามันอาจเป็นประโยชน์กับคนอื่น ๆ และเริ่มที่จะเป็นระเบียบขึ้นอินพุตฆ่าเชื้อกำจัดแมลง มันเกิดขึ้นกับฉันเพราะฉันเขียนสคริปต์ฉันรู้วิธีใช้อย่างมีประสิทธิภาพถูกต้อง ฯลฯ คนอื่นอาจไม่ได้ดังนั้นฉันจึงเริ่มเพิ่ม GUI สิ่งนี้เริ่มต้นจากเมนูง่าย ๆ จากนั้นขยายเป็น GUI เต็มรูปแบบมากขึ้นด้วยทั้งเมนูอินเตอร์เฟสและตัวเลือก ฉันเพิ่มการตั้งค่าผู้ใช้ที่เก็บไว้และที่เก็บข้อมูลสำหรับฟีด xml ที่ค้นหาก่อนหน้านี้เพื่อเพิ่มความเร็วในการค้นหาซ้ำ ฉันเพิ่มการบันทึกเพื่อช่วยในการดีบักแอปพลิเคชันในกรณีที่มีสิ่งผิดปกตินำแอปพลิเคชั่นไปยังฐานข้อมูลหลามเสถียรล่าสุดสำหรับแพลตฟอร์มที่ฉันเลือกและปรับปรุงคุณสมบัติการโต้ตอบ ฉันได้แก้ไขข้อผิดพลาดและแสดงความคิดเห็นรหัสของฉันอย่างชัดเจน แต่ฉันยังมีสิ่งที่ฉันคิดว่าสามารถทำได้เพื่อปรับปรุงแอพก่อนที่ฉันจะเปิดให้ผู้ทดสอบอัลฟ่าใช้งานได้ มันเป็นหนทางไกลมากจากสคริปต์บรรทัดเดิมของฉัน 20-30 สิ่งที่ฉันคาดหวังจะใช้เวลาเพียงหนึ่งหรือสองชั่วโมงในการเปลี่ยนจากการพิสูจน์แนวคิดไปสู่โปรแกรมการใช้งานที่ยอมรับได้ซึ่งใช้เวลา 10-20 เท่า (ฉันยังคงเป็น noob และสิ่งต่าง ๆ ใช้เวลานาน แต่ก็ยัง .... ) คุณจะรู้ได้อย่างไรว่าเมื่อใดที่จะหยุดเพิ่ม / ปรับแต่ง / แก้ไขสิ่งต่าง ๆ และปล่อยให้ลูกของคุณคลานออกมาในที่โล่ง

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