Analysis, Design and Development of a Web-Shop Template Using
Total Page:16
File Type:pdf, Size:1020Kb
Analysis, design and development of a web-shop template using SPHERE.IO e-commerce platform Laura Luiz Escoriza Facultat d’Informàtica de Barcelona (FIB) Universitat Politècnica de Catalunya (UPC) - BarcelonaTech Director: Hajo Eichler Company: commercetools GmbH Advisor: Carles Farré Tost Department: Enginyeria de Serveis i Sistemes d’Informació (ESSI) Master thesis Degree in Informatics Engineering (2003) January 2014 2 3 DADES DEL PROJECTE Títol del projecte: Analysis, design and development of a web-shop template using SPHERE.IO e-commerce platform. Nom de l'estudiant: Laura Luiz Escoriza Titulació: Enginyeria en Informàtica (2003) Crèdits: 37,5 Director: Hajo Eichler Empresa del director: commercetools GmbH Ponent: Carles Farré Tost Departament del ponent: ESSI MEMBRES DEL TRIBUNAL (nom i signatura) 1. President: Antoni Urpí Tubella 2. Vocal: Klaus Gerhard Langohr 3. Secretari: Carles Farré Tost QUALIFICACIÓ Qualificació numèrica: Qualificació descriptiva: Data: 4 5 ABSTRACT In the present thesis a possible next generation of e-commerce solutions with a platform-as-a-service model is presented and analyzed. This generation tries to fill the gap of missing developer-friendly alternatives to build systems with e-commerce components. Current offered solutions are mostly aimed for the comfortable use of designers and other non-technical roles, usually in the shape of out-of-the-box products. These solutions are usually limiting the ability of developers to integrate technologies or build innovative business models, thus sometimes forcing companies to invest in projects that have to be built practically from the start. This document describes the development of the first web-shop built with one of these solutions, SPHERE.IO, an e-commerce platform-as-a-service developed in Berlin by commercetools GmbH. During this process, questions are being answered about the suitability of e-commerce platforms to develop web-shops, a product most developers have to face when providing e-commerce solutions to companies. The web-shop has a dual purpose, as it will also serve as the first open-source template provided by the platform to help other developers build their own solutions. 6 ACKNOWLEDGMENTS I would especially like to thank Hajo for accepting being the director of my thesis and reading all these endless pages despite of having so much to do (really, how can you find the time!). Thanks for your support and always good advice to improve this project. I would also like to thank all the rest of the SPHERE.IO team for creating and raising such a great product, giving me the opportunity to work with them. From the ones that were: Aurélie, Jens, Roman, Ian, Lenni, Christian and Martin. (I loved the time we spent together, guys) To the ones that are: Nicole, Peter, Gregor, Dirk, Oleg, Nicola, Martin, Michael and Sven. I would like to thank my teacher Carles, who guided me through this project from the distance. Thank you especially for DSBW, which documentation I check constantly, not only for this project. Thanks to my roommate Sebastian, the most experienced online shopper I have ever met, whose advice was very convenient I must say. Thank you for helping me and have such loving cats that kept me well entertained during the long days locked in my room. Many thanks as well to those friends that helped me somehow to be where I am now. Particularly Hèctor and Pau, who help me the most. Thank you. And of course thousand thanks to the most important person in my life, my husband Héctor, whose constant care, support and help was so necessary during all my career life. I would not be here without you, you know that. Finally, I thank my parents, from whom I inherited the love for arts and business. Because they raised me to be a person capable of anything. And I chose to be a computer engineer. 7 INDEX Abstract ............................................................................................................................................. 6 Acknowledgments ............................................................................................................................. 7 Index ................................................................................................................................................. 8 Glossary .......................................................................................................................................... 11 1 Introduction .............................................................................................................................. 14 1.1 Motivation ......................................................................................................................... 14 1.2 Objectives .......................................................................................................................... 15 1.3 Background ........................................................................................................................ 16 1.3.1 What is e-commerce .......................................................................................................... 16 1.3.2 History of e-commerce ....................................................................................................... 18 1.3.3 Future of e-commerce ........................................................................................................ 21 1.3.4 Current alternatives ........................................................................................................... 23 1.4 Planning ............................................................................................................................. 24 1.4.1 Methodology seleCtion ....................................................................................................... 25 1.4.2 DesCription of the methodology ........................................................................................ 26 1.4.3 Risk management ............................................................................................................... 27 1.4.4 Initial timeline .................................................................................................................... 27 2 Requirement analysis ................................................................................................................ 30 2.1 Stakeholders analysis ......................................................................................................... 30 2.2 Functional requirements ..................................................................................................... 31 2.3 Non-functional requirements ............................................................................................. 32 3 Specification .............................................................................................................................. 34 8 3.1 Use case model ................................................................................................................... 34 3.2 System behavior model ...................................................................................................... 39 3.3 Conceptual model ............................................................................................................... 42 3.4 State diagrams .................................................................................................................... 44 4 Design ....................................................................................................................................... 47 4.1 System Physical architecture .............................................................................................. 47 4.2 System logical architecture ................................................................................................. 49 4.2.1 DesCription of used teChnologies ....................................................................................... 53 4.2.2 External design ................................................................................................................... 61 4.2.3 Internal design .................................................................................................................... 75 4.2.4 Design of the Model Component ........................................................................................ 84 4.2.5 Design of the View Component .......................................................................................... 88 4.2.6 Design of the Controller Component .................................................................................. 91 5 ImPlementation ......................................................................................................................... 94 5.1 DeveloPment environment ................................................................................................. 94 5.2 ExamPles of used technologies ........................................................................................... 95 5.2.1 Forms .................................................................................................................................. 96 5.2.2 List produCts ..................................................................................................................... 107 5.2.3 Payment ........................................................................................................................... 115 6 System tests ...........................................................................................................................