บทที่ 1 การพัฒนาแอปพลิเคชัน
คลิกเพื่อเข้าสู่บทเรียน
เมนูหลัก
คำชี้แจง
การพัฒนาแอปพลิเคชัน
ผู้จัดทำ
การวางแผนพัฒนา
เครื่องมือช่วยวางแผนและติดตามความก้าวหน้า
2. ให้นักเรียนทำแบบทดสอบหลังเรียนทั้งหมด 20 ข้อ 20 คะแนน
คำชี้แจง
1
การพัฒนา
แอปพลิเคชัน
2
จุดประสงค์การเรียนรู้
3
สำรวจความรู้ก่อนเรียน
การแบ่งปัญหาใหญ่เป็นปัญหาย่อย เป็นองค์ประกอบหนึ่งของแนวคิดเชิงคำนวณ ถูกต้องหรือไม่ ?
4
สำรวจความรู้ก่อนเรียน
การคิดเชิงนามธรรม เป็นการแยกรายละเอียดที่สำคัญของปัญหาออกจากส่วนที่ไม่จำเป็น ถูกต้องหรือไม่ ?
5
สำรวจความรู้ก่อนเรียน
อัลกอริทึม เป็นกระบวนการหาคำตอบให้บุคคลหรือคอมพิวเตอร์สามารถนำไปปฏิบัติตามเพื่อแก้ปัญหาได้ถูกต้องหรือไม่ ?
6
ทบทวนความรู้ก่อนเรียน
ในบทเรียนนี้นักเรียนจะได้ทราบถึงกระบวนการที่สำคัญในการพัฒนาแอปพลิเคชัน รวมถึงตัวอย่างเครื่องมือที่สามารถนำมาประยุกต์ในการวางแผน ติดตาม และสื่อสารกันระหว่างผู้ร่วมพัฒนาได้สะดวกและมีประสิทธิภาพ
7
ทบทวนความรู้ก่อนเรียน
การพัฒนาแอปพลิเคชั่น หรือซอฟต์แวร์คอมพิวเตอร์นั้น อาจทำได้โดยใช้เครื่องคอมพิวเตอร์เครื่องเดียว ทำให้สามารถเริ่มต้นได้ง่าย แตกต่างจากการพัฒนาผลิตภัณฑ์ทางวิศวกรรมอื่นๆ ที่ต้องการแรงงานและเครื่องจักรจำนวนมาก เช่น การผลิตรถยนต์ ยานพาหนะ สิ่งก่อสร้างขนาดใหญ่
8
ทบทวนความรู้ก่อนเรียน
อย่างไรก็ตาม แอปพลิเคชันนั้นอาจมีความซับซ้อนมาก ดังนั้นการพัฒนาแอปพลิเคชั่นที่ดีต้องมีการวางแผนการดำเนินการอย่างเป็นระบบ โดยเฉพาะอย่างยิ่งในการพัฒนาแอปพลิเคชั่นที่มีผู้ร่วมพัฒนาหลายคน ไม่เช่นนั้น อาจทำให้เกิดความล้มเหลวได้
9
การพัฒนาแอปพลิเคชัน
การพัฒนาแอปพลิเคชั่นหรือผลิตภัณฑ์ทางซอฟต์แวร์นั้น สามารถนำกระบวนการทางวิศวกรรมที่ใช้ในการพัฒนาผลิตภัณฑ์ประเภทอื่นมาประยุกต์ใช้เพื่อวางแผนการดำเนินงาน ซึ่งมีขั้นตอนทั่วไปดังนี้
10
ขั้นตอนการพัฒนาแอปพลิเคชัน
1.การศึกษาความต้องการ
2.การออกแบบ
3. การลงมือพัฒนา
4.การทดสอบ
11
ขั้นตอนการพัฒนาแอปพลิเคชัน
1.การศึกษาความต้องการ
แอปพลิเคชั่นถูกสร้างขึ้นตามความต้องการและเพื่อแก้ปัญหาของลูกค้าหรือผู้ใช้ ผู้พัฒนาต้องทราบความต้องการหรือปัญหาก่อนดำเนินการออกแบบ ซึ่งจะได้ข้อกำหนดที่เป็นคุณสมบัติต่างๆ ของแอปพลิเคชั่น ซึ่งเป็นขั้นตอนที่ต้องอาศัยประสบการณ์ของผู้พัฒนา เพื่อให้ได้ความต้องการของลูกค้าหรือผู้ใช้ที่แท้จริง เพราะอาจมีการสื่อสารความต้องการที่คลาดเคลื่อน
11
ขั้นตอนการพัฒนาแอปพลิเคชัน
2.การออกแบบ
เป็นหัวใจสำคัญในการพัฒนาแอปพลิเคชั่น ซึ่งค่อนข้างมีความซับซ้อนและมีรายละเอียดจำนวนมาก ต้องอาศัยแนวคิดเชิงคำนวณมาประยุกต์ใช้ในการออกแบบอย่างเป็นระบบ ผลจากการออกแบบจะได้เป็นโครงร่างของแอปพลิเคชั่นที่มีส่วนประกอบย่อยที่มีการกำหนดหน้าที่การทำงานไว้
12
ขั้นตอนการพัฒนาแอปพลิเคชัน
3. การลงมือพัฒนา
ผู้พัฒนาหรือโปรแกรมเมอร์ (programmer) ลงมือเขียนคำสั่งในส่วนประกอบย่อยที่ได้ออกแบบไว้ ซึ่งอาจพบข้อจำกัดหรือข้อบกพร่องจากขั้นตอนการออกแบบ หรือขั้นตอนศึกษาความต้องการ จึงเป็นเรื่องปกติที่ต้องย้อนกลับไปแก้ไขการออกแบบหรือศึกษาความต้องการ
13
ขั้นตอนการพัฒนาแอปพลิเคชัน
4.การทดสอบ
เป็นการตรวจสอบคุณภาพของแอปพลิเคชั่น เพื่อค้นหาข้อผิดพลาดที่มีอยู่ระหว่างที่แอปพลิเคชั่นทำงาน และสร้างความมั่นใจแอปพลิเคชั่นทำงานได้ถูกต้องและตรงความต้องการอย่างแท้จริง หากพบข้อผิดพลาด ต้องทำการปรับปรุง แก้ไข และทดสอบซ้ำ เพื่อไม่ให้เกิดข้อผิดพลาดระหว่างการใช้งานจริง ซึ่งอาจทำให้เกิดความเสียหายอย่างรุนแรงตามมา
14
การพัฒนาแอปพลิเคชัน
ในแต่ละขั้นตอนนั้น สามารถย้อนกลับไปปรับแก้ไขผลลัพธ์ที่ได้ในขั้นตอนก่อนหน้า โดยเฉพาะในกรณีที่ลูกค้าหรือผู้ใช้มีส่วนร่วมในแต่ละขั้นตอนของการดำเนินงาน จะทำให้กำหนดความต้องการของแอปพลิเคชั่นได้ชัดเจนมากยิ่งขึ้น และได้ผลิตภัณฑ์ซอฟต์แวร์ที่มีความสามารถตรงกับต้องการโดยแท้จริง
1
การวางแผนพัฒนา
2
การวางแผนพัฒนา
ในการพัฒนาแอปพลิเคชั่น แต่ละขั้นตอนมีรายละเอียดที่ต้องจัดลำดับความสำคัญ ความเร่งด่วน เพื่อให้การจัดสรรทรัพยากรคนและเวลา เป็นไปอย่างเหมาะสม รวมถึงต้องกำหนดบทบาทหน้าที่ผู้รับผิดชอบ และติดตามความก้าวหน้าของการดำเนินงาน หากละเลยขั้นตอนดังกล่าว มีความเสี่ยงที่ทำให้การพัฒนาแอปพลิเคชั่นเสร็จไม่ทันเวลา หรือมีการทำงานบางอย่างไม่ตรงตามที่ออกแบบไว้
3
การ์ดคัมบัง
เครื่องมือในการวางแผนการทำงานมีจำนวนมาก ในที่นี้จะใช้งานการ์ดคัมบัง ผู้ใช้จะนำการ์ดแต่ละใบมาติดไว้บนกระดาน ซึ่งแบ่งช่องในแนวตั้งหรือแนวนอนก็ได้ เพื่อกำหนดแบ่งช่วงเวลาให้กับงานย่อยๆ ซึ่งไม่ได้มีข้อกำหนดที่แน่นอน อาจขึ้นอยู่กับการตกลงกันในทีมผู้พัฒนา สำหรับแอปพลิเคชั่นที่ไม่ซับซ้อนมาก
4
อาจแบ่งออกเป็น 3 เฟส คือ
To do
เฟสที่จะทำ
Doing
เฟสที่กำลังทำ
Done
เฟสที่ทำเสร็จแล้ว
การ์ดคัมบัง
5
หากแอปพลิเคชั่นมีความซับซ้อนมาก อาจแยกกระดานออกเป็นหลายกระดานย่อย เพื่อจัดการแต่ละเรื่องได้อย่างละเอียดยิ่งขึ้น เช่น กระดานสำหรับการสำรวจความต้องการผู้ใช้ การดานสำหรับการออกแบบแอพพลิเคชั่น กระดานสำหรับการพัฒนาแอปพลิเคชั่น และกระดานสำหรับการทดสอบ
การ์ดคัมบัง
6
ตัวอย่างการแบ่งเฟสบนกระดานคัมบัง
การ์ดคัมบัง
7
การใช้กระดานคัมบังเริ่มจากการนำการ์ดที่ระบุงานติดไว้ในเฟสแรกที่ช่องซ้ายมือและย้ายมาทีละช่องทางขวาเพื่อแสดงถึงความก้าวหน้าในการทำงานและสื่อสารให้ผู้ร่วมทีมได้รับทราบทั่วกัน
การ์ดคัมบัง
To do
Doing
Done
8
บนการ์ดแต่ละใบอาจมีการกำหนดข้อมูลต่าง ๆ ดังนี้
การ์ดคัมบัง
1.คำอธิบายรายละเอียดของงาน
2. ความสำคัญของงาน
เช่น วิกฤติ (critical) สำคัญมาก (major)
ปกติ (normal) ไม่เร่งด่วน (minor)
9
การ์ดคัมบัง
3. ประเภทงาน
เช่น ลักษณะเฉพาะหรือฟีเจอร์ (feature) ความผิดพลาดที่ต้องแก้ไข (bug) งานอื่น ๆ
10
การ์ดคัมบัง
4. กำหนดเวลาแล้วเสร็จ
5. ผู้รับผิดชอบ
11
ให้นักเรียนใช้การ์ดคัมบังวางแผนการพัฒนาแอปพลิเคชันในการจัดเวรทำความสะอาดห้องเรียนให้เหมาะสมกับความต้องการของเพื่อนในห้องและครบทุกงาน เช่น งานกวาดพื้น ถูพื้น จัดโต๊ะเก้าอี้ ทิ้งขยะ เป็นต้น
กิจกรรมที่ 1.1
1
เครื่องมือช่วยวางแผนและติดตามความก้าวหน้า
2
เทรลโล (Trello) เป็นแอปพลิเคชั่นที่นำมาใช้บริหารจัดการงานในรูปแบบกระดานคัมบังได้ง่าย ไม่ซับซ้อน รองรับการทำงานร่วมกับผู้อื่นได้อย่างมีประสิทธิภาพ สามารถสมัครใช้งานได้ทันทีผ่านทางเว็บไซต์ trello.com โดยไม่ต้องเสียค่าใช้จ่าย แต่มีการจำกัดจำนวนกระดานหรือจำนวนผู้ร่วมพัฒนา
เทรลโล (Trello)
3
เมื่อเข้าสู่เว็บไซต์ของเทรลโลเป็นครั้งแรก
นักเรียนจำเป็นต้องสมัครเพื่อสร้างบัญชีผู้ใช้
เทรลโล (Trello)
4
เมื่อลงชื่อเข้าใช้งานระบบแล้ว จะปรากฎหน้าจอดังภาพ
เทรลโล (Trello)
คลิก Create new board
เพื่อสร้างกระดาน
5
เมื่อคลิก Create new board จะพบหน้า Create board เพื่อเลือกรูปแบบดังนี้
เทรลโล (Trello)
เลือกพื้นหลัง
ให้กระดาน
ตั้งชื่อกระดาน
6
เทรลโล (Trello)
กำหนดสิทธิ์ในการมีส่วนร่วม
7
เมื่อคลิกสร้าง (Create) จะปรากฎหน้าจอดังภาพ
เทรลโล (Trello)
พิมพ์ชื่อรายการ
8
เมื่อคลิกสร้าง (Create) จะปรากฎหน้าจอดังภาพ
เทรลโล (Trello)
คลิก Add list เพื่อสร้างรายการ
9
คลิก Add list และตั้งชื่อรายการจนครบ 3 รายการ
คือ ที่จะทำ , กำลังทำ และทำเสร็จแล้ว ตามลำดับ
เทรลโล (Trello)
10
คลิก Add a card เพื่อสร้างการ์ดงาน
เทรลโล (Trello)
11
หน้าจอแก้ไขรายละเอียดของการ์ด
เทรลโล (Trello)
12
การ์ดที่ติดลงไปในกระดานนั้น สามารถย้ายลำดับหรือย้ายรายการโดยการคลิกแล้วลากไปวางในตำแหน่งที่ต้องการ
เทรลโล (Trello)
13
สรุปท้ายบท
การพัฒนาแอพพลิเคชั่นที่ดีต้องมีการวางแผนการดำเนินการอย่างเป็นระบบ กระบวนการทางวิศวกรรมสามารถนำมาประยุกต์ในการวางแผนการดำเนินงาน ได้แก่ การศึกษาความต้องการของผู้ใช้งาน การออกแบบ การสร้างแอปพลิเคชั่น และการทดสอบ ในแต่ละขั้นตอนเหล่านี้หากพบข้อความไม่เหมาะสม อาจมีการย้อนกลับไปปรับปรุงการดำเนินการในขั้นตอนอื่นๆก่อนหน้าได้
14
สรุปท้ายบท
ขั้นตอนเหล่านี้เมื่อนำมาปฏิบัติจริงอาจประกอบไปด้วยรายละเอียดปลีกย่อยจำนวนมาก กระดานคำบังและการ์ดคำบัง เป็นเทคนิคที่ไม่ซับซ้อนและนิยมนำมาใช้ในการจัดลำดับความเร่งด่วนและความสำคัญของงานย่อยแต่ละงาน ง่ายต่อการกำหนดผู้รับผิดชอบและติดตามความก้าวหน้า ช่วยให้สามารถบริหารเวลาและกำลังคนอย่างเหมาะสม
15
สรุปท้ายบท
ในปัจจุบันมีแอปพลิเคชันออนไลน์มากมายที่ให้บริการจัดการงานในรูปกระดานคัมบัง โปรแกรมเทรลโล เป็นแอปพลิเคชันหนึ่งที่ใช้งานรองรับการทำงานร่วมกับผู้อื่นได้อย่างมีประสิทธิภาพ และสมัครใช้งานได้ทันทีโดยไม่มีค่าใช้จ่าย
16
คำถามท้ายบท
นักเรียนจะนำเทคนิคการ์ดคัมบังไปใช้ในชีวิตประจำวันเพื่อทำงานใดบ้าง ?
ผู้จัดทำ
นางศุภลักษณ์ บุญสอน
ตำแหน่ง ครู�
กลุ่มสาระการเรียนรู้วิทยาศาสตร์และเทคโนโลยี