Skip to content
This repository has been archived by the owner on Apr 17, 2019. It is now read-only.

Project Silly Monkey

Daniel Schaefer edited this page Feb 28, 2019 · 3 revisions

Übersicht

Links

Team

Team Tasks Members
Design Project Management
Requirements
Use Cases
Architecture
Design Pattern
Modeling
Version Management
Paul
Victor
Entwicklung Selection Tool
selection Reusable components, frameworks and service
Realization (implementation)
Tests (UnitTests)
Integration (IntegrationTests)
Demonstration (early Prototype)
Demonstration (final Prototype)
Cathleen
Daniel
Springer David
Alex

Vision

PDA - Personal Digital Agent

  • conversational bot (natural language interface)
  • use cases featuring PA tasks (e.g. meeting management, reminder, etc.)
  • welcome dialog (personalized?) + daily travel update

(Monitoring) Services

Possible Monitoring Services (from Slide)

  • Personal Preferences
  • Calendar
  • Weather
  • sensors@Home
  • Traffic Situation (Sbahn, road…)
  • Stock Exchange
  • Email
  • GoogleMaps
  • Current location

Use Cases ("realizing the three different use cases" with "four different monitoring entities")

  • Setup Dialogue:

    • Set preferences (allergies (food, pollen), vehicles/ transportation used etc.)
  • (Vorgegeben) Welcome Dialogue:

    • Example: On Startup: Good Morning/Day/Evening, you shouldnt drive today, there is an accident on..., your calender says youre free today, maybe youd like to visit ...
    • Used Monitoring Entities:
      • Wetter
      • Verkehr
      • Location
      • Calender
      • Personal Preferences
  • Essensempfehlung:

    • Example: Q: Where should I eat today? A: XY Would be a nice place to eat.
    • Used Monitoring Entities:
      • Wetter
      • Verkehrslage
      • Google Maps (Nähestes Restaurant)
      • Preisabfrage(Wenn möglich?)
      • Personal Preferences
      • Last Answers
  • Reiseempfehlung:

    • Example: Q: When is a good time to visist X? A: Tomorrow at 9
    • Example: Q: Is now a good time to visit X? A: Yes, No
    • Example: Q: How do I get to? A: Use XXX
    • Used Monitoring Entities:
      • Wetter
      • Verkehr
      • Bahn
      • News
      • Personal Preferences
  • Personal Trainer: Remind to excercise on good days

    • Example: Q: Is now a good time to exercise? A: Yes, No
    • Used Monitoring Entities:
      • Weather
      • Feinstaub
      • Pollen
      • Personal Preference (Morning, Noon, Evening)

Requirements

Functional

  • Sämtliche steuerung soll über Spracheingabe funktionieren
  • Der Nutzer soll mit einem Welcome Dialogue begrüßt werden bei welchem:
  • Sämtliche funktionen aufgelistet werden
  • Eine persönliche Empfehlung zu Reise, Essen oder Verkehr gemacht wird
  • Der Nutzer soll die Möglichkeit haben persönliche Preferenzen einzuspeichern
  • Der Nutzer soll die Möglichkeit haben sich eine Empfehlung für ein Restaurant geben zu lassen
  • Der Nutzer soll die Möglichkeit haben sich eine Empfehlung für den Reiseweg zu einem ziel geben zu lassen
  • Der Nutzer soll die Möglichkeit haben sich eine Empfehlung für gute Trainingszeiten geben zu lassen

Non-Functional

  • Sicherheit: Die Preferences des Benutzers sollen nur lokal gespeichert werden
  • Usability: Die App muss selbsterklärend sein
  • Cost: Es wird nur Open-Source Software von Drittanbietern verwendet
  • Platform: Die App sollte in Browsern, auch mobil verwendbar sein

Release Plan

Sprint 1

User Stories

Title: Set preferences As a: First-time User I want to: Set my preferences So that: My allergies, travel methods, eating habits are stored

Title: Welcome As a: User I want to: Be greeted by the new system So that: I feel welcome and ready to engage and use the system

Backlog

1 Set up repo 2 Include/Connect voice to trigger service(s) 3 Set up config file and connect. Able to read and write to. 4 Create welcome output. Simple "welcome" output. 5 Add menu to select use case. 6 Create setup dialog. Check if config is empty. 7 Define needed preferences 8 Ask for preferences. Process answers and enter in config.

API UI to Trigger Router

Structure of parameter object is defined by trigger type

{
  "trigger": {
    "type": "HomeOffice"
    "parameters": {}
  }
}

{
  "trigger": {
    "type": "ReiseEmpfehlung"
    "parameters": {
      "destination": "Stuttgart"
    }
  }
}

Trigger Router to Use-Case

Structure of parameter object is defined by trigger type

{
  "trigger": {
    "type": "HomeOffice"
    "parameters": {}
  }
}

{
  "trigger": {
    "type": "ReiseEmpfehlung"
    "parameters": {
      "destination": "Stuttgart"
    }
  }
}