ALM คืออะไร? ชื่อเต็มคือ กระบวนการจัดการวงจรชีวิตแอปพลิเคชัน (Process of Application Lifecycle Management)
⚡ สรุปอย่างชาญฉลาด
ALM หรือ Application Lifecycle Management คือระบบที่ควบคุมดูแลแอปพลิเคชันซอฟต์แวร์ตั้งแต่ขั้นตอนการกำหนดคุณสมบัติเบื้องต้น การออกแบบ การพัฒนา การทดสอบ การติดตั้งใช้งาน และประสบการณ์การใช้งานในระยะยาว การกำกับดูแล การพัฒนา และการดำเนินงานเป็นองค์ประกอบหลักสามประการ และมีขั้นตอนที่กำหนดไว้เจ็ดขั้นตอนที่จะนำแนวคิดไปสู่ผลิตภัณฑ์ที่ได้รับการดูแลรักษาอย่างต่อเนื่อง
ALM คืออะไร?
ALM ALM (Application Lifecycle Management) คือกระบวนการกำหนดคุณสมบัติ ออกแบบ พัฒนา และทดสอบแอปพลิเคชันซอฟต์แวร์ ครอบคลุมวงจรชีวิตทั้งหมดตั้งแต่แนวคิดของแอปพลิเคชันไปจนถึงการพัฒนา การทดสอบ การติดตั้งใช้งาน การสนับสนุน และสุดท้ายคือขั้นตอนประสบการณ์ของผู้ใช้ ชื่อเต็มของ ALM คือ Application Lifecycle Management
ขึ้นอยู่กับวิธีการพัฒนาซอฟต์แวร์ (เช่น แบบน้ำตก แบบคล่องตัว หรือแบบ DevOps) กระบวนการ ALM อาจแบ่งออกเป็นหลายขั้นตอน โดยหลักแล้วกระบวนการ ALM แบ่งออกเป็นสามส่วน ได้แก่ การกำกับดูแล การพัฒนา และการดำเนินงาน
กระบวนการ ALM
ต่อไปนี้คือส่วนสำคัญของ ALM:
การกำกับดูแลกิจการ
ซึ่งรวมถึงการจัดการข้อกำหนด การจัดการทรัพยากร ความปลอดภัยของข้อมูล การเข้าถึงของผู้ใช้ การตรวจสอบ การตรวจสอบบัญชี การควบคุมการปรับใช้ และการย้อนกลับ
ประโยชน์ของการบริหารจัดการภาครัฐ:
- กลยุทธ์ทางธุรกิจที่สอดคล้อง
- เดเวโลping กรณีศึกษาทางธุรกิจ
- เสนอการตรวจสอบอย่างต่อเนื่อง
- โครงการระดมทุนที่ให้มูลค่าสูงสุด
- ความรับผิดชอบและการควบคุมที่ชัดเจน
การพัฒนาโปรแกรมประยุกต์
ขอบเขตงานนี้ครอบคลุมถึงการระบุปัญหาในปัจจุบัน การวางแผน การออกแบบ การสร้าง การทดสอบ และการใช้งานแอปพลิเคชัน ซึ่งครอบคลุมบทบาทของนักพัฒนาและผู้สร้างแอปพลิเคชันแบบดั้งเดิม
การดำเนินการแอปพลิเคชัน
ขอบเขตนี้รวมถึงการติดตั้งใช้งานแอปพลิเคชันและการบำรุงรักษาเทคโนโลยีต่างๆ ในวิธีการพัฒนาซอฟต์แวร์แบบ Waterfall การดำเนินงานเป็นขั้นตอนที่แยกต่างหากจากการพัฒนา แต่ทีม DevOps จะนำการดำเนินงานและการพัฒนามาผสานรวมกันเป็นกระบวนการต่อเนื่องอย่างสมบูรณ์
ทำไม ALM ถึงมีความสำคัญ?
ต่อไปนี้คือเหตุผลหลักในการใช้ ALM:
- คุณจะสามารถมองเห็นสถานะของโครงการได้อย่างชัดเจน
- ทีมสามารถสื่อสารได้อย่างมีประสิทธิภาพ
- ข้อกำหนดต่างๆ สามารถกำหนดได้ง่าย และ track.
- ซอฟต์แวร์ได้รับการทดสอบอย่างเหมาะสมแล้ว
- ต้นทุนในการบำรุงรักษาและการดำเนินการโซลูชันยังคงจำกัด
ALM กับ SDLC: ความแตกต่างระหว่างทั้งสองอย่าง
ALM และวงจรชีวิตการพัฒนาซอฟต์แวร์ (SDLC) มักถูกมองว่าเป็นคำที่มีความหมายเหมือนกัน ซึ่งก่อให้เกิดความสับสนเมื่อทีมพยายามนำ ALM มาใช้ SDLC อยู่ภายใน ALM มากกว่าที่จะอยู่เคียงข้างกัน
| แง่มุม | SDLC | ALM |
|---|---|---|
| ขอบเขต | การสร้างซอฟต์แวร์ | ตลอดอายุการใช้งานของผลิตภัณฑ์ ตั้งแต่แนวคิดจนถึงการเลิกใช้งาน |
| เริ่มที่ | ข้อกำหนดสำหรับการสร้าง | แผนธุรกิจเบื้องต้น |
| สิ้นสุดที่ | การเผยแพร่เวอร์ชันนั้น | การยกเลิกการใช้งานแอปพลิเคชัน |
| ครอบคลุมถึงการกำกับดูแล | ไม่ | ใช่ — การจัดหาเงินทุน การเข้าถึง การตรวจสอบ การปฏิบัติตามกฎระเบียบ |
| จำนวนรอบ | หนึ่งชิ้นต่อการวางจำหน่าย | หลายรอบของ SDLC ตลอดอายุการใช้งานของแอปพลิเคชันหนึ่งๆ |
โดยทั่วไป แอปพลิเคชันจะผ่านกระบวนการพัฒนาซอฟต์แวร์ (SDLC) หลายรอบ แต่ยังคงอยู่ภายในวงจรชีวิตการจัดการแอปพลิเคชัน (ALM) เดียว การเข้าใจโครงสร้างแบบซ้อนกันนี้จะช่วยอธิบายว่าทำไมขั้นตอนต่างๆ ด้านล่างจึงขยายออกไปไกลกว่าจุดที่โค้ดถูกส่งมอบแล้ว
ขั้นตอนของ ALM (การจัดการวงจรชีวิตของแอปพลิเคชัน)
ต่อไปนี้คือขั้นตอนต่างๆ ของ ALM:
1) การจัดการความต้องการ
การจัดการข้อกำหนดเป็นขั้นตอนแรกของ ALM ช่วยให้คุณจัดทำเอกสาร วิเคราะห์ track, จัดลำดับความสำคัญ และตกลงเกี่ยวกับข้อกำหนดต่างๆ นี่เป็นกระบวนการต่อเนื่องที่ดำเนินไปตลอดวงจรชีวิตของโครงการ ดูรายชื่อสิ่งที่ดีที่สุดของเราเพิ่มเติมได้ที่นี่ ซอฟต์แวร์การจัดการความต้องการ.
2) การออกแบบ
การจัดการด้านการออกแบบเป็นกระบวนการที่ช่วยเพิ่มความพึงพอใจและความภักดีของลูกค้าโดยการปรับปรุงการใช้งาน นอกจากนี้ยังช่วยกำหนดรูปแบบการปฏิสัมพันธ์ระหว่างลูกค้ากับผลิตภัณฑ์อีกด้วย
3) การจัดการการสร้าง
การจัดการการสร้าง หรือที่เรียกว่าการจัดการโค้ด คือกระบวนการแปลงไฟล์ซอร์สโค้ดให้เป็นส่วนประกอบซอฟต์แวร์แบบสแตนด์อโลน ในขั้นตอนนี้ แนวคิดของแอปพลิเคชันจะเปลี่ยนไปเป็นแอปพลิเคชันที่ใช้งานได้จริง
ในขั้นตอนนี้ แอปพลิเคชันจะถูกสร้าง ทดสอบ และใช้งานจริง และผู้ทดสอบจะเริ่มเตรียมกรณีทดสอบและเขียนสคริปต์ทดสอบสำหรับขั้นตอนการทดสอบ
4) สซีเอ็ม
การจัดการการกำหนดค่าซอฟต์แวร์ (SCM(ขั้นตอน ALM) คือขั้นตอนที่ทีมพัฒนาจัดระเบียบ จัดการ และควบคุมการเปลี่ยนแปลงเอกสาร โค้ด และส่วนประกอบอื่นๆ อย่างเป็นระบบตลอดวงจรชีวิตการพัฒนาแอปพลิเคชัน
5) Operations และการบำรุงรักษา
ในขั้นตอนนี้ จะเริ่มมีการตรวจสอบ การจัดการ และการพัฒนาแอปพลิเคชันอย่างต่อเนื่อง ใน DevOps ขั้นตอนนี้ครอบคลุมถึง "การเผยแพร่" "การกำหนดค่า" และ "การตรวจสอบ"
ในขั้นตอนนี้ คุณจะค้นหาและแก้ไขข้อผิดพลาด ขั้นตอนนี้จะช่วยให้คุณวางแผนและจัดลำดับความสำคัญของการอัปเดตผลิตภัณฑ์ในครั้งต่อไป
6) การจัดการทดสอบ
ในขั้นตอนการทดสอบ ผู้ทดสอบจะตรวจสอบว่าแอปพลิเคชันนั้นเป็นไปตามข้อกำหนดที่กำหนดไว้ในขั้นตอนเริ่มต้นของกระบวนการหรือไม่
นอกจากนี้ ยังช่วยให้มั่นใจได้ว่าแอปพลิเคชันนั้นตรงตามความคาดหวังของผู้ใช้และความต้องการของผู้มีส่วนได้ส่วนเสียอื่นๆ ที่จะให้การสนับสนุนตลอดวงจรชีวิตของแอปพลิเคชัน แม้ว่าความคาดหวังเหล่านั้นจะไม่ได้ถูกบันทึกไว้อย่างถูกต้องในระหว่างขั้นตอนการกำหนดความต้องการก็ตาม
7) ประสบการณ์ผู้ใช้
การบำรุงรักษา หรือประสบการณ์ของผู้ใช้ ถือเป็นขั้นตอนที่ใช้เวลานานที่สุดใน ALM (Applicant Lifecycle Management) แต่ก็เป็นขั้นตอนที่ทีมทดสอบและทีมพัฒนาเข้ามามีส่วนร่วมน้อยที่สุดเช่นกัน
เมื่อพัฒนาแอปพลิเคชันเสร็จแล้ว บทบาทของผู้ใช้ก็จะเข้ามามีบทบาท พวกเขาจะใช้งานแอปพลิเคชันทั้งหมดและแบ่งปันประสบการณ์ผ่านการให้ข้อเสนอแนะ และในที่สุดแอปพลิเคชันเวอร์ชันสุดท้ายก็จะถูกส่งมอบ
ข้อดีของ ALM
ต่อไปนี้คือประโยชน์ของการใช้ ALM:
- ALM ช่วยให้คุณควบคุมระบบได้โดยการจัดระเบียบและ tracงานของกษัตริย์
- ข้อบกพร่องสามารถกระจายไปยังโครงการต่างๆ ได้ ซึ่งจะช่วยลดความเสี่ยงที่ซ้ำซ้อน
- ALM มีฟังก์ชันการทำงานร่วมกับเครื่องมือทดสอบอื่นๆ
- โดยให้ทิศทางที่ชัดเจนสำหรับแอปก่อนสร้าง
- หากไม่มี ALM เป็นเรื่องยากสำหรับทีมพัฒนาซอฟต์แวร์ในการผลิตซอฟต์แวร์ด้วยความเร็วและความคล่องตัวที่จำเป็นต่อการรักษาความสามารถในการแข่งขัน
- ALM ส่งมอบซอฟต์แวร์ได้อย่างมีประสิทธิภาพโดยมีภาระงานเพิ่มเติมสำหรับทีมงานน้อยที่สุด
เครื่องมือ ALM
นี่คือเครื่องมือ ALM ที่สำคัญบางส่วน:
1) สตูดิโอ Kovair ALM
Kovair เป็นหนึ่งในผลิตภัณฑ์บริหารจัดการวงจรชีวิตแอปพลิเคชันที่ครอบคลุมมากที่สุด สามารถจัดการขั้นตอนต่างๆ ในวงจรการพัฒนาแบบครบวงจร ตั้งแต่การกำหนดความต้องการไปจนถึงการเปิดตัวใช้งาน
สิ่งอำนวยความสะดวก:
- เลือกใช้โซลูชันที่ทำงานบนเว็บอย่างสมบูรณ์ โดยไม่ต้องมีซอฟต์แวร์ฝั่งไคลเอ็นต์ เพื่อลดภาระด้านการสนับสนุน
- ฝึกฝนวิธีการพัฒนาซอฟต์แวร์ใดก็ได้: แบบ Waterfall, แบบ Agile หรือแบบ Hybrid
- ใช้กลไกเวิร์กโฟลว์ตามงานที่กำหนดค่าได้เพื่อเพิ่มประสิทธิภาพและประสิทธิผล
- รับการแจ้งเตือนแบบเรียลไทม์ในทุกขั้นตอนที่ดำเนินการได้
- ให้ข้อมูลครอบคลุมครบถ้วนทุกขั้นตอนการพัฒนา เพื่อให้เป็นไปตามมาตรฐานที่กำหนด
- อนุญาตให้ดูสถานะของสิ่งประดิษฐ์แบบเรียลไทม์ ซึ่งจะเพิ่มความโปร่งใสและคาดการณ์การปล่อยเวอร์ชันได้
Link: https://www.kovair.com/alm-studio/
2) OpenText การจัดการคุณภาพแอปพลิเคชัน (เดิมชื่อ Micro Focus ALM)
เครื่องมือนี้สนับสนุนการส่งมอบงานแบบลีน อะจิล และเดวิออปส์ ช่วยping องค์กรต่างๆ สามารถปล่อยซอฟต์แวร์ได้เร็วขึ้น ช่วยให้ทีมทุกขนาดสามารถส่งมอบแอปคุณภาพสูงได้เร็วขึ้น ผลิตภัณฑ์นี้มีการเปลี่ยนมือหลายครั้ง โดยเดิมทีได้รับการพัฒนาโดย Mercuryซึ่งต่อมาถูกซื้อกิจการโดย HP จากนั้นโอนไปยัง Micro Focus และตั้งแต่นั้นเป็นต้นมา OpenText เข้าซื้อกิจการ Micro Focus ในเดือนมกราคม 2023 มันถูกขายไปแล้ว OpenText การจัดการคุณภาพการใช้งาน.
สิ่งอำนวยความสะดวก:
- ส่งมอบแอปพลิเคชันด้วยความเร็ว คุณภาพ และขนาดที่เหมาะสม
- ช่วยให้ผู้มีส่วนได้ส่วนเสียสามารถโต้ตอบและประสานงานกันเพื่อให้บรรลุเป้าหมายของโครงการ
- ให้ความแข็งแกร่ง tracการบริหารจัดการและการรายงาน รวมถึงการบูรณาการงานที่เกี่ยวข้องกับโครงการอย่างราบรื่น
- ช่วยให้สามารถวิเคราะห์โครงการได้อย่างละเอียดและบริหารจัดการได้อย่างมีประสิทธิภาพ
- เชื่อมต่อกับระบบอีเมลและแจ้งเตือนสมาชิกในทีมเกี่ยวกับการเปลี่ยนแปลง
Link: https://www.opentext.com/products/application-quality-management
3) Digital.ai Agility (เดิมชื่อ VersionOne)
Agility ช่วยให้การวางแผนผลิตภัณฑ์ง่ายขึ้นด้วยการจัดการ Backlog ที่ง่ายดาย มันถูกสร้างขึ้นมาเพื่อ... DevOps และมอบการส่งมอบอย่างต่อเนื่องแบบครบวงจรผ่านอินเทอร์เฟซแบบลากและวาง ผลิตภัณฑ์นี้เปิดตัวครั้งแรกในชื่อ VersionOne ย้ายไปที่ CollabNet และปัจจุบันวางจำหน่ายในชื่อใหม่ว่า VersionOne Digital.ai ความว่องไว.
สิ่งอำนวยความสะดวก:
- อนุญาตให้ผู้ใช้จัดลำดับความสำคัญของเรื่องราวและข้อบกพร่องโดยใช้การลากและวาง
- บริหารจัดการโครงการทางธุรกิจด้วยรายการในพอร์ตโฟลิโอ
- อนุญาตให้จัดกลุ่มรายการตามธีมได้
- ให้ผลลัพธ์ที่สอดคล้องกับเป้าหมายทางธุรกิจ
- รวบรวมคำขอคุณสมบัติทั้งหมดไว้ในที่เดียว
- ช่วยให้มั่นใจได้ว่าเป้าหมายขององค์กรและผลลัพธ์ของผลิตภัณฑ์สอดคล้องกัน
- ช่วยให้ผู้จัดการโครงการได้รับข้อมูลเชิงลึกและมองเห็นภาพรวมตั้งแต่ต้นจนจบ
Link: https://digital.ai/products/agility/
การเลือกใช้เครื่องมือมีความสำคัญน้อยกว่าวิธีการใช้งานกระบวนการในแต่ละวัน ซึ่งสองสถานการณ์ด้านล่างนี้แสดงให้เห็นถึงเรื่องนี้
ใช้สถานการณ์กรณีของ ALM จากมุมมองของนักพัฒนา
- นักพัฒนาเริ่มทำงานและตรวจสอบรายการงานที่ได้รับมอบหมาย
- พวกเขาทบทวนงานตามลำดับความสำคัญและเลือกงานใดงานหนึ่งมาทำ
- พวกเขาเปลี่ยนสถานะของงานเป็น "กำลังดำเนินการ"
- พวกเขาดึงโค้ดจากคลังเก็บซอร์สโค้ด
- พวกเขานำการทดสอบหน่วยมาใช้กับเฟรมเวิร์กการทดสอบ
- พวกเขาทำการทดสอบโดยใช้สคริปต์การสร้างมาตรฐาน Code รายงานการตรวจสอบพบการตั้งชื่อที่ไม่ถูกต้องตามกฎหมาย หรืออาจมีข้อผิดพลาด
- พวกเขาแก้ไขโค้ดและทำการทดสอบอีกครั้ง
- เมื่ออัตราความครอบคลุมเป็นไปตามเป้าหมายแล้ว พวกเขาก็จะยืนยันโค้ดพร้อมกับรหัสงาน (Task ID)
- จากนั้นพวกเขาก็ตรวจสอบโค้ดและเรียกใช้สคริปต์การสร้าง
- โค้ดได้รับการคอมไพล์และติดตั้งลงบนเครื่องทดสอบแล้ว
- การทดสอบจะทำงาน หากเกิดข้อผิดพลาด ระบบจะส่งการแจ้งเตือนไปยังนักพัฒนาและผู้จัดการโครงการโดยอัตโนมัติ
- นักพัฒนาทำการย้อนกลับโค้ดในที่เก็บซอร์สโค้ดและบนเครื่องทดสอบ
- หากการทดสอบผ่าน ระบบจะเริ่มการตรวจสอบโค้ดและการวิเคราะห์ความครอบคลุม หากพบปัญหาใด ๆ ระบบจะรายงานให้ทราบ แต่หากไม่มีปัญหาใด ๆ นักพัฒนาจะได้รับแจ้งว่าการดำเนินการทั้งหมดเสร็จสมบูรณ์แล้ว
- พวกเขาบันทึกประวัติการทำงานของตนลงในระบบจัดการงาน
- ผู้จัดการโครงการจะได้รับแจ้งว่างานได้รับการแก้ไขแล้ว และจะตรวจสอบผลลัพธ์
ใช้สถานการณ์จำลองกรณี ALM จากมุมมองของผู้นำโครงการ
- หัวหน้าโครงการเปิดเว็บเบราว์เซอร์และเข้าไปที่หน้าแดชบอร์ด ALM
- แต่ละโปรเจ็กต์จะมีหน้าแดชบอร์ดเป็นของตัวเอง
- โปรแกรมนี้จะแสดงจำนวนงานที่เปิดอยู่ จำนวนงานที่รอการดำเนินการ และงานสำคัญทั้งหมดที่ยังคงเปิดอยู่
- หน้าแดชบอร์ดจะแจ้งเตือนหัวหน้าโครงการเกี่ยวกับความเสี่ยงที่อาจเกิดขึ้น และแสดงสถานะโดยรวมของโครงการ
- ทุกการคอมมิตและการเปลี่ยนแปลงจะถูกรายงานโดยอัตโนมัติ
- ดังนั้น กระบวนการ ALM จึงช่วยขจัดความจำเป็นในการประชุมหรือโทรศัพท์เพื่อตรวจสอบสถานะการบูรณาการอย่างต่อเนื่องของงานที่สำคัญ




