Model anemia hanyalah sebuah wadah data. Itu tidak mengandung perilaku. (Ini sebenarnya bisa dianggap sebagai hal yang baik dalam paradigma fungsional.) Kebalikan dari model anemia bukanlah model yang disuntikkan penuh layanan domain. Anda menggambarkan dua ekstrem - keduanya buruk.
Jika Anda memiliki model anemia, Anda tidak sepenuhnya memahami apa yang ditawarkan OOP. Jika Anda mulai menyuntikkan layanan ke dalam model-model itu, Anda kemungkinan menyuntikkan masalah yang bukan miliknya. Entah itu atau model Anda lebih anemia daripada yang Anda pikirkan. Kenapa lagi Anda membutuhkan layanan selain menyediakan sesuatu yang diperlukan tetapi tidak ada? (Hilang bisa berarti anemia.)
Menghindari "menceritakan" mengarah ke desain yang lebih kuat. Apakah Anda memiliki sesuatu dalam layanan yang dibutuhkan model? Mungkin itu harus dipindahkan ke model. Jika tidak, mungkin Anda harus mempertimbangkan kembali kekhawatiran Anda. Perilaku model harus bekerja di dalam model. Ini terutama harus (jika tidak hanya) berkaitan dengan anggota. Tetapi ingat, masih akan ada hal-hal yang bekerja pada atau dengan model. Misalnya, model tidak boleh membuka koneksi TCP atau mendengarkan acara UI, bahkan jika mereka terlibat. Itu tanggung jawab orang lain dan bahwa seseorang tidak pernah termasuk dalam model.