Bilgi Paylaşımı

Bilginin paylaşıldıkça çoğalacağını düşünen olarak, Sağlık Net Adaptörü ile ilgili mimari yapının detayları dahil açıklanmaktadır. Bu detayların bir çoğu kullanıcının direk işine yarayacak olmasa da, arkada çalışan mekanizma hakkında ciddi fikir verecektir. Bu bilginin alınıp başka sistemlere uyarlanması veya başka yerlerde benzer mimarilerin kurulması tarafımızı rahatsız etmekten çok memnun edeceğinden, buradaki teknik bilginin mümkün olduğunca paylaşma amacı taşınmaktadır.

Buradaki dokümantasyonun her türlü soruyu karşılayamayacağı ve her noktayı açıklığa kavuşturamayacağı fikrinden yola çıkarak, eksik olan kısımların bildirilmesi ve talep edilmesi durumunda güncelleneceğini belirtmek lüzumu tarafımızdan hissedilmektedir.

Eğer merak edilen ve yeterince açık olmayan bir nokta var ise bu noktayı info@sagliknetadaptoru.com adresine gönderirseniz mimari dokümanlar içerisine dahil edilecektir.

 

 

Özet Akış

Not: Şema üzerindeki bilgisayar veya server şeklinde gösterilen yapılar ayrı hardware gerektirmekten çok, kolay anlaşım için bu şekilde modellenmiştir. Bu yapıların fiziksel konum ve şekillerini belirtmekten uzaktır.


Temel olarak, yapı, Ulusal Sağlık Veri Sözlüğü şeklinde giriş kabul eden Sağlık Net Adaptörü Web Servisleri nin aldığı veriyi HL7 olan web servisleri için HL7 dönüşümünü, olmayanlar için diğer dönüşümleri yapıp Sağlık Nete Göndermesi şeklindedir.


Sağlık Net Adaptörü Web Servisleri, bu işlemleri yaparken, mesaj veritabanına (server tarafında bulunan) işlemleri ve sonuçlarını kaydeder. İlk kaydetme, adaptör web servis çağrısı esnasında olur. Burada kaydedilen, mesajla ilgili genel bilgiler (gönderici, hasta, mesaj türü vb) in yanısıra, adaptöre gelen xml çağrısıdır.

Not: Mesaj Veritabanı, Sağlık Net Adaptörü Veritabanı Uygulaması içerisindeki Veritabanından farklıdır. Mesaj veritabanı, sadece Sağlık Net Adaptörü Web Servisleri tarafından kullanılan ikinci bir veritabanıdır. Kullanıcıların bu veritabanı ile direk etkileşimi olmayacaktır. Bu metinde bahsedilmesinin sebebi, arka taraftaki çalışma mekanizmasını şeffaf olarak anlatabilmektir.

Daha sonraki işlem, bu çağrının HL7 ye dönüştürülmesi, dönüştürüldükten sonra dönüştürülmüş HL7 dokümanının tekrar mesaj veritabanına kaydedilmesi şeklindedir.

HL7 dönüşümünden sonra, sağlık net çağrısı yapılır ve dönen cevap gene mesaj veritabanına kaydedilir.

Büyütmek için diagram üstüne tıklayınız.

Tüm bu işlemler esnasında, Web Uygulamasından işlemin gidişatını izlemek mümkündür. Web uygulaması bir ajax uygulaması olduğundan, anlık olarak kendini güncellemektedir. Sadece mesajların durumu değil, aynı zamanda detayları da bu uygulamadan izlenebilir, hata alınmış ise hatanın sebebi, hata alan kayıtların liste içerisinde belirtilmesi gibi özelliklere sahiptir.

Sağlık Net Veritabanı uygulaması, kendi oluşturduğu veritabanı şemasına sahip uygulamadır. Veritabanını dinleyen Dinleyici, veritabanında değişiklik farkettiği anda, Sağlık Net Adaptörü Web Servislerine göndermek üzere veritabanından aldığı mesajları iş kuyruğuna sokar. bu iş kuyruğu, mesajları veritabanından alarak, Web Servislerine gönderir ve cevabını bekler. Dinleyici, bu işlemleri yaparken, tüm sonuçları ve süreci veritabanı içerisine kaydeder. Hatalı işlem olmuş ve hata anlık bir hata ise, dinleyici bu hatalı mesajları da tekrar tekrar oluşturarak Sağlık Net'e arka tarafta göndermeye devam eder.

Dinleyicinin yaptığı tüm işlemler multithread çalıştığından hiçbir işlem uygulamayı kilitlemez.

Mesajın ilk gönderilme evresi başarıyla tamamlandığında, dinleyici bu mesajlar için sorgu çalıştırmaya başlar. Sorgu esnasında alınan hatalar anlık ise, dinleyici bu hatalı mesajları çalıştırmaya devam eder, anlık hata kayboluncaya kadar Sağlık net'e göndermeyi tekrarlar.

Dinleyici bu işlemleri yaparken Sağlık Net Adaptörü Web Servislerini kullandığından, tüm proses aynı zamanda Sağlık Net Adaptörü Web Uygulaması'ndan izlenebilir durumdadır.

Detaylı bilgi için soldaki menüyü kullanabilirsiniz.

 

Detaylı Genel Mimari Diagram

Sağlık Net Adaptörü Diagramı

Büyütmek için diagram üstüne tıklayınız.

Sağlık Net Adaptörü birçok değişik parçadan oluşmaktadır. Bu değişik parçalardan kullanıcının ilgisini çekecek noktalar,

- Adaptör Veritabanı (Adapter DB),

- Veritabanı Dinleyicisi (DB Listener),

- Sağlık Net Adaptörü Web Servisleri (USBSAdapter PlainServer)

- Sağlık Net Adaptörü Web Servis tüketicisi (USBSAdapter PlainClient)

- Sağlık Net Web Servisleri Web Uygulaması (LogViewer)

kısımlarıdır. Diğer kısımların da çok önemli işlevleri vardır, ancak kullanıcının iletişim halinde bulunacağı parçalar listedekilerdir.

Diagramda bütün parçalar, yapının tamamını göstermeye yardımcı olması için verilmiştir.

Kullanıcıların birebir ilişki halinde olacağı parçalar Interfaces kısmında belirtilen parçalar olacaktır.