Thiết kế kiến trúc ph n mềm - Tuyen Nguyen's ... Design... · Nội dung của slide này dựa vào các ... tán trên nhiều máy tính khác ... component hệ thống

  • Upload
    vannhu

  • View
    218

  • Download
    2

Embed Size (px)

Citation preview

  • Nguyn Th Minh Tuyn

    Thit k kin trc phn mm

    Ni dung ca slide ny da vo cc slides ca Ian Sommerville

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ni dung

    1. Quyt nh chn kin trc thit k 2. Cc gc nhn v kin trc 3. Cc kin trc mu 4. Cc kin trc ng dng

    2

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc phn mm

    vThit k kin trc l vic hiu mt h thng c t chc nh th no v thit k ton b kin trc ca h thng .

    vu ra ca quy trnh thit k ny l mt m t v kin trc phn mm.

    3

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Thit k kin trc

    vL giai on u tin ca mt quy trnh thit k h thng.

    vBiu din mi lin kt gia c t v cc quy trnh thit k.

    vThng c tin hnh song song vi cc hot ng c t.

    vBc ny gip nhn din cc component chnh ca h thng v cch giao tip ca chng vi nhau.

    4

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc mc tru tng ca kin trc

    vKin trc phn mm nh lin quan n kin trc ca cc chng trnh n l. mc ny, mt chng trnh c phn thnh cc component.

    vKin trc h thng ln lin quan n kin trc ca mt h thng phc tp gm nhiu h thng khc, chng trnh v cc components chng trnh. Nhng h thng ny c phn tn trn nhiu my tnh khc nhau, c th c s hu v qun l bi nhiu cng ty khc nhau.

    5

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    u im ca kin trc

    vGiao tip vi cc stakeholder Kin trc c s dng nh l mt trng tm ca vic

    tho lun vi cc stakeholder h thng. vPhn tch h thng

    L cch phn tch xem liu h thng c p ng c cc yu cu phi chc nng hay khng.

    vTi s dng Kin trc c th c ti s dng cho nhiu h thng

    khc.

    6

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Biu din kin trc

    vS dng cc biu khi n gin, khng mang tnh hnh thc ch ra cc thc th v quan h gia chng l phng php thng gp nht vit ti liu v kin trc phn mm.

    vVic s dng loi kin trc ny b ch trch trong mt thi gian di do n thiu ng ngha, khng ch ra c loi quan h gia cc thc th v khng ch ra cc thuc tnh ca thc th trong kin trc.

    vPh thuc vo vic s dng cc m hnh kin trc. Yu cu v ng ngha ca m hnh ph thuc vo cch cc m hnh c s dng.

    7

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc ca mt h thng iu khin robot

    Visionsystem

    Objectidentification

    system

    Armcontroller

    Grippercontroller

    Packagingselectionsystem

    Packingsystem

    Conveyorcontroller

    8

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    S dng cc m hnh kin trc

    vL phng tin tho lun v thit k h thng Thit k kin trc mc cao c ch khi giao tip vi cc

    stakeholder v ln k hoch d n v n khng i su vo chi tit. Cc stakeholder c th hiu c m hnh tru tng ca h thng. Do m h c th tho lun v ton b h thng m khng b ri bi vic qu i su vo chi tit.

    vL cch vit ti liu v kin trc c thit k Mc tiu y l to ra mt m hnh h thng hon chnh

    trong n ch ra c cc component khc nhau trong h thng, giao din v s kt ni ca chng.

    9

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ni dung

    1. Quyt nh chn kin trc thit k 2. Cc gc nhn v kin trc 3. Cc kin trc mu 4. Cc kin trc ng dng

    10

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Quyt nh chn kin trc thit k

    vThit k kin trc l mt quy trnh sng to. Cc hot ng trong quy trnh ph thuc vo loi ng dng c pht trin, kinh nghim ca ngi thit k kin trc v cc yu cu c th ca h thng.

    vThit k kin trc c nh l mt chui cc quyt nh hn l mt chui tun t cc hot ng.

    11

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Quyt nh chn kin trc thit k

    1. C th s dng kin trc tng qut no khng?

    2. H thng c phn tn nh th no? 3. Mu kin trc no ph hp? 4. Phng php no c s dng cu trc

    ha h thng? 5. H thng c phn r thnh cc module

    nh th no? 6. Chin thut iu khin no c s dng? 7. Thit k kin trc s c nh gi bng

    cch no? 8. Kin trc c vit thnh ti liu nh th

    no? 12

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ti s dng kin trc

    vCc h thng c cng lnh vc thng c cu trc tng t nhau phn nh nhng c im ca lnh vc . Cc dng sn phm ng dng c xy dng da vo mt kin

    trc li vi mt s bin th tha mn cc yu cu c th ca khch hng.

    vKin trc ca mt h thng c th c thit k da vo mt hoc nhiu mu kin trc (architectural pattern). Mu kin trc l m t v kin trc ca mt h thng. Cc mu ny cha cc c im chnh ca mt kin trc c

    s dng qua cc h thng phn mm khc nhau.

    13

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc v c im ca h thng

    vHiu nng (Performance) nh v cc chc nng quan trng v gim thiu giao tip.

    vBo mt (Security) S dng kin trc phn tng vi cc phn quan trng c t cc

    lp bn trong. vAn ton (Safety)

    nh v cc thao tc lin quan n an ton trong mt s t cc h thng con.

    vTnh thng trc (Availability) Thit k sn cc component d tha sao cho c th thay th hoc

    cp nht cc component m khng phi dng h thng, ngha l m bo cho h thng hot ng lin tc.

    vTnh d bo tr (Maintainability) S dng cc component nh, chi tit, c th thay th c.

    14

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ni dung

    1. Quyt nh chn kin trc thit k 2. Cc gc nhn v kin trc 3. Cc kin trc mu 4. Cc kin trc ng dng

    15

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc gc nhn v mt kin trc

    vGc nhn no l hu ch khi thit k v vit ti liu v kin trc ca mt h thng?

    vCc khi nim no nn c s dng m t v m hnh kin trc?

    vMi m hnh kin trc ch th hin mt gc nhn v h thng. C th ch ra mt h thng c phn r thnh cc module nh

    th no, cc tin trnh thi gian thc tng tc nh th no, cc component h thng c phn tn trn mng nh th no.

    i vi vic thit k v vit ti liu, ta thng cn biu din nhiu gc nhn khc nhau ca h thng phn mm.

    16

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh kin trc phn mm 4 + 1

    17

    logical view development view

    process view physical view

    use case

    ch ra cc biu din tru tng trong h thng di dng cc i tng v lp i tng.

    ch ra cch mt phn mm c phn r pht trin nh th no.

    ch ra cch cc tng tc thi gian thc xy ra trong h thng.

    ch ra phn cng ca h thng v cch cc component ca h thng c phn tn trn cc processor nh th no.

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh kin trc phn mm 4 + 1

    vGc nhn v logic (logical view) ch ra cc biu din tru tng trong h thng di dng cc i

    tng v lp i tng.

    vGc nhn v mt quy trnh (process view) ch ra cch cc tng tc thi gian thc xy ra trong h thng.

    vGc nhn v mt pht trin (development view) ch ra cch mt phn mm c phn r pht trin nh th

    no.

    vGc nhn v mt vt l (physical view) ch ra phn cng ca h thng v cch cc component ca h

    thng c phn tn trn cc processor nh th no.

    vLin quan n vic s dng use case hay kch bn (+1)

    18

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ni dung

    1. Quyt nh chn kin trc thit k 2. Cc gc nhn v kin trc 3. Cc kin trc mu 4. Cc kin trc ng dng

    19

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc mu (Architectural pattern)

    vThit k mu l mt phng tin biu din, chia s v ti s dng li cc kin thc.

    vCc mu thng cha thng tin v khi no chng hu ch v khi no khng, mnh yu ca chng.

    vCc mu c biu din s dng bng v m t ha.

    20

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Mt s m hnh kin trc mu

    vM hnh Model-View-Controller (MVC) vM hnh kin trc phn tng vM hnh Repository vM hnh clientserver vM hnh pipe and filter

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    The Model-View-Controller (MVC) pattern Tn" M hnh MVC (Model-View-Controller)"

    M t" Tch ring phn biu din v phn tng tc ra khi d liu h thng. H thng c cu trc ha thnh ba component logic tng tc vi nhau. / Model component: qun l d liu h thng v cc thao tc

    trn d trn d liu ./ View component: nh ngha v qun l cch d liu c

    biu din ti ngi dng nh th no. / Controller component: Qun l tng tc ngi dng ( v

    d nh n phm, nhp chut, ...) v chuyn cc tng tc ny ti View v Model. /

    S dng khi no" c s dng khi c nhiu cch biu din v tng tc vi d liu. Cng c s dng khi cha bit c cc yu cu tng lai cho tng tc v biu din d liu. /

    u im" Cho php d liu thay i c lp vi vic biu din ca n v ngc li. H tr biu din theo nhiu cch khc nhau trn cng mt d liu. /

    Nhc im" C th cha code b sung v code s phc tp hn khi m hnh d liu v m hnh tng tc n gin./

    22

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    T chc ca m hnh Model-View-Controller

    Controller View

    Model

    Viewselection

    Statechange

    Changenotification

    State query

    User events

    Maps user actionsto model updatesSelects view

    Renders modelRequests model updatesSends user events tocontroller

    Encapsulates applicationstateNotifies view of statechanges

    23

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    V d: Kin trc ng dng Web s dng m hnh MVC

    Controller View

    Model

    Form todisplay

    Updaterequest

    Changenotification

    Refresh request

    User events

    Browser

    HTTP request processingApplication-specific logicData validation

    Dynamic pagegenerationForms management

    Business logicDatabase

    24

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc phn tng

    vc s dng m hnh ha giao din ca cc h thng con.

    vT chc h thng thnh mt tp cc tng, mi tng cung cp mt tp cc dch v.

    vH tr vic pht trin dn dn cc h thng con trn cc tng khc nhau. Khi giao din ca tng thay i, ch cc tng ln cn mi b nh hng.

    25

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh kin trc phn tng Tn" Kin trc phn tng"

    M t" T chc h thng thnh cc tng, mi tng cha cc chc nng lin quan n nhau. Mt tng cung cp cc dch v cho tng trn ca n v vy cc tng thp nht biu din cc dch v li c s dng trong ton b h thng. /

    c s dng khi no"

    c s dng khi xy dng cc tnh nng mi da trn nhng h thng c sn; khi vic pht trin c dn tri trn nhiu nhm khc nhau v mi nhm chu trch nhim v chc nng ca mt tng; khi c mt yu cu v bo mt nhiu mc ./

    u im" Cho php thay th cc phn min l interface c duy tr. Cc chc nng d tha (v d nh phn quyn) c th c cung cp mi tng tng tin cy ca h thng./

    Nhc im " Thc t, cung cp mt s phn chia r rt gia cc tng thng rt kh khn v tng cao hn c th tng tc trc tip vi tng thp hn hn l thng qua mt tng bn di n. Hiu nng cng c th l mt vn v nhiu mc din gii ca mt yu cu dch v khi n c thc hin ti mi tng./

    26

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Mt kin trc phn tng tng qut

    User interface

    Core business logic/application functionalitySystem utilities

    System support (OS, database etc.)

    User interface managementAuthentication and authorization

    27

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc ca h thng LIBSYS

    Web browser interface

    Library index

    LIBSYSlogin

    Distributedsearch

    Documentretrieval

    Rightsmanager Accounting

    Forms andquery manager

    Printmanager

    DB1 DB2 DB3 DB4 DBn

    28

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Tng kt

    v Kin trc phn mm l m t v cch t chc ca mt h thng phn mm.

    v Quyt nh chn kin trc thit k bao gm cc quyt nh v loi ng dng, vic phn tn ca h thng, mu kin trc c s dng.

    v Cc kin trc c th c vit thnh ti liu t mt vi gc nhn chng hn nh gc nhn v mt khi nim, gc nhn v mt logic, gc nhn v mt quy trnh, gc nhn v mt pht trin.

    v Cc m hnh kin trc mu l phng tin ti s dng cc kin thc v kin trc h thng tng qut. Chng m t kin trc, gii thch khi no c s dng v u nhc im ca n.

    29

  • Thit k kin trc phn mm phn 2

    Lecture 2

    30

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc repository

    vCc h thng con phi trao i d liu vi nhau. C hai kh nng: Vic chia s d liu c thc hin c s d

    liu trung tm hay cn gi l kho d liu, kho ny c truy cp bi tt c cc h thng con;

    Mi h thng con duy tr mt c s d liu ring v chuyn d liu trc tip ti cc h thng con khc.

    vKhi c mt lng ln d liu cn chia s, m hnh v chia s l m hnh ph bin nht v l c ch chia s d liu hiu qu nht. 31

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh Repository

    Tn" M hnh Repository "

    M t" Tt c cc d liu trong h thng c qun l mt kho trung tm, kho ny c truy cp bi tt c cc component ca h thng. Cc component khng tng tc trc tip vi nhau, ch thng qua kho chung thi./

    Khi no c s dng"

    S dng m hnh ny khi ta c mt h thng trong mt lng ln thng tin c sinh ra phi c lu tr trong mt thi gian di. Ta cng c th s dng n trong cc h thng hng d liu trong d liu trong kho kch hot hnh ng hay cng c./

    u im" Cc component c th c lp vi nhau chng khng cn bit s tn ti ca cc component khc. Cc thay i xy ra mt component khng nh hng ti cc component khc. Tt c cc d liu c th c qun l mt cch nht qun (v d nh backup d liu c thc hin ng thi) v tt c d liu c lu tr cng mt ni. /

    Nhc im" Cc vn xy ra trn kho chung nh hng n ton h thng. C th khng hiu qu trong vic t chc cc giao tip thng qua kho. Phn tn kho trn nhiu my tnh c th kh khn./

    32

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Mt kin trc repository cho mt IDE

    Projectrepository

    Designtranslator

    Javaeditor

    UMLeditors

    Codegenerators

    Designanalyzer

    Reportgenerator

    Pythoneditor

    33

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc client-server

    vCc m hnh h thng phn tn ch ra cch d liu v cc x l c phn tn trn nhiu component nh th no. C th c ci t trn mt my n.

    vTp hp cc server c lp cung cp cc dch v c th v d nh in n, qun tr d liu, ...

    vTp hp cc khch hng triu gi cc dch v ny.

    vH thng mng cho php ngi dung truy cp vo cc server.

    34

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh clientserver

    Tn" M hnh client-server"

    M t" Trong mt kin trc clientserver, chc nng ca h thng c t chc thnh cc dch v, mi dch v c t trn mt server ring l. Khch hng l ngi s dng cc dch v ny v truy cp vo cc server s dng dch v./

    Khi no c s dng"

    c s dng khi d liu trong mt c s d liu chia s phi truy cp t nhiu ni. V cc server c truy cp t nhiu ni khc nhau, c th c s dng khi ti trn h thng thay i./

    u im" u im chnh l server c phn tn trn mng. Chc nng chung (dch v in n chng hn) c th c sn cho tt c cc khch hng v khng cn thit phi ci t ton b cc dch v. /

    Nhc im" Mi dch v l mt im n gy li v vy d b tn cng t chi dch v hoc li server. Hiu nng c th khng d on trc c do n ph thuc vo mng cng nh h thng. C th c cc vn v qun l nu server c s hu bi cc t chc khc nhau./

    35

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc clientserver cho mt th vin phim nh

    Catalogserver

    Librarycatalogue

    Videoserver

    Film store

    Pictureserver

    Photo store

    Webserver

    Film andphoto info.

    Client 1 Client 2 Client 3 Client 4

    Internet

    36

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc pipe and filter

    vCc chuyn i chc nng x l cc u vo v to ra cc u ra.

    vCc bin th ca phng php ny rt ph bin. Khi cc chuyn i l tun t, y l m hnh x l khi tun t m cc h thng x l d liu s dng.

    vKhng tht s ph hp vi cc h thng tng tc.

    37

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    M hnh pipe and filter

    Tn" M hnh pipe and filter"

    M t" Vic x l d liu trong mt h thng c t chc sao cho mi component x l (filter) l ri rc v tin hnh mt loi x l d liu. Dng d liu (pipe) i t mt component n mt component khc x l. /

    Khi no s dng"

    Thng s dng trong cc ng dng x l d liu ( c ng dng x l khi v x l giao tc) trong cc u vo c x l cc giai on ri rc to ra cc u ra tng ng./

    u im" D hiu v h tr vic ti s dng chuyn i. Kiu dng d liu ph hp vi cu trc ca ca nhiu quy trnh cng vic. Tin ha bng cch thm vo cc chuyn i l d dng. C th ci t theo kiu h thng tun t hoc song song./

    Nhc im" Format ca d liu truyn i phi c chp thun trong vic giao tip gia cc chuyn i. Mi chuyn i phi phn tch c php u vo ca n v chuyn n thnh u ra dng c chp nhn. iu ny gy kh khn trong vic ti s dng cc chuyn i hm m cu trc d liu khng tng thch./

    38

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    V d v kin trc pipe and filter

    Read issuedinvoices

    Identifypayments

    Issuereceipts

    Findpayments

    due

    Receipts

    Issuepaymentreminder

    Reminders

    Invoices Payments

    39

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ni dung

    1. Quyt nh chn kin trc thit k 2. Cc gc nhn v kin trc 3. Cc kin trc mu 4. Cc kin trc ng dng

    40

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc kin trc ng dng

    vCc h thng ng dng c thit k p ng nhu cu ca mt t chc.

    vV cng vic c nhiu im chung, cc h thng ng dng cng c xu hng c kin trc chung phn nh cc yu cu ng dng.

    vKin trc ng dng tng qut l mt kin trc cho mt loi h thng phn mm c cu hnh v iu chnh to ra mt h thng p ng cc yu cu c th.

    41

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    S dng cc kin trc ng dng

    vNh l im khi u ca thit k kin trc.

    vNh l mt checklist v thit k. vNh mt cch t chc cng vic ca

    nhm pht trin phn mm. vNh l mt phng tin nh gi

    vic ti s dng cc component. vNh l kho t vng bn v cc loi ng dng.

    42

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    V d v loi ng dng

    vng dng x l d liu Cc ng dng hng d liu trong x l d liu khi m khng

    c s can thip ca ngi dng trong sut qu trnh x l.

    vng dng x l giao tc ng dng d liu trung tm trong x l cc yu cu ngi

    dng v cp nht thng tin trong mt c s d liu h thng.

    vH thng x l s kin ng dng trong cc hot ng ca h thng ph thuc vo vic

    din gii cc s kin t mi trng h thng.

    vH thng x l ngn ng ng dng trong nh ca ngi dng c c t trong cc

    ngn ng hnh thc v c x l, din gii bi h thng.

    43

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    V d v loi ng dng

    vTp trung vo h thng x l giao tc v x l ngn ng.

    vH thng x l giao tc H thng thng mi in t; H thng t ch.

    vH thng x l ngn ng Trnh bin dch; Din gii lnh.

    44

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    H thng x l giao tc

    vX l cc yu cu ngi dng v thng tin t mt c s d liu hoc cc yu cu cp nht c s d liu.

    vT gc ca mt ngi s dng, mt giao tc l: Mt chui lin tc cc thao tc tha mn mt mc

    tiu; V d: tm thi gian ca cc chuyn bay t London ti

    Paris. vNgi dng thc hin cc yu cu

    khng ng b v dch v sau c x l bi mt b qun l giao tc.

    45

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cu trc ca ng dng x l giao tc

    I/Oprocessing

    Applicationlogic

    Transactionmanager Database

    46

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc phn mm ca h thng ATM

    Input Process Output

    ATM Database ATM

    Get customeraccount id

    Query account

    Print details

    Return card

    Dispense cash

    Update account

    Validate card

    Select service

    47

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc h thng thng tin

    vCc h thng thng tin c cu trc tng qut c th c t chc theo kiu cu trc phn tng.

    vy l nhng h thng da vo giao tc v tng tc vi h thng ny thng l cc giao tc c s d liu.

    vCc tng bao gm: The user interface User communications Information retrieval System database

    48

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc phn tng ca h thng thng tin

    User interface

    User communications

    Information retrieval and modification

    Transaction management

    Database

    Authentication andauthorization

    49

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc ca h thng MHC-PMS

    Web browser

    Reportgeneration

    Transaction management

    Patient database

    Login Form and menumanagerData

    validationRole checking

    Securitymanagement

    Patient info.manager

    Data importand export

    50

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc h thng thng tin da vo web

    vH thng qun l ti nguyn v thng tin thng l cc h thng da vo web trong giao din ngi dng c ci t trn web browser.

    vV d, cc h thng thng mi in t l cc h thng qun tr ti nguyn da vo internet m trong cc n t hng in t v hng ha hay dch v c chp nhn, cc n hng ny sau c ln lch giao cho khch hng.

    vTrong h thng thng mi in t, tng ng dng cha cc tnh nng b sung h tr gi hng trong ngi dng c th t nhiu mn hng trn cc giao tc khc nhau sau tnh tin chung trong mt giao tc n.

    51

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Ci t pha server

    vNhng h thng ny thng c ci t theo kiu kin trc a tng client-server Web server chu trch nhim giao tip vi ngi dng,

    giao din ngi dng c ci t s dng web browser;

    Server ng dng chu trch nhim ci t cc chc nng ng dng c th cng nh lu tr thng tin v truy vn yu cu;

    Server c s d liu chuyn thng tin t v n c s d liu v nm quyn qun l giao tc.

    52

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    H thng x l ngn ng

    vChp nhn mt ngn ng t nhin hoc ngn ng nhn to lm u vo v to ra mt biu din khc ca ngn ng .

    vC th cha mt b din gii thc hin cc ch dn lnh trong ngn ng c x l.

    vc dng trong cc tnh hung trong cch d nht x l vn l m t mt thut ton hoc m t d liu h thng.

    53

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc ca mt h thng x l ngn ng

    Sourcelanguage

    instructions

    Data Results

    Translator

    Interpreter

    Abstract m/cinstructions

    Check syntaxCheck semanticsGenerate

    FetchExecute

    54

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc component ca trnh bin dch

    vB phn tch t vng, ly cc token u vo, chuyn i chng thnh mt hnh thc trung gian.

    vBng k hiu, lu gi thng tin v tn thc th (bin, tn lp, tn i tng, ...) c s dng trong vn bn cn bin dch.

    vB phn tch c php, kim tra c php ca ngn ng cn bin dch.

    vCy c php l mt biu din cu trc bn trong m chng trnh c dch.

    55

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Cc component ca trnh bin dch

    vB phn tch ng ngha: s dng thng tin t cy c php v bng k hiu kim tra tnh ng n v ng ngha ca vn bn ngn ng u vo.

    vB pht sinh m : duyt qua cy c php v sinh ra m my tru tng.

    56

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc pipe and filter ca trnh bin dch

    Lexicalanalysis

    Syntacticanalysis

    Semanticanalysis

    Codegeneration

    Symbol table

    Syntax tree

    57

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Kin trc repository cho h thng x l ngn ng

    Syntaxanalyzer

    Lexicalanalyzer

    Semanticanalyzer

    Abstractsyntax tree

    Grammardefinition

    Symboltable

    Outputdefinition

    Pretty-printer

    Editor

    Optimizer

    Codegenerator

    Repository

    58

  • Nguyn Th Minh Tuyn Nhp mn CNPM

    Tng kt

    v Cc m hnh ca kin trc h thng ng dng h tr vic hiu v so snh cc ng dng, thm nh thit k h thng ng dng v nh gi vic ti s dng cc component.

    v Cc h thng x l giao tc l cc h thng tng tc m n cho php thng tin trong mt c s d liu c truy cp v cp nht t xa bi mt s lng ngi dng.

    v H thng x l ngn ng c dng dch vn bn t mt ngn ng sang mt ngn ng khc v thc hin cc ch dn lnh c th ca ngn ng u vo. Cc h thng ny cha mt b bin dch v mt my tru tng chy ngn ng c sinh ra.

    59