แนวคิด เรื่อง Unified Process (UP) โดยความหมายแล้ว คือ กระบวนการทางวิศ การแปล - แนวคิด เรื่อง Unified Process (UP) โดยความหมายแล้ว คือ กระบวนการทางวิศ ไทย วิธีการพูด

แนวคิด เรื่อง Unified Process (UP)

แนวคิด เรื่อง Unified Process (UP) โดยความหมายแล้ว คือ กระบวนการทางวิศวกรรมซอฟต์แวร์ที่เกิดจากการรวมเอาสิ่งที่ผู้เชี่ยวชาญทางการพัฒนาซอฟต์แวร์ (Software engineer) ที่เคยกำหนดไว้และใช้แล้วได้ผลดีในการพัฒนาซอฟต์แวร์นั้นมารวมกัน โดยเลือกแต่เทคนิคที่ดีและขั้นตอนหลักที่เหมือนๆกันและใช้ได้อย่างมีประสิทธิภาพของแต่ละผู้เชี่ยวชาญดังกล่าวมารวมกัน (Unify) และกำหนดให้มีชื่อใหม่ว่า “กระบวนการพัฒนาซอฟต์แวร์แบบรวมเป็นหนึ่งเดียว (Unified Process) “ บางครั้งเราจะพบว่ามีกระบวนการคล้ายกันนี้ในแวดวงทางวิศวกรรมซอฟต์แวร์ เช่น Rational Unified Process (RUP) ซึ่งเป็นของบริษัทยักษ์ใหญ่ในวงการพัฒนาซอฟต์แวร์ที่ชื่อว่า “Rational Rose Corporation” และถูกจดลิขสิทธิ์ด้วย หลักการหรือแนวคิดจะคล้ายกันแต่จะแตกต่างที่รายละเอียดของกระบวนการมากกว่า สำหรับแนวคิดที่มีลักษณะร่วมกันหรือเหมือนกันของ UP ได้แก่ การพัฒนาแบบวนกลับ (Iterative Development), การจัดการกับความต้องการ (Requirement Management) และการใช้เครื่องมือช่วยทางวิศวกรรมซอตฟ์แวร์(CASETools)เป็นต้น

เป้าหมายหรือวัตถุประสงค์ของ UP คือ การที่ให้ได้ Software ที่มีคุณภาพและสอดคล้องกับความต้องการ (need) ของผู้ใช้ โดยอยู่ภายใต้งบประมาณและเวลาที่สามารถคาดเดาได้ (Predictable budget and time) UP นั้นจะเน้นการกำหนดบทบาท (Role) ไปที่ทีมพัฒนางานมากกว่าแต่ละบุคคล กล่าวคือจะมีการกำหนดว่าในแต่ละช่วง (Phase) ของการพัฒนานั้นว่า ควรประกอบไปด้วยใคร(Who) แต่ละคนมีหน้าที่รับผิดชอบอะไร (What) จะทำงานที่รับผิดชอบนั้นเมื่อไหร่ (When) และปฏิบัติอย่างไร (How) ที่กล่าวมาเป็นลักษณะที่เป็นนามธรรม (Abstract) หรืออาจกล่าวได้ว่ามันเป็นภาพมุมสูง (bird eye view) ของกระบวนการ UP ซึ่งอาจจะทำให้เข้าใจภาพยังไม่ชัดเจน กลยุทธ์หรือแทคติคที่ใช้ใน UP รวมแล้วจะเรียกมันว่า “Best Practice Model” หรือ “Best Practice” ก็ได้ นั้นคือโดยธรรมชาติของ UP จะมีการปฏิบัติ 6 อย่าง ดังนี้

1. การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (Iterative Development)
2. การพัฒนาซอฟต์แวร์ ใดๆ ควรมีการจัดการความต้องการได้ (Requirement Management)
3. การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (Component –based Model Architecture)
4. การสร้างต้นแบบของระบบที่สามารถมองเห็นได้ (Visual Model) ด้วยภาษา UML
5. การตรวจสอบคุณภาพของซอฟต์แวร์ที่พัฒนาอย่างต่อเนื่อง (Continuously Verify)
6. การจัดการการเปลี่ยนแปลง (Change Management)



1. การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (Iterative Development)
กล่าวคือในแต่ละรอบการทำงาน (Iteration) หนึ่งๆ จะประกอบด้วยกิจกรรมเหล่านี้ คือ การกำหนด,การวิเคราะห์,การออกแบบ,การสร้างและสุดท้ายการทดสอบความต้องการของผู้ใช้นั้น ผลที่ได้คือ ซอฟต์แวร์ที่สามารถทำงานได้ (Executable product) ซึ่งแตกต่างจากกระบวนการพัฒนาแบบดั้งเดิม (Traditional Development) ที่กว่าจะได้ผลลัพธ์ในรูป Executable product นั้นจะต้องรอไปจนกว่า(delay) จะมีการทดสอบระบบทั้งหมดเรียบร้อย ซึ่งสิ่งนี้ส่งผลให้โครงการพัฒนาซอฟต์แวร์นั้นมีความเสี่ยงสูงในการล้มเหลวได้เมื่อเวลาผ่านไป ดั่งสำนวนที่ว่า “กว่าจะรู้ตัวก็สายเสียแล้ว” นั้นเอง การพัฒนาแบบวนย้อนกลับ จะสังเกตง่าย ๆ จากลักษณะดังต่อไปนี้
1. โครงสร้างถูกแบ่งออกเป็นรอบ (Iteration)
2. สิ่งที่ได้จากการพัฒนาระบบในแต่ละรอบ จะมีการนำไปพัฒนาพิ่มสำหรับรอบต่อ ๆ ไป จนกว่าจะกลายเป็นระบบที่สมบูรณ์
3. ในแต่ละรอบทีมจะต้องทำงานซ้ำ(Iterate) ขั้นตอนการวิเคราะห์ ออกแบบ พัฒนาโปรแกรม และทดสอบโปรแกรมจากลักษณะของ Interative and Incremental Development คือ ลักษณะของการวนรอบทำซ้ำทำเพิ่มขึ้น โดยในแต่ระรอบจะเริ่มด้วยการวางแผน เก็บรวบรวมความต้องการ วิเคราะห์ พัฒนาโปรแกรม ทดลองโปรแกรม แล้วนำไปใช้งานพร้อมกับเก็บข้อมูลการประเมินผลเพื่อวางแผนดำเนินการในรอบต่อไป และแต่ระรอบจะต้องมีการเพิ่มส่วนอื่น ๆ ของระบบจนกว่าจะครบ ดังนั้นก่อนดำเนินโครงการพัฒนาระบบสิ่งสำคัญคือ จะต้องวางแผนว่าทั้งโครงการจะต้องแบ่งออกเป็นกี่รอบ ในแต่ละรอบจะเพิ่มเติมส่วนใดของระบบ จึงจะทำให้ระบบที่ได้มีความสมบูรณ์ และสามารถรองรับความต้องการของผู้ใช้ระบบที่เปลี่ยนแปลงอยู่เสมอได้


2. การพัฒนาซอฟต์แวร์ ใดๆ ควรมีการจัดการความต้องการได้ (Requirement Management)
“ทำไมต้องจัดการความต้องการด้วยล่ะ ? ในเมื่อดูหรือศึกษาจากเอกสารรายงานต่างๆ ของระบบงานเดิมก็จบ !” ความคิดนี้เป็นความคิดแบบเก่า แบบเดิม ที่มองว่าระบบที่เราพัฒนานั้นเป็นระบบเอกเทศ (Alone หรือ Standalone) ซึ่งผมก็พบบ่อยในการพัฒนาซอฟต์แวร์บ้านเรา โดยเฉพาะกระทรวงสาธารณสุขครับที่มักมองว่าแค่ดูหรือศึกษาจากรายงาน (Output) และกระบวนการทำงาน (Workflow) แล้วมาเขียนโปรแกรมก็จบ ไม่เห็นจะยาก ครับปัญหาที่เราประสบอยู่ก็คือ มันเกิดจากการคิดแบบนี้นั้นแหละ ซึ่งเราคงพอจะสังเกตุได้ว่าทำไมซอฟต์แวร์ของกระทรวงสาธารณสุขมันเยอะเหลือเกินและแต่ละตัวก็ไม่สามารถทำงานร่วมกันได้เลย ข้อมูลใช้ร่วมกันแทบจะไม่ได้ ถ้าจะใช้ก็ต้องมาเล่นแร่แปรธาตุข้อมูลอีก ทำให้เสียเวลา เสียแรงงาน ตลอดจนซอฟต์แวร์นั้นดูแลรักษายาก ตามลำดับ สิ่งที่เป็นปัญหานี้ก็มาจากเหตุ คือ การที่เราไม่ได้มองสิ่งที่พัฒนาแบบเป็นองค์รวม ขาดการศึกษาระบบที่แวดล้อมหรือเกี่ยวข้องด้วย นั้นเอง ดังนั้นเราต้องมีการจัดการความต้องการที่ดี เพราะ “ความต้องการ” ถือว่าเป็นสิ่งที่สำคัญที่สุด หากเราไม่สามารถจัดการกับความต้องการที่เปลี่ยนแปลงได้ ย่อมส่งผลกระทบต่อการพัฒนาระบบเป็นอย่างมาก และเสี่ยงต่อความล้มเหลวตามมา สำหรับการจัดการความต้องการนั้นจะเน้นไปที่ทำอย่างไรจะจัดการความต้องการได้อย่างเหมาะสม ทั้งนี้ระบบสามารถเปลี่ยนไปตามความต้องการได้ โดยใช้ทรัพยากรในการพัฒนาน้อยที่สุด สรุปวัตถุประสงค์ของการจัดการความต้องการก็คือ เพื่อที่จะทำให้เรามั่นใจได้ว่า เราแก้ปัญหาได้ถูกต้อง เหมาะสม และสร้างระบบที่สอดคล้องกับความต้องการของผู้ใช้ นั้นเอง ทั้งนี้การจัดการความต้องการจะต้องเป็น แนวทางที่เป็นระบบ (Systematic Approach) ซึ่งมันก็จะมีเทคนิคและวิธีการของมัน

3.การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (Component –based Model Architecture)
นั้นคือ ผู้เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์ เขาบอกว่าในการพัฒนาซอฟต์แวร์หรือระบบใดๆ ก็แล้วแต่จะต้องมีการกำหนดหรือออกแบบสถาปัตยกรรมของระบบก่อนเสมอ กล่าวคือ หากจะเปรียบเทียบให้เข้าใจชัดเจนขึ้น ก็จะขอเปรียบเทียบกับการสร้างบ้าน ที่เราจะต้องมีการกำหนดก่อนว่าลักษณะบ้านที่เราอยากจะได้นั้นควรมีคุณลั
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
แนวคิดเรื่องคือกระบวนการที่รวมชื่อ (สาย) โดยความหมายแล้วกระบวนการทางวิศวกรรมซอฟต์แวร์ที่เกิดจากการรวมเอาสิ่งที่ผู้เชี่ยวชาญทางการพัฒนาซอฟต์แวร์ (วิศวกรรมซอฟต์แวร์) โดยเลือกแต่เทคนิคที่ดีและขั้นตอนหลักที่เหมือนๆกันและใช้ได้อย่างมีประสิทธิภาพของแต่ละผู้เชี่ยวชาญดังกล่าวมารวมกัน (นก) และกำหนดให้มีชื่อใหม่ว่า "กระบวนการพัฒนาซอฟต์แวร์แบบรวมเป็นหนึ่งเดียว (การรวม)" เช่นกระบวนการประกอบการเชือด (คือ) ซึ่งเป็นของบริษัทยักษ์ใหญ่ในวงการพัฒนาซอฟต์แวร์ที่ชื่อว่า "เชือดกุหลาบ คอร์ปอเรชั่น" และถูกจดลิขสิทธิ์ด้วยหลักการหรือแนวคิดจะคล้ายกันแต่จะแตกต่างที่รายละเอียดของกระบวนการมากกว่า ค่าได้แก่การพัฒนาแบบวนกลับ (ซ้ำพัฒนา), เป็นต้นการจัดการกับความต้องการ (การจัดการความต้องการ) และการใช้เครื่องมือช่วยทางวิศวกรรมซอตฟ์แวร์ (CASETools)

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

1 การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (พัฒนาซ้ำ)
2 การพัฒนาซอฟต์แวร์ควรมีการจัดการความต้องการได้ใด ๆ (การจัดการความต้องการ)
3 การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (ส่วนประกอบ – ตามรูปแบบสถาปัตยกรรม)
4 UML ด้วยภาษาการสร้างต้นแบบของระบบที่สามารถมองเห็นได้ (ภาพจำลอง)
5 การตรวจสอบคุณภาพของซอฟต์แวร์ที่พัฒนาอย่างต่อเนื่อง (ตรวจสอบอย่างต่อเนื่อง)
6 การจัดการการเปลี่ยนแปลง (การจัดการการเปลี่ยนแปลง)



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


2. การพัฒนาซอฟต์แวร์ควรมีการจัดการความต้องการได้ใด ๆ (การจัดการความต้องการ)
"ทำไมต้องจัดการความต้องการด้วยล่ะ ในเมื่อดูหรือศึกษาจากเอกสารรายงานต่าง ๆ ของระบบงานเดิมก็จบ"ความคิดนี้เป็นความคิดแบบเก่าแบบเดิมที่มองว่าระบบที่เราพัฒนานั้นเป็นระบบเอกเทศ (หรือคนเดียวเดี่ยว) ซึ่งผมก็พบบ่อยในการพัฒนาซอฟต์แวร์บ้านเราโดยเฉพาะกระทรวงสาธารณสุขครับที่มักมองว่าแค่ดูหรือศึกษาจากรายงาน (ลำดับ) และกระบวนการทำงานแล้วมาเขียนโปรแกรมก็จบไม่เห็นจะยากครับปัญหาที่เราประสบอยู่ก็คือมันเกิดจากการคิดแบบนี้นั้นแหละ ข้อมูลใช้ร่วมกันแทบจะไม่ได้ถ้าจะใช้ก็ต้องมาเล่นแร่แปรธาตุข้อมูลอีกทำให้เสียเวลาเสียแรงงานตลอดจนซอฟต์แวร์นั้นดูแลรักษายากตามลำดับสิ่งที่เป็นปัญหานี้ก็มาจากเหตุคือ ขาดการศึกษาระบบที่แวดล้อมหรือเกี่ยวข้องด้วยนั้นเองดังนั้นเราต้องมีการจัดการความต้องการที่ดีเพราะ "ความต้องการ" ถือว่าเป็นสิ่งที่สำคัญที่สุดหากเราไม่สามารถจัดการกับความต้องการที่เปลี่ยนแปลงได้ และเสี่ยงต่อความล้มเหลวตามมาสำหรับการจัดการความต้องการนั้นจะเน้นไปที่ทำอย่างไรจะจัดการความต้องการได้อย่างเหมาะสมทั้งนี้ระบบสามารถเปลี่ยนไปตามความต้องการได้โดยใช้ทรัพยากรในการพัฒนาน้อยที่สุด เพื่อที่จะทำให้เรามั่นใจได้ว่าเราแก้ปัญหาได้ถูกต้องเหมาะสมและสร้างระบบที่สอดคล้องกับความต้องการของผู้ใช้นั้นเองทั้งนี้การจัดการความต้องการจะต้องเป็นแนวทางที่เป็นระบบ (ระบบวิธี)
3.การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (ส่วนประกอบ – ตามรูปแบบสถาปัตยกรรม)
นั้นคือผู้เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์เขาบอกว่าในการพัฒนาซอฟต์แวร์หรือระบบใด ๆ ก็แล้วแต่จะต้องมีการกำหนดหรือออกแบบสถาปัตยกรรมของระบบก่อนเสมอกล่าวคือหากจะเปรียบเทียบให้เข้าใจชัดเจนขึ้น ที่เราจะต้องมีการกำหนดก่อนว่าลักษณะบ้านที่เราอยากจะได้นั้นควรมีคุณลั
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
แนวคิด เรื่อง Unified Process (UP) โดยความหมายแล้ว คือ กระบวนการทางวิศวกรรมซอฟต์แวร์ที่เกิดจากการรวมเอาสิ่งที่ผู้เชี่ยวชาญทางการพัฒนาซอฟต์แวร์ (Software engineer) ที่เคยกำหนดไว้และใช้แล้วได้ผลดีในการพัฒนาซอฟต์แวร์นั้นมารวมกัน โดยเลือกแต่เทคนิคที่ดีและขั้นตอนหลักที่เหมือนๆกันและใช้ได้อย่างมีประสิทธิภาพของแต่ละผู้เชี่ยวชาญดังกล่าวมารวมกัน (Unify) และกำหนดให้มีชื่อใหม่ว่า “กระบวนการพัฒนาซอฟต์แวร์แบบรวมเป็นหนึ่งเดียว (Unified Process) “ บางครั้งเราจะพบว่ามีกระบวนการคล้ายกันนี้ในแวดวงทางวิศวกรรมซอฟต์แวร์ เช่น Rational Unified Process (RUP) ซึ่งเป็นของบริษัทยักษ์ใหญ่ในวงการพัฒนาซอฟต์แวร์ที่ชื่อว่า “Rational Rose Corporation” และถูกจดลิขสิทธิ์ด้วย หลักการหรือแนวคิดจะคล้ายกันแต่จะแตกต่างที่รายละเอียดของกระบวนการมากกว่า สำหรับแนวคิดที่มีลักษณะร่วมกันหรือเหมือนกันของ UP ได้แก่ การพัฒนาแบบวนกลับ (Iterative Development), การจัดการกับความต้องการ (Requirement Management) และการใช้เครื่องมือช่วยทางวิศวกรรมซอตฟ์แวร์(CASETools)เป็นต้น

เป้าหมายหรือวัตถุประสงค์ของ UP คือ การที่ให้ได้ Software ที่มีคุณภาพและสอดคล้องกับความต้องการ (need) ของผู้ใช้ โดยอยู่ภายใต้งบประมาณและเวลาที่สามารถคาดเดาได้ (Predictable budget and time) UP นั้นจะเน้นการกำหนดบทบาท (Role) ไปที่ทีมพัฒนางานมากกว่าแต่ละบุคคล กล่าวคือจะมีการกำหนดว่าในแต่ละช่วง (Phase) ของการพัฒนานั้นว่า ควรประกอบไปด้วยใคร(Who) แต่ละคนมีหน้าที่รับผิดชอบอะไร (What) จะทำงานที่รับผิดชอบนั้นเมื่อไหร่ (When) และปฏิบัติอย่างไร (How) ที่กล่าวมาเป็นลักษณะที่เป็นนามธรรม (Abstract) หรืออาจกล่าวได้ว่ามันเป็นภาพมุมสูง (bird eye view) ของกระบวนการ UP ซึ่งอาจจะทำให้เข้าใจภาพยังไม่ชัดเจน กลยุทธ์หรือแทคติคที่ใช้ใน UP รวมแล้วจะเรียกมันว่า “Best Practice Model” หรือ “Best Practice” ก็ได้ นั้นคือโดยธรรมชาติของ UP จะมีการปฏิบัติ 6 อย่าง ดังนี้

1. การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (Iterative Development)
2. การพัฒนาซอฟต์แวร์ ใดๆ ควรมีการจัดการความต้องการได้ (Requirement Management)
3. การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (Component –based Model Architecture)
4. การสร้างต้นแบบของระบบที่สามารถมองเห็นได้ (Visual Model) ด้วยภาษา UML
5. การตรวจสอบคุณภาพของซอฟต์แวร์ที่พัฒนาอย่างต่อเนื่อง (Continuously Verify)
6. การจัดการการเปลี่ยนแปลง (Change Management)



1. การพัฒนาซอฟต์แวร์ควรเป็นการพัฒนาแบบวนกลับ (Iterative Development)
กล่าวคือในแต่ละรอบการทำงาน (Iteration) หนึ่งๆ จะประกอบด้วยกิจกรรมเหล่านี้ คือ การกำหนด,การวิเคราะห์,การออกแบบ,การสร้างและสุดท้ายการทดสอบความต้องการของผู้ใช้นั้น ผลที่ได้คือ ซอฟต์แวร์ที่สามารถทำงานได้ (Executable product) ซึ่งแตกต่างจากกระบวนการพัฒนาแบบดั้งเดิม (Traditional Development) ที่กว่าจะได้ผลลัพธ์ในรูป Executable product นั้นจะต้องรอไปจนกว่า(delay) จะมีการทดสอบระบบทั้งหมดเรียบร้อย ซึ่งสิ่งนี้ส่งผลให้โครงการพัฒนาซอฟต์แวร์นั้นมีความเสี่ยงสูงในการล้มเหลวได้เมื่อเวลาผ่านไป ดั่งสำนวนที่ว่า “กว่าจะรู้ตัวก็สายเสียแล้ว” นั้นเอง การพัฒนาแบบวนย้อนกลับ จะสังเกตง่าย ๆ จากลักษณะดังต่อไปนี้
1. โครงสร้างถูกแบ่งออกเป็นรอบ (Iteration)
2. สิ่งที่ได้จากการพัฒนาระบบในแต่ละรอบ จะมีการนำไปพัฒนาพิ่มสำหรับรอบต่อ ๆ ไป จนกว่าจะกลายเป็นระบบที่สมบูรณ์
3. ในแต่ละรอบทีมจะต้องทำงานซ้ำ(Iterate) ขั้นตอนการวิเคราะห์ ออกแบบ พัฒนาโปรแกรม และทดสอบโปรแกรมจากลักษณะของ Interative and Incremental Development คือ ลักษณะของการวนรอบทำซ้ำทำเพิ่มขึ้น โดยในแต่ระรอบจะเริ่มด้วยการวางแผน เก็บรวบรวมความต้องการ วิเคราะห์ พัฒนาโปรแกรม ทดลองโปรแกรม แล้วนำไปใช้งานพร้อมกับเก็บข้อมูลการประเมินผลเพื่อวางแผนดำเนินการในรอบต่อไป และแต่ระรอบจะต้องมีการเพิ่มส่วนอื่น ๆ ของระบบจนกว่าจะครบ ดังนั้นก่อนดำเนินโครงการพัฒนาระบบสิ่งสำคัญคือ จะต้องวางแผนว่าทั้งโครงการจะต้องแบ่งออกเป็นกี่รอบ ในแต่ละรอบจะเพิ่มเติมส่วนใดของระบบ จึงจะทำให้ระบบที่ได้มีความสมบูรณ์ และสามารถรองรับความต้องการของผู้ใช้ระบบที่เปลี่ยนแปลงอยู่เสมอได้


2. การพัฒนาซอฟต์แวร์ ใดๆ ควรมีการจัดการความต้องการได้ (Requirement Management)
“ทำไมต้องจัดการความต้องการด้วยล่ะ ? ในเมื่อดูหรือศึกษาจากเอกสารรายงานต่างๆ ของระบบงานเดิมก็จบ !” ความคิดนี้เป็นความคิดแบบเก่า แบบเดิม ที่มองว่าระบบที่เราพัฒนานั้นเป็นระบบเอกเทศ (Alone หรือ Standalone) ซึ่งผมก็พบบ่อยในการพัฒนาซอฟต์แวร์บ้านเรา โดยเฉพาะกระทรวงสาธารณสุขครับที่มักมองว่าแค่ดูหรือศึกษาจากรายงาน (Output) และกระบวนการทำงาน (Workflow) แล้วมาเขียนโปรแกรมก็จบ ไม่เห็นจะยาก ครับปัญหาที่เราประสบอยู่ก็คือ มันเกิดจากการคิดแบบนี้นั้นแหละ ซึ่งเราคงพอจะสังเกตุได้ว่าทำไมซอฟต์แวร์ของกระทรวงสาธารณสุขมันเยอะเหลือเกินและแต่ละตัวก็ไม่สามารถทำงานร่วมกันได้เลย ข้อมูลใช้ร่วมกันแทบจะไม่ได้ ถ้าจะใช้ก็ต้องมาเล่นแร่แปรธาตุข้อมูลอีก ทำให้เสียเวลา เสียแรงงาน ตลอดจนซอฟต์แวร์นั้นดูแลรักษายาก ตามลำดับ สิ่งที่เป็นปัญหานี้ก็มาจากเหตุ คือ การที่เราไม่ได้มองสิ่งที่พัฒนาแบบเป็นองค์รวม ขาดการศึกษาระบบที่แวดล้อมหรือเกี่ยวข้องด้วย นั้นเอง ดังนั้นเราต้องมีการจัดการความต้องการที่ดี เพราะ “ความต้องการ” ถือว่าเป็นสิ่งที่สำคัญที่สุด หากเราไม่สามารถจัดการกับความต้องการที่เปลี่ยนแปลงได้ ย่อมส่งผลกระทบต่อการพัฒนาระบบเป็นอย่างมาก และเสี่ยงต่อความล้มเหลวตามมา สำหรับการจัดการความต้องการนั้นจะเน้นไปที่ทำอย่างไรจะจัดการความต้องการได้อย่างเหมาะสม ทั้งนี้ระบบสามารถเปลี่ยนไปตามความต้องการได้ โดยใช้ทรัพยากรในการพัฒนาน้อยที่สุด สรุปวัตถุประสงค์ของการจัดการความต้องการก็คือ เพื่อที่จะทำให้เรามั่นใจได้ว่า เราแก้ปัญหาได้ถูกต้อง เหมาะสม และสร้างระบบที่สอดคล้องกับความต้องการของผู้ใช้ นั้นเอง ทั้งนี้การจัดการความต้องการจะต้องเป็น แนวทางที่เป็นระบบ (Systematic Approach) ซึ่งมันก็จะมีเทคนิคและวิธีการของมัน

3.การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ (Component –based Model Architecture)
นั้นคือ ผู้เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์ เขาบอกว่าในการพัฒนาซอฟต์แวร์หรือระบบใดๆ ก็แล้วแต่จะต้องมีการกำหนดหรือออกแบบสถาปัตยกรรมของระบบก่อนเสมอ กล่าวคือ หากจะเปรียบเทียบให้เข้าใจชัดเจนขึ้น ก็จะขอเปรียบเทียบกับการสร้างบ้าน ที่เราจะต้องมีการกำหนดก่อนว่าลักษณะบ้านที่เราอยากจะได้นั้นควรมีคุณลั
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
แนวคิดเรื่องรวมกระบวนการ ( ขึ้น ) โดยความหมายแล้วความกระบวนการทางวิศวกรรมซอฟต์แวร์ที่เกิดจากการรวมเอาสิ่งที่ผู้เชี่ยวชาญทางการพัฒนาซอฟต์แวร์ ( วิศวกรซอฟต์แวร์ )โดยเลือกแต่เทคนิคที่ดีและขั้นตอนหลักที่เหมือนๆกันและใช้ได้อย่างมีประสิทธิภาพของแต่ละผู้เชี่ยวชาญดังกล่าวมารวมกัน ( รวม ) และกำหนดให้มีชื่อใหม่ว่า " กระบวนการพัฒนาซอฟต์แวร์แบบรวมเป็นหนึ่งเดียว ( Unified Process ) "เช่นเชือดรวมกระบวนการ ( รูป ) ซึ่งเป็นของบริษัทยักษ์ใหญ่ในวงการพัฒนาซอฟต์แวร์ที่ชื่อว่า " เหตุผล บริษัท กุหลาบ " และถูกจดลิขสิทธิ์ด้วยหลักการหรือแนวคิดจะคล้ายกันแต่จะแตกต่างที่รายละเอียดของกระบวนการมากกว่าขึ้นได้แก่การพัฒนาแบบวนกลับ ( ชนก )การจัดการกับความต้องการ ( การจัดการความต้องการและการใช้เครื่องมือช่วยทางวิศวกรรมซอตฟ์แวร์ ( เคสทูล ) เป็นต้น

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



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


2 การพัฒนาซอฟต์แวร์ใดๆควรมีการจัดการความต้องการได้ ( การจัดการความต้องการ )
" ทำไมต้องจัดการความต้องการด้วยล่ะ ? ในเมื่อดูหรือศึกษาจากเอกสารรายงานต่างๆของระบบงานเดิมก็จบ !" ความคิดนี้เป็นความคิดแบบเก่าแบบเดิมที่มองว่าระบบที่เราพัฒนานั้นเป็นระบบเอกเทศ ( คนเดียว ค็อคแบบสแตนด์อโลน ) ซึ่งผมก็พบบ่อยในการพัฒนาซอฟต์แวร์บ้านเราโดยเฉพาะกระทรวงสาธารณสุขครับที่มักมองว่าแค่ดูหรือศึกษาจากรายงานและกระบวนการทำงาน ( เวิร์กโฟลว์ ) แล้วมาเขียนโปรแกรมก็จบไม่เห็นจะยากครับปัญหาที่เราประสบอยู่ก็คือมันเกิดจากการคิดแบบนี้นั้นแหละข้อมูลใช้ร่วมกันแทบจะไม่ได้ถ้าจะใช้ก็ต้องมาเล่นแร่แปรธาตุข้อมูลอีกทำให้เสียเวลาเสียแรงงานตลอดจนซอฟต์แวร์นั้นดูแลรักษายากตามลำดับสิ่งที่เป็นปัญหานี้ก็มาจากเหตุความขาดการศึกษาระบบที่แวดล้อมหรือเกี่ยวข้องด้วยนั้นเองดังนั้นเราต้องมีการจัดการความต้องการที่ดีเพราะ " ความต้องการ " ถือว่าเป็นสิ่งที่สำคัญที่สุดหากเราไม่สามารถจัดการกับความต้องการที่เปลี่ยนแปลงได้และเสี่ยงต่อความล้มเหลวตามมาสำหรับการจัดการความต้องการนั้นจะเน้นไปที่ทำอย่างไรจะจัดการความต้องการได้อย่างเหมาะสมทั้งนี้ระบบสามารถเปลี่ยนไปตามความต้องการได้โดยใช้ทรัพยากรในการพัฒนาน้อยที่สุดเพื่อที่จะทำให้เรามั่นใจได้ว่าเราแก้ปัญหาได้ถูกต้องเหมาะสมและสร้างระบบที่สอดคล้องกับความต้องการของผู้ใช้นั้นเองทั้งนี้การจัดการความต้องการจะต้องเป็นแนวทางที่เป็นระบบ ( ระบบ )
3 การใช้แนวคิดสถาปัตยกรรมแบบองค์ประกอบ ( –องค์ประกอบรูปแบบสถาปัตยกรรมตาม )
นั้นคือผู้เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์เขาบอกว่าในการพัฒนาซอฟต์แวร์หรือระบบใดๆก็แล้วแต่จะต้องมีการกำหนดหรือออกแบบสถาปัตยกรรมของระบบก่อนเสมอกล่าวคือหากจะเปรียบเทียบให้เข้าใจชัดเจนขึ้นที่เราจะต้องมีการกำหนดก่อนว่าลักษณะบ้านที่เราอยากจะได้นั้นควรมีคุณลั
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2025 I Love Translation. All reserved.

E-mail: