diff --git a/README.md b/README.md
index 47928623960a8833a60ba03f1429448b96cad626..7a0baddd63972c0300eeec6ca5da4d66c49bd494 100644
--- a/README.md
+++ b/README.md
@@ -91,3 +91,8 @@ If we were to use only the Model for handling both business logic and data persi
 I have also explored Postman as a tool to test my current work, and I found it incredibly useful. Postman allows me to quickly send API requests and verify responses, which is essential for ensuring that endpoints function correctly. I appreciate features such as automated testing scripts, environment management for easily switching between development and production settings, and the ability to organize requests into collections. These features not only streamline the testing process for my individual projects but also provide valuable documentation that can be shared with my group members, improving collaboration and overall project quality.
 
 #### Reflection Publisher-3
+For our notification system, we implemented the Observer pattern using the push model. In this approach, the publisher immediately sends notifications to subscribers as soon as an event occurs, ensuring that all subscribers are updated in real time. This method simplifies the process because the publisher takes full responsibility for initiating communication, reducing the need for subscribers to repeatedly check for updates.
+
+If we were to use the pull model instead, subscribers would have to request updates at regular intervals or on demand. While this gives subscribers more control over when they receive data, it introduces potential delays and increases the overhead on both the publisher and subscribers. Frequent polling could lead to unnecessary load and slower reaction times when immediate notification is essential. In our case, the push model aligns better with the need for timely notifications and simpler logic overall.
+
+Not employing multithreading for the notification process would mean that all notifications are handled sequentially on a single thread. This could cause significant delays, especially when there are many subscribers or when processing each notification takes time. The application would become less responsive, as lengthy notification handling could block other operations. By leveraging multithreading, we can process notifications concurrently, ensuring that the main application remains responsive and that each subscriber receives updates without undue delay.
\ No newline at end of file