คำถามติดแท็ก quality

18
การจัดการกับวิศวกรที่ออกจากงานบ่อย ๆ [ปิด]
เพื่อนของฉันเป็นผู้จัดการโครงการสำหรับ บริษัท ซอฟต์แวร์ สิ่งที่น่าผิดหวังมากที่สุดสำหรับเขาคือการที่เขาวิศวกรบ่อยออกจากงานของพวกเขา บริษัท ทำงานอย่างหนักในการสรรหาวิศวกรใหม่โอนโครงการและรักษาคุณภาพของผลิตภัณฑ์ เมื่อผู้คนออกไปมันทำให้เพื่อนของฉันคลั่งไคล้ วิศวกรเหล่านี้ยังเด็กและมีความทะเยอทะยานและพวกเขาต้องการเงินเดือนที่สูงขึ้นและตำแหน่งที่ดีขึ้น เจ้านายใหญ่คิดถึง แต่เรื่องทางการเงินและทฤษฎีของเขาก็คือ“ สามมือใหม่เก่งกว่าทหารผ่านศึกคนเดียวเสมอ ” (ซึ่งในฐานะวิศวกรที่มีประสบการณ์ฉันรู้ว่ามันผิด) เพื่อนของฉันเกลียดทฤษฎีนั้น มีคำแนะนำสำหรับเขาไหม?

10
ทำความสะอาดโค้ดที่อ่านได้และโค้ดที่อ่านยากอย่างรวดเร็ว เมื่อไหร่ที่จะข้ามเส้น?
เมื่อฉันเขียนรหัสฉันพยายามทำให้รหัสของฉันสะอาดและอ่านง่ายที่สุดเท่าที่จะทำได้ ทุกครั้งที่มีเวลาที่คุณต้องข้ามเส้นและไปจากรหัสที่สะอาดดีเป็นรหัสที่น่าเกลียดเล็กน้อยเพื่อให้เร็วขึ้น เมื่อไรที่จะข้ามเส้นนั้น?

30
เหตุใดซอฟต์แวร์จึงไม่น่าเชื่อถือเท่ากับรถยนต์ [ปิด]
ฉันมีผู้ใช้คนหนึ่งถามคำถามนี้กับฉัน เรารู้ว่ารถยนต์พังลง แต่นั่นเป็นเพราะบางสิ่งบางอย่างที่มีอยู่จริง (เว้นแต่ว่าเกี่ยวข้องกับซอฟต์แวร์!) ฉันพยายามที่จะตอบว่าซอฟต์แวร์เป็นอุตสาหกรรมที่มีอายุน้อยกว่ามาก แต่ผู้ใช้โต้กลับกับ "อุตสาหกรรมยานยนต์ไม่เสถียรและน่าเชื่อถือมากกว่าคนน้อยกว่าหรือไม่" ฉันพยายามตอบด้วยว่าซอฟต์แวร์มีความซับซ้อนมากขึ้น แต่ผู้ใช้ตอบโต้ว่ามีชิ้นส่วนหลายพันชิ้นที่ทำขึ้นรถ คนที่ออกแบบและสร้างรถยนต์มักจะรู้จักองค์ประกอบของพวกเขาเป็นอย่างดี แต่พวกเขายังคงทำงานร่วมกันเป็นผลสุดท้าย ดังนั้นทำไมซอฟต์แวร์จึงไม่น่าเชื่อถือเท่ากับรถยนต์

8
จำนวนข้อผิดพลาดเฉลี่ยต่อ loc นั้นเท่ากันสำหรับภาษาการเขียนโปรแกรมที่แตกต่างกันหรือไม่? [ปิด]
ฉันได้รับแจ้งว่าจำนวนข้อบกพร่อง / ข้อบกพร่องโดยเฉลี่ยต่อบรรทัดของรหัสคือ "คงที่" สำหรับภาษาการเขียนโปรแกรมที่แตกต่างกัน Ruby ของ KLOC 10 ตัวจะมีจำนวนบั๊กเท่ากับ 10 KLOC ของ c ++ อาร์กิวเมนต์มักจะใช้เพื่อส่งเสริมการใช้ภาษาที่แสดงออก (คิดว่าหลาม / ruby ​​มากกว่า c ++ / แอสเซมบลี) เนื่องจากจำนวนบรรทัดเพื่ออธิบายการทำงานเดียวกันจะมีขนาดเล็กลง ไม่มีใครทราบว่าข้อเรียกร้องนี้มาจากไหน ภาษาระดับสูงขึ้นนำไปสู่ข้อบกพร่องน้อยลงหรือไม่

17
ออกแบบซอฟต์แวร์: สร้างมันเร็วหรือสร้างมันดี?
เมื่อสร้างแอปพลิเคชั่นที่ไม่สำคัญมันเป็นการดีที่สุดที่จะมุ่งเน้นที่การทำให้สิ่งต่าง ๆ ทำงานได้อย่างรวดเร็วและใช้ทางลัดในรหัสเช่นการผสมแบบจำลองตรรกะกับมุมมองของคุณ หรือคุณควรสละเวลาล่วงหน้าเพื่อสร้างสถาปัตยกรรมเพิ่มเติมสร้างมันขึ้นมา แต่ใช้ความเสี่ยงที่รหัสพิเศษทั้งหมดนี้อาจไม่ได้ใช้เนื่องจากการออกแบบของคุณค่อนข้างลื่นไหลและคุณอาจต้องทิ้งมันไปหากข้อเสนอแนะทำให้คุณ จะไปในทิศทางที่แตกต่างกันอย่างไร สำหรับบริบทฉันกำลังสร้างแอปพลิเคชันเดสก์ท็อป ฉันเป็นนักพัฒนาเพียงคนเดียวและฉันทำงานนอกเวลานี้เนื่องจากฉันมีงานประจำวัน ตอนนี้สำหรับการทำงานฉันพยายามทำสิ่งที่ถูกต้อง แต่สำหรับโครงการนี้ซึ่งฉันคาดว่าจะแปรเปลี่ยนเมื่อฉันได้รับข้อเสนอแนะจากผู้คนฉันไม่แน่ใจว่าเป็นแนวทางที่ถูกต้อง ฉันใช้เวลาหลายชั่วโมงในสัปดาห์นี้ในการออกแบบแบบจำลองตัวควบคุมมุมมองแบบเรียนเพื่อสื่อสารการเปลี่ยนแปลงในรูปแบบไปยังมุมมอง โดยทั่วไปดีมาก แต่ฉันไม่แน่ใจว่าฉันต้องการมุมมองหลายมุมมองในการแสดงข้อมูลและฉันรู้ว่าฉันสามารถแสดงสิ่งต่าง ๆ ได้เร็วขึ้นโดยไม่ต้องมีสถาปัตยกรรมเพิ่มเติม อาจใช้เวลาประมาณ 10-15 ชั่วโมงต่อสัปดาห์ในโครงการฉันรู้สึกว่าจะต้องใช้เวลานานกว่าจะได้รับสิ่งที่สร้างขึ้นซึ่งฉันสามารถสาธิตได้ถ้าฉันทำตามแนวทางการใช้ซอฟต์แวร์ที่ดี ฉันรู้ว่าผู้ใช้ของฉันชนะ ' ไม่สนใจว่าฉันใช้ MVC ภายในพวกเขาแค่ต้องการสิ่งที่แก้ปัญหาของพวกเขา แต่ฉันก็เคยอยู่ในสถานการณ์ที่คุณเกิดหนี้สินทางเทคนิคมากมายจากทางลัดซึ่งรหัสนั้นยากที่จะรักษาและเพิ่มคุณสมบัติใหม่ ๆ ฉันชอบที่จะได้ยินว่าคนอื่นเข้าใกล้ปัญหาประเภทนี้อย่างไร

8
มีกลิ่นสถาปัตยกรรมหรือไม่?
มีแหล่งข้อมูลมากมายบนเว็บที่อ้างถึงและแสดงรายการรหัสกลิ่น ข้อมูล แต่ผมไม่เคยเห็นในกลิ่นสถาปัตยกรรม สิ่งนี้กำหนดไว้ที่ใดที่หนึ่งและมีรายการหรือไม่ มีการวิจัยอย่างเป็นทางการเกี่ยวกับความบกพร่องของสถาปัตยกรรมและผลกระทบที่มีต่อความเร็วโครงการข้อบกพร่องและสิ่งที่คล้ายกันหรือไม่ แก้ไข:ฉันไม่ได้มองหารายการในคำตอบ แต่เอกสาร (บนเว็บหรือในหนังสือ) เกี่ยวกับกลิ่นสถาปัตยกรรม

21
การทดสอบซอฟต์แวร์จำเป็นหรือไม่
ฉันเป็นนักเรียนที่ทำงานเกี่ยวกับ BE (CS) และคำถามของฉันคือ: จำเป็นต้องทำการทดสอบในสาขาซอฟต์แวร์หรือไม่? ถ้าเราสร้างซอฟต์แวร์ด้วยความระมัดระวังเราจะทดสอบทำไม หลังจากการทดสอบเรามั่นใจได้หรือไม่ว่าเราบรรลุเป้าหมายนี้ (ผลิตภัณฑ์ / ซอฟต์แวร์ทำงานตามที่ตั้งใจ) เพราะเราทำการทดสอบเสร็จแล้ว? มันเป็นไปได้? คำถามของฉัน: จำเป็นต้องมีการทดสอบซอฟต์แวร์หรือไม่

3
คำสำหรับคุณสมบัติ 'ลวง' หรือข้อผิดพลาดโดยเจตนาคืออะไร [ปิด]
ฉันลืมคำศัพท์การเขียนโปรแกรมสแลง สิ่งนี้เป็นข้อผิดพลาดโดยเจตนาหรือคุณสมบัติล่อที่ใช้เป็นสิ่งที่ทำให้ไขว้เขว ตัวอย่างการใช้งาน "สวัสดี Bob, QA กำลังทำการตรวจสอบวันนี้ใส่$THINGลงในโมดูลเพื่อให้พวกเขามีปัญหาในการค้นหาจริง" สิ่งนี้สามารถนำไปใช้ในเชิงลบเพื่อให้มีข้อบกพร่องโดยเจตนาที่ชัดเจนมากที่จะค้นพบว่าเป็นสิ่งที่ทำให้ไขว้เขวจากปัญหาจริง นอกจากนี้ยังสามารถใช้ในเชิงบวก มันเหมือนกับวิธีที่คุณปล่อยให้สุนัขกู้ภัย 'ค้นหา' ผู้ที่ตกเป็นเหยื่อเมื่อค้นหาพื้นที่ภัยพิบัติ นอกจากนี้ยังสามารถใช้ในการตรวจสอบว่ากระบวนการ QA จับข้อบกพร่องได้จริง คำศัพท์ที่ฉันกำลังมองหาคืออะไร?

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

4
วิธีสร้าง“ ลัทธิคุณภาพ” [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา DeMarco และ Lister (Peopleware) แนะนำให้คุณสร้าง "ลัทธิคุณภาพ" ภายในทีมการเขียนโปรแกรมของคุณ เฉื่อยชาพวกเขาไม่แนะนำให้คุณทำอย่างนั้น! ใครมีความคิดเห็นเกี่ยวกับวิธีการทำสิ่งนี้ให้สำเร็จ


7
ผู้จัดการต้องการสภาพแวดล้อมการพัฒนาและการผลิตรวมกัน
ฉันทำงานในทีมการเขียนโปรแกรมขนาดเล็กที่สนับสนุนองค์กรขนาดใหญ่ ปีนี้ผู้จัดการของเราตัดสินใจว่าเราจะใช้เทคโนโลยี Oracle Apex เพื่อจัดการข้อมูลส่วนใหญ่ของ บริษัท นี่จะโอเคยกเว้นเรามีเซิร์ฟเวอร์ Apex เพียงอันเดียว ผู้จัดการของเราได้กำหนดว่าทุกอย่างเกิดขึ้นในกรณีนั้น ทีมงานของเรากำลังพัฒนาแอพในขณะที่ผู้จัดการของเราสาธิตพวกเขาและลูกค้าภายในของเราใช้พวกเขาด้วยเหตุผลที่ชัดเจนว่าทำให้เกิดปัญหาอยู่แล้ว! ฉันคาดหวังได้ว่าสิ่งนี้จะแย่ลงเมื่อเราลงทุนอย่างหนักใน Apex แอพมีความซับซ้อนมากขึ้นและจำนวนผู้ใช้เพิ่มขึ้น ฉันได้ยินมาว่าแนวทางปฏิบัติที่ดีที่สุดคือการมีสภาพแวดล้อมการพัฒนาการทดสอบและการผลิตแยกจากกัน แต่ทำไมถึงเป็นเช่นนั้น คำถาม: ทำไมเราควรมีสภาพแวดล้อมการพัฒนาการทดสอบและการผลิตแยกต่างหาก

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

7
บริษัท ขนาดใหญ่ของนักพัฒนาซอฟต์แวร์ตรวจสอบข้อบกพร่องในโปรแกรมของพวกเขาอย่างไร
ฉันสงสัยว่า บริษัท ผู้พัฒนาซอฟต์แวร์รายใหญ่ตรวจสอบข้อบกพร่องในโปรแกรมของพวกเขาอย่างไร พวกเขาแค่ทดสอบในคอมพิวเตอร์หลายเครื่องหรือไม่

3
ฉันจะใช้ Six Sigma ในสภาพแวดล้อมการพัฒนาซอฟต์แวร์ได้อย่างไร
ฉันเป็นผู้พัฒนา Java แต่ฉันถูกขอให้เรียนรู้เกี่ยวกับการใช้ Six Sigma กับเป้าหมายของการเพิ่มผลกำไรขององค์กรของเรา ฉันได้อ่านแล้วว่า Six Sigma สามารถใช้งานได้ในทุกสภาพแวดล้อม แต่ฉันสนใจในความแตกต่างของการประยุกต์ใช้กับการพัฒนาซอฟต์แวร์ แนวคิดใดของ Six Sigma ที่สามารถนำไปใช้กับสภาพแวดล้อมการพัฒนาซอฟต์แวร์และฉันจะนำไปใช้อย่างมีประสิทธิภาพได้อย่างไร ความเข้าใจของฉันคือ Six Sigma มุ่งเน้นไปที่: การระบุและลบสาเหตุของข้อบกพร่อง ลดความแปรปรวนในการใช้กระบวนการผลิตหรือธุรกิจ ฉันคิดว่าแนวคิดเหล่านี้สามารถนำไปใช้กับการพัฒนาซอฟต์แวร์ แต่สามารถนำไปใช้กับการพัฒนาซอฟต์แวร์ระยะเวลา (SDLC) ได้อย่างมีประสิทธิภาพหรือไม่

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