Tải bản đầy đủ (.pdf) (46 trang)

Bệnh án điện tử ứng dụng điện toán đám mây

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.89 MB, 46 trang )



TRNG I HC M TP.H CHÍ MINH
KHOA CÔNG NGHÊ

THÔNG TIN





BÁO CÁO  ÁN MÔN HC

BNH ÁN IN T NG DNG
IN TOÁN ÁM MÂY



Ging viên hng dn Sinh viên thc hin
TS.Lê Xuơn Trng Lê Quc Cng 0851010027
Nguyn c Tin 0851010276






Tp. 





-1-


LI CÁM N

 các thy cô khoa Công ngh thông tin,
nhn dt chúng em sut bc tc bit là l
n thn tâm ng d chúng em hoàn
 án môn hc này.
Tuy nhiên, do vn kin thc có hc nhng sai sót, vì vy chúng
em rt mong nhc s ch bo và góp ý ca thy.
Mt ln na, chúng em xin gn thy li c nht.

-2-


NHN XÉT CA GIÁO VIÊN HNG DN


























-3-


MC LC


BNG THUT NG TING ANH 5
MC LC HÌNH NH 6
 Tng quan 7
1.1. Gii thiu: 7
1.2. Mc đích lƠm đ tài: 7
1.3. Phng pháp nghiên cu: 8
1.4. Phm vi: 8
1.5. Nhng đóng góp ca đ tài: 8
1.6. B cc báo cáo: 8
  s lí thuyt 10
2.1. Công ngh WCF: 10

2.1.1. Gii thiu chung v WCF: 10
2.1.2. Ti sao s dng WCF: 10
2.1.4. Các contracts (Các hip ngh): 11
2.1.5. a WCF: 13
2.2. Tng Quan in Toán ám Mơy 14
2.2.1. Gii pháp c 16
2.3. Cu trúc ca Window phone: 18
2.3.2. Cc to ra t template v 19
2.3.3.  chnh sa mt s thuc bit ca phone 22
2.3.4. Cách build ng dng Window Phone 7 lên Emulator 22
2.3.5. Thit k giao din cho ng dng: 23
2.4. Entity Data Model: 25
2.4.1. ADO.NET Entity Framework là gì: 25
2.4.2.  d liu dùng ADO.NET Entity Framework: 25
2.4.3. Cách thc hong ca Entity Framework: 27
2.5. B cc bnh án: 27
 Hin thc ng dng 28
3.1. S lc ng dng: 28
3.1.1. Mô hình hong: 28
3.1.2. c các ch 28
-4-


3.2. Xây dng ng dng: 29
3.2.1. Xây dng ng dng WCF server: 29
3.2.1.1. S dng Entity Data Model: 29
3.2.1.2. To contract dch v: 34
3.3. Xây dng ng dng WP 7: 35
3.3.1. S dng SDK Windowns Phone 7.1 (Mango): 35
3.3.2. Mô hình hong: 36

3.3.3. Cách thc x lý: 36
 Kt qu c 38
4.1. Xem thông tin ca bnh nhân ca bác s đó trong 1 khoa 38
4.2. Chnh sa bnh án ca bnh nhân: 42
4.3. Thêm bnh án ca bnh nhân: 43
 Kt lun 44
5.1. Li ích ca Bnh Án in T dùng đin toán đám mơy: 44
5.2. Hn ch ca phn mm: 44


-5-


BNG THUT NG TING ANH


- PDA: thit b k thut s h tr cá nhân.
- iOS: h u hành ca IPhone.
- Android: h u hành cho smartphone ca Google.
- WCF (Windows Communication Foundation): công ngh nn tng nhm thng
nht nhiu mô hình lp trình giao tip.
- SDK (Software Development Kit): b công c dành cho phát trin phn mm.
- API (Application programming interface): là mt giao din lp trình ng dng.
- SOAP (Simple Object Access Protocol): giao thc truy cn.
- XML (Extensible Markup Language): ngôn ng u m rng, là mt ngôn
ng u mà bn có th s d to ra th riêng ca mình.
- IIS (Internet Information Services): là các dch v dành cho máy ch chy trên
nn H u hànhWindow.



-6-


MC LC HÌNH NH

Hình 1: Kin trúc ca WCF 11
Hình 2: Mô hình các cm máy ch  15
Hình 3: Các gii pháp v cung cp các dch v tài nguyên 16
Hình 4: Các phn t 17
Hình 5: To project Window Phone 19
Hình 6: Các tp tin trong 1 project Windows Phone 7 19
Hình 7: Chi tit file xaml 20
Hình 8: Code behinh ca trang App 21
Hình 9: Thit k giao din dùng ngôn ng XAML 22
Hình 10: Buil ng dng dùng Windows Phone 7 Emulator 22
Hình 11: Chy mt ng dn 23
n ca textbox 24
Hình 13: Các thuc tính ca button click 25
Hình 14: Mô hình Entity Framework 26
Hình 15: Mô hình hong ca Entity Framework 27
Hình 16: cc ca 1 bnh án 28
Hình 17: To ng dng WCF server 29
Hình 18: Entity Data Model 29
Hình 19: Ví d v function import trong model 30
Hình 20: Mô hình vt lý d liu 31
Hình 21: Thit k bng bnh vin 32
Hình 22: Thit k bng khoa 32
Hình 23: Thit k b 33
Hình 24: Thit k bng bnh nhân 33
Hình 25: Thit k bng bnh án 34

Hình 26: Mô hình ly d liu t interface 35
Hình 27: Giao din ng dng client 35
Hình 28: Mô hình hong 36
Hình  x lý yêu cu ca ng dn thoi 37
p ca ng dng 38
Hình 31: Trang danh sách bnh nhân 39
Hình 32: Danh sách bnh án 40
Hình 33: Chi tit danh sách bnh án 41
Hình 34: Trang cp nht bnh án 42
Hình 35: Trang thêm bnh án 43

-7-


 Tng quan
1.1. Gii thiu:
Ngày nay mu có th d dàng s hu riêng cho mình mt chin
thoi vi các ch, gi, nhn tin ngoài ra còn có mt s chc
c, t web, nh v. Smart phone là mt trong nhng
n thoi tích hp khá nhiu ch tr i dùng, là s kt hp ca
mt chin thoi và mt chic PDA. Bên cnh s phát trin mnh m ca các h
i h u hành
kém gì
iOS hay Android. Trên th ng hit hin các dòng windows phone 7
              
Samsung Omnia 7, Samsung Focus, LG Quantum, LG Optimus 7 và Dell Venue
y s i s dng phn mm ca window phone 7 là không h
nh.
Thut ng i gi nói v mt
 khái quát l h tng thông tin v

n ra t m
Và vi vic phát tric kt
hp ng dng Window phone 7 d i dùng linh
ho qun lí d liu, gii quyt 1 s v ng gp trong công
vic và cuc sng hng ngày.
Bên ct th rt c tp trung và có th truy xut  nhi,
nh án, B Y T nh 3 m thi hn bo qun h nh án: "H
nh án ni trú, ngo ít nh nh án tai nng, tai
nn sinh ho ít nh i b t  ít nht 20
c tnh 3 mn ánh ht giá tr các loi h nh
án  các bnh vin. Nhiu h nh án có giá tr nhiu mt bnh hc, y hc và khoa
hi vi vic nghiên cu lch s phát trin ca nn y hc Ving thi
phn ánh nhng thành tu và kinh nghim trong quá trình hou tr bnh
nhân ca gii Y hc Vit Nam thc s là nhi vi nn
Y hc nên cn phnh thi hn bo qun.  c
 thì phi tn rt nhiu kinh phí cho kho tàng, giá t, mt bVì vy mt
bn t ng dt cn thit.
1.2. Mc đích lƠm đ tài:
Da trên công ngh ng mt bn t cho phép
 có th s dng  m trên Window phone 7.

-8-


1.3. Phng pháp nghiên cu:
- Da trên công ngh WCF
- S dng công c h tr lp trình Window phone trên Visual studio 2010 là:
Windows SDK 7.1 RC, Windows Developer Tools 7.1 Beta.
- S d d liu SQL Server 2008.
- S dng ngôn ng LinQ.

- Kho sát bnh án ca mt s bnh vin.
1.4. Phm vi:
 1 h thng bnh vin có th tra cu bnh án ca bnh
nhân, qun lí thông tin ca bnh nhn.
1.5. Nhng đóng góp ca đ tài:
 ng dng k thu to nên mt cách th
tr bnh án vi thi hn gi
vi nên Y hc Vit Nam.
Ngoài ra vi vic s dn thot, ch
ng         a bnh hng ngày cho bnh nhân
 phc v cho công tác nghiên cu, chuc thun ti
1.6. B cc báo cáo:
 ng quan
   nói v mu c c hin
u qu c tài.
  lý thuyt
  nói v các công ngh c áp dng trong phn mm.
 Công ngh WCF.
 Lí thuy.
 Cu trúc ca mt ng dng Window phone.
 Entity Data Model trong ng dng.
 Mu bnh án.

-9-


 n thc ng dng
  nêu bt lên các công ngh c áp dng vào trong ng dng
 Các dch v ng dng vào h thng.
 Cách thc hin thc ng dng.

 Kt qu c t ng dng.
 t qu c
   biu din các hình nh ca ng dng khi thc hic.
 t lun
 i này báo cáo s trình bày các li ích và hn ch ca phn
mm.

-10-


  lí thuyt
2.1. Công ngh WCF:
2.1.1. Gii thiu chung v WCF:
WCF là công ngh nn tng nhm thng nht nhiu mô hình lp trình giao tip
c h tr trong.NET 2.0 thành mt mô hình duy nh    
2005,.p các hàm API riêng
bit cho các liên lc d t làm vic gia các nn tng s
dng thi.NET 2.0 còn cung c tc liên lc
da trên mã nh phân gia các ng dng chy trên h thng Windows gi là.NET
Remoting, các API cho các giao dch phân tán, và API cho liên lc d b. WCF thng
nht các API này thành mt mô hình duy nht nhng mô hình lng
dch v.
WCF có th s dng các bn tin SOAP gia hai ting
dng da trên WCF có th làm vic vi các tin trình khác thông qua vic giao tip
s dng bn tin SOAP. Khi mt tin trình WCF liên lc vi mt tin trình không là
WCF, các b c vi mt
tin trình WCF khác, bn tin SOAP có th c ta trên mã hoá nh phân.
2.1.2. Ti sao s dng WCF:
.NET 2.0 h tr rt nhic gia
các ng dng khác nhau nhm vào các mc

này khá phc tp và phi mt nhiu th làm ch c công ngh. Tuy nhiên
kin thc t vic trin khai m c khi
làm vic v
Vi vii ca WCF, mu có th thc
hin trên WCF. Do vy nhà phát trin ch cn làm ch c công ngh WCF là có th
xây dng các ng dng mt cách nhanh chóng.
WCF là mt mô hình lp trình cho phép nhà phát trin xây dng các gii pháp
dch v m bo tính nh, và bo mt và thm bo giao dch. Nó làm
n hoá vic phát trin các ng dng ni kn nhng
giá tr mà có th h p cn phát trin h thng phân tán
thng nhn, và quc.
c xây dn ca.NET Framework 2.0 CLR, nó là tp các
lp cho phép các nhà phát trin xây dng các ng d ng dch v bng môi
ng lp trình quen thuc ca h 

-11-


2.1.3. Kin trúc ca WCF:
Hình  kin trúc ca WCF:

Hình 1: Kin trúc ca WCF

2.1.4. Các contracts (Các hip ngh):
         ng/hi nh mà bn ký
i sng tht. Mt hng bn ký có th chu công
vic bn s làm, và nhng thông tin mà bn mu       
     c t
trong h thng bng có các loi contract sau:
- Contract d liu mô t các tham s cho các bn tin mà mt dch v có th to

ra hay s dng. Các tham s bng các tài liu s dng
ngôn ng c t u này cho phép các h thng hiu
XML có th x lý tài liu d dàng. Các dch v khi liên lc vi nhau có th
không cng ý vi nhau v các king ý v contract d liu,
ng ý v các tham s và các kiu tr v.
-12-


- Contract bn có trong bn tin s dng các giao thc
u khii các phn trong bn tin khi có
yêu cu s y.
- Contract dch v c t chi tic ca dch vc phân
pht giao din trong các ngôn ng l
Visual C#. Có th hình dung v contract dch v mt cách gián ti sau:
u d liu ca các bn tin cp, và
c mà tôi có th liên l.
- Các chính sách và các kt ni (bindings) mô t u kin c giao
tip vi mt dch v. Các chính sách s bao gm c các yêu cu v bo mt và
u kin khác cn phi có khi kt ni vi mt dch v.
2.1.4.1. Runtime service (Dch v thc thi):
Lp dch v thc thi cha các hành x s xy ra trong quá trình thc hin ca
dch v thc thi ca dch v. Ta s thy mt s các hành x 
sau:
 u khin lung nhnh xem có bao nhiêu bn
c x lý.
 Error behavior: Hành x lnh nhng khi li xy ra trong
h thng.
 Metadata behavior: Hành x vi các siêu d liu nh xem làm th nào
và khi nào thì các siêu d lich v.
 Instance behavior: Hành x thc th nh xem có bao nhiêu thc th ca

dch v c chy.
 Transaction behavior: Hành x giao dch cho phép vic rollback các giao
dch nu xy ra li.
 Message inspection: Kim tra bi cho dch v kh m tra
tt c hay mt s phn ca bn tin.
 Dispatch behavior: Khi mt bc x lý bi nn tng WCF, dch v
nh xem bc x lý  nào.
 Concurrency behavior: Hành x ng thnh xem vic x lý th nào
vi ving ca mi dch v hay mi thc th ca dch v. Hành x
này giúp cho viu khin s ng lung có th truy nhp ti mt thc
th ca dch v.
 Parameter filtering: khi mt bi dch v. S xy ra mt s
ng da trên phu ca bn tin. Phn lc tham s s thc hin phn
-13-


l bn tin và thc hit sn d bn
tin.
2.1.4.2. Bn tin:
Lp bn tin là tp hp các kênh. Mi kênh là mt thành phn x lý bn tin theo
mt tc gp kênh. Các kênh làm
vic trên b ca bn tin. Lp này khác vi lp thc thi dch v ch
yu bi s khác nhau trong vic x lý ni dung bn tin.
Có hai kênh khác nhau là kênh vn chuy     u
khin (control channel):
- u khin thc hin x lý bn tin theo giao th ng làm
vic b cho bn tin.

- Kênh vn chuyn ph trách vic và ghi các bn tin t mng (network)
hoc t mt s m giao dch bên ngoài).


2.1.4.3. Host and activation (Cha và kích hot).
Nhìn mt cách tng th thì mt dch v thc cht là m   
gihác, mt dch v cn phi chy trong mt tp thc thi.
Dch v c gi là dch v t cha.
Các dch v còn có th c cha, hoc chy trong mt tp thc qun lý
bi mAS cho
c kích hot mt cách t ng khi phân phi ti mt máy tính có chy
WAS.
2.1.5. a WCF:
2.1.5.1. Giao dch:
Mt giao dch là m ca công vic. Mt giao dm bo chc chn
rng mi th din ra trong giao dch thành công hay tht bu là kt qu tng th.
Ví d, nu mt giao dch cha ba mc công vic cn thc hin, trong quá trình thc
hin giao dch, mt trong s các m tht b ba mc s là tht bi.
Giao dch ch thành công khi c ba mc công viu thành công. Giao dng
thy trong các thao tác v d liu.
c x lý giao di các liên lc. Nhà phát
trin có th nhóm các liên lc vi nhau thành các giao dch.  mc doanh nghip, tính
n thc hin các công vic giao dch qua các nn tng khác nhau.

-14-


2.1.5.2. Host (cha):
WCF cho phép các dch v c cha trong mt s l   ng khác
ng d
trên IIS (Internet Information Server) và WAS (Windows Activation Services).
Cha ng dng trên IIS còn có thêm các lm khác là dch v có th nh
m ca rt nhin trên IIS, ví d IIS có th u khin mt cách t ng

vic bu hay kt thúc mt dch v.
2.1.5.3. Bo mt:
Bo m thiu trong WCF nói riêng và trong liên lc nói
chung. Trong WCF, tt c mi th t các bn tin tu phi xác
th m bo rng các bn tin không b ln trong quá trình
vn chuyn. WCF bao gm vim bo tính toàn vn và bo mt ca bn tin.
WCF còn cho phép bn tích hp ng dng ca bn v h tng bo mt sn
có, bao gm c các chung Windows bng cách s dng các bn
tin SOAP bo mt.
2.2. Tng Quan in Toán ám Mơy




 







 1 
Internet. 










 n pháp s dng da trên kt ni
i dùng chia s cùng mt mng máy ch, phn mm và d
li



























 . 
Gmail, Google Calendar, Hotmail, SaleForce, 




















 c truy
c



 o ca h thng máy ch  s thng nht ca các hãng ln

trên Internet.

-15-



Hình 2: Mô hình các cm máy ch 
M



















. 



 . 









 


, , 




















 , 






. 







 



, 
  . 
























, , ,  . 

 , 

























.

-16-


2.2.1. Gii pháp c

Hình 3: Các gii pháp v cung cp các dch v tài nguyên
 Vn đ v lu tr d liu
D li tp trung  các trung tâm d liu khng l. Các công
ty lc trung tâm d liu nm ri rác khp
 gii. Các công ty ln này s cung cp các dch v cho phép doanh
nghip có th  và qun lý d liu ca h trên các trung .
 Vn đ v sc mnh tính toán
Có 2 gii pháp chính:
 S d x lý tính toán.

 S dng các h thng tính toán song song, phân tán.

 Vn đ v cung cp tài nguyên, phn mm.
Cung cp các dch v service), PaaS (platform
as a service), SaaS (Storeage as a service).
2.2.2. Cu trúc các phn to nên đám mây
-17-



Hình 4: Các phn t
2.2.2.1. Các dch v ng dng (SaaS)
Tng dch v ng d các ng dng phù hp vi mô 
nhng ng dng chy trong mc cung cp theo yêu c
dch v c cung cp min phí và các nhà cung cp dch v to ra doanh thu t
nhng th ng cáo Web và nhiu khi các nhà cung cp ng dng to ra
doanh thu trc tip t vic s dng dch v. Nu ba bn khi s dng
Gmail hoc Yahoo Mail hoc nhc các cuc hn khi s dng Google Calendar, thì
bc vi tng trên cùng c là mt vài ví d v các kiu
ng dng này.
Các ng dc cung cp qua mô hình SaaS làm li tiêu dùng bng
cách gii phóng cho h khi vit và bo trì phn mm và các ng dng có th
c s dng thông qua các mô hình cp phép có h tr tr ti s dng.
2.2.2.2. Các dch v nn tng (PaaS)
ng   h tng ng dng nt tp hp
các dch v. Các dch v   h tr cho các ng dng. Các ng dng này
có th  y trong mt trung tâm d liu
doanh nghip truyn th c kh  rng cn thit trong m
các dch v  c o hóa. Các ví d trong phn này
cm Amazon Web Services, Boomi, và Google App Engine. Các dch

v nn tng này cho phép khách hàng chc chn rng các ng dng ca h c trang b
 ng các nhu cu ci dùng bng cách cung c h tng ng dng da
theo yêu cu.

-18-


2.2.2.3. Các dch v  h tng (IaaS)
 a thy mt tp hp các tài sn v, các thit b
m ch v c cung ci tiêu
dùng. Các dch v   tr  h tng ng dng và nhi
i các dch v nn tng, s o hóa là mc s dng
 to ra ch  phân phi các ngun tài nguyên theo yêu cu. Ví d v các dch v 
h tng bao gm IBM Bluehouse, VMware, Amazon EC2, Microsoft Azure Platform, Sun
ParaScale Cloud Storage
M




















. 


 . 














, , 




















 , 






. 







 




, 
 . 




 
, , ,  . 

 , 






















2.3. Cu trúc ca Window phone:
Các công c và th tc cn thi build và test các ng dng Silver Light cho
Window Phone 7 và cách s d build và design các ng
dng Window Phone trên Window Phone Emulator, ví d cách vit mt ng dng
n.
2.3.1. To 1 ng dng s dng Window Phone Application Project Template
(category silverlight for Window Phone )

-19-


Tên ng dng là HelloWP7

Hình 5: To project Window Phone

2.3.2. Cu trúc c to ra t template v:

- App.xaml/App.xaml.cs: 
u vào ca ng dng, khi to các
resource mc ng dng và hin th giao
din ng dng.
- MainPage.xaml/MainPage.xaml.cs:
   n kh u ng
dng
- ApplicationIcon.png: nh Icon ng
dng trong application list ca phone
- Background.png: nh icon ng

dng  màn hình start.
- SpashScreenImage.jpg:  u
tiên hin th khi launch ng dng.
- Properties\AssemblyInfo.cs: Cha
tên và thông tin phiên bc nhúng vào trong file assembly khi compile.
Hình 6: Các tp tin trong 1 project
Windows Phone 7
-20-


- Properties\AppManifest.xml to ra gói ng dng.
- Properties\WMAppManifest.xml: File manifest cha các thông tin riêng ca
ng dng Windows Phone Silverlight.
- File App.xaml vi các XAML markup (Extensible Application Markup
Language) gm mt root element là Application và phn Application.Resources cha
các resources mc ng d

Hình 7: Chi tit file xaml

Bên ci to 1 thu ti
ng PhoneApplicationService, d ng qun lí các thuc tính và trng thái ng
dng khi nó có active hoc inactive.
t instance ca lp Application cha ng dng Silverlight
for Windows Phone và code behind ca nó:
-21-



Hình 8: Code behinh ca trang App
ng dng Silverlight for Windows Phone cha 1 thuc tính là RootFrame nh

 Page bu ng dng. Tt c các ng dng Windows Phone ch có mt thành
phn container mc trên cùng vi kiu d liu là PhoneApplicationFrame.Frame này
cha 1 hoc nhiu PhoneApplicationPage biu th ni dung ca ng dng thi
x lý vic navigate gia các page.
a 1 page default là MainPage.xaml n chính
ca ng dng.
Bn có th dùng designer ca Visual Studio  thit k UI ca ng dng ngay
trc tip. Toàn b UI ca ng dc xây dng bng cách s dng XAML  mt
ngôn ng khai báo ging kiu XML.
-22-



Hình 9: Thit k giao din dùng ngôn ng XAML
2.3.3.  chnh sa mt s thuc bit ca phone
- Ta có th s dng Properties window. Các thuc tính này s   trong
file WMAppManifest.xmln vic deploy ng dng và giao din
ca ng dng trên thit b.
2.3.4. Cách build ng dng Window Phone 7 lên Emulator
- ng dng.NET ng,  build ng dng ta dùng
t hp phím Shift + F6 hoc Ctrl+Shift+B.

Hình 10: Buil ng dng dùng Windows Phone 7 Emulator
-23-


- Chn Windows Phone Emulator và ch cn nhn F5  launch ti ng dng
trên Emulator này. Các công vic còn li Visual Studio s t ng thit lp
ng cho emulator và deploy image ca ng dng lên emulator.
- Mt th thut khi debug ng dng Windows Phone emulator khi

còn thc hin coding ng dng, bi khi simulator còn chy nó s mt rt ít
thi gian khi to mt session debug mi.
2.3.5. Thit k giao din cho ng dng:
- Da vào các kin th xây dn mt ng d
gin
- Giao din ng dng s cha 1 caption, 1 textbox và 1 button. i dùng
nhp text vào button, ng dng s hin th 1 banner vi dùng
i:

Hình 11: Chy mt ng dn

-24-


c thc hin:
- M MainPage.xaml và s dng view XAML hoc Design  thit k giao
din cho ng dng.
- B sung thêm mt Row vi Height là Auto cha textbox và button.
- Sa li ApplicationTitle thành WINDOWS PHONE 7, PageTitle thành
HelloWP7.
- Layout Grid ContentPanel g
 textbox stretch ra ht các khong tr      
      c button nó cha. S
dng Margin và padding  i.
-  cha text t Textbox sau khi nhn Button.

Hình 12n ca textbox

-  event handler cho button  respon action t phía UI. Có
th to event handler này bng cách s dng ca s property ca button, click

trc tip vào button trên view Design hoc bng view XAML.

×