SlideShare ist ein Scribd-Unternehmen logo
Web Data Management Final Presentation
Position
Temperatur
Zeit
Kadenz
Power
Gang
Trittfrequenz
Puls
proEndura
Endurance Data - made simple
Abschlusspräsentation
Web Data Management
Sein Coray & Marcel Neidinger
Was wir wollten
Trainingsplanung
Datenanalyse
Coaching
Social Features
Talk is cheap - show me …
Livedemo
Überblick
3
1
2
Ablauf
Back-End Front-End
Entwicklungsprozess
?!
Vom Import zum Feed
Upload Import Auswertung Anzeige im
Feed
„Socialize“
Analyse
Back End
3
1
2
PHP
Back End Sprache
- Großes Projekt => Objektorientierter Ansatz
- Datenbankabstraktion
Simpler DBA
AbstractModel AbstractModelFactory
Datendefiniton
User Workout Session UserFactory WorkoutFactory
erstellen
verwalten
+get()
+filter()
+delete()
+save()
Simpler DBA - Anfragebeispiel
Konventionell
<?php	
$stmt	=	$db->query("SELECT	*	FROM	User	WHERE	id=1");	
while($row	=	$stmt->fetch(PDO::FETCH_ASSOC){	
		echo	"$row['firstname']";	
}	
?>
proEndura
<?php	
$u	=	$UserFactory->get(1);	
echo	$u->getFirstname();	
?>
Simpler DBA - Anfragebeispiel
proEndura
<?php	
$qF	=	new	QueryFilter(“athleteId“,1,“=“);	
$workouts	=	$WorkoutFactory->filter(array(“filter“=>$qF));	
foreach($workouts	as	$w)	{	
$w->setComment(“Massenupdate	!“);	
$WorkoutFactory->update($w);	
}	
?>
Ebenfalls vorhanden:
- Join Filter
- Order Filter
Simpler DBA - Vorteile
- Ein Ort mit SQL
- Von der Tabellenstruktur unabhängig
- (theoretische) Unabhängigkeit von der Datenbanksoftware
- Caching
Anfrage
DBA
Cache
DB
API Storage - NoSQL
Anfrage
DBA
Cache
DB
Track Data
Cassandra
Front End
3
1
2
Bootstrap 3
Twitter’s
DB HTML ?
- Simples Templatingsystem
- Objekte aus dem DBA direkt in HTML weiterverwenden
- Simple Logiken direkt im Template
Simples Templatebeispiel
<html>	
<head>	
{%TEMPLATE->header%}	
<title>proEndura	Analysis</title>	
</head>	
<body>	
Hi	[[user.getName()]]	
{%TEMPLATE->footer%}	
</body>	
</html>
Template - Logik<html>	
<head>	
{%TEMPLATE->header%}	
<title>proEndura	Analysis</title>	
</head>	
<body>	
{{IF	!!user.isLoggedin()!!	==	true}}	
	{{FOREACH	workout,	!!workouts!!}}	
					{%TEMPLATE->feed.entry%}	
					[[Util::roundMeters(%%workout.getDistance()%%)]]	
	{{ENDFOREACH}}	
{{ENDIF}}	
</body>	
</html>
Templating
- Kein Beschränkung auf Website
- Mail, LaTeX ?
Mehrsprachigkeit
- Natives Feature der Template-Engine
[…]	
<form	class=“form-group“>	
<label>__upload-workout_name__</label><input	type=“text“	[…]		
</form>	
[…]	
[…]	
$LANG[“EN-en“]['upload-workout_name']	=	“Workout	name“;	
$LANG[“DE-de“]	…	
[…]
Dev Prozess
3
1
2
Lessons Learned
1.Continous Integration
Lessons Learned
2.Interne Dokumentation
Lessons Learned
3.Automation
Lessons Learned
4.Flexible Arbeitsaufteilung
Lessons Learned
5.Niemand liest die Specs
Danke für’s
zuhören
proEndura Inc
Bank: Banco BPI Cayman Inc.
BIC: BCYLKYKY
IBAN: KY42 31415926 27182818
Venture Capital an
Fragen ?

Weitere ähnliche Inhalte

PPTX
Web data management
PPTX
Web data management (chapter-1)
PDF
Building a Dynamic Bidding system for a location based Display advertising Pl...
PPTX
SPARC 2013 Data Management Presentation
PPTX
Affliate digital product
PPTX
Lecture 07 Digital Product
PPTX
BTN Tech Talk 2012 Presentation Data Management Data Souces and Actionable In...
PDF
Oblicza marketingu marketing 3
Web data management
Web data management (chapter-1)
Building a Dynamic Bidding system for a location based Display advertising Pl...
SPARC 2013 Data Management Presentation
Affliate digital product
Lecture 07 Digital Product
BTN Tech Talk 2012 Presentation Data Management Data Souces and Actionable In...
Oblicza marketingu marketing 3

Andere mochten auch (8)

PPTX
Data management and presentation
PDF
Why Product Management Matters
PPTX
Product Information Management (PIM)
PDF
Digital products development: going behind the scene of product development -...
PDF
Building a Digital Products Portfolio for Real Business Results
PDF
WTF is a Product Roadmap?
PPTX
Presentation product development and R&D for digital healthcare
PPTX
Successfully Managing Customer Experience Combining VoC and UX Testing
Data management and presentation
Why Product Management Matters
Product Information Management (PIM)
Digital products development: going behind the scene of product development -...
Building a Digital Products Portfolio for Real Business Results
WTF is a Product Roadmap?
Presentation product development and R&D for digital healthcare
Successfully Managing Customer Experience Combining VoC and UX Testing
Anzeige

Web Data Management Final Presentation