Case-Study

Ivan Hörler und Andreas Zweili

Created: 2018-03-09 Fri 11:05

Ausgangslage

  • Freie Software in bezug auf open sourcecode.

Um einen ersten Anhaltspunkt zu haben, haben wir ein Mindmap gezeichnet in welchem wir unsere ersten Ideen erfassten.

Vision

Die Vision wurde anhand eines Mindmaps erstmals grob umfasst:

webshop.png

Vision - Artikel

Vision-Artikel.png

Vision - Warenkorb

Vision-Warenkorb.png

Vision - Abgaben

Vision-Abgaben.png

Varianten

C# und SQL Server

csharp.png

Laravel und MySQL

laravel.png

Django und MariaDB

django.png

Kriterien

  • Freie Software
  • Cross Plattform nutzbar
  • Lesbarkeit des Codes
  • Einfachheit des Setups
  • Ohne spezielle Tools nutzbar
  • Vorkenntnisse Lernfaktor

Vergleich

Variante Erreichte Punktzahl
ASP.NET und SQL Server 141
PHP und MySQL 161
Django und MariaDB 196

Auswahl

Kosten

Laravel Webshop

Sprache Codezeilen
PHP 8679
Total 8679

Django Webshop

Sprache Codezeilen
Python 1460
SQL 4639
Total 6099

Vorgehen

Currencies - App

Wurde in Django als eigenen App entwickelt und sollte daher problemloos in andere Applikationen eingebunden werden können.

Die Quelle der Währungen ist die Schweizerische Nationalbank mit der URL:

https://www.snb.ch | resp: https://www.snb.ch/selector/de/mmr/exfeed/rss

currencies-rss-reader.png

Currencies - Quelle

currencies-rss-xml.png

Currencies - Parsing

  • Das Konvertieren des XML’s wurde mit Python eigener Module gemacht.
  • für das Herunterladen des XML’s wurde das Modul ’urllib’ verwendet (1)
  • für das Parsen über die einzelnen items/nodes das Modul xml.etree.ElementTree. (2)

(1) https://docs.python.org/2/library/urllib.html (2) https://docs.python.org/2/library/xml.etree.elementtree.html

Currencies - Ablauf

currencies.png

Infrastruktur

Andreas erzählt wie die infrastruktur aufgebaut ist.

Server-Architecture.png

Programmierung

vieleicht zwei Schwierigkeiten

Fazit