80/20 มีผลต่อการตั้งเวลาด้วย

เราทุกคนเคยได้ยินเกี่ยวกับกฎ 80/20 ซึ่งกล่าวว่า 80% ของความสำเร็จ (ผลกระทบ) ของเรามาจากการกระทำ (สาเหตุ) เพียง 20% เท่านั้น ความจริงสากลนี้มีผลต่อการพัฒนาซอฟต์แวร์ด้วยเช่นกันและในบทความนี้เราจะกล่าวถึงพื้นฐานเล็กน้อยของคำแถลงนี้

BPM

Business Process Management สำหรับคำย่อในภาษาอังกฤษคือวินัยในการจัดการ (เหนือสิ่งอื่นใด) ที่ช่วยให้คุณเข้าใจกระบวนการที่ต้องดำเนินการในธุรกิจ (หรือในที่อื่น ๆ ) ด้วยสายตา คุณสมบัติหลัก ๆ คือสามารถวิเคราะห์กระบวนการที่ซับซ้อนและทำให้ "ง่าย" ได้

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

โครงการซอฟต์แวร์

ปัจจุบันมีวิธีการพัฒนาโครงการมากมาย ไม่ว่าจะเป็นแบบ Agile, แบบดั้งเดิม, แบบผสมผสาน และอื่นๆ อีกมากมาย สิ่งหนึ่งที่ทุกวิธีมีเหมือนกันคือการเตรียมการหมายความว่าอย่างไร? หมายความว่า 80% ของความสำเร็จในโครงการซอฟต์แวร์นี้จะขึ้นอยู่กับ 20% แรกของกระบวนการทั้งหมด นั่นคือการเตรียม การ

กำลังเตรียมโครงการ

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

เนื่องจากผู้อ่านบทความเหล่านี้จำนวนมากทำงานหรือเกี่ยวข้องกับเทคโนโลยี จึงควรกล่าวถึงว่า หากในช่วงใดช่วงหนึ่งของชีวิตการทำงาน พวกเขาพบเจอกับบริษัท/ซัพพลายเออร์ที่ไม่ผ่านการเตรียมการที่ดี โอกาสที่โครงการจะล้มเหลว นั้นเกือบ 80 %

สิ่งที่เป็นนามธรรมคือกุญแจสำคัญ

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

ละครเวที

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

ทำความเข้าใจเกี่ยวกับกระบวนการติดตั้ง

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

ขั้นตอนการติดตั้ง Gentoo

เป็นเจ้าของ. Christopher Diaz Riveros

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

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

กระบวนการย่อย "เคอร์เนล"

เป็นเจ้าของ. Christopher Diaz Riveros

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

ประหยัดเวลา

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

การกำกับโครงการทำได้ง่าย

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


เพิ่มเป็นแหล่งข้อมูลที่ต้องการใน Google