Maoyi prosjektet
Abstract
Prosjektet er basert på et oppdrag fra Giske kystfiske der de etterspør en applikasjon som kan brukes til kjøp og salg av fisk og skalldyr. Applikasjonen skal bidra til å være et mellomledd mellom selger og kjøper. Markedet mangler en slik type applikasjon som gjør det lettere, sikrere og mer oversiktlig for begge parter. Hensikten og målsettingen med prosjekt var å utvikle en sikker, effektiv og brukervennlig applikasjon med en tilhørende database- og serverløsning. I rapporten ligger mye faglig teori som er grunnlaget for å bygge en løsning på problemstillingen og en grundig gjennomgang av hvilke materialer og metoder som har blitt valgt for å utvikle løsningen. For å persistere data har vi valgt å bygge en relasjonsdatabase av typen PostgreSQL med Java JPA/Hibernate med en tilstandsløs serverløsning (RESTful API) skrevet i Java med Spring rammeverket for kommunikasjon mellom database og front-end applikasjonen. I front-end ligger en Flutter mobilapplikasjon skrevet i Dart. Videre blir gjennomføringen av prosjektet beskrevet der Kanban står som utviklingsmetodikk samt verktøyer for prosjektstyring og versjonskontroll.Resultatet av prosjektet er et førsteutkast av en pen mobilapplikasjon som fungerer både på iOS og Android telefoner. Der er også et førsteutkast av en REST API med innloggings mulighet og basisfunksjonaliteten som trengs i en slik applikasjon. The project is based on an assignment from "Giske kystfiske" where they request an application that can be used for the purchase and sale of fish and shellfish. The application should help to be an intermediary between the seller and the buyer. The market lacks such an application that makes it easier, safer and more transparent for both parties.The purpose and objective of the project was to develop a secure, efficient and user-friendly application with a corresponding database and server solution.The report contains a lot of professional theory that is the basis for building a solution to the problem and a thorough review of the materials and methods that have been chosen to develop it. To persist the data, we have chosen to build a PostgreSQL relational database with Java JPA / Hibernate with a stateless server solution (RESTful API) written in Java with the Spring framework for communication between database and front-end application. The front end is a Flutter mobile application written in Dart. Furthermore, the implementation of the project is described where Kanban stands as development methodology as well as tools for project management and version control.The result of the project is a first draft of a neat mobile application that works on both iOS and Android phones. There is also a first draft of a REST API with login capability and the basic functionality needed in such an application.