โดยปกติแล้วบริการจะเรียกบริการอื่น ๆ เมื่อต้องการเข้าถึงข้อมูล ข้อมูลแต่ละชิ้นควรเป็นของบริการเฉพาะซึ่งจะเป็นเพียงจุดเริ่มต้นในการเข้าถึงข้อมูลนี้และทำการแก้ไข บริการบางอย่างจะง่ายและมักจะสอดคล้องกับรูปแบบโดเมนของคุณ (เช่นบริการสำหรับจัดการผู้ใช้) ในขณะที่บริการอื่น ๆ จะอยู่ในระดับสูงและใช้ข้อมูลจากบริการอื่น ๆ (เช่นการแสดงรายการภาพถ่ายพร้อมข้อมูลเกี่ยวกับผู้ใช้ที่อัปโหลด )
ในกรณีการใช้งานของคุณคุณควรเริ่มจากด้านนอกและคิดว่าการดำเนินการใดที่คุณต้องการให้ผู้ใช้ของคุณสามารถใช้งานผ่าน API (ถ้าเป็นบริการแบ็กเอนด์) หรือการดำเนินการใดที่ควรมีใน GUI ถ้าเป็นเว็บแอปพลิเคชัน โปรดทราบว่าส่วน GUI มักเป็นแอปพลิเคชันทั่วไปที่มีตัวควบคุมของตนเอง: การดำเนินการอาจถูกเรียกผ่าน REST (เช่นเดียวกับ AngularJS) แต่ปลายทางเหล่านี้ถูกออกแบบมาเฉพาะสำหรับการใช้งานแอปพลิเคชัน GUI เท่านั้น
สมมติว่าคุณต้องการแสดงรูปภาพพร้อมข้อมูลเกี่ยวกับผู้อัปโหลด คุณสามารถให้บริการผู้ใช้ที่ส่งคืนข้อมูลเกี่ยวกับผู้ใช้ที่ได้รับ ID ของผู้ใช้และบริการรูปถ่ายซึ่งสามารถแสดงรายการรูปถ่าย (เช่นโดยการค้นหาตามเงื่อนไขบางประการ) รายการภาพถ่ายจะมี ID ของผู้ใช้ที่อัปโหลดแต่ละภาพถ่าย วิธีนี้บริการทั้งสองนี้ไม่ได้เชื่อมต่อกัน - บริการถ่ายภาพรู้เฉพาะเกี่ยวกับ ID ผู้ใช้ แต่ไม่มีอะไรเกี่ยวข้องกับข้อมูลผู้ใช้เอง ด้านบนของบริการทั้งสองนี้คุณสามารถสร้างบริการที่สามด้วยการดำเนินการเช่น "รูปถ่ายรายการที่มีข้อมูลเกี่ยวกับผู้อัปโหลด" ซึ่งจะเรียกบริการอื่น ๆ อีกสองบริการและรวมข้อมูลที่พวกเขากลับมา อีกทางหนึ่งแอปพลิเคชั่นเว็บของคุณสามารถทำการดำเนินการนี้แทนบริการ