💥ทบทวนศัพท์วิศวะซอฟต์แวร์ DTAP กันดีไหม? ลืมหรือยัง?
เพราะตอนไปทำงานจริง
รับรองจะได้ยิน จะได้เห็น จะได้ไม่ต้องแปลกใจ
.
ปกติการพัฒนาซอฟต์แวร์ให้กับองค์กรต่างๆ (Enterprise)
สามารถแบ่งออกเป็นเฟส (Phase)
.
หลักๆ ก็จะแบ่งเป็น 4 เฟส
ศัพท์วิศวะซอฟต์แวร์
เรียกว่า DTAP ซึ่งย่อมาจาก 4 คำคือ
.
✔ Development
✔ Testing
✔ Acceptance
✔ Production
.
การแยกออกมา 4 แบบนี้
ยึดในมุมมองของการ
☑ Test ซอฟต์แวร์
☑ และการ deploy (เอาซอฟต์แวร์ไปขึ้นระบบ)
.
ด้วยเหตุนี้การพัฒนาซอฟต์แวร์
ก็จะแบ่งออกเป็น 4 environment
คำว่า environment หมายถึงสภาวะแวดล้อมของเครื่องเอาไว้ให้ซอฟต์แวร์มันมาทำงาน
(กินความรวมถึง software กับ hardware)
.
ทั้งนี้ environment ก็จะแยกออกมา 4 เฟส
เพื่อให้สะดวกในการทดสอบ
รวมทั้งการเขียนโปรแกรมด้วย
ดังรายละเอียดต่อไปนี้
.
🤴 1) เฟส Development
โปรแกรมเมอร์จะเข้ามาทำงานเขียนโปรแกรมอยู่ในเฟสนี้
environment ส่วนใหญ่ก็จะใช้ notebook
ซึ่งบริษัทเขาจะให้ยืมเอามาใช้งานเขียนโปรแกรม
จะทำ unit test ก็ช่วงนี้
โปรแกรมเมอร์จะงานหนักก็ช่วงนี้
เจอเร่งงาน โน่นนี้นั้น ก็ช่วงนี้
นอนไม่ได้ ข่มตาไม่หลับก็ช่วงนี้ (แซวเล่น)
.
👶 2) เฟส Testing
ทีม Tester ก็จะเข้ามามีบทบาท
เข้ามาทดสอบระบบในระดับการใช้งานเต็มสูบ
ก็จะมี environment แยกออกมาให้ทดสอบ
ซึ่งการ test ก็จะมีหลายแบบ
.
แต่ที่น่าจะได้ยินบ่อยๆ
ก็คือ SIT ไม่ได้หมายถึงนั่งนะ
แต่ย่อมาจาก "System integration testing"
หมายถึงทดสอบเพื่อเช็คว่าระบบต่างๆ
ว่าสามารถทำงานร่วมกันได้อย่างถูกต้องหรือไม่
.
อีกคำหนึ่งเช่น PEN TEST
ไม่ได้แปลว่า ทดสอบปากกา
แต่ย่อมาจาก "Penetration test"
หมายถึงทดสอบการเจาะระบบ หรือ hacker นั่นแหละ
เป็นการทดสอบความปลอดภัย (security)
.
หรืออย่าง Regression Testing
เป็นการทดสอบระบบใหม่
ในกรณีที่มีการ change ในโค้ด
ก็ต้องทดสอบซ้ำๆ ซากๆ
ดูว่าส่วนที่เปลี่ยนแปลงกระทบกับซอฟต์แวร์นั้นๆ
ทั้งในส่วนของ Functional และ Non-Functional หรือไม่
(พูดง่ายๆ เมื่อเราไปแตะแก้โค้ด ก็ต้องมีการทดสอบซ้ำอีกครั้ง ดูว่าการทำงานซอฟต์แวร์ต่างๆ ฟีเจอร์ต่างๆ ไม่เปลี่ยนไปแปลงไปนะ )
.
และ test แบบอื่นๆ ที่ไม่ได้กล่าวถึง
.
ฝั่งโปรแกรมเมอร์ ก็นั่งรอว่าจะมีงานตีกลับมาให้แก้อะไรหรือไม่ 😅
.
🧒 3. เฟส Acceptance
เฟสนี้จะเป็นการทดสอบของฝั่งลูกค้าเป็นหลัก
มีคำศัพท์เรียกว่า UAT ไม่ใช่ UHT นะ
มันย่อมาจาก "User Acceptance Test"
แปลตรงตัวว่าการทดสอบเพื่อยอมรับของยูสเซอร์ (ลูกค้า)
,
ลูกค้า (customer) หรือคนที่จ้างเราพัฒนาซอฟต์แวร์ให้
เขาจะมาทดสอบระบบเรา
(ปกติก็จะมีคนจากทีมเราไปประกบคอยช่วยเหลือลูกค้า)
.
ในเฟสนี้ก็จะมี environment ให้ลูกค้าทดสอบว่า
ตรงใจ ตรงตามที่ตกลงตอนจ้างงานหรือไม่
.
ถ้าลูกค้าหรือคนจ้างโอเค
เราก็จะโอเค ทุกคนต่างโอเค
ก็จะมีการลงนามอนุมัติ
จากผู้ใช้งานเป็นลายลักษณ์อักษร (UAT Sign Off)
เพื่อนำระบบไปใช้งานจริง
.
ถ้าไม่โอเคก็จะต้องตีกลับไปให้แก้ไขใหม่ 😅
.
🧑 4 เฟส Production
เฟสนี้คือช่วงใช้งานจริง
เป็นการเอาซอฟต์แวร์ขึ้นไปใช้งานจริงๆ
เป็น environment ของจริง
ที่ยูสเซอร์มาใช้จริงๆ
.
เป็นช่วงที่โปรดักงานซอฟต์แวร์ที่สร้างเสร็จแล้ว
ถูกปล่อยออกสู่สายตายูสเซอร์ให้เขาได้ใช้งาน
เล่นจริง เจ็บจริง ไม่ใช้สแตนอิน
ไม่มีการทดสอบอะไรอีกแล้ว
เป็นขั้นสุดท้าย จบกระบวนการพัฒนาซอฟต์แวร์
.
ทีมพัฒนาซอฟต์แวร์อย่างเราๆ
ก็พากันเรียกว่า Go live บ๊ายๆ
ขอให้ยูสเซอร์ทุกท่านโชคดี
.
✍เขียนโดย โปรแกรมเมอร์ไทย thai programmer
sit uat 在 Sit Uat | Facebook 的推薦與評價
Sit Uat is on Facebook. Join Facebook to connect with Sit Uat and others you may know. Facebook gives people the power to share and makes the world more... ... <看更多>
sit uat 在 Define running environment (SIT/UAT/prod) of an app - Stack ... 的推薦與評價
... <看更多>