• 沒有找到結果。

研究結論

在文檔中 中 華 大 學 (頁 49-75)

本研究使用實驗法探討資料庫系統中資料表示方式與任務複雜度對使用者查詢 及更新資料庫績效的影響。我們使用水平式綱要與垂直綱要作為本研究的資料表示 方式。在任務複雜度方面,則依據使用者撰寫查詢敘述的 Halstead’s 難度衡量子來 表示查詢的複雜程度。查詢績效則是由正確性、時間、信心程度三個構面來表示。

本研究使用實驗法探討資料表示方式與任務複雜度對使用者查詢績效以及更新資料 庫查詢績效的影響。查詢績效方面的實驗結果顯示不同的資料表示方式,除了時間 之外,在正確性與信心程度存在顯著的差異。在更新資料庫查詢績效實驗結果顯示 不同的資料表示方式,除了資料表示方式之外,其他正確性與信心程度存在顯著的 差異。而在不同的任務複雜度,使用者查詢績效(正確性、時間、信心程度)均存在 顯著的差異,此結果與過去的研究相同(Borthick et al.,2001);而在不同的任務複雜 度,使用更新資料庫者查詢績效,除了正確性之外,時間、信心程度均存在顯著的 差異。

本研究的研究結果,對於資料庫系統的實務應用上可以提出以下的建議。使用 者根據垂直式綱要撰寫查詢敘述時,查詢轉換相較於根據水平式綱要撰寫查詢敘述 要來的困難,因此導致使用者撰寫查詢敘述較容易出錯,使用者對自己完成查詢敘 述的正確性也較無信心。本研究建議當組織需要處理具有大量屬性的稀疏資料時,

可使用垂直式綱要儲存資料,但是資料展現給一般使用者時,可以透過視界(View) 將垂直式綱要資料表以水平式綱要的方式展現,如此可同時保有垂直式綱要與水平 式綱要的優點,降低使用垂直式綱要對使用者造成的障礙。

根據研究結果顯示,未來研究方向我們將改善計算任務複雜度之公式以及加強 資料表示式之訓練。在計算任務複雜度方面,我們使用 Borthick 等人(2001)提出的 Halstead’s 難度衡量子(Difficulty Measurement)來做為我們的計算公式,根據我們研 究的結果顯示此公式在計算任務複雜度方面有很大的問題,所以在未來的研究裡,

我們希望改善計算任務複雜度的公式。

另外一方面在資料表示式之訓練方面,我們根據使用者對資料表示式制定使用

流程手冊之設計,內容包含綱要、問題、及答案,等於訓練手冊中含有資料庫之觀 念、個案、及解答。以及訓練環境是指訓練活動進行時之實體環境或軟性的情境,

如學校等,訓練工具是指訓練活動進行過程中所使用之講義、口述、電腦等,訓練 教材則指訓練課程之內容、架構、編排等,以降低使用者對資料表示式之了解不夠 造成使用者的信心不足。

參考文獻 參考文獻 參考文獻 參考文獻

1. Acharya, S., Carlin, P., Galindo-Legaria, Kozielxzyk, K., Terlecki, P., and Zabback, P.

“Relational Support for Flexible Schema Scenarious,” Proceeding of the 34th

VLDB Conference, 2008a .

2. Acharya, S., P., Galindo-Legaria, Joshi, M., Krishnaswamy, Stefano, S., and Terlecki, P. “Filtered Indices and Their Use in Flexible Schema Scenarios,” Proceeding of

IEEE 24th International Conference on Data Engineering, pp. 1259-1266, 2008b.

3. Agrawal, R., Somani, A. and Xu, Y. “Storage and Querying of E-commerce Data,”Proceeding of the 27th

VLDB Conference, 2001.

4. Allen, G. N. and March, S. T., “The Effects of Stare-Based and Event-Based Data Repreaenation on User Performance in Query Formulation Tasks,” MIS Quterly (30:2), pp 269-290, 2006.

5. Beckmann, J. L., Halverson, A., Krishnamurthy R., and Naughton, J. F. “Extending RDBMSs To Support Sparse Datasets Using An Interpreted Attribute Storage Format,” Proceedings of the 22nd International Conference on Data Engineering, pp. 58-58, 2006.

6. Borthick, A. F., Paul, L. B., Donald, R. J. and Tse, H. K. “The Effects of Information Request Ambiguity and Construct Incongruence on Query Development,” Decision

Support Systems , pp. 3-25, 2001a.

7. Borthick, A. F., Paul, L. B., Liew, T. S. and Fiona, H. R., “The Effects of Normalization on End-User Query Errors: an Experimental Evaluation,”

International Journal of Accounting Information Systems, pp.195-221, 2001b.

8. Paul, L. B., Robert, A. O., Fiona, H. R., “Analysis of Competing Data Structures:Does Ontological Clarity Produce BetterEnd User Query Performance,”

Journal of the Association for Information Systems (7:8), pp. 514-544, 2006.

Abstraction Levels on Query Performance,”MIS Quarterly (17:4), pp. 441-459, 1993.

10. Chan, H. C., Wei, K. K., and Siau, K. L., “The Effect of Data Model, System and Task Characteristic on User Query Performace – A Emprical Study,” ACM SIGMIS

Database (29:1), pp. 31-49, 1997.

11. Chan, H. C., Tan, B. C. Y., and Wei, K. K., “Three Importmenet Determinants of User Performance for Database Retrieval,”International Journal Human-Computer

Studies (51), pp. 895-918, 1999.

12. Chan, H.C. and Teo, H. H, “An Evaluation of Novice End-User Computing Performance: Data Modeling, Query Writing, and Comprehension,”Journal of the

American Society for Imformation Science and Technology (56:8), pp. 843-853, 2005.

13. Chu, E., Beckmann, J. and Naughton, J. “The Case for a Wide-Table Approach to Manage Sparse Relational Data Sets,” Proceedings of the 2007 ACM SIGMOD

international conference on Management of data, pp. 821 - 832, 2007.

14. Debreceny, R. S. and Bowen, P. L., “The Effects on End-User Query Perfirmance of Incorporating Object-Orented Abstractions in Database Accounting Systems,”

Journal of Information Systems (19:1), pp. 43-74, 2005.

15. Jih, W. J. K., Bradbard, D. A., Snyder, C. A., Thompson, N. G. A., “The Effects of Relational and Entity-Relationship Data Models on Query Performance of End Users,”International Journal Man-Machines Studies (31), pp.257-267, 1989.

16. Liao, C. and Palvia, P. C., “The Impact of Data Models and Task Complexity on End-User Performance: An Experimental Investigation,” Int. J. Human-Computer

Studies (52), pp. 831-845, 2000.

17. Ogden, W. C., “Implications of A Cognitive Model of Database Query; Comparison of a Natural Language, Formal Language and Direct Manipulation Interface,” ACM

SIGCHI Bulletin (18:2), 1986.

18. Reisner, P., “Human Factors Studies of Database Query Languages: A Survey and

Assessment,”ACM Computing Surveys (13:1), pp. 13-31, 1981.

19. Siau, K.L., Chan, H. C., Kwok, K. W., “Effects of Query Complexity and Learning on Novice User Query Performance With Conceptual and Logical Database Interfaces,” IEEE Transations on Professional Communication (34:2), pp.276-281, 2004.

20. Topi, H., Valacich, J. S., and Hoffer, J. A., “The Effects of Task Complexity and Time Availability Limitations on Human Performance in Dayabase Query Tasks,”

International Journal Human-Computer Studies (62), pp. 349-379, 2005.

21. Wood, R.E., “Task Complexity: Definition of the contruct,” Orgrnization Behavior

and Human Decision Process (37:1), pp. 60-82, 1986.

22. Paul, L. B., Robert A. O., and Fiona H. R., “Analysis of Competing Data Structures:

Does Ontological Clarity Produce BetterEnd User Query Performance,” Journal of

the Association for Information Systems (7:8), pp. 514-544, 2006.

23. Vessey, I., “Cognitive fit: A theory-based analysis of graphs vs. tables literature,”

Decision Sci (22:2), pp. 219-240, 1991.

24. Daniel J. Abadi, “Column-Stores For Wide and Sparse Data”, 3rd Biennial Conference on Innovative Data Systems Research (CIDR) January 7-10, 2007, Asilomar, California, USA.

附錄 附錄 附錄 附錄

附錄一 資料表示式-水平式綱要

附錄二 資料表示式-垂直式綱要

附錄三 資料表示式-水平式綱要測驗用之資料庫個案

該公司網路卡的測試流程概略如下:

某公司生產網路卡,依據網路卡的用途不一樣,會有不同的型號,若現在要 生產一批網路卡,每一張網路卡都有一個網路識別碼(Mac Address),而且是唯一 的廠商在出廠時即燒在晶片上面,我們可以利用網路識別碼(Mac Address)來做網 路監控或控管。

我們目前要生產一批網路卡,其工單編號(WoNo)為 E12345(其中工單編號 WoQty 為生產的數量)。首先公司將每張網路卡進行零件組裝,組裝的網路卡半 成品即印刷電路板(Pcb),此時機器會將晶片、插槽等組成一張完整的網路卡,

經過組裝完成後,機器會給每一張網路卡一組編號為電路板編號(PcbaNo)和網路 識別碼(Mac Address)記錄在韌體裡,例如:PcbaNo 為 s1.012345678 與網路識 別碼為 00E0180EB221。

根據網路卡型號的不同,會有不同的測試路徑,在測試細項(TestRecord)的 測試路徑為 20 個不同測試的程式,由產品(PdtInfo)的產品料號(PartNo)與工單編 號 (WoNo) , 我 們 可 以 知 道 工 單 編 號 為 E12345 的 測 試 網 路 卡 程 式 名 稱 (TestPrgName) 包 含 Mac_Assign 、 DownLoad 、 Function_Test 、 Wireless_Throughput、Barcode,為了要測試網路卡為可使用的產品,透過網路 識別碼(Mac Address)與電路板編號(PcbaNo)我們可以開始進行測試,經由工單數 量(WoQty),透過數量(WoQty)我們可以得知網路卡投入的數量(InputQty)、完成 數量(FinishQty)以及失敗數量(DefectQty),由這些數量我們可以算出這一批網路 卡的成功(Pass)與失敗(Fail)數量。

(TestPrgName),此測試細項(Routing)包含著 5 個測試程式(TestPrgName),在測試 細項每個測試程式(TestPrgName)會分成很多的工作站(Station),每個工作站都會 有一位負責的員工(Tester)以便處理突發狀況,測試(TestRecord)與測試程式名稱 (TestPrgName)如下:Mac_Assign、DownLoad、Function_Test、Wireless_Throughput 以及 Barcode 為繼承關係,父類別為測試(TestRecord)記錄著負責的員工(Tester)、

產品的流水編號(Uid)、網路唯一識別碼(Mac Address)、測試站 (Station)、錯誤訊 息或代碼(ErrorCode)、測試一台機器所花的時間(Duration)、建立的日期時間 (CDT) 、 測 試 結 果 (Result) 、 以 及 生 產 線 (Line) ; 子 類 別 則 為 測 式 的 程 式 (TestPrgName)。一個完整的測試,從第一測試站 Mac_Assign 連結 PcbaNo 和 Mac 去做測試,若該張網路卡測試正常則推進為第二站,一直到最後一站條 碼資料(Barcode),此時網卡上除了有電路板編號(PcbaNo)和網路識別碼(Mac Address)外,還會給一個產品的出貨序號(Sno)。

測試(TestRecord)裡的 Duration 屬性是記錄每張網路卡在每站完成所需花費 的時間,例如:經過 Function_test 站完成此站時,就會記錄一次完成測試的花費 時間;每一張網路卡的測試記錄產生的時間日期,都會記錄在 CDT(Created datetime)屬性裡。

若是 E12345 的某張網路卡在測試過程中的 5 站其中一站無法通過測式,我 們會重新測試該站,如果該站成功就繼續往下一站測試,若重新測試三次依然還 是顯示錯誤(FAIL),我們將記錄網路卡異常(ErrorCode)的現象,紀錄結束後,網 路卡就必須送修。由於維修需要時間,生產線不會等測試 FAIL 的網卡維修完成,

故生產線會先補一張新的網路卡到 E12345 的工單裡。當送修的網卡維修完成之 後,會再投入 E12345 的工單裡,但如果 E12345 工單已經完成,則會投入到下 一套工單中。

1. 找出產品名稱(ProductName)為”無線網卡”的料號(PartNO) 複雜度=3.28

select PartNo from PdtInfo

where ProductName='無線網卡';

2. 找出 PcbaNo 為'S1.01234'的產品的 MAC 編號(MAC) 複雜度=8.08

Select TestRecord.Mac

From Mac_Assign, TestRecord

Where Mac_Assign.Uid = Test_Record.Uid And Mac_Assign.PcbaNo='S1.01234'

3. 找出 MAC= '001A92123456'的產品,在 Download 完成製程後的全部資料 複雜度=9.65

Select *

From TestRecord,DownLoad

Where TestRecord.Uid= DownLoad.Uid And TestRecord. MAC ='001A92123456' And TestRecord.TestPrgName='DownLoad';

4. 找出產品名稱(ProductName)為”無線網卡”的測試路徑(Sequence, TestPrgName)

複雜度=7.58

Select Sequence, TestPrgName from PdtInfo, Routing

where PdtInfo.PartNo = Routing.PartNo And ProductName='無線網卡';

5. 找出 PcbaNo 為'S1.01234'的產品,在完成 Function_Test 製程後的結果 (Result)

複雜度=17.24 Select result

From TestRecord ,Mac_assign,Download, Function_Test Where TestRecord.Uid= Mac_assign.Uid

And TestRecord.Uid=Function_Test.Uid And TestRecord.Uid=Download.Uid

And TestRecord.PcbaNo='S1.01234'

And TestRecord.TestPrgName='Function_Test';

6. 找出 MAC 編號為'001E53'的產品,在完成 Download 站製程後 Param1 與 Param2 的值

複雜度=10.91

Select Param1, Param2

From TestRecord,DownLoad

Where TestRecord.Uid= DownLoad.Uid And TestRecord. MAC ='001E53'

And TestRecord.TestPrgName='DownLoad';

7. 找出歷年來進行 Function_test 製程時,使用測試程式所測得產品錯誤型式 與該錯誤型式所發生的次數,並請將結果依發生錯誤次數由大到小排序。

複雜度=8.98

Select TestPrgName,count(ErrorCode)as EC,ErrorCode From TestRecord

Where TestPrgName=’Function_Test’

Group by TestPrgName,ErrorCode Order by EC desc;

8. 請找出工單 E5566 在 Mac_assign 負責的測試人員 複雜度=13.73

Select Tester

From WoInfo,TestRecord,Mac_Assign Where WoInfo.WoNo=TestRecord.WoNo And TestRecord.Uid=Mac_Assign.Uid And TestRecord.WoNo='E5566'

And TestRecord.TestPrgName='Mac_assign'

9. 請找出在 Mac_Assign 站中生產國家(Domain)為”JAPAN”的工單編號 (WoNo)(相同工單編號僅需列出一次)

複雜度=8.96

Select distinct TestRecord.WoNo

And TestRecord.Domain='Japan';

10. 找出編號(WoNo)為 E91143 的工單,在”2008-Sep-01”日完成 DownLoad 站製程的產品數量

複雜度=13.6

select count(distinct PcbaNo) from TestRecord,Download

where TestRecord.Uid=Download.Uid and TestRecord.WoNo = ' E91143

and TestRecord.CDT between TO_DATE('2008-Sep-01','YYYY-Mon-DD') and TestRecord. result=’pass’;

11. 找出編號(WoNo)為 E91143 的工單,每個已經完成 Download 製程的在製 品,在 Download 製程的平均工時。

複雜度=7.75

Select avg(Duration) From TestRecord

Where WoNo=' E91143' And TestPrgName='Download' And result='pass';

12. 找出工單編號為(WoNo)E91143 中已經完成 Mas_Assign 製程,但是尚未 進行 Download 製程產品的 MAC 編號

複雜度=17.93 select distinct Mac

from TestRecord, Mas_Assign

where TestRecord.Uid= Mas_Assign.Uid and TestRecord.WoNo=' E91143'

and Mac

Not In(select distinct Mac from TestRecord,Download

where TestRecord.Uid= Download.uid and TestRecord.WoNo=' E91143');

13. 要建立一個表格,請更新一個測試程式 ADSL_Test,ADSL_Test 裡面的欄 位為下:

Uid,Mac,WoNo,TestPrgName,PcbaNo,TADSL,THUB

Uid Mac WoNo TestPrgName PcbaNo TADSL THUB 7833 01E5 E5566 ADSL_Test s4.32485 103 24

複雜度=10.61

Create table ADSL_Test (

Pcbano char(12) Not Null, TADSL varchar(50) Null, THUB varchar(50) Null, Uid int Not Null,

Uid integer references TestRecord(Uid) );

14. 上述表格資料值(Uid.Mac.Tester…THUB)更新至 ADSL_Test 測式程式裡 複雜度=15.13

Insert INTO TestRecord (Uid,Mac,WoNo,TestPrgName) Value (7833, '01E5','E5566', 'ADSL_TEST');

Insert INTO ADSL_Test (PcbaNo,TADSL,THUB) Value ('S4.32485',103,24);

15. UID 編號為 123 的在製品它在 Download 製程完成時,結果多了一個 param4 的屬性,其值為 0.1,請將此資料存至資料庫中。

複雜度=5.42

Create table Download (

param4 varchar(12) Not Null );

Insert Into Download(param4) Value ( 0.1);

附錄四 資料表示式-垂直式綱要測驗用之資料庫個案

該公司網路卡的測試流程概略如下:

公司生產網路卡,依據網路卡的用途不一樣,會有不同的型號,若現在要生 產一批網路卡,每一個網路設備都有一個網路識別碼(Mac Address),而且是唯一 的是廠商在出廠時即燒在晶片上面我們可以利用網路識別碼(Mac Address)來做 網路監控或控管。

首先公司將每張網路卡進行零件組裝,組裝網路卡的半成品即印刷電路板 (Pcb),此時機器會將電阻、電容、晶片和插槽等,全部組裝成一張完整的網路 卡,經過組裝後,機器將給每張網路卡一組印刷電路板編號(PcbaNo)和網路識別 碼(Mac Address)記錄在韌體裡。利用網路識別碼(Mac Address)與電路板編號 (PcbaNo)我們可以開始進行各站的測試,透過在製品(Working IP)的上線代碼 (Wip),是 0 或 1,若正在測試則顯示 1,否則表示為 0。

根據網路卡型號的不同,會有不同的測試路徑(Routing),在測試程式(TestPrg) 有 20 個不同測試的程式,由產品(PdtInfo)的產品料號(PartNo)與工單編號 (WoNo),可以決定這批網路卡工單編號(WoNo)為 E12345 的測試路徑(Routing),

由測試程式(TestPrg)得知,工單編號(WoNo)E12345 經過 5 個測試程式名稱 (TestPrgName) 包 括 : Mac_Assign 、 DownLoad 、 Function_Test 、 Wireless_Throughput、Barcode 測試。為了要測試網路卡為可使用的產品,透過 網路識別碼(Mac Address)與電路板編號(PcbaNo)我們可以開始進行測試,例如:

工單編號 E12345 正在測試 Mac_Assign 程式時,Mac_Assign 的屬性包括:負責 各站的測試員工(Tester)、測試記錄的流水編號(Uid)、網路識別碼(Mac Address)、

測試站 (Station)、錯誤異常代碼(ErrorCode)、Duration 屬性是記錄每張網路卡在

錄產生的時間日期、測試結果(Result)、以及生產線(Line)、印刷電路版編號 (PcbaNo)、國別(Domain)、FwName(版本名稱)、FwVer(使用版本),得出屬性結 果值擺放到測試記錄(TestRecord)的值(value)裡,屬性還是放置為測試項目(TestItem) 裡的測試項目描述(TestItemDescription)裡,測試項目(TestItem)記錄著測試項目種 類(TestItemDescription)的結果。

一個完整的測試,從第一測試站 Mac_Assign 開始測試時,首先已經有 PcbaNo 編號,此程式在做寫入 Mac Address 接下來用 PcbaNo 和 Mac Address 做測試,則推進為第二站,一直到最後一站條碼資料(Barcode),此時網卡上除 了有電路板編號(PcbaNo)和網路識別碼(Mac Address)外,還會給一個產品的出貨 序號(Sno)。

若是 E12345 的某張網路卡在測試過程中的 5 站其中一站無法通過測式,我 們會重新測試該站,如果該站成功就繼續往下一站測試,若重新測試三次依然還 是顯示錯誤(FAIL),我們將記錄網路卡異常(ErrorCode)的現象,紀錄結束後,網 路卡就必須送修。由於維修需要時間,生產線不會等測試 FAIL 的網卡維修完成,

故生產線會先補一張新的網路卡到 E12345 的工單裡。當送修的網卡維修完成之 後,會再投入 E12345 的工單裡,但如果 E12345 工單已經完成,則會投入到下 一套工單中。

請依據上述公司描述,依序回答下列問題

1. 找出產品名稱(ProductName)為”無線網卡”的料號(PartNO) 複雜度=3.28

select PartNo from PdtInfo

where ProductName='無線網卡';

2. 找出 PcbaNo 為'S1.01234'的產品的 MAC 編號(MAC) 複雜度=3.58

Select Mac From TestRecord

Where TestRecotd.PcbaNo='S1.01234';

3. 找出 MAC= '001A92123456'的產品,在 Download 完成製程後的全部資料 複雜度=5.72

Select TestItemDescription,Value from TestRecord

where MAC='001A92123456' and TestPrgName='Download';

4. 找出產品名稱(ProductName)為”無線網卡”的測試路徑(Sequence, TestPrgName)

複雜度=15.8

Select Sequence,TestPrgName

from PdtInfo,Routing,TestDetail,TestPrg where PdtInfo.PartNo=Routing.PartNo

And Routing.TestRoutingID=TestDetail.TestRoutingID and Routing.TestRoutingID=TestPrg.TestRoutingID and PdtInfo.ProductName='無線網卡';

5. 找出 PcbaNo 為'S1.01234'的產品,在完成 Function_Test 製程後的結果 (Result)

複雜度=7.24

Select TestItemDescription,Value from TestRecord

where PcbaNo='S1.012345678' and TestItemDescription='Result' and TestPrgName='Function_Test';

在文檔中 中 華 大 學 (頁 49-75)

相關文件