Software and architecture
นำรูปแบบการจัดการโหลดให้ราบรื่น (Load smoothing) และรักษาการใช้งานทรัพยากรที่ติดตั้งให้สูงอย่างสม่ำเสมอมาใช้ เพื่อลดปริมาณการใช้ทรัพยากรให้เหลือน้อยที่สุด ส่วนประกอบต่าง ๆ อาจไม่ได้ถูกใช้งาน (Idle) เนื่องจากการเปลี่ยนแปลงพฤติกรรมของผู้ใช้เมื่อเวลาผ่านไป ควรปรับปรุงรูปแบบและสถาปัตยกรรมเพื่อรวมส่วนประกอบที่มีการใช้งานต่ำเข้าด้วยกันเพื่อเพิ่มการใช้งานในภาพรวม ปลดระวางส่วนประกอบที่ไม่จำเป็นอีกต่อไป ทำความเข้าใจประสิทธิภาพของส่วนประกอบในเวิร์กโหลด และปรับปรุงส่วนประกอบที่กินทรัพยากรมากที่สุดให้มีประสิทธิภาพ นอกจากนี้ควรคำนึงถึงอุปกรณ์ที่ลูกค้าใช้เพื่อเข้าถึงบริการของคุณ และนำรูปแบบการพัฒนาที่ช่วยลดความจำเป็นในการอัปเกรดอุปกรณ์ของลูกค้ามาใช้งาน
คำถามต่อไปนี้จะเน้นที่การพิจารณาด้านความยั่งยืน:
SUS 3: คุณใช้ประโยชน์จากรูปแบบซอฟต์แวร์และสถาปัตยกรรมเพื่อสนับสนุนเป้าหมายด้านความยั่งยืนอย่างไร? นำรูปแบบการจัดการโหลดให้ราบรื่นและรักษาการใช้งานทรัพยากรให้สูงอย่างสม่ำเสมอมาใช้เพื่อลดการสิ้นเปลือง ปรับปรุงสถาปัตยกรรมเพื่อรวมส่วนประกอบที่ใช้งานน้อย ปลดระวางสิ่งที่ไม่จำเป็น และเพิ่มประสิทธิภาพให้โค้ดส่วนที่กินทรัพยากรสูง รวมถึงคำนึงถึงผลกระทบต่ออุปกรณ์ของฝั่งลูกค้า
-
**ปรับซอฟต์แวร์และสถาปัตยกรรมให้เหมาะกับงานแบบ Asynchronous และงานที่ตั้งเวลาไว้ (Optimize software and architecture for asynchronous and scheduled jobs):**ใช้การออกแบบซอฟต์แวร์และสถาปัตยกรรมที่มีประสิทธิภาพเพื่อลดทรัพยากรเฉลี่ยที่ใช้ต่อหน่วยงาน นำกลไกที่ช่วยให้การใช้งานส่วนประกอบต่าง ๆ มีความสม่ำเสมอมาใช้ เพื่อลดทรัพยากรที่ปล่อยว่างไว้ระหว่างรองาน และลดผลกระทบจากการใช้งานที่พุ่งสูงขึ้นอย่างกะทันหัน (Load spikes)
-
ลบหรือปรับปรุงส่วนประกอบของเวิร์กโหลดที่มีการใช้งานต่ำหรือไม่ถูกใช้งาน (Remove or refactor workload components with low or no use): เฝ้าติดตามกิจกรรมของเวิร์กโหลดเพื่อระบุการเปลี่ยนแปลงของการใช้งานในแต่ละส่วนประกอบเมื่อเวลาผ่านไป ลบส่วนประกอบที่ไม่ได้ใช้และไม่จำเป็นอีกต่อไป และปรับปรุง (Refactor) ส่วนประกอบที่มีการใช้งานน้อยเพื่อจำกัดการสูญเสียทรัพยากร
-
ปรับปรุงส่วนของโค้ดที่ใช้เวลาหรือทรัพยากรมากที่สุด (Optimize areas of code that consume the most time or resources): ตรวจสอบกิจกรรมของเวิร์กโหลดเพื่อระบุส่วนประกอบของแอปพลิเคชันที่กินทรัพยากรมากที่สุด ปรับปรุงโค้ดที่รันภายในส่วนประกอบเหล่านี้เพื่อลดการใช้ทรัพยากรในขณะที่ยังคงประสิทธิภาพสูงสุด
-
ลดผลกระทบต่ออุปกรณ์และเครื่องมือของลูกค้า (Optimize impact on customer devices and equipment): ทำความเข้าใจอุปกรณ์ที่ลูกค้าใช้รับบริการของคุณ วงจรชีวิตของอุปกรณ์เหล่านั้น รวมถึงผลกระทบด้านการเงินและความยั่งยืนหากต้องเปลี่ยนอุปกรณ์ใหม่ นำรูปแบบซอฟต์แวร์และสถาปัตยกรรมมาใช้เพื่อลดความจำเป็นที่ลูกค้าจะต้องเปลี่ยนหรืออัปเกรดอุปกรณ์ เช่น การพัฒนาฟีเจอร์ใหม่ด้วยโค้ดที่รองรับฮาร์ดแวร์หรือระบบปฏิบัติการรุ่นเก่า (Backward compatible) หรือจัดการขนาดของข้อมูล (Payload) ไม่ให้เกินความจุของอุปกรณ์ปลายทาง
-
ใช้รูปแบบซอฟต์แวร์และสถาปัตยกรรมที่สนับสนุนการเข้าถึงและการจัดเก็บข้อมูลอย่างมีประสิทธิภาพ (Use software patterns and architectures that most effectively supports data access and storage patterns): ทำความเข้าใจวิธีการใช้ข้อมูลภายในเวิร์กโหลด การบริโภคข้อมูลของผู้ใช้ การรับส่งข้อมูล และการจัดเก็บ เลือกใช้เทคโนโลยีที่ช่วยลดความต้องการในการประมวลผลและการจัดเก็บข้อมูลให้เหลือน้อยที่สุด