• 沒有找到結果。

The Feasibility Study and Implementation of ITRI SME-PDM on Microsoft .NET platform

N/A
N/A
Protected

Academic year: 2022

Share "The Feasibility Study and Implementation of ITRI SME-PDM on Microsoft .NET platform"

Copied!
56
0
0

加載中.... (立即查看全文)

全文

(1)

The Feasibility Study and Implementation of ITRI SME-PDM on Microsoft .NET platform

By Zheng-Nan Shi A thesis submitted to

Department of Computer Science and Information Engineering College of Engineering

National Taiwan University in partial fulfillment of the requirements

for the degree of master in

Computer Science and Information Engineering

2004

(2)

Abstract

…dû˝àSz ûÍ SME-PDM ß¹’eÜÍ$Tƒ, .NET «, 1

‚à, .NET «=1TXíÖáÔ4Z¾Í$^?D&ˆÍ$jZ4 SME-PDM Í$ÊTí¬˙2`XrÖ˚Ø, FJBÊ, .NET «,õTøPß¹’eÜÔ

$Í$, „pÊ .NET «,ÞõT|¥_Í$íªW4 d2}ÌHàSn?õT|

øP-Zpü, ¯¯$“ã¼íøP×,ñÍ$ Êõð¶}}ªœs_Í$5Èí^

?, ¥s_Í$·Uà .NET «, …b}u, .NET -ZÍ$DÝ .NET -ZÍ

$ BbêÛ, .NET -ZÍ$ÖÍªÝ .NET -ZÍ$ <rí^?, Oº?DéÍ

$yx!Z4, 7/Z¾J(&ˆÍ$DØkÍ$íµÆ J,¥<ql}&Í$í%ð .¢_àk PDM Í$, yªJPàÊLSÛbù“d•D-Z}&í×,ñÍ$

(3)

Contents

1 PDM Introduction 6

1.1 PDM Í$í– . . . 6

1.2 PDM Í$ . . . 6

1.3 SME-PDM Í$Ü . . . 6

1.3.1 qlÜc¯€Ž (Design Integration Management Service) 7 1.3.2 …−„c¯€Ž (Version Control Service) . . . 8

1.3.3 öŽ¼˙c¯€Ž (Check Design Control Service) . . . 8

1.3.4 ql‰yc¯€Ž (Design Change Control Service) . . . 8

1.3.5 ùª−c¯€Ž (Project Schedule Control Service) . 9 1.3.6 ›°Çê=1€Ž (Collaborative Development Environ- ment Service) . . . 9

2 SME-PDM Í$-Z 10 2.1 Í$-ZŠ?zp . . . 10

2.1.1 Layer4: Uà6Þµ (Web Server) . . . 10

2.1.2 Layer3: Š?_ µ (PDM Activity Module) . . . 11

2.1.3 ˙‰y’eÜ_ (Engineering Change Control Mod- ule, EC) . . . 11

2.1.4 …−_ (Version Control Module) . . . 12

2.1.5 ÓeÜ_ (Bill of Material Control Module, BOM) . . 12

2.1.6 ÓKÞ·U‚Ü_ (Life Cycle Management Control Mod- ule, LCM) . . . 13

2.1.7 ùª−_ (Project Schedule Management Control Module, PSM) . . . 13

2.1.8 Layer2: XML j&µ (BizObject Framework) . . . 13

2.1.9 Layer1: ’e榵 (Database Server) . . . 14

2.2 81zp . . . 14

3 Ç, SME-PDM ž²Ñ .NET Framework « 18 3.1 .NET Framework Introduction . . . 18

3.1.1 Microsoft ¬ ,ñê½æ . . . 18

3.1.2 .NET Architecture . . . 19

3.1.3 Architecture . . . 19

3.2 SME-PDM xX A . . . 20

3.3 Ê .NET 2D SME-PDM óÉ5xX . . . 22

3.3.1 ASP.NET . . . 22

3.3.2 ADO.NET . . . 24

3.3.3 BizTalk Server . . . 24

3.4 SME-PDM ¯ªW4Ç, . . . 24

3.4.1 VB to VB.NET ªW4Ç, . . . 24

3.4.2 ASP to ASP.NET ªW4Ç, . . . 25

3.5 BizObject Framework ѐWzpž²¼˙ . . . 25

(4)

4 PDM Í$˙qlõT 27

4.1 Í$Çê¼˙ . . . 27

4.2 õTŠ?}& . . . 28

4.3 -Zql . . . 28

4.3.1 .NET N-tier -Z–1 . . . 29

4.3.2 PDM Í$-ZUà Microsoft .NET . . . 30

4.4 Uà6Þµ(Web Server Layer) . . . 31

4.4.1 ASP.NET . . . 31

4.4.2 User Interface Design . . . 33

4.4.3 Cache . . . 35

Application Cache . . . 35

Session Cache . . . 35

A Cache Example . . . 35

4.5 Š?_ µ(Activity Module Layer) . . . 36

4.5.1 Simple Object Access Protocol Introduction . . . 37

XML introduction . . . 37

Web Service . . . 38

SOAP message architecuture . . . 39

SOAP Example . . . 39

4.5.2 Interface Module . . . 40

An Interface Module Example . . . 40

4.5.3 Component Module . . . 41

4.5.4 Entity Module . . . 41

An Entity Module Example . . . 41

Z¾Í$&ˆ£Ü . . . 42

4.6 ’e榵(Data Access Layer) . . . 43

4.6.1 Data Access Component Module . . . 43

Data Access Component Example . . . 44

4.6.2 ADO.NET Introduction . . . 45

Data Access Example . . . 45

4.7 ’eéµ(DataBase Layer) . . . 45

4.7.1 }&¦)Í$’e[ . . . 45

4.7.2  ’e[D’e[5ÈíÉ© . . . 47

4.7.3 ’eéÍ$-Z . . . 48

5 Experiments 50 5.1 Ý .NET -Z -Í$Ü . . . 50

5.2 Experimental Environment . . . 51

5.3 Experimental Results . . . 52

6 Experiences 53

(5)

List of Figures

1.1 ql܀Ž«Tí–1_ . . . 7

1.2 ›°Çê=1€Ž-Z . . . 9

2.1 SME-PDM Í$-Z . . . 10

2.2 EC Module ˙¼˙Ç . . . 11

2.3 Í$épåÞ . . . 15

2.4 Í$-Z . . . 15

2.5 Í$ép(åÞ . . . 15

2.6 Í$-Z . . . 15

2.7 Uà6²ÏhÓeK[À . . . 16

2.8 Í$-Z . . . 16

2.9 Uà6hÓeK[ÀB’eé . . . 16

2.10 Í$-Z . . . 16

2.11 hÓeK[ÀêA . . . 17

2.12 Í$-Z . . . 17

3.1 .NET -Z–h . . . 19

3.2 SME-PDM Í$xX A . . . 20

3.3 SME-PDM Í$óúÊ.NET 2óÉxXÇ . . . 22

3.4 ASP.NET -Z . . . 23

3.5 Web service Overview . . . 23

3.6 ComException Error . . . 26

4.1 .NET $“@àÍ$-Z . . . 29

4.2 PDM -ZqlÇ . . . 30

4.3 ASP ÏW¸W, Uà6pâ±£E . . . 32

4.4 ASP ÏW¸W, /€ÂÏW Script, 1fÏW(!‹ . . . 32

4.5 ASP ÏW¸W, Uà6Z½ÂQY*/€Âfí HTML !‹ . . . . 33

4.6 ASP ÏW¸W, Uà6Z½Âý HTML !‹ . . . 33

4.7 Uà6²¦Uà)4²á . . . 34

4.8 DataGrid Ê)4_Uà DropDown List . . . 34

4.9 UàDropDown List ²¦;bqìí,¶Æ . . . 34

4.10 ,¶ÆZ‰(íÕG . . . 34

4.11 Í$€áÕG . . . 36

4.12 Uà6George épÍ$ . . . 36

4.13 ßÞApplication Cache . . . 36

4.14 ßÞSession Cache . . . 36

4.15 Uà6×Ç,Session Cache ¾Ü . . . 36

4.16 Actvity Module Layer Architecture . . . 37

4.17 WebService æ˜-Z . . . 39

4.18 SOAP Message Architecture . . . 39

4.19 Data Access Layer Architecture . . . 44

4.20 Database Table list . . . 46

(6)

4.21 The relation between Departments and Roles Table . . . 47

4.22 Database Structure . . . 49

5.1 Ý.NET –1Í$-Z . . . 50

5.2 õð!‹ . . . 52

(7)

List of Tables

5.1 Í$Uà,ñxX’e . . . 51 5.2 wñºe . . . 51

(8)

Chapter 1

PDM Introduction

…ıÜs_3æ}Ñ Product Data Management(PDM) í!…–1£ ûÍÇ êí PDM óÉ,ñ SME-PDM ‡ú PDM !…–1¶}ízp}Àí·H PDM Í$í–£ PDM Í$, 7Ê SME-PDM ÜjÞ, Bb}ú SME-PDM íŠ?

Tø_Ì`ízp -Þdı¡5 ûÍ SME-PDM `çdK[1]

1.1 PDM Í$í–

ß¹’eÜ (PDM) |o–ÄÊ1985, o‚uUàÊNØ “ çvšßt− (Boe- ing) ı?ŽO¬ í%ð dK’e 0§ûê, Ošßt−êÛ-HÛï:

• ’e¾£læ˛ÈØ×

• ’e½©.q

• ’e³ÜC.êc

• ̶vƒ®dK’e5^…

• ’e5y‚àgMQ

šßt−Ñ7j²J,½æ1T¯’ey‚àgM, šßt−Ð/Ip¬ 400 N1j

0ß¹’eÜÚä“Í$ (e-PDM), 1;WÔ$Í$‚àÚä“xXdKu, AŠ ˱Q 25% íìœÇêv˙ ¡V«É6¢–ø³ PDM êã, wŸÄuÄÑÅq$“

%Ð6˛<…ƒß“×=15·œ, Úâ`¨c¯?‰žÑhß¹ûê5c¯?‰

1.2 PDM Í$

ß¹’eÜÍ$ (PDM) uJß¹Ñ2-íûê›° T« ¤Í$ªJ}é ½Õ ß¹Þ·U‚2Fß|5xXdK Çf [À, 1J" }&ß¹Þ·U‚qFßÞ5 óÉ’m ß¹’eÜÍ$ªfn’mÏà, Tôß¹¹” òsqlvÈ, JT¯ß¹

’e5y‚àgM PDM Í$%¬D$“’Äd• (Enterprise Resource Planning, ERP) Í$íc¯, ªøß¹’ežƒc_$“’m“Í$, ¹êA*ß¹ûêƒÞß

`¨»íÜ, |õÛêcíß¹Þ·U‚Ü (Product Lifecycle Management, PLM)

1.3 SME-PDM Í$Ü

…Ü ûÍÇêí PDM Í$, Bb˚…Ñ2ü$“’eÜÍ$ (Small and Medium Enterprise, SME-PDM) ¤Í$u ûÍ%¬ÖVÊ$“äR PDM í-)7û ê, uø__¯Åq2ü$“5ß¹’eÜÍ$ J%íß¹’eÜÍ$íûpÛb

(9)

Ip×¾ívÈDA‰A…, úk2ü$“7kÊ¥jÞíI’%%œÑãF, OÓO$“

úkTô¬‰íb°5-, $“ûp PDM øu#“$“¬‰í½b x

ß¹íÞ·U‚3b¨ÖîEÛ° ql¼¨ `¨DÞßÜ »D»(€Ž£

ß¹YJ0, 7‡ú_¼¨Ñß¹íÇ꼨 ;W Alan MacCormack[4] û˝$

l, û꼨ø2cñß¹í¹”£ àcñA…í80% ĤàSUà^íÜj¶

D’m$¯ xVTÜql¼¨FßÞí®é ˙’m, úkT¯ß¹¬‰4uÝ

½bí

øO7k, ß¹’eÜÍ$ (Product Data Management System, PDM) ªJ j²ql¼¨íÜÛ°J£×¶}í’mc¯í T ñ‡ÅqÕ˛rÖ×$“ù ª PDM Í$dß¹íûêÜ, 6úk PDM Í$T¯ß¹ûêí^06·€M'ì íG OuùªøPŠ?êcí PDM Í$úk2ü$“7k1.uêr¯¯A…^ï í, ÄÑ PDM Í$*ûpƒÍ$0 Š?î„“J£Í$,((í&ˆ, ·Ûb$

“3Ip.ýíA‰D%‘ ÇÕ, ñ‡$“`¨Þ߲%ù“} í², Ĥ,-Á í$“È›°Çêß¹J±Qß¹A…íº˛nÚäõ Oñ‡1³ø_êc/ûp A…Qí PDM Í$VX¶$“ªW›°ûêíÜ Ĥñ‡2ü$“ªJUà ûÍ Çêí2ü$“’eÜÍ$, ÄÑ SME-PDM uø_úk2ü$“VzA…œÑQî, 1/Š?_àíøáß¹

-ÞBbÜ SME-PDM í3bŠ?, d2}As_3æ, }zpqlÜc¯€

ŽJ£›°Çê=1€ŽíŠ?

1.3.1 qlÜc¯€Ž (Design Integration Management Ser- vice)

ql܀Ž3bÊTXß¹ql’mÜóÉŠ? qlÜc¯€ŽíŠ?ûá}

u…−„€Ž qlöŽ¼˙€Ž ql‰y܀Ž£ùª−€Ž d…−

„€ŽcàVÜql’mí…, dqlöŽ¼˙€ŽcàVÜql’mí¼Žöð’e

¼˙, dql‰y܀ŽcàVÜql’m‰y’m, dùª−€ŽcàVÜûê ùªŠ? J%Ê×$“Uàí PDM Í$2n¥<€Ž, úk2ü$“Cu øOí_A7kùª×$“Uàí PDM Í$%%u_’½íŠV ÛÊ SME-PDM Í$TXdqlÜc¯€Žcí–1 $“CUà6ªJYW$“íqlܼ˙CAÐ íÛ°N¬æÒæ˜Uà SME-PDM Í$FTXíql܀Ž, 1Žâ€ŽUà_

V±Qûp PDM Í$íA…, Ç 1.1 Ñql܀Ž«Tí–1_

internet

SME-PDM provider DB Server Person

Flat File Enterprise

Figure 1.1: ql܀Ž«Tí–1_

qlÜc¯€Ž–1?DõÛ±Q$“A…DT¯ß¹¬‰íè5Éœ, ÊkF

Š?€ŽíTX·bUà6.°í–}, à¤n?ü\TX_¯í€Ž#.°Û°í

$“ñCuøOíUà6 ÇÕ, YWUà6íÛ°DÛ°Õ”.°, Í$ql܀ŽÈ íŠ?ªJóc¯, ŽJTXy˜í€Ž#Uà6 Í$c¯j¶ªJYWUà6íÛ

°>âè½ÈÑVc¯q0, 1/ªYW$“íÛ°ªWGº0J®ƒö£±Q$“í UàA… J-zpql܀Ží®áŠ?€Žqñ

(10)

1.3.2 …−„c¯€Ž (Version Control Service)

…−„c¯€Ž?TXql¼¨í’m…‰yÜ Êß¹íql¼¨, $“íql¶

Æ}ÄÑß¹í–1ßÞrÖíqldK, 7Êß¹ql¼¨í¬˙2, ß¹ql’m}Ä Ñ/<ÄÖí‰y7Z‰, WàîEÛ°Z‰Cß¹ql.GÄÖ àƒß¹íql’

m, 7U)ql’m.°í…ßÞ úk×ß¹Ç꼨íù, rÖ1Wíqld K}Ê°vßÞ, qldK6ª?°vʉy, Jql6¦).£üí…dK’mø}¨

Aª,íôb, Ĥ$“Uà…−„c¯€Žúk&ˆql’mí£ü¦)"úí 6Œ

…−„c¯€ŽFTXíŠ?ª}As×é, }Ñ„…’m£…’mR¦Š

?, zpà-: „…’mŠ?, péGæ (Check in) |é^Z (Check out ) 

…êW (Release) Z (Revise) J££ (Official) Š? ÇÕ…’mR¦Š?

, ¦)|h£ (Get latest release) ¦)|h (Get latest revision) …‰y v˙e (Revision history) £feD‰y’m&ˆŠ? $“@à¥<Š?Êq lÜ,, ªJ^í¦³ql’mí…, ÁýÄ’m…í½æ¨Aqlªíôb

1.3.3 öŽ¼ ˙c¯€Ž (Check Design Control Service)

çql’eƒ/øêAõv, öŽ¼˙c¯€ŽàV²ìql’eu´£üC¯¯qld

¸7øOqlöŽ¼˙׶}·uUà[À, YÎ[Àqì2íöŽAº¼Žßå, Yå f¼#©_öŽAºªW’eöŽíT

öŽ¼˙c¯€Ž†TXø_Úä“í¼˙Ü=1, Uà6ªJAWì2 T¼

˙, ÄѤÍ$TXÇ$“ (Uà Microsoft Visio x) í¼˙ì2Š?#Uà6ì2 Uà 7ʼ˙9K¦øjÞ, Í$uN¬ E-mail íjV¦ø¼˙í¡D6J£dK íT6, 6ªJN¬Í$í¹vm7€ŽVf], JTX£v/0§í¼˙]£€Ž

ÊöŽ¼˙€Ž2FTXíŠ?3bÇ$“¼˙qì ¼˙ TiHN» 9K¦ø qì HÜAœ„ öŽv˙J" 7ql’eCdKªp¼˙íj†ªJN¬Úä[

ÀH£CuòQøql’eJ2’ej£p¼˙52, wÈí¦ŸªJYWUà6í 3UC$“íÛ°7ì øO7k, ql¼˙Úä“×·Ûb/<˙íî„“, ĤÊû pöŽ¼˙€ŽvÛbè½ÈÑ»ºn?ªœß퀎¹”

1.3.4 ql‰yc¯€Ž (Design Change Control Service)

çql’e¦¬êWöŽ(, Uà6.?DL<‰ql’eíÕG 7çUà6Ûb‰y

˛%êWí’e, ÌuhÓ ^ZCutη.âb%¬ql‰yí¼˙C˚5Ñ ˙‰

y (Engineering Change, EC) üw(n?\‰y, ¥šíñíu$“ı?DN¬Í

$¦³ql’eí‰y

øOql‰yí¬˙ª}Ñs¼¨, }Ñql‰y (Design Change Request, DCR)

£ ˙‰y (Engineering Change Request, ECR) çUà6Ûb‰yql’ev.â lT|ql‰y (DCR) íÛ°, 1zpÛb‰yíŸâJ£F;b‰yíáñ ʦ¬

öŽ(âql‰y„AºßÞ ˙‰y·I (ECR), 1ê»#óÉ튍Aº çF

í ˙‰y·IêA5(, yê|¦ø#®óÉÀPDAº1êAc_‰yí˙å

Êql‰y€Ž23bTXql‰y’mí„ ÏWÕGJ"J£ÏW!‹í$l

Š? 7Êql‰yöŽ¼˙jÞ, †uc¯öŽ¼˙€ŽVTXöŽ¼˙Š? !…,q l‰y€Žª}Asé, }Ñ„“J£î`“‰y܀Ž, s6íρ}zp à-:

„“‰y܀ŽuÍ$TX„í‰y¼˙qìÍ$, Uà6ªJYWÛ°ªW¼

˙íº0qì ç‰y¼˙öŽ¦¬v, Í$}A Uà6FNìí‰y·I, 1ê¦

ø#‰y·I,F²ìíË6, JÏW‰y·IF-5qñ

î`“‰y܀Ž, 3bué$“퓎TÜÔ4‹pql‰y€Ž52, U)€Ž

?D¯¯$“ºª7T¯ºí^0 øO7k, $“àÛUàî`“‰y܀Žv,

$“Ûbùp×¾íè½ÈÑ, ÄÑql‰y¼˙%%ÛbFÀPí5¾, /}æÊ/<Ö Ô퓎TÜj4 à‹Ê›°ûêí=1v, î`“‰y¼˙†ÛbªWF$“í¼˙c

¯7¤¶MíõT, .ââè½Èчú$““ŽÛ°ªW}&1õTCu|c|¯_í Š?X#$“Uà

(11)

1.3.5 ùª−c¯€Ž (Project Schedule Control Ser- vice)

ùª−c¯€Ž3bŠ?uù0 hÓù’Ä£ T0Š? ùª

−c¯€Ž? ø_AŠ/^0íù, ¤€ŽªJ^d•ûê T9á, Uù

Ü6ªJ¯Ü T}»/üõ¦−ûêª $“UàN¬ùª−c¯€Ž, ªà V.ŒµÆíù5ÏW, U)ùܺ¦³FÏWùí®á, 1úkª?íôb T|£v¥@D²µ, UùíRy‹ß‚

1.3.6 ›°Çê=1€Ž (Collaborative Development Envi- ronment Service)

ñ‡$“Ñ7b±Qß¹íÞßA…D}àêÔ, 7øß¹¶}qlN¬ãÕíjD¯

¼ø°ªWß¹íÇê J$“N¬¤øjVªWß¹Çêv, $“.âÞúí½ æu’mu½æ£àSªWûê−s_¶} ÊJ‡ÄÑ$“í’mÍ$í¥£4œ ò£Ì_çCgP¯Üí.ŒÍ$, FJ$“׶}íÜ3b´uN¬GíjVª WóÉí¼˙T SME-PDM Í$TX›°Çê=1€Ž, TÑj²¥_½æíj

¶ ›°Çê=1€ŽíÍ$-ZàÇ 1.2 Fý

B Company A

Company

DB DB

PSfrag replacements

’mí>²

¼˙c¯

ªí−

Figure 1.2: ›°Çê=1€Ž-Z

›°Çꀎúá½õ}u’mí>² ¼˙c¯£ªí− ’m>²jÞ,

$“Èí’m>²Uàô.™pxk (Extensible Markup Language,XML)[5] 

XML uñ‡$“ä|Uà·H’eíø, $“Uà XML ªJ'jZés_.

°íÍ$T’m>²

ʼ˙c¯jÞ, SME-PDM Í$Uà2,ñ (Middleware) ªW$“Èíc¯

2,ñuuJf]£TÜm7Ñ3í,ñ-Z 2,ñí–1éNæ˜,f£í’e

¥¨, É.¬%¬2,ñê£í’e ¯ªœµÆ, ©°m7}®Aí™æ Å×ü

£wF®®ší’mD 2,ñŠ?ªJ3/Níøm7f]#ÛbQY í˙Í$, QY«íÍ$.â¿©ø_CÖ_ä− (Channel), ¥š2,ñÿªJN

¬¥<ä−, zm7f£#QY« SME-PDM Í$ÿuN¬¥<ä−ªW$“Èí¼˙

c¯

ʪí−jÞ, SME-PDM Í$c¯5‡Tƒííùª−€Ž¸Í$’m

>²xX ’m>²xXªW$“’e>²5‡, Ûbú’m|DpªW}&Dq ì’míp|.âú$“È›°û꺍FÛí’mªW}&(, Bbn?ø−

@vàSqì êA’eíqì(, Í$øYWqì, AkNìívÈC9Kí

¾, ó’mjKªW’míf£DR¦ úkvÍ$íUà67k, ÉÛbYWF)í Õ¶’mªW²µ‡i, .âI‘‰DvÈ cÜD -Fb>²í’e, 1ª°vúÖ _$“ªW’e>²íT, òsTÜvÈÁý˜ÏíêÞ

$“Êûp SME-PDM Í$v, íl.â $“ȍí¯TN, 1k¤N2 ì2›°¼˙í’m_, ¨Ö’e!ZJ£f ÇÕÂj.â¿ì˜Ï@µI,

<¹çÏW‚ÈJLSí˜Ï(¨ÖÍ$ÏW˜ÏJ£ÏW$“j4Fû_í˜Ï) |Û vÂjÍ$vàSTÜ, QOªWqìD$“j4íî„“J¯¯›°NF¿ìíqñ

øO7k, àS¿ìÂjí›°¯TNøuûp¤ø€Ž|×í‘D

(12)

Chapter 2

SME-PDM Í$-Z

Ê…øı2}Ü SME-PDM Í$-Z, 1}ÅH A¤Í$-ZíjKŠ? ¤Í

$-Zí˝áuJf$íúµ-ZÑ!€, 1‚àf$úµ-Z‹JZG7A … ı|(}Uà81zp, é×ðnj¥_Í$uàSÏWí, ÊÍ$ÏW¬˙2, àSDÍ

$-Zóú@

2.1 Í$-ZŠ?zp

SME-PDM Í$-Zí˝áuJf$íúµ-ZÑ!€, y‹,J XML í–1Z G7A F‚íúµ-Z¹uøÍ$íŠ?YwLŽ}ADUà6íUà6Þµ

Š?Ž-íj4TܵJ£’eæ¦D>qTÜí’eTܵ ŽâÀUíì2äì©ø µíLŽ, ]ª“Í$í&ˆ4, úk„VŠ?ô.í 4?×ÙíÓ‹ 7 SME- PDM 6u!kúµ-ZFô.Çê|VíÍ$, Dúµ-ZF.°, SME-PDM uø_ûµ-Z à2.1 FýÑ SME-PDM 5Í$-Z Êc_Í$-Z2, ’ek®

µ5Èíf]3bu@à XML TÑ’m¨_í!€ 7@à XML íóÉxXVÇ êÍ$ª“rÖJ%wÑu˚Øí’eTÜ, ª7Ó‹Í$í ìDòsÍ$íÇê v˙ Ç2®µFŠíLŽÅHà-:

Web Server

BizObject Framework DB Server PDM Activity

Module Layer4

Layer3 Layer2 Layer1

XML

Client Browser

Figure 2.1: SME-PDM Í$-Z

2.1.1 Layer4: Uà6Þµ (Web Server)

Uà6DÍ$ǦDí−uUà6Þµ …µxXu‚à Microsoft Active Server Pages (ASP) xXŸA, BbUà¥xXªJŸ|GæÜ, éøOUà6ªJDÍ$

ßލ ASP ÏWí=1ªJUà Microsoft Internet Information Server (IIS) C Personal Web Server (PWS) sæÜ3œ ASP uøòåí˙xk, ñ‡D…

ó°Š?í˙xk PHPPerl. . .  òåí˙xkDøOBbUàÛb)åí

(13)

˙xkÏWj.°, Bb|Uàí C xkÿuø)å˙xk )å˙x kíÏWjuUà)å (Compiler) ø˙{ž²AœÂòQªQ§íœH{, œÂ yÏWœH{ 7òå˙xkuÔvxkíòå (interpreter) Vd˙{íå, 1âòåÂH˙{…™VÏWbdíFíT FJòå˙xk¦ÏW^0

%%u.à)åxkí

…µŠÍ$’eí×Û, 1/ÏWÍ$DUà6íóÉŠ? Uà6‚àZ½Â

©QƒUà6Þµ, ¤ÞµQ§Uà6íÛ°ÏWóÉíŠ?, 1éUà6×);ø−

í’e w3bíTœ„Ñ:

• Q§Uà6íÛ°ÏWóÉíŠ?

• f]âŠ?_ µ|í!‹

• ⇫í˙N¬ãlì2CuGßÞí XML ’e|¸…, 1ø’ež²(

|ƒîE« 7Ê XML ’e2ΨÖÍ$FkÛí’eÕ6¨ÖDUà6

í¶}

2.1.2 Layer3: Š?_ µ (PDM Activity Module)

…µÑÍ$Š?Ž-, ŠÍ$2Fí¼“j4Š?_  ÊŠ?_ µ2íŠ?_ ¨ Ö ˙‰y’eÜ_  …−_  ÓeÜ_  ÓKÞ·U‚Ü_ £ù

Ü_ 

ÊŠ?_ µ2íŠ?_ ®ùÆíŠ?O˛¤È¢›°¯TíÉ[ Š?_

íTœ„3b@VAk Web Server íãÊ7ùêT, CuVAkwFÊŠ?_

µ_ íãÊFßÞíT, Š?_ µ}YW…™«íÛ°7ãʵí BizObject Framework Layer , y* BizObject Framework Layer ¦)í’e‹J«, y|

|(«!‹

…µ23bí_ Š?·Hà-:

2.1.3 ˙‰y’eÜ_ (Engineering Change Control Mod- ule, EC)

˙‰yÜ_ [2] 3bíŠ?uÜß¹í ˙‰yóÉdK, ¨ÖhÓeK (Bill of Material, BOM) C~À eK (BOM) ^ZC~À Çd^ZC~À ß¹dz ß

¹qlÇ. . .  ÄÑß¹ÊÇêí¬˙2, ØnÄÑø<.üìÄÖ퉍, .â^ZŸ Vß¹ql’e duîEÛ°Z‰ Ñ7±Q`¨A…C±Qî€A…ÄÖ, ·ª?

¨Aß¹ql’eZ‰

PSfrag replacements Çá

½æõÊÕ T|‰yÛ°

‰y|Œ T|j²j

õl‰y êA

öŽ½æõ öŽ‰yÛ°

öŽj²j

öŽ/ð„‰y!‹

êc¼˙

q¼˙

Figure 2.2: EC Module ˙¼˙Ç

(14)

ç ˙‰yóÉdK¦¬êWöŽ(, Uà6.?DL<‰ql’eíÕG 7çU à6Ûb‰y˛%êWí’e, ÌuhÓ ^ZCutη.âb%¬ql‰yí¼˙C

˚5Ñ ˙‰y (Engineering Change, EC) üw(n?\‰y

Ç2.2 Ñ ˙‰yÜ_ ˙¼˙Ç, *¤Ç2ªJÀUnj ˙‰yÜ_ íÏ W¼˙, 7/Ê©ø_¼¨, ·.Ûb%¬öŽ¥_T, ¥šªJé©_¼¨·?Düõ dƒ, 7.ñq|˜ ¤_ TX7s ˙‰yÜí_, øuq¼˙, TX7ø _Z0§íj¶, éUà6ªJà|0§£üíj^Z ˙‰yóÉdK, Çøj

uêc¼˙, TX7ø_œÑÃãüõí¬˙, ¨Ö7‰y|Œ£T|‰yj²j, é Uà6^Z ˙‰yóÉ’eƒ®œÑê1í˙

2.1.4 …− _ (Version Control Module)

…−_ 3bíŠ?uéUà6ªJ−„ql’e…, éUà6.}¦)˜Ïql

’e, 7û_$“íß¹Þßôb Uà6Uà…−_ , éUà6ªJJN^Zql

’ev˙, 1éUà6&ˆ|hql’e… wñíuÁýÄÑ’myhF¨Aí˜Ï, d¸’myh«T˙å, ªªWv˙a−DJ" ÄÑ…퉍úkß¹íql¼¨7 kuÝäõí, é¡DAºø−óÉíql’e˛%\yh, úkql7k4uݽb í, ÄÑñ¦)£üíql’m, n?&Mqlí¹”£‹§ß¹íÇê, úkqlAº 7k, £ü/¹ví’m, ªJêµ|×ívÈ^ï úkqlÜ7k, ªJ^í±Q

˜ÏíêÞ, T¯ß¹í¹”J£^±QA…Ó‹ß¹¬‰

…−„_ FTXíŠ?ª}As×é, }Ñ„…’m£…’mR¦Š?

„…’mŠ?péGæ (Check in) |é^Z (Check out ) …êW (Release)

Z (Revise) J££ (Official) Š? …’mR¦Š?¦)|h£ (Get latest release) ¦)|h (Get latest revision) …‰yv˙e (Revision his- tory) £feD‰y’m&ˆŠ? $“@à¥<Š?ÊqlÜ,, ªJ^í¦

³ql’mí…, ÁýÄ’m…í½æ¨Aqlªíôb

2.1.5 ÓeÜ_ (Bill of Material Control Module, BOM)

ÓeÜ_ 3bŠ?u‡úÉKD K (,˚eK) í’edÜD&ˆ ¤_ DÓK Þ·U‚Ü_ T7c¯, çUà6Ûb&ˆeK’e, Wà^ZChÓ, Uà6/Ÿê eK[À(, ÓeÜ_ }UàÓKÞ·U‚Ü_ , z[Àf£#ÛböŽ¤[Àí Aº eK[À%¬µµöŽÉµ(n?uhÓAŠ

ÓeÜ_ í¶Š?à-:

• &ˆeKhÓ ^Z tÎCheckIn É:Ç

• eKC~[ÀÍThÓ ׎ ^Z tÎ

• eKÉ:’mŒÉ

eK˘k PDM Í$ÓKíøáé, ĤeKÓKDdKÇÞéN, °šËÓKí’

mDWÑ eKÓK3bp“$“2ß¹õñ텁’m, dĆÿuø$“íß¹, µ p“…í[À}p-Ćí‡e $Õ£Åd [ÀªJqìDvß¹Fú@ƒí qldK, duĆíÇÞ$Õ’e, óÉd’mdK ˙ÇÞ’e -ÞFÑe KÓKí˘4£É©’m:

• ÓK˘4: eU e± ÀP d

• ÓKÉ:’m:

– eKDeK5É:(ß¹!Z) – eKDÇÞ5É:

– eKDdK5É:

– [ÀDeK5É:

(15)

2.1.6 ÓKÞ·U‚Ü_ (Life Cycle Management Control Module, LCM)

ÓKÞ·U‚Ü_ 3bŠ?uTÜD¼˙óÉíFŠ?, ¨Ö ¼˙ ¼Ž ‹

¼¢ ¤ž $“·rÖéí[ÀJ£®[ÀFú@í T¼˙, J‡t−$“

·uUàA‰f£1öŽdK, Øn¨‘A‰’Ä, 7/UàA‰£ö6}¨‘vÈ, ¢ .D£víÿõ SME-PDM TX[ÀA“í¼˙œ„, U® TLŽ)JÊøvÈ

>G#£üíATÜ, °v[Àf¼¬˙2FêÞí9K6ªJ\p“-V *ß¹í–1

¼¨ƒß¹qlêAêW, ¦Ûb%¬rÖ××üüí˙å, N¬¼˙ÜFTXí®á Š?, −ß¹í®_¼¨2í TÕG, é®_¼¨íªWªJ)ƒyßí−

2.1.7 ùª−_ (Project Schedule Management Con- trol Module, PSM)

ùª−_ ªJ^0íd•ù, 1¯Üí}» T/üõ¦−ûêª øO$

“ªJUàùª−_ çA ùí.Œ x, éUà6? AŠ^0íù

 øOùv˙d•0ª}Aú_¥ :

1. YWùñ™ -ùAº1qìùËí’Ä¿ìùÇáDêAn‚

2. d•ÏW T}áCu äù, 1q ©ø_ T9áíêAn‚ Tª˙

Aº T}»J£ªŒŽõ

3. óùªW T¦øDŒŽ

Êùª−_ 2TXø_Àíù0ÞV ù1qìùAº, 7Ê ª²ìíAºjÞ, ùAºuÅwkÍ$qíUà6 äù jÞ, ù0Þ3 bJcÕ-Zíj×Û, JjZéUà6â×áƒáíjªW Tíd•, Êqìê

©ø T9áíóÉqñ(¹ªªWùí–á, Í$ÇáªWùív˙−, 1¦øù

óÉAº

Êùª−_ 2¦øíT}Asé, ¹(,¦øJ£ÚäsK¦ø, 7T~í ä0DŸbªJâl•íÜ6qì ùkÏW‚ÈÛbyZT“áñvb·<, Í$ø ̶‰y˛êACu˛ÇáÏWO„êA/„ƒ‚íáñ wF턪Wáñ†ªJL<

^Z, OT“n‚í–áâJ^Zn5(Çá, Í$}YW^Zí!‹ªW T½}»í

T ÇÕùܺDùAºíiH}6óçíÀU, ܺÛbªWcñùíqì, OùAºí TcÛbYW T¦ø,í»IêA T9á, 1ÑêAÕG¹ª Bk cñªíÑJ£óÉí¦øîâÍ$AÏW

ùv˙܀ŽFTX5¹v/ò4í@àÍ$ªàV.ŒµÆíù5ÏW, U)ùܺ¦³FÏWùí®á, 1úkª?íôbT|£v¥@D²µ, Uù

íRy‹ß‚

2.1.8 Layer2: XML j&µ (BizObject Framework)

…µí3bñ™uTXqlø_4í’e!ZD’e_, éÍ$íÇêD&ˆyÑñq

Ñ7®A¥_ñ™FJ BizObject Framework Uà XML TÑc_Í$ífm7

, éc_Í$ím7f£ ì, ¥š.OªJ“,µ_ qlíØ, ´ªJDw FUà XML m7íÍ$c¯

…µí3bŠ?u@Š?_ µCUà6ÞµÛ°, z’eé2í’e¦|1Uà XML ’eTf£ím7, |(…µøm7 (XML ) f£#Š?_ µCUà6

Þµ ÇÕ, …µ6ŠQYVAŠ?_ µCUà6Þµím7 ( XML ), 1 zm7ž²Ñ’eéÛbím7, BizObject Framework yú’eéTÍT

…µ3bñíué,µUà6.ÛbnjàSú’eéTTÜíxX, ¹?Uà Bi- zObject Framework 2rÖqí’eÍTƒú’eéTÍT ÄÑ’eæ¦T“−

£7'ÖµÆí‡æ, du SQL x¶ àSTÜÉ©’e[, CàShÓ’e[T

ÄÑ’eæ¦T“−ƒØÖµÆíxX, à‹bé©ø_A·nj’eæ¦ql.ت

? BizObject Framework TXrÖqí’eÍTƒ, é,µql6?DJ|À

(16)

|0í§êAwFÛbíŠ? âk BizObject Framework -ZÖ íÔ4ªJ@à k®éí Web based @àÍ$Çê, 鮵íqlAºù·k®µFÛbíxX, 7.

ÛbV-àS榒eé Ĥ…µªJ“Š?_ µ£Uà6Þµ_ Çêql

Ê BizObject Framework 2Uà XML xXVªW’e_íqlD&ˆ, 1JÓ Kû²í–1VqlÍ$í’e_ /Ê BizObject Framework 2ø3bí’e_

}As×é, }Ñ·HÍ$2æÊí’e!Zí’e_, ˚Ñ“Ž’eé_ (Busi- ness Data Class, BDC), J£YW“Ž’eé_7ßÞ, àJ·Hø“ŽÕGí’

e퓎’eÓK (Business Data Object, BDO) w2“Ž’eé_ (BDC) ø N¬ BizObject Framework ú@ƒ’eéÍ$2í’e[, 7“Ž’eÓK (BDO)

†ú@ƒ[qí’e

’e_íqlÎ7.âbø’m^í!Z“Õ, °v6b5¾Í$í@àÔ4, q l_çí’e!ZøªU)Í$íê“, 1TôÍ$íô4 J-‡ú BizObject Framework 2í BDC J£ BDO í’e_íqldø¿pí«n:

BDC ’e_íqlñíuàV·H¼“í/øõñ Ô_Wäzp: BbUà BDC V·Ht−í¶Æ, ¶Æ±˚ ¶Æ“Ž·H£,¶Æ±˚úá BbªJz BDC ú@ƒ’eé2í¶Æ’e[hP, }u¶Æ±˚ ¶Æ“Ž·H£,¶Æ±˚

Àízp, BizObject Framework ªJN¬ BDC Ê’eé2“¨ø_¶Æ’e[

í<2

Ê BDO ’e_jÞ, BDO íqlñíuàVTX_ Š?íp |J£_

Èím7f]FÛ5!€’e!Zm7, ç@à_ Ûb’evªJN¬ BizObject Framework FTXí’eÓKR¦Þ¦) BDO BizObject Framework YÎ BDC í·H, *’eé2|¦Ö°’e, 1æA BDO ’m Uà¶ÆõWVzp, BizObject Framework YÎ BDC í·H)ø¶Æú_hP}u¶Æ±˚ ,¶Æ£¶Æ“

Ž·H, kuÊ’eév¶Æ’e[1z¶Æ2Ö°í’e¦|, Ê XML ím7

³Þ, àú_hPV·H¶Æ, 1z¦)íÖ°’eæ[Ê XML m72

âk BizObject Framework í BDC D BDO îuJ XML xXFZí’e_

, ¤’e_Î7ªJàVü\’e!Zí£ü4Õ, 6ªJÇ[VTÑÍ$șĒe

ž²Þ Õ¶Í$ªJYW BDC í’e-Z kž²í’e_, 1N¬ BDO J

£ BizObject Framework ø’ežªÍ$2 BizObject Framework 6ªJø’e _ž|ƒÕ¶Í$ SME-PDM Í$‚à¤ø«T_Vc¯$“q˛æÊí@àÍ

$, uøÝ^0/ ì4œòíj¶

2.1.9 Layer1: ’e榵 (Database Server)

…µuUàÉ©’eéÍ$ (Microsoft SQL Server 2000) !…, SME-PDM Í$

Ê¥_¶}3buæ[’e[, Ouúk’e[½ÈíÉ[1³Ê¥iTql, 'ÀÓ íÉàVæ[’e[ FúkÉ©4’e[íÍT·Ê BizObject Framework 2õTêA

2.2 81zp

%¬,zp SME-PDM Í$-Z5(, …3bíqñ}Ôø_ÍTõÒW, 1/z¥

_WäàSÊ SME-PDM ¥_Í$2ÏWíõÒ¬˙¸åÞ’e, êc“Ê…52

6}zÏW¬˙åÞDÍ$-ZóúÎ, éBb?Dy‹ínjÍ$í-ZDÏW¬˙

ÛÊcqBb;bhÓø°eK’e[3], J-}·HÍTÍ$¬˙2í©ø_¥ , 1 /Ê©ø_¥ ·zÍ$åÞû|V, ÇÕ6}ú©ø_ÇdêcíÜ, °vÊ©ø"Ç í¬iËø"Í$-ZÇ, ÊÇ2¿H¶}H[¤ÍT¥ FUàƒÍ$-Z2í¶}

øÇáUà6UàZ½Â©QB SME-PDM Í$, ¤vZ½Â2|ÛÍ$épåÞ àÇ2.3, ¥v`Uà6UàƒÍ$í Web Server Layer *Uà6Z½Â2?Dõƒ í, ÿªJwì…u˘k Web Server Layer f£ƒUà6Z½ÂíåÞ Web Server Layer ‚à Web /€ÂN¬ HTTP ¦m›ìf£ƒUà6Z½Â,Þ, Z½Âyz’

mž²AåÞ×ÛÊUà6k‡ FJñ‡Í$Uàƒí¶}u Web Server Layer

ÊUà6p×Uò{(ép SME-PDM Í$, Ç2.5 ÿuUà6épÍ$(íø _åÞ ÊUà6épÍ$í¬˙ÿ˛%UàÍ$2ÖµŸŠ? Uà6épÍ$í¬

(17)

Figure 2.3: Í$épåÞ

Web Server

BizObject Framework

DB Server PDM Activity

Module Layer4

Layer3

Layer2

Layer1

XML

Client Browser

Figure 2.4: Í$-Z

Figure 2.5: Í$ép(åÞ

Web Server

BizObject Framework

DB Server PDM Activity

Module Layer4

Layer3

Layer2

Layer1

XML

Client Browser

HTTP

Figure 2.6: Í$-Z

(18)

˙à-, Web Server * HTTP ¦m›ì¦)Uà6í×Uò{, ¥v Layer4: Web Server Layer ãÊUà Layer2: BizObject Framework 2_ Š?, BizObject Framework yãÊUà Layer1: DB Server DB Server *’eé2¦)Uà6í×U ò{’m, 1øUà6’ef£# BizObject Framework BizObject Framework ¡ 5 BDC )ø·HUà6í’mⱸò{m7, yz*’eé¦)í’mUà XML

f£B Web Server Layer Web Server Layer øUà6pí×Uò{D*’e é2¦)í×Uò{ªúAŠ5(, Uà6nép SME-PDM Í$ FJUà6épÍ

$2¥_¬˙, uUàƒúµ, ¨Ö Web Server Layer, BizObject Framework Layer

£ Database Layer , àÇ2.6

Figure 2.7: Uà6²ÏhÓeK[À

Web Server

BizObject Framework

DB Server PDM Activity

Module Layer4

Layer3

Layer2

Layer1

Client Browser

HTTP

Figure 2.8: Í$-Z

ÊUà6épÍ$(, Çá²ÏhÓeK[À, àÇ2.7 ¥_TwõÉÌk Web Server Layer 2, ÄÑUà6ɲ¦ÛbhÓíeK[À, 1³UàƒLSD’eé

ÉíŠ?, C6Uàƒ Activity Module Layer íŠ?, Ĥʥ_¥ 2ÉUàƒ Web Server Layer íUà6ÞŠ?, àÇ2.8

Figure 2.9: Uà6hÓeK[ÀB’eé

Web Server

BizObject Framework

DB Server PDM Activity

Module Layer4

Layer3

Layer2

Layer1

Client Browser

HTTP

Figure 2.10: Í$-Z

çUà6/ê[À,ÞF[5(, Uà6ÊUà6Þ2²Ï‹pø_eK’e, çUà6²ÏÓ‹eKv, àÇ2.9, Web Server Layer }ãÊUà SME-PDM Actvity Module Layer 2íeK’eÜ_ , 7 Web Server Layer }UàeKÜ_ 2í hÓeK’eŠ?, eK’e_ }l* BizObject Framework 2¦)¤eKí BDC

’e, 1¦)’e(, eK’e_ Uà XML xXz* Web Server Layer 2¦)í BOM ’e[À’e, ž“Ñ XML ’e, BizObject Framework ¦)¨

_(í XML ’e[À’e(, yUà Database Server, z¥°’eŸp’eé2 h Ó[ÀuUàû_ Layer íŠ?, àÇ2.10

Ê BizObject Framework z[ÀŸp’eéêA(, Activity Module Layer 2 íeK’eÜ_ }YƒVA BizObject Framework hÓêAím7 ¥v Web

(19)

Figure 2.11: hÓeK[ÀêA

Web Server

BizObject Framework

DB Server PDM Activity

Module Layer4

Layer3

Layer2

Layer1

XML

Client Browser

HTTP

Figure 2.12: Í$-Z

Server Layer 6QYƒVA-µ Activity Module Layer ím7 Web Server Layer )ø¥c_hÓ’e[Àí¬˙˛%üõêA |( Web Server Layer }zhÓêAí m7Uà HTTP ¦m›ì, éUà6ø−c_hÓíT˛%êA, àÇ2.11 Ç2.11 ê AeKhÓ(í˘4åÞ Ê|(, Web Server Layer ¦øUà6˛%êAc_T, É

Uà Web Server Layer íŠ?, Ç2.12

J,·HUà6ÊhÓeKc_¬˙T£óú@kÍ$2í_ zp

(20)

Chapter 3

Ç, SME-PDM ž²Ñ .NET Framework «

Ê…ı2øÌÜÇ, SME-PDM ž²Ñ .NET Framework «FÛbíóÉx X …ıü_3æ, }u .NET Framework «-ZÜ SME-PDM xX A

Ü .NET 2D SME-PDM óÉxXÜ SME-PDM ¯ªW4Ç, £J’e 榵 (BizObject Framework) ѐWzpž²¼˙ Bb}ÌíÜ SME-PDM UàƒíxX, 1/Ç,ø SME-PDM ž²ƒ .NET «,ÛbíxX, £zpÛUà

¨<xXVd¯² |(, Bb‚à SME-PDM 2í BizObject Framework TÑ

ž²Ñ .NET íWä, 1}&¥_W䞲¬˙ßÞí½æ

3.1 .NET Framework Introduction

,RW .NET «3bñíuÑ7TXUà6*LSËj, LSvÈõ, ÊLS«C qe,·?¦)Uà6Ûbí’m, fCu˙ Uà6.àø−’mu\[ÊBóP 0CuàS¦FíóÉ Wà, J(í2, BbUà MS Office y6.Ûb

CD m±, Uà6ªJN¬ Web Service Vé_ƒFbíœÂ,, 1/ÉÛ˛„V¥

bUà MS Office í licence ‘à, FJUà6Uàí,ñøìu|h/|érí

… ,ñÉÛbN¬æ˜Aé_, Uà6YÎUàíÕ”G‘

3.1.1 Microsoft ¬ ,ñê½æ

Microsoft ¬ í,ñ_Êê¬˙2}`Xà-˚Ø:

• ßí˙{'ØŸ, 7/Í$íŠ? (ex : automatic memory management) ª

?1._àkFí˙xk

• f$í COM jK (COM DLL / COM EXE / ActiveX Control) ÖͪJ

®ƒ code reuse íñí, OÊ COM íqÊ!ZºßÞ7yÖí½æ, ®xk ú COM ÞíõT.°, .ñq¯T, âk COM jK}AЃ Windows íé

“œ„ é“, ¥šø− COM jKí˙n?UàF, Éu˙qlAºà‹.

·<í…CÞZ‰·}¨A½æ

• ıFí˙xkÊ…™íUà¸DwFxk5ÈíǦ,, ·?UàÓKû²í

˙qlÔ (COM .or VB .w C++ ŸíÓK)

• ˙ÛbAp[ñÜVÊ¢p[ñí¨‘, ÄÑp[ñ¨‘}¨AÍ$^?í-

±

• ıø_ê¾ÀUí!€-ZVZæÒ昀Ž (Web Service)

(21)

• Security consideration Ê˙2úkª?½æí˙{, ıÌ„wÏWíž

Ì, ?¹ú.°í˙{, ı?qì.°íTÌ„

3.1.2 .NET Architecture

,Ñ7TX,H½æíj²j, FJT| .NET Framework ¥_–1, 1‹JR

 Ê .NET Framework 2íF˙xk})åÑ Microsoft Intermediate Lan- guage(MSIL), 1Ê Common Language Runtime ,ÏW Common Language Runtime (CLR) -ZÊT“Í$퀎,, …Š@à˙õÒíÏW, 1Å—F

í@à˙íÛ°, Wàp[ñÜ TÜér½æ £c¯.°í˙xk O˙

qlõÒ,.}\ Common Language Runtime à, ÄÑFbFÞúíu-ZÊ CLR ,ÞíuàÓKéé, ¥_uàÓKééªJ\LS˙xkFUà, ¹ CLR uFÊ .NET Frameramework ,X¶í˙xku°Uàí Runtime jK .NET Framework zÛbN¬ CLR í−„n?ÏWí˙{˚Ñ Managed Code Ê .NET Framework ,FŸá{·N¬ Just in Time (JIT) )åÂøž²A\ CPU Fw…

íNI(nªÏW ÉbX¶v CPU -Zí JIT )åÂ, ÿªJz MSIL )åA ªJÊv CPU -Z,ÏWíœÂ{, ¥<âO MSIL N¬® JIT )åÂøªJF

«

3.1.3 Architecture

.NET Framework ,Language, and Tools

Visual Basic C++ C# ...

Common Language Specification

Web Services User interface

Data and XML

Base Class Librar y

Common Language Runtime

Visual Studio .NET

Figure 3.1: .NET -Z–h

éBbVõõ.NET í-Z¶} Ç3.1 u.NET -Z–h, Ç3.1 2, |,µíux k)åÂ,.NET Framework X¶í)å VB, C++, C#. . .  Ê)åÂ-µu¦

àxkd (common language specification, CLS) ¥dóçkø Fxkí u¦|üŠ?Õ¯, ¥duø ÜFxkF.âX¶íu¦Š?, ¥dªJü

\ .NET Framework w2/ø_xkªJDwFxkí CLR óñ à¤øV, çF

í˙xkí)寯 CLS dì, ¥šFxkŸí˙·?DÊ .NET Framework ,ÞóUà, ÉbFb?¯¯ CLS, †w˙{ÿ\„?DÏW

Ç3.1 2, CLS -µÜà-:

• Web Services

昀ŽTX7ø_æ˜Uà6Þ, w2¨Ö7®.°í HTML −„á£æ˜

−„á 昀Ž6TÜ®.°í昛ì ér£ TæÜÕG |ßí¶}ÿ uBbªJUàZ Windows Froms ó°íjVZ Web User Interface

¥šªJñqíÇê| ASP.NET ˙

(22)

• User interface

 Web Services ó°, Éu User Interface FNíu Windows Forms 6ÿ uí Windows ˙Þ

• Data and XML

Web Services £ User interface u[Ê Data and XML ,µ, XML uàV¨

_×Û’eí™pxk, Data £ XML ªJ«àÊ SOAP ›ì2, 6ÿuzor ø’e¥_Ê XML 2, Í(¨Ê HTML f2, ¥šÿª¦¬ÊÊ\f£ª V FíÊÊ·ordåfN¬ port 80 f£

• Base Class Library

BCL uF .NET ˙í!€é;Ä, Ê .NET 2í©ø_‰a·uø_ÓK, FíÓK·u–Äkø_±Ñ System íé2

• Common Language Runtime

CLR uø LS .NET ˙ªJ‚àí*LSX¶ .NET íxk (VB, C++, C#. . . ) 2í™Ä’Ä, Ou1ÝFí .NET xk·X¶Fí .NET €Ž W à: 5ªJÊ VB.NET 2ÏWø<5.?Ê C++ 2íT“, ¥5?Í ©ø

xkí?‰uâvxkí)åÂFXº

J,u .NET «, zp7ÑBó} .NET |ÛíŸÄ, ´ .NET àSj

²„|Û .NET «v, ,ñê¬˙2FßÞíÿ¸D.—, du code reuse í½æ

ÇÕ´Ü7 .NET Framework 3b-Z, £zpÊ-Z2 .NET AjKíŠà

3.2 SME-PDM xX A

Q-VÿéBbV7j SME-PDM ˝§à7¨<xX, éBàø_ÇVdzp, ¥ š}ªœñq7j, Ç3.2 2©ø_–)H[øxX, -B}z©ø_–)xX·dø _ÀíÜ

ASP(JSP)

Application Module(VB)

BizObject Framework(VB)

COM+ Service

MS-XML V3.0

ADO v2.6 CDO 1.2 Microsoft Scripting Runtime

SQL Database Server

MSMQ2.0 Mail File

Figure 3.2: SME-PDM Í$xX A

• ASP

r±u Active Server Page, ASP íŠ?3buàVŸGæÜí, ñíuéU à6?DD/€Âßލ ¥u ASP 3bæÊíñí

(23)

Ê SME-PDM 2 ASP í script language ¶}uUà Java script xkŸA, O,RŠíu Visual Basic script, çÍ ASP 6X¶ Java script, Bk ÑBóUà Java script ª?uÄÑçví Visual Basic script Š?.—, 7/

VB Script .x_ “íW˜Š?, FJ˙ql²ÏŠ?œ#í˙xk Java Script Tql

7¥)xXÊ SME-PDM 2óçk User Interface ¶}, Uà6DÍ$5Èí

3buÔ¥_¶}Võd 7/6.âÔ¥_¶}n?D Application Mod- ule _ ǦDUà

• Application Module

Š?_ µ (Application Module) Uà Visual Basic 6.0 ˙xkõTêA … _ uÍ$Š?íŽ-, F©QUà6Þ BizObject FrameWork, 3bŠà Êk’eíj4TÜjÞ, wŠ?_ ¨Ö ˙‰y’eÜ_  …−_  ÓeÜ_  ÓKÞ·U‚Ü_  ùÜ_ Š?

• BizObject Framework

’e榵 (BizObject Framework) Uà Visual Basic 6.0 õTêA, w3b Š?uàV©QTÜ’eé2í’e, 1Š@Š?_ µDUà6Þµ, D’

eéµÇ¦ Q§Š?_ µDUà6ÞµVím7, 1j&|¤m7íñí, ª

?f£’e#Uà6Þµ, Cuyh’eéµ2í’e

c_’e榵3bŠ?ÊTÜ XML í parse ½æ, ÄÑ’eæ¦T“−ƒØ ÖµÆí‡æ, FJ’eéµz’eé2í’mž²A XML , 1z¥<’mT X#FÍ$íjKUà 7¤_ 3bñíuéÊŠ?_ µJ,í˙ql,

˙ql.Ûbø−µÆí’eéTÜj¶ÿDN¬Àíj¶TÜUà’eé 2í’e ÄÑ’e榵z’eé2í’e|¦¨A XML í’e¼, FJ ql‡«ÞíÇêAºÉÛbxe XML ’eTÜxXÿ?DTÜ’e 7/6 ÄÑ’e榵TX¥_™ÄäÞ, FJÍ$ñqN¬¥_™ÄäÞTØkC6Dw FÍ$T’ež²Ç¦íT

• COM+ Service

Component Object Model (COM) TXøœ„, éùªPí,ñjKªJ

COM ©!Êø–, ¥_,ñª?u5AÐêí, ª?uVA/,ñTX¼, Ê

™Äíd¸-ªJ©!Êø–, ˛¤Ç¦¯T ç5Êql@à˙v, 5ªJl½

©ø-u´˛%æÊí COM ÓKªJ65êA5FÛíŠ?, 7..99·A ÐVªŸ ç5Ê VB qUà COM jKv, 5..ø−vjKí«T5(, n?Uà… Ébø−àSãÊ5;bíŠ?Zª Wà5ªJ/qíÊ5êí, ñ2ãÊUà Internet Explore(IE), 7.Ûbø− IE u5óŸí, ¥ÿu COM FRí–1

• MS-XML

MS-XML u,êí XML j&Â, …uÊ Windows «TX™Ä XML j K, …qÊ IE ³Þ, uø_n‘í XML parse library

7Bóu XML á? XML uø™pdK, Uà6ªJUà XML dK·H’e

XML dKéN HTML dK, É.¬ XML dKàV·H’eí, 7 HTML d KuàV[ÛdKÊZ½ÂUàí XML dKÑ©°’e‹,AзHí tag ˘ 4, ĤUà6'ñq‚à XML dK·Hø_’eé’e[ (table)

7 MS-XML j&ÂíŠ?uTÜ XML dK, Éb‚à MS-XML BbÿªJ zŸVí’eé’e¨A XML í’e, ó¥í6ªJ* XML ’e2¦|ŸVí

’e[

• ADO

ADO (ActiveX Data Object) u,êí’eTÜjK, Uà6ªJ‚à ADO jKV榒eéí’e Éb˙qlJFbAÐ2í®xkãÊUà ADO jK, ·ªJ榮®š’eVÄ, ¨ŽÉ©’eé, .u Oracle MS SQL

(24)

Server £ Access  ·ªJUà ADO ¥_’eTÜjK, dLSí’eéæ

¦T“

• CDO

MicrosoftR Collaboration Data Objects (CDO) Library, ¤jK3bŠ?u àVTÜ e-mail óÉ9Ž, ¨ÖzŸ f££QY¶} çUà6é_ IIS v,

°v²¦ SMTP Service, …ÿ}\é_ÊÍ$2

• Microsoft Scripting Runtime

Scripting Runtime Object Library (Scrrun.dll), ¥_jK3bíŠ?uÚ7 2’efTܶ}, du¦)Í$2w±HU µ`Ú72/ø˜-íF’e H ¦)Ú72/ø˜-íFf’e (File) dK’eèŸ f  f

• SQL Database

,Fêí’eé,ñ SQL DB server uÉ©4’eé, ªàVæ[’eCu

×f

• MSMQ

Message Queuing (MSMQ) uø2,ñ, 2,ñuuJf]£TÜm7Ñ 3í,ñ-Z 2,ñí–1éNæ˜,f£í’e¥¨, É.¬%¬2,ñê

£í’e ¯ªœµÆ, ©°m7}®Aí™æ Å×ü £wF®®ší’

mD 2,ñŠ?ªJ3/Níøm7f]#ÛbQYí˙Í$, Q Y«íÍ$.â¿©ø_CÖ_ä− (Channel), ¥š2,ñÿªJN¬¥<ä

−, zm7f£#QY« SME-PDM Í$ÿuN¬¥<ä−ªW$“Èí¼˙c

¯

3.3 Ê .NET 2D SME-PDM óÉ5xX

Ê .NET Framework 2rÖ“híxXªJ«àÊ SME-PDM 2, …øÇá}

ÜÊ .NET 2D SME-PDM óÉ5xX, 1úhxXšTzp íl, Bbl‚àÇ3.3 VTzp, Ç3.3 2í˝iüÇuŸV SME-PDM íxX AÇ, 7Ç3.3 2í¬iüÇ

†uóúkHíxXÇÊ .NET 2yhxXjKÇ, ÊHíxX2àhí .NET xX ªJUàv, }ÊjKj)2+,æH BbªJ'péíªJõ|¨<HxXuhíx XªJ²í -Þ}z©_+,æHíj)Tø<óÉxXzp

ASP(JSP) Application(VB)

BizObject(VB) COM+ Service

MS-XML V3.0

ADO v2.6

MSMQ2.

0 CDO

1.2

Microsoft Scripting SQL

Databa

Mail File

ASP.NET(VB.NET) Application(VB.NET)

ADO.NET COM+ Service

XML.NET

ADO.

NET

BizTalk CDO

1.2

Microsoft Scripting SQL

Databa

Mail File

Figure 3.3: SME-PDM Í$óúÊ.NET 2óÉxXÇ

3.3.1 ASP.NET

ASP.NET TX7ø_ Web @à˙_ ¥_TX7ø<[À −„á£!€-Z, é˙qlÀ Web @à˙ ASP.NET TX7ø<ú@ HTML jÖ (WàO

(25)

~ ÀÀ]) í HTML Controls, J£Š?y#í Web Controls HTML controls Ê/€«JÓKû²íj\˙−„, é˙qlªJJÓKû²˙ŸTíj, 

“˙íµÆ4

.NET Framework ASP.NET

ASP.NET

Common Class Library

Common Language Runtime

WebApplication Web Service

ASP.NET Runtime

Figure 3.4: ASP.NET -Z

Ç3.4 Ñ ASP.NET -ZÇ w2 Web €Ž, £u .NET 2'½bíø¶M, 5‡

Ü .NET ív`íøÆu ,RW .NET «3bñíuÑ7TXUà6*LS Ëj, LSvÈõÊLS«Cqe,·?¦)Fbí’m, fCu˙ à‹z Web

€ŽH[ .NET íÿøõ6.Ѭ, Web €ŽuÑ7¸˙qlD Web server 

, Ê .NET Framework 5‡, ˙qlàbql|?D‚àæÒæ˜DwF˙

ó¦mí˙.Õ˛‚à, Distributed Componet Object Model(DCOM) Remote Method Invocation(RMI) MSMQ¸ Internet Inter-Orb Protocal(IIOP) , O¥

<ó¦mí˙uÌ„í, Wà DCOM íÚ7É?D DCOM íóǦ:ß, 7úk Web Service Vzÿ³¥_Ì„, ÄÑ Web Service uSà SOAP ¸ XML Ǧ, Ĥ Web Service  Î7 model-specific ¦m›ìí¾ó, Web Service íîE ªJ'ñqíʱ«ÓKUà SOAP ¸ HTTP jãÊ, 1/ Web Service Uà text-based XML çA’ef#îE, ĤÉbT“Í$?DTÜ SOAP £ HTTP ãÊ, T“Í$ÿ?DUà Web Service ¥ªJz"×ÖbíT“Í$·?DUà Web Service Ç3.5 [Û| Web Service Êæ˜,Uàíj Ĥ Web Service íAŠ

Browser

Mobile phone

PDA

Web Service

Other Web Service

Enterprise partner

SOAP over HTTP

Figure 3.5: Web service Overview

é˙qlªJz,ñdA€Ž (Service Software, Ê/€Â2JTX€ŽíjF æÊí@à˙) íjÏW Web Services uøªJUàÊæÒæ˜í˙j4, ¸ f$í@à˙UàT“Í$FTXíŠ?øš, JæÒæ˜Ñ!€í@à˙6ªJ‚

à Web Services VÓ#…™íŠ?

(26)

3.3.2 ADO.NET

ADO.NET @ª¦H BizObject Framework, Ä ADO.NET wŠ?°Q7 ADO D XML Š?, FJ ADO.NET Š?@vªJ¦H BizObject Framework ¥µíŠ

?, 7/?DyògíUà XML Š?, ª7®ƒF«íñí

ADO(ActiveX Data Object).NET TX7ÀøíÞ, éUà6ªJÓKû²Í Tíj, N¬ú’eÓKíÜ, ®A榒eVÄíñí, 7Uà6ªÍTÓK…™, 7ÝÍT’e[ ’eW, C6 XML °vwxe Disconnect Data Cache Model, Ê N-Tier í-Z-.ÛM/í keep connection, /Žâ data cache 휄, ªÊ’e£

üí‡T5-, â cache ø’ef, 7.Û榒eé

ADO.NET TX7Ç$“Þ, 1X¶ª SQL x¶yÑÏí#Œ, U)’

eé榜„yÑÃã0§, Áý˜ÏêÞ

3.3.3 BizTalk Server

BizTalk Server CrªJàV¦H Message Queue, Ûªø¥nj ʜѵÆí$“

¼˙ç2, ø_>q/9KíêA%%ÛùpÖ½¥ , Wà˛ÓÍ$†¨Öp  Ó¼

œ„íTÜ, 7~cÍ$†Ûùp3 HÜA ‹’pÎ¥  BizTalk Server ªÊ .NET framework ÏW¼“ T¼˙T, ªc¯Ö½¼“jK, ¿ì T¼˙, U)®

¼“jKªYÎd†QY/f£m7, ›°êA T, ®A EAI (Enterprise Application Integration) BizTalk Server TXéN Visio íÇ$“¼˙ÇqlÞ, éUà6ªJ àŠ…jql$“j4, °v1TX BizTalk Accelerator, éUà6ªJ;W_, 0

§d•Í$

3.4 SME-PDM ¯ªW4Ç,

…3bñíuzpø SME-PDM ¯ƒ .NET ,TíÇ,, …}As_¶}ø_¶

}u VB to VB.NET ¶}, ÇÕø_¶}u ASP to ASP.NET, ÄÑ¥s_¶}u SME-PDM Ûb¯|péís×Øæ

3.4.1 VB to VB.NET ªW4Ç,

VB ¯B VB.NET íªW4Ç, Ê.ªW!Z½cí‡T-, ÀÓ˙xkž²¬

˙2, 3b Focus Êk

1. ÖͯÑ}ªW_çí¯T, 3b}u˙{óú@5 Code 5²T, úkj4¶}í?‰œÿ ÑÁýö£ÏWví˜Ï, #ˇ.âTÜ Variant Type, 1ÝòQ²Ñ Object Type, 7Nì_çG, JãʬÖ.ªã‚í˜Ï, Ô{à Default Value 5qìD ToString vWјÏ

2. /<ó°íƒ±˚˛hWÑ, .â½h25u´àhíƒ, Wà Collection class í Dir

3. fóñ4.°, ÛbyZæ¦f5óɃ

4. Œ Null íUàj, âkwúk Null D Empty íUàj.°, Öb Pro- pogation íƒúk Null X¶œÿ

5. As New hì2, âkÓKû²íh1, .âúk©øÓKæÊóú@í Initial- ization íj¶, .â‡úŸ˙2Fí As New ªW^Z

6. .yX¶ As Any

7. Fíf]MJ„Ôy™p, îãqÑ ByRef

8. ‡úbMíqì, sxk.°íqì, .â½hüw

9. /<!€GZ‰, Wà Data .yu double í$

(27)

10. âk VB .NET X¶Ö½ÏWé, FJ.â·<˙{u´EÑérÏWé

11. ‡ú©øÓK@üì4íŠbDp[ñYTÜ

‡úJ,õ, ¯ÑÖ}_çíÊ©W˙2ªW™p, Oëj‡@løÿ˙

{ªW_çíyZ, yŸ‚à¯ÑœÑ^0, /Tò£ü4, Ê…Ÿ SME-PDM ¯

ç2, 3bí×½æu Variant Type, ˛u©ø_ÓK·Ûb½Ûì2 Type, wŸ Ñ .NET 2íhƒhŠ?Cuh±˚²½æ, Ûb½h ¡5híƒé, 1øø

²Ïóú@탱˚ªW^Z ¥s_½æ˛U)²Öbí˙1ÛøWW½h¿£, 7wFü½æ6EÐ/æÊk˙ç2

‡ú¤¶}, ‡Uàù¨¯j, lø×½ækÛW5 VB ˙ç2, JÁýW

˜FÛvÈ, Ê×Öb˙ªWy²‡Äe5(, y‚à¯ѪWyŸ¯ ·<: ª WyŸ¯5(, EÍ}|Û¯½æ, /̶üøwb¾,u´üõÁý, O¤ÔªJÁ ýž²¬˙2í.üì4, U˙‰“œÑª¦³ Jcc‚à¯ÑTýí!‹ªW˙

{ힲ, FÛ v©ø—W˙Û výüv, /þ„ªW_çí)åDW˜ T

3.4.2 ASP to ASP.NET ªW4Ç,

âk SME-PDM ÊUà6Þµ2FUàí ASP u Java Script, Ä7Ó‹7¯í

˚Ø, -Þu¯ ASP B ASP.NET ã‚}êÞí8$

1. ÖÍ ASP.NET ú ASP øìíóñ4, Ou SME-PDM í ASP 'péíÌ

¶òQÊ ASP.NET í=1-

2. âk SME-PDM í ASP r·uJ JavaScript FŸ, }¨A.ªãøíª?½ æ ÄÑ ASP.NET .d ASP X¶ø_ÜÞqíÖxkÏW (VB, JavaScript), ASP.NET Êø_ÜÞÉ?øxk, (¥uâ ASP ¸ ASP.NET íqÊÏWù βìí, ASP uâ asp.dll2 úŸßí script dKòQjåÏW, 7 ASP.NET uâ aspnet isapi.dll lø script dK compile Í(ÏW) FJ SME-PDM í ASP ÿÉ?J JavaScript  ^Zº¯ ASP.NET íÛ°, 7.?J VB.NET  ^Z Êñ‡´.ÀU ASP.NET ú JavaScript íX¶8”-, .ßüì?´

ß‚ËøFí ASP ˙ porting A ASP.NET ˙ 7/J JavaScript V Ÿ ASP.NET ˙, N˛° ASP.NET 퀬

3. Ê ASP.NET 2, function í implement .âÊ<Script Runat=Server>¸<

/Script> implement, 7.d ASP ªJÊ<% ¸ %>5Èí implement, O SME-PDM í ASP ·uS¦(6, FJ¥_ž²í Tuøìbdí

4. ÄÑ ASP ˙2}ãÊø< COM jK, OÊ COM þ„žA .NET Frame- work ªÏWí8”-, ASP.NET ˙òQãÊŸlí COM jK}ã‚í˜

Ï

ʞ²¬˙2, cuJxkµÞóñÑ3, „¨Žj4µÞíóñ VB to VB.NET 3bñíuøÛæ5 VB ˙¯Ñ .NET Framework «ª)å5˙, ASP to ASP .NET øÛæ5 ASP ˙¯Ñ .NET Framework «ª)å5˙, ¤¶}

Ûªø¥Ç,íŸÄÊkŸÍ$2í JavaScript b¾õÖ, /wŠ?óçµÆ, 1̶ü ìu´óú@í ASP.NET ªªW_çힲ T

¯¬˙2, âk PDM ¬kó×, ̶ÊsvÈqøŸ¯AŠ, ÑD ASP 9lÇ

¦, J£D˛%žß5 VB .NET íÕ¶¡5Ǧ, .âøFí COM l¯Ñ .NET Framework ,ªòQÏW5jK ·<!̶üìu´F¯(í COM î?Uà, ç

½æêÞv, ÛÇÕÓ‹©vj²j¶ívÈ

3.5 BizObject Framework ѐWzpž²¼˙

BizObject Framework 3bóÉf (BizUtility.vbPDMClass.vbPDMObject.vbSystem.vb) âk SME-PDM ¬kó×, ʞ²¬˙uJ˙xkóñÑ3, Ĥñ‡l.ž² ADO

¶},

(28)

ʞ²¬˙2Ûb^ZíËjà-:

• ^Z Win32 API úk as any Žµ âk VB.net .X¶ as any 펵j

• ^Z遢4Žµ

• ^ZHí VB ƒb (StrPtrLenBInputB) Ñ VB.NET ú@hƒb

• ^Z variant type ‰yÑ Object Žµ^Z

ʞ²¬˙˙\G¶}

• \G ADO

• \G MS-XML, âk MS-XML ʤ_ 2”×íM¾, Ñ7‹§ž²§l

\G…

Q-V, ˙%¬7,Þ^Z£\G5(, ˛%¸ .NET óñ, µÿéBbV¿t ADO £ MS-XML íÏWÊ .NET ,ÏWí!‹

• ¿t

ÏW bizClass.GetAllClasses() v,ADO ÏW£ü, OÊ MS-XML ¶}|Û ComException ˜ÏêÞvåÞàÇ3.6

Figure 3.6: ComException Error

• ˜Ïª?ŸÄzp

Ê .NET Framework ,, Hí MS-XML FeÑø_ unmanagement jK (â .NET xFßÞíjK, …eÑ management jK), ĤÖÍ .NET ,Þ ªJÏWHí MS-XML, O1.?D\„}LS½æêÞ, zëøõÿuõõ AЫ−àS ÄÑÊ .NET 2, unmanagement jKíp[ñÜ1.?D\

„?D£Uà

• ¿t!

Ê .NET Framework ,Þ MS-XML CwF unmanagement jK̶£üÏ W ÄÑ .NET Framework 2ÖÍ?Dóñ umanagement jK, Oº³Ÿ

¶\„¤jKíÊ .NET Framework 2íÏW¬˙uÊFí−„5-í Ä¤Ê .NET Framework êÞ¥³ã‚í˜Ï6uÜFçÍ, ¥.ââ˙qlA ЊV£Z£

%¬,ޞ²5(¿t˙í!‹1.uIAÅ<í, âk MS-XML ̶£üÏW, Bb.â;_j¶Vj², j²j¶à-: SME-PDM Í$.âZà .NET Framework ,Þí XML Š?, 1/z ADO jKZà ADO.NET jK, ÄÑ .NET Framework 2í ADO.NET ‡ú XML k}X¶, y?D¯¯Ÿ…Í$í’eæµíŠ?£ñí, 7/Í$ªJnÎêÞÝ゘Ïíª?4, Í$6?Dà .NET Framework TXí Í$i“=1 âk SME-PDM í’e榵!€u XML Tܶ}, FJÍ$n}

øµ BizObject Framework àVT XML parse Tܵ ÛÊàBbUà ADO.NET jK,BizObject Framework ÿ³æÊígM FJBbªJòQUà ADO.NET H

 BizObject Framework �

(29)

Chapter 4

PDM Í$˙qlõT

‡øı)ø, àb‚àH˙^ZAÑ .NET …,í˚ظ½Ÿø_hí .NET 

…íØu!…,uÏ.Öí, Ĥb²kqlø_ PDM Í$íÔ$, 7 PDM Í$Š

?õÆ, FJ²Ï7áœÑxH[4í PDM Í$Š?, à-:

• Í$AºžÌÜ: !…,Í$AºÜÊ PDM í0äuø_|!…íŠ?, Ä Ñ^Aºí„n?D^íªWß¹ÜÍ$

• ùd•Ü: ùd•Üu PDM Í$2íøá½åj, ÄÑFíŠ?·u

@Êùd•Ü¥áŠ?,, ª7ô.|wFª¼íŠ?

‚à¤ø¸…}Û‚à Microsoft.NET TÑõT PDM í«uªWí, 7/

^0Ü,}yѪ, ˙{6}yÑ …ı}ÌHàS*ƒÌ`TøP Ê .NET Framework ,ÏWí PDM Í$, w2}ý¸_ ASP.NET £ .NET Framework í3bŠ? 3bñíuý¸ PDM Í$˙-Z, £^0íÇê¬˙, X

˙ÇêAº¡5

4.1 Í$Çê¼˙

-ÇáÜàSõTøP PDM Í$íÇê¼˙, ÛÊÇêøP×ù,ñí¬˙˛

%J‡u×.ó°, J‡Çê,ñ¦·ué ˙øWøWíT coding, .¬¥Ç ê,ñí¬˙˛%×Bb± , ÛÊ×ùíÇê¬˙˛%ªphí¼˙ë ÛÊ5U àí˙xk.u V BC + +C]Java, Fb·TX7ø×#íƒO5 Uà, ˙.âbø…UàGwn?ø−FjKíŠ? FJÛÊ ˙Çêß¹.âü wu´˛%ÛAíªJUà, ¥šn.}Ÿ7šÙí˙, (VnêÛŸVÉbUàA ŸíjKÿªJj² y‹,ñ‡TXíÓKû²í–15(, code reuse ¥–1yu ðW7/6V½b

Ê .NET Framework |Û5(, ¥–1 (code reuse) É}Ó‹7.}Áý, 7/

…TX7ø_«, ªJéFUà6?DUà®˙xkFÇê|Ví,ñjK, Bó ] .NET }××íZ‰ÛÊF×,ñÇêj z7¥óÖ, BbÛÊ£ªp3æ, Í$Çê¼˙J-_¬˙, à-F

• õTŠ?}&

• -Zql

• Uà6Þµ(Web Server Layer)

• Š?_ µ(Activity Module Layer)

• ’e榵(Data Access Layer)

• ’eéµ(DataBase Layer)

(30)

4.2 õTŠ?}&

ñ‡BøbõTí¶}uAºÍ$žÌܶ}, ¥_Š?ªJÜUà6ÊPDM Í$

2íWўÌqì Wà: YÎ$“ñ¼“j4íì2, øOUà6ø.\ñræ¦t−œ òql’e, øOUà6YWwiHFG8ížÌÊÍ$2ªWÍT, 1/Í$Ü6ªJ YÎ$“ñíÛ°, ‰yžÌÜœ„, ç$“ñ¼“j4Z‰v, PDM Í$ªYÎõÒ Û°7d|c Í$žÌÜŠ?à-:

1. ¶Æ (ˇ ) Ü

ˇ íì2Ñø_ªJH[øˇAíÈñ, ¦¥øˇAxó°í Tñ™£ž

Ì, Ê$“ñ2, øOˇ íì2ѶÆ

(a) hÓˇ : Í$éýhÓˇ ²À, Uà6/p!…’m

(b) ˇ ’eTÜ: ŒÉ ^Z tΡ ’e

(c) ˇ É[TÜ: qì Ç

(d) ˇ žÌqì: qì¤ˇ ížÌ

2. iHÜ

iHíì2Ñø_H[/øá Tqñí£Ší‚ï“·H, Ê$“ñ2, øOi Híì2Ñ<˚, Wà%Ü ˙

(a) hÓiH: Í$éýhÓiH²À, Uà6/p!…’m

(b) ŒÉiH: Í$éýŒÉiH‘K, Uà6/pkŒÉ‘K

(c) ^Z£tÎiH: Uà6ŒÉiH(, ªJÊÍ$|íiH²Ï^ZtÎi H’e

(d) qìiHUà6’e: Í$éý¤iHíUà6±À, 1XÜ6^Z

(e) iHžÌqì: qì¤iHížÌ

3. AºÜ

Aºíì2Ñø_ªJàVÍTÍ$í×E, Ê$“ñ2, øOAºíì2ÑUà6, WàAº

(a) hÓAº: Í$éýhÓAº²À, /p!…’m

(b) ŒÉAº: Í$éýŒÉAº‘K, Uà6/pkŒÉ‘K

(c) ^Z£tÎAº: Uà6ŒÉAº(, ªJÊÍ$|íAº±À2²Ï^Z tÎAº’e

(d) AºžÌqì: qì¤AºížÌ

4.3 -Zql

Í$-ZqlYHSàúµj4-ZqlÑ3b–1, Í$z’e榵 ¼Žj4µJ

£Uà6Þj4•}A.°íé …üs_3æ

• .NET N-Tier -Zql!€–1

• PDM Í$-ZUà Microsoft .NET –1

…ø}Ü-Zqlí!€–1, 3buS¦ .NET N-Tier $“@àÍ$-ZÑ 3b–1, ÇÕ}ÜJ .NET Ñ-Z–1Fê|Víh PDM Í$-Z, Ê¥ü³ Þ, ÌÜ-Z³ÞíŠ?–)

(31)

4.3.1 .NET N-tier -Z–1

h PDM Í$@à˙uSàúµj4-Zí ASP.NET Web @à˙ JÇ4.1Ñ 3b!€–1, …u Microsoft .NET N-Tier -ZÇ[6], Ç4.1Df$íúµj4-Z

Figure 4.1: .NET $“@àÍ$-Z

ªœ–V, !Z,uøší, õ–V1³Ö×íρ O…”,u<Ïí, Bš

Üø-Ç4.12©_–)í<2

UI Component: ¥<jK3uTXUà6ÍTíAœÞ, Ûb5?’eÊåÞ, íé§D1h ñ‡|àíue¢ÞCZ½ÂÞ, OhípxXDWqeRÏ|

h, FJqlv.â5?Økí 4

User Process Components: Uà6¦Ûbb_¥ êAFkÏWí T, WàÊ æ¦S˛Ó¹í˙åuZ½ß¹ñ“ e¼¹Ì’m ²˛ƒ˛Óš ^Z£üwS˛

b¾ pîE’m£G ’e, nêAS˛ TÜ“Ž¼˙í˙.@v¸ UI Compo- nents ÎýÊø–, FJBbql User process Components Š“ŽÍT¼˙, 1

Ü®Uà6ÞDUà6í˙å

Q-VuøOúµ-Zí Business Logic Layer, OuÑ7TX#.°íàE«_

çíÞ£FÍ$c¯Û°, FJzf$í business Logic layer }Ñb_ Compo- nents, |,µí component u Service Interfaces, TX_çíÞ#®àE«ãÊ, duøOí Web Server C6 Windows ÞUà6, ÝBu Mobile phone Uà6

·u‚à¤ÞTãÊíT, Service Interface ?ª˚Ñ Facade , ¥_Àåuø_¶

d, ±Èj„ѺÓíÕh Service Interface …íŠ?u#8øˇéCäÍ$ø_

$øíÞ, éUà6.ø−Í$qµÆé, ÉÛbN¬ Facade ¥_ÀÞ榥ˇ é

Business Components †uTXÏW“ŽFÛbílŠ?, WàTÜ¿Àvl

®˘ç, Cl«Ó¹í_·}ºD«‘ Business workflows ŠDwFÍ$, W àTÜ¿Àv.â°vDÀ¼Í$ HlÓ¼Í$n?êA¿ÀTÜ Business En- tities ·HÍ$2í’eAÑ®Ûõ2í¼“õñÓK (business entity object), W àBbªJ‚à¤_ V·HÀÂ, cqBbb·Hh«Þøìj¥_¼“ÓK, uBó$

Õ? …íiÅuÖý? æHuBó. . .  Bb«à…bk Components 5Èf]’e, 1/ªJà DataSet DataReader XML CAWì2í Object-Oriented Class  íJÅ—® Components íÛ°

f$úµ-Zíúµu Data Access Layer, Ê .NET Application Architec- ture 2\MøšíŠ?, Wà Data Access logic Components TX榒eéí€

Ž, ,µíUà6.ÛbnjàS榒eéíõÆ¥ 7?DÀíUà Data Access logic Component FTXíŠ?VTTÜ, ¥š?DÁýÍ$2_ íóY4, Ó‹¤_

(32)

\Uàíä0, 7 Service Agents jKTXãÊwFÍ$Š?퀎, WàãÊÀ¼ Í$CÓ¼Í$

@àÍ$à‹cÇ4.1 í-Zql, †BbÿªJ«à .NET Framework d•@

àÍ$íérœ„, ЫÜ (Operational Management), 1„ì}à«í¦m\

µ (Wà DCOM vs. Web Service °¥ vs. Ý°¥XML vs. Entity object j

í²Ï)

4.3.2 PDM Í$-ZUà Microsoft .NET

h PDM Í$-Zu¡5 .NET Architecture Concept Ç4.1-ZFql|V, àÇ4.2 Fý Ç4.2!€–1DÇ4.1uøší, Q-V}‡úÇ2_œÑ½bíËjâ,B-T

Client Browser

Web Server Layer

Activity Module Layer

Data Access Layer

Database Layer

Interface

Component Entity

DAC ADO.NET ASP.NET HTTP

SOAP over HTTP

Figure 4.2: PDM -ZqlÇ zp

Client browser ÿu×ð%ÊÚ72UàíZ½Â, du Internet Exploer C6 u Mozilla ,ñ, Uà6‚à¤,ñ©QƒBbFªŸí Web Server Layer, Z½Â }ø Web Server œÂ,ím7×.#îE«íUà6 Web Server Layer 3bŠàu

?DTXUà6D@àÍ$5Èí=1, éUà6?D*Í$2¦)ClæFÛbí

’m Ê PDM 2Uà6?D* Web Server Layer ¦)FFÛbíóÉù’m, du ùí·H, ùíóÉAº’m¦), ·.âN¬ Web Server Layer ¦)

Web Server ¸ Activity Module Layer 5Èí¦m›uUà Simple Object Acess Protocol(SOAP), ÀÓK榛ì (SOAP) u‚àÛæíæÒæ˜-Zé@

à˙5ȪJ˛¤Ç¦, 7.}\ÊÊ®ó …f£m7juJ Hypertext Trans- fer Protocol(HTTP) çfíj, J XML ·HǦíqñ 7F?D¡NÊÊí ŸÄuñ‡FíÊÊ·orN¬ port80 TǦ, ŸÄu×ÖbÊÊwì port80 F QYƒím7îÑdå_í HTTP ¦m›ì, 1.}éq¶Í$\·ïí8”êÞ, FJ SOAP ?D¡NÊÊ, 7®ƒF«íñ™

Ê Activity Module Layer 2}Ñú_¶}}u Interface  Component £ En- tity _ ú¶} 7 Interface _ ñíuTXø $øÞ#Uà6, 1/éUà6«

?D‚à¤_ íò¼ÞUà Component _  BbªJÊ Interface 2ì2Ö

ÞXÕ¶Uà6Uà, du Web Service Function Call Service Mobile Service 

(33)

Þ, ´ªJéÍ$y!Z4, ±Q Component _ íµÆßT Interface _ UàíŠ?Þu¦k-í Component Í$Š?1‹Jc¯, 7-í Component _ 1.ø− Interface _ æÊ, FJ1³¡5ƒ Interface _ , O Component _ 5ȪJóUà¡5 Õ¶íUà6«kUàÍ$Š?.âN¬ Interface ò¼c

¯ÞUൠComponent Í$Š?

Component _ 2ªJõTFí¼“jK, ¨ÖžÌÜ Workflow £ùÜ

_  Entities _ H[7Í$íǦÓK, ¤_ ¥_Í$2í’eAÑ® en- tity object, Bb«à® entity object ÊÍ$2©_ Tier 52f£, ¥_qlíi õÊkÉbBbí’eéZ‰, du Product ’e[Ó‹CÁý7/ø_hP, BbÉ ÛbÊ Entities _ 2T^Z, c_Í$f£ Product í¥_’eÿ}Z‰, 7 Entity _ ¥_Í$f£ÓKíiõÊkéBb'ñq^ZÍ$f£m7, Ó‹Í$ 4, ñq&

ˆÍ$f£’eíø_4

Data Access Layer Š?uTXÀUàí’eé_ , é,µUà6.Ûbø−T Ü’eéí, duàSUàãæ˙å (Stored Procedure) , Níuø<˛%ãlŸ ßí SQL NI, ÉbBbp¡bÿªJÏWF, ¦)FÛbí’m éN¥<·uÛb

’eé*íù“Aºn}Uàí, 7/.ª?Fí˙qlAº·nj’eé@v àSql, Ĥù“} u'½bí, FJBbnÛb}µql

Database Layer Š?uæ[Í$íF’e[, …Í$ñ‡UàíuÉ©’eé (Relational DB Server) Microsoft SQL server 2000, …Å—øO$“ÊÚ伎 ’ eHl£ª¾«=12ú’elæ¸}&íÖš4Û° SQL Server 2000 Öš4í Š?~¯v-®é$“ -Ê’elæjÞíb°, *×æ¦í $“ú$“(Business to Business;B2B) D $“ú¼Ž(Business to Commerce;B2C) ¼“=1ƒ_A UàíÀœ=1, ÝBkªJÅ—¦£Aºíœ4T“Û°

4.4 Uà 6Þµ(Web Server Layer)

Uà6Þµ3bŠàu?DTXUà6D@àÍ$5Èí=1, …éUà6?D*

Í$2¦)ClæFÛbí’m …ŠTÜUà6Þ, 1DŠ?_ µªW¦m à‹

øUà6Þµ¸wF@à˙}Ç, † ˙ªJÇêUà󰼎j4¸’eéæ¦

˙{í.°Uà6Þ, ?¹ Web Form  Windows Form ¸W_0 …µUà ASP.NET xXõTUà6Þ¸’e0¦€Ž -}Aú_3æVTzp, }uB óu ASP.NET  àSõTUà6Þ£àSUà ASP.NET T0¦€Ž

4.4.1 ASP.NET

ASP.NET u Microsoft Active Server Page(ASP) í|h…, ASP 3bŠ?u?D TXø_DUà6íæÜ, ñ‡¸ ASP ó°íŠ? Script ˙xk PHPPerl

˙xk ASP ˙3buà VB Script(Visual Basic) )Ÿ/€Â«˙{, 6ª JUà Java Script, ASP ªJuÖ íÓ VB ˙, 6ªJuÉ)bW VB ‹žk HTML ç2 ASP íÏW=13bu Internet Information Server(IIS) , 6ªJU à Psersonal Web Server(PWS) , , .¬ér4³ IIS ß, FJªœRŠ IIS VçT ÏW ASP í/€Â ASP uøÊ Server «TÜ˙{í=1, F Server f£!‹

B CLIENT u™Ä HTML í øO7k ASP .}Ä.°Z½Â¨A˙ÏW˜

Ïí8” 7/ñ‡×ÖbíUà6·uUà,T“Í$, Ĥ ASP Ê,Í$TXí IE Z½Â=1ÏW.}½æêÞ

Éuz ASP.NET wÑu ASP íh…, úFVz6Ø.t7, FJÿ‡ú…b 5ÈíÏæ4Tø_ªœ ASP.NET X¶Ö˙xk, ASP É?DUà Script xk Ÿ/€Â«˙{, |àí˙xkÿu VBScript D JavaScript, à‹´;Uàw…

Script xk, ÿ.âÇÕé_w…˙xkòå ASP u Script xk,Script uòå

í˙xk, òå˙xkíÿõs_, ø_ÿõu…ÿýÃãíGD.xe) åí=1 O ASP.NET D ASP .°,ASP.NET u)åí .NET =1, 7/X¶í

˙xkyÖš“ FJBbªJUà .NET FX¶íF˙xkVõT, du Visual Basic .NET Visual C] C JScript .NET ˙xk

(34)

ASP.NET ª ASP y0íÏW^0, ASP.NET Ê .NET Framework 2ÏW í, 6ĤFªJàƒ .NET Framework ÊÏWv‚Ê^0,íø<#“Zª, 7/

Fí ASP.NET ˙{îJ)å¬íu°xkÏWv‚˙{Ê/€Â,ÏW, 7.u Sàòåíj, ¥š ASP.NET ªJUào‚©! (early binding) VT^0íT¯

-dıÜ ASP xX£TXø_ ASP Wä ASP f¦J asp шf±, … uø_dåf, Î7¨Ö!…í HTML tags Õ ´ªJ¨Ö ASP í˙{ (Script)

ASP í˙{uJ<% . . . %> í™pV¸ HTML –} HTML tags Š?uàVý

’eUà, du<HTML><TITLE><BODY> <H1> . . . , <HTML>, H[ HTML æÜíÇá, 7 </HTML> †H[ HTML æÜí!! <TITLE>¸<

/TITLE>5È, Ö0æÜí™æ, ™æéýÊZ½Â|,µ <BODY>¸< /BODY>5 È, ׶}àkÖ0æÜíqñ, ¥<qñøòQ×ÛÊZ½Âe¢q <H1>[å (Head- ing) àÊ#|dåí½b4, éUà6ªJN¬.°í Heading V–}FÊíı

ASP í Scripts ¦uUà VBScript, Êf2\¨Ê<% . . . %>í™p2 Script íqñ¶}uÊ/€Â«ÏWí çUà6Ê/€Â,b°x asp ˆf±ífv, /€

Â}Ê asp f2©vÊ<% . . . %>í™p˙{, Ê/€ÂÏW(z!‹f#Uà 6íZ½Â2

ÛÊBbõø_õÒíWä ø_À ASP ˙, FTXø_Àí=1éUà6 D/€Âßލ, Uà6*Z½Â2pâ±£E, /€ÂYƒUà6íb°5(, Ç áÏW ASP í Script , 1/z|(!‹à HTML f#Uà6íZ½Â

User Input

Figure 4.3: ASP ÏW¸W, Uà6pâ±£E

ASP Script

Figure 4.4: ASP ÏW¸W, /€ÂÏW Script, 1fÏW(!‹

Ç4.3 ýøÇáUà6p±åDEíåÞ QOÇ4.4 ý/€Â«QYƒUà 6b°ÏW echo.asp f, 1/QYƒUà6pí¡b}u±å¸E Ç4.5 éý

(35)

Figure 4.5: ASP ÏW¸W, Uà6Z½ÂQY*/€Âfí HTML !‹

Figure 4.6: ASP ÏW¸W, Uà6Z½Âý HTML !‹

Uà6Z½ÂQY/€Â«fí HTML !‹, Z½Â}Œõ¤ HTML í™p, 1 z!‹ýÊZ½Â, Ç4.6 éýUà6ÊZ½Â2õƒí!‹

4.4.2 User Interface Design

qlUà6åÞ3bu¡5J‡ SME-PDM íÏWåÞVTql BbõTíUà6ž

ÌÜ, uTX#žÌÜ6VTqì, .âõTJ-áåÞ

• Uà6épåÞ

• ¶ÆóÉåÞ

hÓ¶ÆåÞ ŒÉ^Z¶ÆåÞ ¶ÆiHÜ qì¶Æ¼µÉ[ ǶƼ µÉ[

• iHóÉåÞ

hÓiHåÞ ŒÉ^ZiHåÞ iHAºÜ

• AºóÉåÞ

hÓAºåÞ ŒÉ^ZAºåÞ AºžÌqìåÞ

ÊqlJ,åÞ|UàíxXu DataGrid /€Â−„á, DataGrid ÿuF‚

í’ej, …uø_Ý#×í−„á, 1TX”wêc/îóíŠ?Vég榒e

DataGrid /€Â−„á}Jj row∗column íjéýø°CuÖ°í’e 7/

…DBbFUàí Activity Module Layer 2í Entity Module í Dataset êc íX¶, éBb'ñqTÜ’e Q-V, }ý‚à DataGrid `TíUà6åÞ, âk õTíåÞØÖ, FJÉTX¶ÆqìåÞ

(36)

Figure 4.7: Uà6²¦Uà)4²á Figure 4.8: DataGrid Ê)4_Uà DropDown List

Figure 4.9: UàDropDown List ²¦;b qìí,¶Æ

Figure 4.10: ,¶ÆZ‰(íÕG

(37)

4.4.3 Cache

Cache[7]xXÿuzUà6àí’mæ[Êp[ñ2, é/€Â?D0§*p[ñ2¦

)Uà6Ûbí’m, 1f#Uà6 7/æܸøOí Windows @à˙1.ó°, æÜUàíu HTTP xX, HTTP uÌÕG(stateless) í¦m›ì, ²Æuz, Web Form æÜu³ÕGí, JÌÔyqì, /€Âú©ø_ request .}A<®_

request u´·VAó°íàE«, ú©ø_ request øe°C ©øŸí request %D

·}Uæܽh , 6ÿuz, Éb/€ÂêAUà6/ø_æÜTÜT“1zFf£

Z½Â5(, }ÎvæÜíF’m ç-ŸæÜy\Uà6ãÊUàv, /€Â.ây

½høc_TÜ˙å½TøŸ BbnjæÜíÏW¬˙5(ªJnj, à‹ø_Uà6,

Uà/ø_æÜ, ¥v`BbÉbzUà6Ûbí’mp“æ[ƒp[ñ2, Uà6ÿª J'0í*p[ñ2¦)Ûbí’m

0¦xXÊ ASP.NET æÜ2}Ñ°ø_ Web @à˙¸.°àE«í’ef]¸

\æ£ °ø_àE«¸/€Â5Èí’ef]¸\æ ú@B ASP.NET }u Appli- cation ÓK¸ Session ÓK

Application Cache

Application Cache ÓKÿu ASP.NET @à˙ír4‰b, ÊÍ$2æ[FU à6u°í’e, duUà6í×Uò{ læÊ Application Cache ÓK2í’eÎÝ

\ÎC¦H, ´†p[ñ.}„[|V ¥DøOæÜ'×í.°, æÜF2àí’Ä Ê request !!5(ÿ}\ Web Server Î ⤪ø, Uà6æ[Ê Application Cache ÓK2í’e|ßuUà6%Uàí, .ª×¾æ[Uàä0.òí’e, ¥š ñq¨‘Í$’Ä

Application Cache ÓKªJéÖ_Uà6°væ¦ó°Êp[ñ2í’e, ĤB b.âü\ Application Cache ÓK°¥ÕG, fnßÞ race condition ¥uN/_

Uà6ÊèŸ/ø_‰b, O¥_T´³ÏWêH, ˇÍÇÕø_Uà6Hi蟰

ø_‰b, ¥Bb˚Ñ race condition Ê Application Cache ÓK³ÞBbUà Lock

¸ Unlock s_j¶Vfn

Session Cache

Session Cache ÓKæ[Uà6í TÕG, ¸ˇÌkUà6ÇáÏWZ½ÂBZ½ÂÉ

£wÈí TÕG à‹.°íUà6Uà°ø_ Web Server, †©ø_Uà6·}

®AË.°í TÕG °ø_Uà6×Ç Web Server, É£Z½Â5(yDíu, 6}Ëø_hí TÕG _¯æ[Ê Session Cache ÓKí’eu\æ‚Ìœs Ü

> /˘k_ T¼¨í’e

ASP.NET }A<…VAÀøZ½ÂàE«íb°, 1øwUà Session Cache Ó Kæ[’e, ÄÑ©ø_Uà6.°í session Cache ÕG¸ application Cache Ó K.ó°, .} race condition í½æêÞ, FJ Session Cache xœßíØk4

¸ô4, _àk Web cluster, Ó‹@à˙íô4 Session Cache ÓK|×íÿ õu^?, ÄÑ©ø_Uà6·ËAÐ.°í TÕG, çUà6Ö, Í$.âàVæ [íp[ñ}yÖ

A Cache Example

Üê Application Cache ¸ Session Cache 5(, -dıÔø_õÒWäé×ð?

DÀU}¥s0¦€Žíρ cqø_Í$, ³Þø« Web Server œÂ, ø«

’eé/€Â, ¥« Web Server ©QƒÕ¶æÒæ˜, ¥uÍ$€áÕG, àÇ4.11, 1 .æÊ Application Cache ¸ Session Cache  ÛÊøPUà6 George * ClientA

©QépÍ$, àÇ4.12 Í$êÛ Application Cache 2Uà6 George ò{.æÊ,

¤v Web Server ©(ƒ DB Server 2¦)FUà6í×Uò{ ç Web Server

*’eé2¦)Uà6í×Uò{5(, }zFæ[ƒ Application Cache 2, àÇ4.13 ÄÑ¥<’muFUà6·ªUàí’e, ¥v Application Cache ˛%æ[Uà6

×Uò{ ç Web Server ŒêUà6 George ò{ Application Cache 2í’e

(38)

ó°5(orªpÍ$, Uà6 George ÇáÏW_AÛ°D Web Server ßލ, à Ç4.14 b°ŒÉAÐ Project óÉAº±˚, ¥vÍ$B’eé2ŒÉ’e, 1zŒÉ) ƒí’m[0Ê Session Cache 2, 5(à‹ñ‡Uà6×ǤæÜyD¤æÜv, Z ªUà Session Cache 25‡FUàí’e |(, çUà6×Ç7Í$ Session Cache Z}¾Ü, àÇ4.15, Ou~·< Application Cache 1³¾Ü à‹5(¢Çø_

Uà6©QƒÍ$v, Í$ÿ.ÛbÊ’eé©Q¦)Uà6’e, ÉbUàp[ñ2í Application Cache ÿªJŒÉƒUà6×Uò{, 5(Uà6Q-VíTD5‡ó°, _A TÕGæ[Ê Session Cache 2, Y¤éR

Internet DB

Server Web Server

ClientA

ClientB

ClientC

Figure 4.11: Í$€áÕG

Internet DB

Server Web Server

ClientA

ClientB

ClientC

George

Request login Get all user password

Figure 4.12: Uà6George épÍ$

Internet DB

Server Web Server

ClientA

ClientB

ClientC

George

Request login

Application Cache Data All user password

Figure 4.13: ßÞApplication Cache

Internet DB

Server Web Server

ClientA

ClientB

ClientC

George

Query project member

Application Cache Data All user password

Session Cache Data Project member

Figure 4.14: ßÞSession Cache

Internet DB

Server Web Server

ClientA

ClientB

ClientC

Application Cache Data All user password

Figure 4.15: Uà6×Ç,Session Cache ¾ Ü

4.5 Š ?_ µ(Activity Module Layer)

¤µíŠ?uTXÍ$¼“j4Š?, ñ‡Í$õTí¶}užÌÜ, duŒÉUà6×

Uò{u´£ü, Uà6žÌqì_ Š? J(ùÜ_  ˙‰yÜ_  Ó eÜ_ , ·u˘kŠ?_ µ2íø¶M ªJzuÍ$Š?Ž-øõ6.Ѭ Ê

¥_¶}ªœµÆíxXuBb.âTÜø<æ (transation) ½æ, ÄÑ'Ö¼“j4

(39)

Š?uxßå4”, ¥<Š?.â\£ü/ŸåíêA, ´†.â+ƒŸVíšä, Ê¥_¶} .NET Framework 2íxXuUà BizTalk Server ¼“jK, ¤jK¦

àVõT¼“ workflow, Ê PDM Í$26ÛbUà workflow, Ô_WäVz, Êù

Ü_ íŠ?³, 'Öùíó.Ûb%¬µµÉµ, duùÜ6°< ù%

Ü°<. . .  .¬ñ‡õTí¶}³Uàƒ¥_xÍ,

Data Access Layer Interface Module Component Module

Entity Module Web Server

SOAP over HTTP

API

Figure 4.16: Actvity Module Layer Architecture

Š?_ µÍ$-Z, àÇ4.16, ÊŠ?_ µ2}Ñú_¶}} Interface  Component £ Entity ú¶} Interface Module 3bŠ?uTXø_ Web Ser- vice Þ# Web Server Layer Uà, 1/‚à Interface Module zµ Component Module íŠ?¥_éÛ#Õ¶Uà6, ….cÁýUà6òQQ¾ Component Mod- ule ³Þí¼“Š?, 7/ªJTòÍ$ér4 Component Module uÍ$Ž-Š?,

…¨ÖFí¼“j4Š? Entity Module uø_Ö |Ví_ , BbUà¤_ d ìqlFí¼“õñjK, duîE’e ¶Æ’e iH’e’e-Zql Ê©µ 2Fí method ·Uà¤_ TÑfm7íd, ˙qlvÖÍÖ7ø<¥ , .¬ Entity Module ºªJ××Ó‹Í$&ˆíjZ4 ÝBÊqlÍ$¼¨, F˙

qlÉbYW¤_ VTql, ÿªJÍ$2FíÓKǦ Q-V, -dı}â ,B-úkŠ?_ µÍ$-ZTøJÌÜ

4.5.1 Simple Object Access Protocol Introduction

SOAP(Simple Object Access Protocol) uøJ HTTP Ñ!€í›ì, 1àk>² Web ,í!ZDG’m øï/€ÂQYƒ XML ’e, /€Â}Uà XML }

&Âø’ež²AÑ XML fJjZUà6Uàv’e

XML introduction

XML(Extensible Markup Language) ô.™pxk, …uøÓdåíAB·Hxk, Uà6.Uਫ, XML dK·?DéUà6Êø_Ç[ídåf2Çó è

¦Dæ[’e HTML D XML dKøš·u™pxk, .¬ HTML Uà™Âí ñíuàVý’e, 7 XML Uà™ÂíñíuàV·H’eí XML ʼ“íà¤

õ.Ý×, duªJUà…V·H’eéCuf£ÚäsKí, ·u…í@à, « wÊ.°íÍ$5Èí’mà‹ÛbǦ, Í$È·ªJN¬ XML m7>¼, Éb Bb?Dnj XML íÿªJ'ñqé.°íÍ$Èßލ, 1‚à XML m7

Ó‹Í$íØk4

øM XML dKuâs_¶M A: åd (prolog) DdKjÖ (document element)

ådí¶M6ªJ¨Ž-²Ï4íbÖ: dKGŽµ, Šì2dKíGD!Z å d¨Ö¤ XML dKUàíxk_, £ XML dK…Žµ øM™Ä XML dK

參考文獻

相關文件

Since huge quantities of transactions are involved in daily operations of a hotel, the accounting department always has to deal with complicated calculations which undoubtedly

Based on the observations and data collection of the case project in the past three years, the critical management issues for the implementation of

In this thesis, we develop a multiple-level fault injection tool and verification flow in SystemC design platform.. The user can set the parameters of the fault injection

Through the enforcement of information security management, policies, and regulations, this study uses RBAC (Role-Based Access Control) as the model to focus on different

This study chose a qualitative research method to explore more in-depth information access strategy for the establishment of many commodities, institute of emphasis from

They are basic information module, housing data module, customer information module, customer payment module, maintenance module, house delivery module and data printing

dimensions: data transmission, data reception, customer service, supply of information, fees collection, and operation platform, which will serve as the six

Our preliminary analysis and experimental results of the proposed method on mapping data to logical grid nodes show improvement of communication costs and conduce to better