An Online Auction System for Selling Fiber Products
Total Page:16
File Type:pdf, Size:1020Kb
Submitted by Csaba Ilonka Submitted at Research Institute for Symbolic Computation Supervisor Assoc. Univ.-Prof Dl Dr. Wolfgang Windsteiger July 2017 An Online Auction System for Selling Fiber Products Master Thesis to obtain the academic degree of Master of Science in the Master’s Program INTERNATIONALER UNIVERSITÄTSLEHRGANG “INFORMATICS: ENGINEERING & MANAGEMENT” JOHANNES KEPLER UNIVERSITY LINZ Altenberger Str. 69 4040 Linz, Austria www.jku.at DVR 0093696 Abstract The thesis presents the design and development of the Lenzing Global Auction Portal project. The Lenzing Global Auction Portal is a software system for running multiple simultaneous online auctions. The system implements the Dutch auction model, but provides the means to integrate different auction models as well. The system is based on the Client/Server architecture model. The server-side follows the microservice based architecture model combined with the multi-layer architecture model. The client-side consists of two mobile-first web applications following the single-page application principle. 1 Acknowledgment This thesis and the corresponding software project was realized in the frame of the Upper Austrian ISI Master Program1 in cooperation with an Upper Austrian company, Lenzing A.G.2 Besides thanking the supervisor of the thesis, the author would like to thank the coordinators of the ISI program and the representatives of Lenzing for their help and contribution. 1 http://www.isi-hagenberg.at 2 https://www.lenzing.com 2 Table of Contents Table of Figures .................................................................................................................... 5 Introduction ........................................................................................................................... 6 1. Auction Models ................................................................................................................ 9 English Auction ....................................................................................................... 10 Candle Auction ................................................................................................ 11 Japanese Auction ............................................................................................. 11 Buyout Auction................................................................................................ 11 Dutch Auction ......................................................................................................... 11 First-price Sealed-bid Auction ................................................................................ 12 Vickrey Auction ...................................................................................................... 12 2. Project Description ......................................................................................................... 15 Requirement analysis .............................................................................................. 16 LGAP Server ................................................................................................... 17 LGAP Customer Applications ......................................................................... 18 LGAP Administrator Application ................................................................... 19 System Architecture ................................................................................................ 19 3. Backend .......................................................................................................................... 22 Microservices .......................................................................................................... 23 Architecture ..................................................................................................... 23 Exception Handling and Logging .................................................................... 26 Configuration ................................................................................................... 26 Build and Deployment ..................................................................................... 28 Common Microservice Module .............................................................................. 29 Common Data Model ...................................................................................... 29 Common Repository Components................................................................... 30 Common Service Components ........................................................................ 31 Common Verticles ........................................................................................... 31 Common Dependency Injection Module ......................................................... 32 Common Exception Types .............................................................................. 33 Common Configuration and Resource ............................................................ 34 Product Microservice Module ................................................................................. 34 Auction Microservice Module ................................................................................ 35 Customer Microservice Module .............................................................................. 38 Admin Microservice Module .................................................................................. 39 3 API Gateway Microservice Module........................................................................ 40 4. Frontend .......................................................................................................................... 42 Single Page Applications ........................................................................................ 44 Architecture ..................................................................................................... 44 Build and Deployment ..................................................................................... 46 Customer Single Page Application ......................................................................... 46 Auction Overview Page ................................................................................... 46 Auction Page.................................................................................................... 47 Login Page ....................................................................................................... 47 Administrator Single Page Application .................................................................. 48 Product Overview Page ................................................................................... 48 Auction Overview Page ................................................................................... 48 Auction Creation Page ..................................................................................... 49 Login Page ....................................................................................................... 49 5. User Guide ...................................................................................................................... 50 Customer Application ............................................................................................. 50 Administrator Application ...................................................................................... 53 Conclusion and Further Development ................................................................................ 56 References ........................................................................................................................... 57 4 Table of Figures Figure 1. Main auction model categories for the LGAP system ........................................... 9 Figure 2. Having the highest valuation in the Vickrey auction model................................ 13 Figure 3. Not having the highest valuation in the Vickrey auction model ......................... 13 Figure 4. Use-case diagram for the customer web application ........................................... 18 Figure 5. Use-case diagram for the administrator web application .................................... 19 Figure 6. Architecture blueprint of the LGAP system ........................................................ 21 Figure 7. Architecture blueprint of a microservice ............................................................. 24 Figure 8. LGAP microservice launcher type hierarchy diagram ........................................ 28 Figure 9. LGAP base Verticle type hierarchy diagram ....................................................... 31 Figure 10. LGAP base Guice module hierarchy diagram ................................................... 32 Figure 11. LGAP base Exception type hierarchy diagram ................................................. 33 Figure 12. Product Microservice, data model diagram ....................................................... 34 Figure 13. Auction Microservice, data model diagram....................................................... 36 Figure 14. Customer Microservice, data model diagram .................................................... 38 Figure 15. Admin Microservice, data model diagram ........................................................ 39 Figure 16. Architecture blueprint of a single-page application........................................... 44 Figure 17. Customer SPA, login screen .............................................................................. 50 Figure 18. Customer SPA, auction overview screen..........................................................