Sovelluksen toteutus kolmikerrosmallilla
Äyhynmäki, Lea (2020)
Äyhynmäki, Lea
2020
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2020120225620
https://urn.fi/URN:NBN:fi:amk-2020120225620
Tiivistelmä
Tämän opinnäytteen tavoitteena oli perehtyä sovelluskehityksessä käytettävään käsitteeseen kolmikerrosmalli ja toteuttaa toimeksiantona tilityssovellus InStore Media Oy:lle. Yritys on erikoistunut myymälämainontaan, joten sovellus tulee käyttöön myymälämainonnan laskujen luonnissa, jotka asiakas toteuttaa käsin.
Kolmikerrosmallin mukainen sovellusarkkitehtuuri koostuu kolmesta tasosta. Kolmikerrosmallin rakenne erottaa tasot toisistansa ja sen takia mallilla toteutettuja ohjelmia on helppo kehittää erikseen ilman, että joutuu tekemään kahteen muuhun tasoon muutoksia. Kolmikerrosmallin kolme tasoa ovat esitys-, tehtävä- ja tietotaso.
Tilityssovellus toteutuksessa hyödynnettiin kolmikerrosmallia. Sovelluksen kehityksessä käytettiin kolmikerrosmallin tasojen toteutukseen eri frameworkejä, rajapintoja, ohjelmointikieliä ja lisäkirjastoja esim. Bootstrap, jQuery ja SQL.
Sovelluskehitys aloitettiin keräämällä tietokantaan tulevat tiedot ja suunnittelemalla tietokannan rakenne. Tämän jälkeen toteutettiin rautalankamalli sovelluksesta, jonka avulla ohjelmoitiin prototyyppi sovelluksesta. Prototyyppiin lisättiin toiminnallisuuksia, näkymiä ja tietokantakyselyt, joista muodostui lopullinen sovellus.
Työssä kehitettiin web-hotellissa toimiva sovellus, joka luo tulostettavan PDF-laskun kauppakohtaisesti toteutuneiden mainoskampanjoiden ja valitun ajanjakson mukaan. Laskua luodessa voi määrittää käytettävän laskupohjan ja kampanjat, jotka tilitetään. Sovelluksessa voi myös luoda ja hallita laskuun tulevia kauppoja ja kampanjoita.
Toimeksianto auttoi muodostamaan konkreettisen kuvan siitä, mitä kaikkea sovelluksen julkaisemiseen internetissä vaaditaan. Suurimpana yllätyksenä tuli, että suurin osa web-hotelleista tuki ainoastaan PHP-ohjelmointikieltä palvelin puolella. Työ korosti suuresti sitä, että vaikka suunnittelu vaiheessa kokee ottaneen huomioon kaiken ja rajaavansa työn, niin yllätyksiä ja lisävaatimuksia voi aina ilmentyä työn edetessä ja jopa viime metreillä. The objective of the thesis was to become familiar with the concept of 3-tier architecture in application development and to develop a commissioned application for accounting. The thesis commissioner was InStore Media Oy, specializing in in-store advertising. The accounting application will be used for creating invoices for the advertising campaigns made by hand.
The 3-tier architecture is an application composed of three layers. This architecture separates the layers from each other, and because of this the layers can be developed without making any changes to the remaining two. These three layers are the presentation layer, the business layer and the data layer.
The 3-tier architecture was used in the development of the accounting application. Techniques such as frameworks, interfaces, programming languages and additional libraries were used in the development of the application, e.g. Bootstrap, jQuery and SQL. The development of the application started with collecting all the necessary data for the database and planning the structure of the database. After that, wireframes were made and used to program a prototype of the application. The application was developed into its final version by adding functions, views and database queries to the prototype.
The resulting application is hosted by a web hosting service. The application generates a store specific PDF invoice which includes completed advertising campaigns during a chosen time period. While creating an invoice the base for the invoice can be determined and campaigns for accounting can be chosen. The application also gives the possibility to create and manage stores and advertising campaigns that appear in the invoice.
The commission gave a clear understanding of what was needed for hosting an application on the web. The biggest surprise was that most of the web hosting services only supported PHP as a programming language on the server side. The commission also emphasized the fact that even considering and defining everything coming to mind while planning, there could always be surprises and additional requirements emerge during development, even in the last stages.
Kolmikerrosmallin mukainen sovellusarkkitehtuuri koostuu kolmesta tasosta. Kolmikerrosmallin rakenne erottaa tasot toisistansa ja sen takia mallilla toteutettuja ohjelmia on helppo kehittää erikseen ilman, että joutuu tekemään kahteen muuhun tasoon muutoksia. Kolmikerrosmallin kolme tasoa ovat esitys-, tehtävä- ja tietotaso.
Tilityssovellus toteutuksessa hyödynnettiin kolmikerrosmallia. Sovelluksen kehityksessä käytettiin kolmikerrosmallin tasojen toteutukseen eri frameworkejä, rajapintoja, ohjelmointikieliä ja lisäkirjastoja esim. Bootstrap, jQuery ja SQL.
Sovelluskehitys aloitettiin keräämällä tietokantaan tulevat tiedot ja suunnittelemalla tietokannan rakenne. Tämän jälkeen toteutettiin rautalankamalli sovelluksesta, jonka avulla ohjelmoitiin prototyyppi sovelluksesta. Prototyyppiin lisättiin toiminnallisuuksia, näkymiä ja tietokantakyselyt, joista muodostui lopullinen sovellus.
Työssä kehitettiin web-hotellissa toimiva sovellus, joka luo tulostettavan PDF-laskun kauppakohtaisesti toteutuneiden mainoskampanjoiden ja valitun ajanjakson mukaan. Laskua luodessa voi määrittää käytettävän laskupohjan ja kampanjat, jotka tilitetään. Sovelluksessa voi myös luoda ja hallita laskuun tulevia kauppoja ja kampanjoita.
Toimeksianto auttoi muodostamaan konkreettisen kuvan siitä, mitä kaikkea sovelluksen julkaisemiseen internetissä vaaditaan. Suurimpana yllätyksenä tuli, että suurin osa web-hotelleista tuki ainoastaan PHP-ohjelmointikieltä palvelin puolella. Työ korosti suuresti sitä, että vaikka suunnittelu vaiheessa kokee ottaneen huomioon kaiken ja rajaavansa työn, niin yllätyksiä ja lisävaatimuksia voi aina ilmentyä työn edetessä ja jopa viime metreillä.
The 3-tier architecture is an application composed of three layers. This architecture separates the layers from each other, and because of this the layers can be developed without making any changes to the remaining two. These three layers are the presentation layer, the business layer and the data layer.
The 3-tier architecture was used in the development of the accounting application. Techniques such as frameworks, interfaces, programming languages and additional libraries were used in the development of the application, e.g. Bootstrap, jQuery and SQL. The development of the application started with collecting all the necessary data for the database and planning the structure of the database. After that, wireframes were made and used to program a prototype of the application. The application was developed into its final version by adding functions, views and database queries to the prototype.
The resulting application is hosted by a web hosting service. The application generates a store specific PDF invoice which includes completed advertising campaigns during a chosen time period. While creating an invoice the base for the invoice can be determined and campaigns for accounting can be chosen. The application also gives the possibility to create and manage stores and advertising campaigns that appear in the invoice.
The commission gave a clear understanding of what was needed for hosting an application on the web. The biggest surprise was that most of the web hosting services only supported PHP as a programming language on the server side. The commission also emphasized the fact that even considering and defining everything coming to mind while planning, there could always be surprises and additional requirements emerge during development, even in the last stages.