<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Beiträge von Sara Ladner - Mobile USTP MKL</title>
	<atom:link href="https://mobile.fhstp.ac.at/author/it231510/feed/" rel="self" type="application/rss+xml" />
	<link>https://mobile.fhstp.ac.at/author/it231510/</link>
	<description>Die &#34;Mobile Forschungsgruppe&#34; der USTP, sie  sammelt hier alles zu den Themen Design, UX und Entwicklung mobiler Applikationen</description>
	<lastBuildDate>Tue, 21 Jan 2025 12:29:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://mobile.fhstp.ac.at/wp-content/uploads/2025/03/icon-120x120.webp</url>
	<title>Beiträge von Sara Ladner - Mobile USTP MKL</title>
	<link>https://mobile.fhstp.ac.at/author/it231510/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Ethical UX Design and Research</title>
		<link>https://mobile.fhstp.ac.at/ux/ethical-ux-design-and-research/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Tue, 21 Jan 2025 12:26:17 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[Ethical Design]]></category>
		<category><![CDATA[Ethical Research]]></category>
		<category><![CDATA[Ethics]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[UX-Design]]></category>
		<category><![CDATA[UX-Research]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=13697</guid>

					<description><![CDATA[<p>What Is Ethical Design and Why Does It Matter in UX? Ethical design is about creating products, services, or experiences that align with your personal values, the principles of your organization, and the well-being of your users. Everything you design—whether it’s a website, a marketing campaign, or a digital product—impacts real people, and that impact <a class="read-more" href="https://mobile.fhstp.ac.at/ux/ethical-ux-design-and-research/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/ethical-ux-design-and-research/">Ethical UX Design and Research</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1 class="wp-block-heading">What Is Ethical Design and Why Does It Matter in UX?</h1>



<p>Ethical design is about creating products, services, or experiences that align with your personal values, the principles of your organization, and the well-being of your users. Everything you design—whether it’s a website, a marketing campaign, or a digital product—impacts real people, and that impact can have lasting consequences.</p>



<p>In an ideal world, designers would take full responsibility for the ethical implications of their work. But in reality, these responsibilities are often blurred or passed on to others. Social norms, cultural changes, and shifting political landscapes constantly redefine what is considered “ethical” or “acceptable.” So how can designers stay grounded and create meaningful, responsible work in such a dynamic environment? That’s where the principles of ethical design come into play.</p>



<h1 class="wp-block-heading">Ethical Design Principles in UX</h1>



<h2 class="wp-block-heading">The Role of Ethics in UX Design</h2>



<p>When it comes to user experience (UX) design, ethics serve as a moral compass, guiding designers and product teams to create experiences that are transparent, fair, and safe for users. Unlike laws, which are rigid and universal, ethical practices are more nuanced—they often involve complex dilemmas that require thoughtful solutions.</p>



<p>At its core, ethical UX design focuses on avoiding harm and prioritizing the well-being of users. It promotes transparency in how products work, protects users from exploitation, and fosters authenticity throughout the design process. For example, while business goals may push for higher conversion rates, resorting to manipulative tactics like dark patterns might achieve short-term results but erode trust and damage your brand in the long run.</p>



<h2 class="wp-block-heading">How to Make Your Design More Ethical</h2>



<p>The simplest way to create ethical designs is to incorporate ethical principles right from the start. Instead of scrambling to add accessibility features or privacy statements at the end of the process just to protect the company, begin with a clear agreement and intention from the outset.</p>



<h3 class="wp-block-heading">1. Start With Mission and Values</h3>



<p>Familiarize yourself with the mission and values of the organization you’re designing for. Use these to shape your design, ensuring they align with ethical principles. This is also an opportunity to challenge the organization or clients to uphold their promises. As a designer, you play a pivotal role in helping them fulfill their mission.</p>



<h3 class="wp-block-heading">2. Question Your Assumptions</h3>



<p>Assumptions can lead to problems—especially when there’s no direct interaction with the product’s end users. It’s easy to speculate about how people will use the product, but design based on assumptions often excludes the very people it’s meant to serve. This exclusion can lead to risks and unintended consequences for users, the company, or even society at large. By actively monitoring your assumptions, you remain aware of the limitations of your design and remind yourself to test and adapt it as needed.</p>



<h3 class="wp-block-heading">3. Use the Socratic Method</h3>



<p>The first step toward ethical design is asking the tough questions to uncover weaknesses and potential consequences of your product. This process, known as the Socratic Method, stems from the Greek philosopher Socrates and involves stress-testing concepts through probing questions.</p>



<p>Tools like Artefact’s <strong>Tarot Cards of Tech</strong> can help prompt thought-provoking questions such as:</p>



<ul class="wp-block-list">
<li>What is the lifespan of your product?</li>



<li>What happens if it’s used by millions of people?</li>



<li>What are the long-term effects on the economy, society, and the environment?</li>



<li>Who benefits from your design? Who loses? Who is excluded?</li>



<li>How could your design be misused?</li>
</ul>



<p>This approach helps identify potential flaws and areas that need refinement, ensuring the design better serves both the users and the broader society.</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh6.googleusercontent.com/UbYwb4RVQdk6snq1Nk42TJAa_yd8EnYfvlxrPj-zaRnRsn_v4rPBRmZgceSdd4a1ZOuh-26zqh7jkNDyoNaSO1sft_Kbdr72jY3FpNpF_xrfBDrwkPkBO0wEx3hVEaYpO368XbHn" alt="Bad Wolf Tarot Cards of Tech: What could a &quot;bad actor&quot; do with your product?"/><figcaption class="wp-element-caption">The Big Bad Wolf &#8211; Via <a href="http://tarotcardsoftech.artefactgroup.com/">Tarot Cards of Tech by Artefact</a></figcaption></figure>



<h1 class="wp-block-heading">Ethical User Research: Respecting Your Participants</h1>



<p>A key part of ethical UX design is user research, which helps identify problems and shape solutions that improve users’ lives. However, user research depends on real people. These participants provide invaluable insights, and in return, they deserve to have their rights, dignity, and well-being protected.</p>



<p>This is the foundation of user research ethics. As defined by the Nielsen Norman Group, user research ethics involve &#8220;the careful consideration of the rights, well-being, and dignity of people involved in research activities.&#8221; In other words, it’s about creating a safe, respectful, and comfortable environment for participants.</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh5.googleusercontent.com/H3W8L7G07Gc1rKwrDfcSQs9LMt1rWr-SmPT9dAcxpvmRiGNM6iZrQH3ndWs3zRUYiMOwjZ5zIf6MZxM1Y-ZgzcsvdiI5dmr2zMHj1RWbXb77iUYZ0HfwQdKaTiKpkBUJWmxHJRAy" alt="The Forgotten Tarot Cards of Tech"/><figcaption class="wp-element-caption">The Forgotten &#8211; Via <a href="http://tarotcardsoftech.artefactgroup.com/">Tarot Cards of Tech by Artefact</a></figcaption></figure>



<h2 class="wp-block-heading">The 5 Key Ethical Principles in UX Research</h2>



<p>Ethical UX research is built on these five core principles:</p>



<ol start="1" class="wp-block-list">
<li><strong>Transparency and Informed Consent</strong><br>Always be upfront with participants so they fully understand what they’re agreeing to. This includes explaining the purpose of the research, what they’ll need to do, how long it will take, and how their data will be used.
<ul class="wp-block-list">
<li>Never mislead or trick participants into taking part.</li>



<li>If audio or video recording is planned, ask for explicit permission beforehand.</li>
</ul>
</li>



<li><strong>Privacy, Confidentiality, and Data Protection</strong><br>Most UX research involves gathering user data, such as interview recordings, survey responses, or basic details like names and email addresses. Handling this data responsibly is crucial.
<ul class="wp-block-list">
<li>Develop clear protocols for data storage, access, and disposal after the research is complete.</li>



<li>Protect participants’ identities, ensuring anonymity unless they’ve explicitly agreed otherwise.</li>



<li>Be mindful of how findings are shared to avoid causing distress or breaching confidentiality.</li>
</ul>
</li>



<li><strong>Do No Harm</strong><br>Consider all potential risks to participants and work to mitigate them.
<ul class="wp-block-list">
<li>If the research touches on sensitive topics, prepare strategies to support participants emotionally if needed.</li>



<li>Use inclusive and accessible language in surveys and interviews to ensure participants feel respected and valued.</li>



<li>Empathy is key: design the research process with participant well-being at the forefront.</li>
</ul>
</li>



<li><strong>Neutrality</strong><br>As a researcher, strive for impartiality by:
<ul class="wp-block-list">
<li>Avoiding leading questions that hint at a preferred answer.</li>



<li>Being conscious of how your tone, body language, and facial expressions might influence participants.</li>



<li>Recruiting a diverse sample to prevent bias and ensure the results are representative.</li>
</ul>
</li>



<li><strong>Honest and Accurate Interpretation of Results</strong><br>Ethical UX research requires objective analysis and reporting:
<ul class="wp-block-list">
<li>Don’t cherry-pick data to fit your assumptions or hypotheses.</li>



<li>Include both positive and negative feedback to provide a balanced perspective.</li>



<li>Present results honestly to draw fair and meaningful conclusions.</li>
</ul>
</li>
</ol>



<p>By adhering to these principles, UX researchers can ensure their work is ethical, trustworthy, and respectful to all participants.</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh6.googleusercontent.com/gMeDZlb9bXi0adfYbozCbjqKlsuKgl0PSE4UWa3v-7tUZM-OOc6s9osCDays37034378pooCZbtgaIoNaML1OZTlJB6j11jXTTb0JnikIQ_rccxk3oJ_ePQMrCC7n836lFrHJSZ7" alt="Service Dog Tarot Cards of Tech"/><figcaption class="wp-element-caption">The Service Dog &#8211; Via <a href="http://tarotcardsoftech.artefactgroup.com/">Tarot Cards of Tech by Artefact</a></figcaption></figure>



<h2 class="wp-block-heading">The Risks of Unethical UX</h2>



<p>Understanding the principles of ethical UX research and design is crucial. But why does it truly matter? Let’s explore the risks associated with unethical practices.</p>



<p><strong>1. Harm to Participants</strong></p>



<p>Disregarding research ethics can directly harm participants. Unethical research may involve discriminatory practices, lack of inclusivity, or actions that leave participants feeling uncomfortable, emotionally distressed, or even psychologically harmed. Such outcomes are the worst-case scenario and must be avoided at all costs.</p>



<p><strong>2. Biased Results and Poor Design Decisions</strong></p>



<p>Unethical research often leads to skewed or unreliable data. For instance, failing to remain neutral during user interviews—such as asking leading questions or reacting visibly to participants&#8217; responses—can result in participants withholding their honest opinions. The consequence? You base your design decisions on inaccurate data, leading to poorly informed designs. Not only does this diminish the value of genuine user research, but it also risks creating products that are ineffective or undesirable.</p>



<p><strong>3. Damage to Reputation</strong></p>



<p>Unethical practices can tarnish your professional credibility and the reputation of your company. Participants who feel exploited or uncomfortable may share their negative experiences, and news of unethical practices can spread quickly through word of mouth or media coverage. When trust erodes, customers may lose faith in your brand, product, or service—leading to a potential PR crisis that could have been avoided.</p>



<h2 class="wp-block-heading">Examples of Unethical UX Research</h2>



<h3 class="wp-block-heading">Facebook’s “Emotional Contagion” Study (2012)</h3>



<p>Facebook manipulated the news feeds of almost 700,000 users for one week, showing some users more positive content and others more negative content. The goal was to determine whether this influenced users’ emotions, as reflected in their status updates. While the findings suggested an “emotional contagion” effect, the study sparked outrage because users were not informed or asked for consent. If participants experienced negative emotional impacts, this would violate the ethical principle of “do no harm.”</p>



<h3 class="wp-block-heading">LinkedIn’s Five-Year Social Experiment (2015-2019)</h3>



<p>LinkedIn experimented with its “People You May Know” algorithm, testing whether weak ties (loose acquaintances) or strong ties (close contacts) were more effective in helping users find jobs. Over 20 million users were unknowingly assigned to different groups, with some shown weaker ties and others stronger ties. The findings supported the “weak ties” theory, but users shown stronger ties may have missed out on job opportunities. Additionally, the study raises questions about fairness and the lack of informed consent.</p>



<p>Both examples highlight the fine line between innovative research and ethical violations. Manipulating user experiences without consent, especially in ways that could have a significant emotional or professional impact, is unethical—even if the intentions behind the research seem justifiable.</p>



<h3 class="wp-block-heading">How to Ensure Ethical UX Research</h3>



<p>To create a more ethical UX research culture, organizations must establish clear protocols and foster accountability. Here are some actionable steps:</p>



<ol start="1" class="wp-block-list">
<li><strong>Provide Ethics Training</strong><br>Ensure that all team members involved in user research understand what ethical UX research looks like. Workshops, online courses, and tailored training sessions can be effective tools for building awareness.</li>



<li><strong>Create a UX Research Code of Conduct</strong><br>Develop a formal document outlining the golden rules of ethical UX research, including transparency, data protection, participant safety, and neutrality. This guide should be accessible and updated regularly.</li>



<li><strong>Standardize Processes with Templates and Guidelines</strong><br>From consent forms to data security protocols, standardizing processes ensures ethical practices are consistently followed throughout the research lifecycle.</li>



<li><strong>Regularly Reflect and Evaluate</strong><br>Continuously assess whether the research processes remain ethical, and seek feedback from participants and stakeholders to identify areas for improvement.</li>
</ol>



<h1 class="wp-block-heading">Conclusion</h1>



<p>Ethical design and research are integral to creating meaningful, responsible UX. As designers and researchers, we have an ethical responsibility to protect users, minimize harm, and build trust. By embracing ethical principles, questioning assumptions, and fostering transparency, we can create experiences that enhance lives—rather than exploit them.</p>



<p>When organizations and designers combine ethical design principles with ethical research, they ensure that products, services, and experiences reflect care, respect, and inclusivity. Let’s prioritize people in all our design and research efforts and lead the way toward a more responsible future in UX.</p>



<h2 class="wp-block-heading">Sources</h2>



<ul class="wp-block-list">
<li><a href="https://medium.com/design-bootcamp/ethics-in-ux-ui-design-a-comprehensive-guide-71a954371c9f">https://medium.com/design-bootcamp/ethics-in-ux-ui-design-a-comprehensive-guide-71a954371c9f</a></li>



<li><a href="https://www.uxdesigninstitute.com/blog/what-are-user-research-ethics/">https://www.uxdesigninstitute.com/blog/what-are-user-research-ethics/</a></li>



<li><a href="https://usabilitygeek.com/ethics-in-user-experience-design/">https://usabilitygeek.com/ethics-in-user-experience-design/</a></li>



<li><a href="https://designlab.com/blog/ethical-considerations-in-ux-design">https://designlab.com/blog/ethical-considerations-in-ux-design</a></li>



<li><a href="https://tarotcardsoftech.artefactgroup.com/?_ga=2.4812275.1755881389.1737457937-1246108544.1737457937 ">https://tarotcardsoftech.artefactgroup.com/?_ga=2.4812275.1755881389.1737457937-1246108544.1737457937 </a></li>



<li><a href="https://99designs.de/blog/design-tipps/ethisches-design/ ">https://99designs.de/blog/design-tipps/ethisches-design/ </a></li>



<li><a href="https://www.ramotion.com/blog/ethics-in-ux-design/">https://www.ramotion.com/blog/ethics-in-ux-design/</a></li>
</ul>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/ethical-ux-design-and-research/">Ethical UX Design and Research</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Amity &#124; Semesterprojekt WS24</title>
		<link>https://mobile.fhstp.ac.at/development/amity-semesterprojekt-ws24/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Mon, 20 Jan 2025 14:36:02 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Dokumentation]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=13617</guid>

					<description><![CDATA[<p>Als Gruppenprojekt für das dritte Semester der Masterklasse haben wir uns zu dritt entschieden, eine App speziell für Freund:innen zu entwickeln, um das Planen und Organisieren von gemeinsamen Aktivitäten zu erleichtern. Die Idee hinter Amity ist es, Freund:innen näher zusammenzubringen, indem sie auf einfache Weise miteinander in Kontakt bleiben und ihre Zeit besser koordinieren können.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/amity-semesterprojekt-ws24/">Amity | Semesterprojekt WS24</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p><a href="http://amity-friends.app" target="_blank" rel="noreferrer noopener">http://amity-friends.app</a></p>



<h2 class="wp-block-heading">Einleitung/Überblick</h2>



<p>Als Gruppenprojekt für das dritte Semester der Masterklasse haben wir uns zu dritt entschieden, eine App speziell für Freund:innen zu entwickeln, um das Planen und Organisieren von gemeinsamen Aktivitäten zu erleichtern. Die Idee hinter <a href="http://amity-friends.app">Amity</a> ist es, Freund:innen näher zusammenzubringen, indem sie auf einfache Weise miteinander in Kontakt bleiben und ihre Zeit besser koordinieren können.</p>



<figure class="wp-block-image size-full is-resized"><img fetchpriority="high" decoding="async" width="1272" height="1272" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2025/01/Group-76-1.png" alt="" class="wp-image-13629" style="width:132px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Group-76-1.png 1272w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Group-76-1-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Group-76-1-120x120.png 120w" sizes="(max-width: 1272px) 100vw, 1272px" /></figure>



<h2 class="wp-block-heading">Rollenverteilung</h2>



<ul class="wp-block-list">
<li><strong>Sara</strong>: Design, Frontend, Backend</li>



<li><strong>Laura</strong>: Design, Frontend, Backend</li>



<li><strong>Vanessa</strong>: Design, Frontend, Backend, Organisation</li>
</ul>



<h2 class="wp-block-heading">Umgesetzte Funktionalitäten</h2>



<p>Die App Amity bietet eine Vielzahl an Funktionen, die speziell darauf ausgelegt sind, das Planen und Organisieren von Aktivitäten unter Freund:innen so einfach wie möglich zu gestalten.</p>



<p>Im Zentrum steht der <strong>gemeinsame Kalender</strong>, der auf einen Blick alle geplanten Events sichtbar macht und die Planung gemeinsamer Treffen erheblich vereinfacht. Zusätzlich können Events erstellt und direkt mit ausgewählten Freund:innen geteilt werden, wodurch die Organisation noch effizienter wird. Diese Funktionen stellen sicher, dass selbst im hektischen Alltag keine Verabredung in Vergessenheit gerät.</p>



<p>Eine weitere Kernfunktion ist die <strong>Geburtstagsübersicht</strong>, die automatisch alle bevorstehenden Geburtstage anzeigt und so sicherstellt, dass kein wichtiger Anlass übersehen wird.</p>



<p>Ergänzt wird dies durch die Möglichkeit <strong>regelmäßiger Check-Ins</strong>, bei denen Nutzer:innen Push-Benachrichtigungen an Freund:innen verschicken können, um sich schnell und unkompliziert bei ihnen zu melden.</p>



<p>Amity fördert außerdem die Verbindung zwischen Freund:innen durch das Erstellen von geteilten <strong>Vorhersage-Listen</strong>. Damit können Nutzer:innen gemeinsam Prognosen über z. B. das kommende Jahr oder die Winterzeit erstellen und nach Ablauf markieren, ob sie „zutreffend“ oder „nicht zutreffend“ waren.</p>



<p>Durch diese durchdachten Features bietet Amity eine moderne und benutzerfreundliche Lösung, um die Koordination und den Austausch im Freundeskreis zu verbessern und Freundschaften aktiv zu pflegen.</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="5000" height="3333" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2025/01/Mockup1_ohneHintergrund.png" alt="" class="wp-image-13625" style="width:649px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup1_ohneHintergrund.png 5000w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup1_ohneHintergrund-1536x1024.png 1536w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup1_ohneHintergrund-2048x1365.png 2048w" sizes="(max-width: 5000px) 100vw, 5000px" /></figure>



<h2 class="wp-block-heading">Technologien</h2>



<p><strong>Frontend</strong></p>



<p>Für Amity wurde <strong>Angular </strong>als Frontend-Framework gewählt. Angular bietet eine stabile Struktur, viele nützliche Tools und eine große Community. Diese Eigenschaften machten es zu einer guten Wahl für die Entwicklung einer dynamischen und skalierbaren Webanwendung. Die Arbeit mit TypeScript, das von Angular direkt unterstützt wird, half dabei, den Code übersichtlich und gut wartbar zu halten.</p>



<p>Für die Gestaltung der Benutzeroberfläche wurde <strong>Angular Material</strong> und <strong>Bootstrap </strong>genutzt. Angular Material stellt eine große Auswahl an Komponenten bereit, die die Entwicklung erleichterten und ein einheitliches Design ermöglichten. Bootstrap wurde genutzt, um das Layout weiter anzupassen und spezifische Designanforderungen flexibel umzusetzen.</p>



<p>Zusätzlich wurde die Anwendung als<strong> Progressive Web App</strong> (PWA) umgesetzt. Dadurch kann die App auf Mobilgeräten installiert werden.</p>



<p><strong>Backend</strong></p>



<p>Im Backend kam <strong>Node.js </strong>zum Einsatz, und als Framework wurde <strong>NestJS </strong>genutzt. Diese Technologien wurden von uns bereits in dem Projekt “Bevry” im WS23 und SS24 verwendet, die Vorerfahrungen erleichterten die Umsetzung im Backend bei Amity deutlich.</p>



<p>Zusätzlich wurden folgende Packages verwendet:</p>



<ul class="wp-block-list">
<li><strong>TypeORM</strong>: Für die Verwaltung der Datenbank-Entities und die Kommunikation mit der Datenbank.</li>



<li><strong>JWT</strong>: Für die Authentifizierung der Nutzer.</li>



<li><strong>bcrypt</strong>: Für die sichere Verschlüsselung von Passwörtern.</li>
</ul>



<h2 class="wp-block-heading">Hürden und Schwierigkeiten</h2>



<p><strong>Frontend</strong></p>



<p>Die größte Herausforderung, die sich beim Frontend Development ergab, war das Planen der verschiedenen <strong>Komponenten</strong>. Dadurch, dass wir mit Angular arbeiteten, war der Code sehr modular aufgebaut, was wir bspw. von Vue nicht in diesem Ausmaß gewohnt waren. Es war wichtig zu überlegen welche Seiten wie unterteilt werden konnten und vor allem welche Komponenten global verfügbar sein mussten (z.B. die Snackbar und Dialoge).</p>



<p>Eine weitere Hürde, war der richtige Umgang mit <strong>Datentypen</strong>. Da wir sowohl im Backend, als auch im Frontend, mit TypeScript arbeiteten, mussten wir darauf achten, dass die verwendeten Klassen in beiden Teilen vorhanden waren und angepasst wurden. Besonders bei den Datumsformaten mussten wir diesbezüglich aufpassen, damit keine Information bei der Übertragung ins Backend verloren ging. Außerdem ermöglichen wir das Uploaden von Bildern, was wiederum das richtige Umwandeln der Formate mit sich brachte.</p>



<p>Zu guter Letzt war eine Schwierigkeit das Umwandeln unserer Web App zu einer <strong>Progressive Web App (PWA)</strong>. Glücklicherweise hatte unser Teammitglied Vanessa bereits Vorerfahrung zu diesem Thema und konnte den Großteil dieser Aufgabe übernehmen. Allerdings brachte das Einrichten und Testen der dafür benötigten Funktionalitäten großen Zeitaufwand mit sich.</p>



<p><strong>Backend</strong></p>



<p>Im Backend war das größte Problem die vielen <strong>Abhängigkeiten </strong>zwischen Klassen und Entitäten. Das Planen der Struktur war hierbei das wichtigste und anspruchsvollste. Da wir jedoch alles vorab genau geplant und beschrieben hatten, konnte die Implementierung recht schnell durchgeführt werden. Durch verschiedene Cascade und Loading Einstellungen, kam es jedoch trotzdem zu Recursive Errors und anderen Fehlern, die wir bewältigen mussten.</p>



<p>Besonders zu kämpfen hatten wir auch mit dem Versenden und Anzeigen von <strong>Push-Benachrichtigungen</strong>. Da die User:innen benachrichtigt werden sollten, sobald andere User:innen ein Check-In sendeten, musste der Befehl zuerst von einem Gerät abgesendet und dann von einem anderen empfangen werden. Da die Funktionen hinter diesem Problem recht komplex und verschachtelt sind benötigten wir ein paar Anläufe damit alles funktionierte.</p>



<p>Eine weitere Herausforderung war, dass das Backend dem Frontend immer <strong>einen Schritt voraus</strong> sein musste. Wie bereits erwähnt brachte das Backend einiges an Planungsaufwand mit sich, weshalb wir im Frontend darauf achten mussten zuerst die Dinge umzusetzen, die für sich alleine funktionieren konnten. Im Weiteren Verlauf der Umsetzung legten wir den Fokus darauf zumindest einen Sprint im Vorhinein das Backend für eine Komponente vorzubereiten.</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="1706" height="2560" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2025/01/Mockup2-scaled.jpg" alt="" class="wp-image-13626" style="width:319px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup2-scaled.jpg 1706w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup2-1024x1536.jpg 1024w, https://mobile.fhstp.ac.at/wp-content/uploads/2025/01/Mockup2-1365x2048.jpg 1365w" sizes="(max-width: 1706px) 100vw, 1706px" /></figure>



<h2 class="wp-block-heading">Personal Learnings</h2>



<p><strong>Vanessa</strong> <strong>Hofer</strong></p>



<p>Im Rahmen der Entwicklung von Amity habe ich erstmals mit <strong>NestJS</strong> gearbeitet und konnte dabei ein grundlegendes Verständnis für das Framework und seine modularen Konzepte gewinnen. Besonders das Erstellen von <strong>Push-Benachrichtigungen</strong> war eine wertvolle Lernerfahrung, da ich dabei sowohl die serverseitige Logik als auch die Integration ins Frontend umsetzen musste.</p>



<p>Auch in <strong>Angular</strong> konnte ich mein Wissen erweitern, da ich zuvor nur geringe Vorkenntnisse hatte. Durch das Arbeiten mit Komponenten, Datenbindung und Routing habe ich ein besseres Verständnis für die Entwicklung von Single-Page-Applications bekommen.</p>



<p>Die Arbeit an Amity hat mir gezeigt, wie wichtig es ist, sich schnell in neue Technologien einzuarbeiten und diese gezielt in einem Projekt einzusetzen.</p>



<p><strong>Sara Ladner</strong></p>



<p>In diesem Projekt habe ich viel dazugelernt, weil wir alle sowohl am Frontend als auch am <strong>Backend </strong>gearbeitet haben. Für mich war es das erste Mal, dass ich aktiv im Backend mitgearbeitet habe. Dabei konnte ich ein besseres Verständnis dafür entwickeln, wie die Kommunikation zwischen Frontend und Backend funktioniert und welche Prozesse im Hintergrund ablaufen. Besonders spannend war es, zu sehen, wie die einzelnen Teile des Projekts zusammengefügt werden, um eine funktionierende Anwendung zu erstellen.</p>



<p>Weiters habe ich zum ersten Mal mit <strong>Angular </strong>gearbeitet. Anfangs war das eine Herausforderung, da ich mich erst an die Struktur und Arbeitsweise des Frameworks gewöhnen musste. Mit der Zeit habe ich mich aber gut eingearbeitet und konnte sogar selbstständig neue Funktionen umsetzen. Durch diese praktischen Erfahrungen habe ich viel über die Entwicklung moderner Webanwendungen gelernt, und ich fühle mich jetzt sicherer im Umgang mit neuen Technologien.</p>



<p><strong>Laura Kainzbauer</strong></p>



<p>Für mich war dieses Projekt vor allem dadurch lehrreich, dass wir alle am Front- und Backend beteiligt waren und uns <strong>gegenseitig etwas beibringen</strong> konnten. Einerseits konnte ich meinen Kolleginnen beim ersten Arbeiten mit NestJS helfen, andererseits halfen sie mir mit Schwierigkeiten im <strong>Frontend</strong>. Ich finde diese Aufteilung hat es uns ermöglicht verschiedene Funktionalitäten vom Buttonklick bis zum Abrufen aus der Datenbank komplett durchzudenken und den gesamten Prozess noch besser zu verstehen.</p>



<p>Besonders das Arbeiten mit <strong>Angular</strong> war für mich spannend, da ich seit dem Bachelor nicht mehr damit gearbeitet hatte und mit Amity zum ersten Mal richtig damit umgehen konnte. Am meisten konnte ich dazulernen in der Arbeit mit den verschiedenen Komponenten und Services und dem Zusammenhang zwischen ihnen. Der Kalender war meine größte persönliche Errungenschaft, da ich in meinem ersten Angular Projekt bereits an ein einem Kalender arbeitete und seitdem nie wieder etwas damit zu tun haben wollte. In diesem Projekt konnte ich mein &#8220;Trauma&#8221; jedoch gut überwinden und bin sehr froh mit dem fertigen Ergebnis.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/amity-semesterprojekt-ws24/">Amity | Semesterprojekt WS24</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>KÜKEN Chatbot: Der sprechende Mistkübel!</title>
		<link>https://mobile.fhstp.ac.at/allgemein/kueken-chatbot-der-sprechende-mistkuebel/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Wed, 21 Aug 2024 13:23:43 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Forschung]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=12646</guid>

					<description><![CDATA[<p>Im Rahmen der Lehrveranstaltung Tun/Forschen/Gründen entwickelten Lukas Heinzl und ich für das Forschungsprojekt „KÜKEN“ einen „sprechenden“ Mistkübel, der Benutzer:innen dabei hilft, Müll korrekt zu trennen. Das Ziel? Den Abfall so zu verwerten, dass er anschließend effizient zu Biomethan umgewandelt werden kann, das zum Heizen verwendet wird. Screenshots des Küken Chatbots: Landing Page Was ist der <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/kueken-chatbot-der-sprechende-mistkuebel/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/kueken-chatbot-der-sprechende-mistkuebel/">KÜKEN Chatbot: Der sprechende Mistkübel!</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Im Rahmen der Lehrveranstaltung Tun/Forschen/Gründen entwickelten Lukas Heinzl und ich für das Forschungsprojekt „KÜKEN“ einen „sprechenden“ Mistkübel, der Benutzer:innen dabei hilft, Müll korrekt zu trennen. Das Ziel? Den Abfall so zu verwerten, dass er anschließend effizient zu Biomethan umgewandelt werden kann, das zum Heizen verwendet wird.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1496" height="842" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/08/screenshot-rocks-4-edited-1.png" alt="" class="wp-image-12673"/></figure>



<p class="has-text-align-center has-small-font-size">Screenshots des Küken Chatbots: Landing Page</p>



<h2 class="wp-block-heading"><strong>Was ist der KÜKEN Chatbot?</strong></h2>



<p>Der Chatbot dient als zentrale Kommunikationsschnittstelle des Projekts und steht bereit, um Fragen zur Mülltrennung, Infos zum Projekt, Fragen zur Organisation und weiterem zu beantworten. Der Chatbot nutzt vorgefertigte Dialoge, die in Flussdiagrammen visuell entworfen und mit Natural Language Processing (NLP) trainiert und verknüpft wurden. So ist es möglich präzise Antworten zum Thema Abfallwirtschaft zu erhalten, ohne dass der Chatbot in andere Themen abschweift.</p>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1496" height="842" data-id="12667" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/08/screenshot-rocks-5-edited-1.png" alt="" class="wp-image-12667"/></figure>
</figure>



<p class="has-text-align-center has-small-font-size">Screenshots des Küken Chatbots: Start der Konversation</p>



<h2 class="wp-block-heading"><strong>Technische Umsetzung</strong></h2>



<p>Für die technische Umsetzung des Chatbots wurde im Backend mit Node.js gearbeitet und im Frontend mit Vue.js und Vuetify. Die Dialoge des Chatbots wurden mit Fabble.io geschrieben (Fabble.io ist seit dem nicht mehr in Betrieb) und anschließend exportiert und mit NLP trainiert.</p>



<h2 class="wp-block-heading"><strong>Wie funktioniert es?</strong></h2>



<p>Der Chatbot wird im nächsten Testlauf des Forschungsprojektes &#8220;KüKeN&#8221; durch scannen eines QR-Code am Kübel mit dem Handy erreichbar sein. Es gibt zwei Optionen zur Interaktion mit dem Chatbot:</p>



<ul class="wp-block-list">
<li><strong>&#8220;Bubbles&#8221; auswählen</strong>: Wähle vordefinierte Begriffe am unteren Bildschirmrand aus. </li>



<li><strong>Freie Texteingabe</strong>: Stelle spezifische Fragen direkt an den Chatbot.</li>
</ul>



<p><strong>Unser Ziel</strong> ist es, interessierten und motivierten Personen schnell und präzise die nötigen Informationen rund um das KüKeN-Projekt zur Verfügung zu stellen.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1496" height="842" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/08/screenshot-rocks-6-edited-3.png" alt="" class="wp-image-12671"/></figure>



<p class="has-text-align-center has-small-font-size">Screenshots des Küken Chatbots: Freitexteingabe</p>



<h2 class="wp-block-heading"><strong>Retrospektive</strong></h2>



<p>Dieses Projekt war eine wertvolle Lernerfahrung für mich. Besonders faszinierend war es, mehr über die Gestaltung von Dialogen und die Funktionsweise von Chatbots zu lernen. Die Herausforderung, präzise und nutzerfreundliche Interaktionen zu entwickeln, hat mir neue Einblicke in die Verbindung von Technologie und Kommunikation gegeben.</p>



<p><a href="http://www.kueken.at">Link zur KüKeN Projektseite</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/kueken-chatbot-der-sprechende-mistkuebel/">KÜKEN Chatbot: Der sprechende Mistkübel!</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Bevry &#124; Semesterprojekt SoSe24</title>
		<link>https://mobile.fhstp.ac.at/allgemein/bevry-semesterprojekt-sose24/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Mon, 10 Jun 2024 17:27:01 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Dokumentation]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[NestJs]]></category>
		<category><![CDATA[Vue.js]]></category>
		<category><![CDATA[Vuetify]]></category>
		<category><![CDATA[WebApp]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=12354</guid>

					<description><![CDATA[<p>Rollenverteilung Projektbeschreibung, Funktionalitäten Konzept Als Gruppenprojekt für das zweite Semester der Masterklasse haben wir uns zu fünft entschieden, unsere Web-App, die den Namen „Bevry“ trägt, aus dem ersten Semester weiterzuentwickeln. Bevry richtet sich an alle Cocktail-Liebhaber, die gerne mit neuen Getränkekreationen experimentieren und ihre Rezepte teilen wollen. Bestehende Funktionalitäten Die bereits im letzten Semester umgesetzten <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/bevry-semesterprojekt-sose24/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/bevry-semesterprojekt-sose24/">Bevry | Semesterprojekt SoSe24</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading">Rollenverteilung</h2>



<ul class="wp-block-list">
<li><strong>Sara</strong>: Frontend, Minigames</li>



<li><strong>Laura</strong>: Backend, Minigames</li>



<li><strong>Sophia</strong>: Frontend, Minigames, Organisation</li>



<li><strong>Vanessa</strong>: Frontend, Organisation</li>



<li><strong>Katharina</strong>: Backend, Frontend</li>



<li>Tun-Forschen-Gründen Ausschreibungen:
<ul class="wp-block-list">
<li><strong>Anna</strong>: Fotografie</li>



<li><strong>Julia</strong>: Design</li>



<li><strong>Paul</strong>: Audio</li>



<li><strong>Elisa</strong>: Animation</li>
</ul>
</li>
</ul>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1500" height="1500" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/group-pic.jpg" alt="" class="wp-image-12536" style="width:388px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/group-pic.jpg 1500w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/group-pic-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/group-pic-120x120.jpg 120w" sizes="auto, (max-width: 1500px) 100vw, 1500px" /></figure>
</div>
</div>



<p></p>



<h2 class="wp-block-heading">Projektbeschreibung, Funktionalitäten</h2>



<h3 class="wp-block-heading">Konzept</h3>



<p>Als Gruppenprojekt für das zweite Semester der Masterklasse haben wir uns zu fünft entschieden, unsere Web-App, die den Namen „Bevry“ trägt, aus dem ersten Semester weiterzuentwickeln. <a href="https://www.bevry.app/" target="_blank" rel="noreferrer noopener">Bevry</a> richtet sich an alle Cocktail-Liebhaber, die gerne mit neuen Getränkekreationen experimentieren und ihre Rezepte teilen wollen.</p>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-ddb39544 wp-block-buttons-is-layout-flex" style="font-style:normal;font-weight:400;text-transform:none">
<div class="wp-block-button has-custom-width wp-block-button__width-50 has-custom-font-size is-style-fill has-small-font-size"><a class="wp-block-button__link has-luminous-vivid-orange-background-color has-background has-text-align-center wp-element-button" href="https://akirchknopf-21110.php.fhstp.cc/studium/studium-projekte/bevry-semesterprojekt-ws23/" style="border-radius:100px">Artikel vom letzten Semester ansehen</a></div>
</div>



<p></p>



<h3 class="wp-block-heading">Bestehende Funktionalitäten</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Die bereits im letzten Semester umgesetzten technischen Funktionen der App bestanden primär auch dem Erstellen, Teilen, und Entdecken von Cocktail-Rezepten aller Art. Es können nur registrierte und angemeldete Nutzer:innen die Rezeptsammlung sehen. Rezepte sind in Kategorien unterteilt, die ein zielgerichtetes Filtern ermöglichen. Mithilfe einer Suchleiste können Nutzer:innen ihre Suche zusätzlich verfeinern. <br>Rezepte können von den Nutzer:innen, die sie erstellt haben, bearbeitet oder auch gelöscht werden. Ebenfalls können Nutzer:innen Rezepte liken und so alle Lieblingsrezepte – ob es die eigenen sind oder von anderen Nutzer:innen erstellt – in einer Favoritenliste sammeln. Eine Bewertungsfunktion erlaubt es, Rezepten sowohl eine Sternebewertung zu verleihen als auch ein öffentliches Kommentar zu posten. Alle dieser bestehenden Ansichten erhielten dieses Semester ein ansprechenderes Design.</p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1920" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/cocktail-detail.png" alt="" class="wp-image-12533" style="width:232px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/cocktail-detail.png 1080w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/cocktail-detail-864x1536.png 864w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /></figure>
</div>
</div>



<p></p>



<h3 class="wp-block-heading">Neu umgesetzte Funktionalitäten</h3>



<p>Im Rahmen des 2. Semesters haben wir unsere Web-App um zahlreiche neue Funktionalitäten erweitert, um das Nutzererlebnis noch besser zu gestalten. Mit der neuen Bar Inventory Funktion behalten die Nutzer:innen stets den Überblick über ihre vorhandenen Zutaten. Die Shopping List erleichtert das Einkaufen, indem fehlende Zutaten bereits vom Rezept aus hinzugefügt werden können. Für den Unterhaltungsfaktor bei Party sorgen unsere beiden neu integrierten Minigames. Einerseits gibt es das Turn-Based Multiplayer Minigame “Spin the Wheel” und andererseits noch das Singleplayer Minigame “Mix it Up”.</p>



<figure class="wp-block-gallery has-nested-images columns-4 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12490" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-shoppinglist.png" alt="" class="wp-image-12490"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12492" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-bar-inventory.png" alt="" class="wp-image-12492"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12493" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-spin-the-wheel.png" alt="" class="wp-image-12493"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12491" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-mix-it-up.png" alt="" class="wp-image-12491"/></figure>
<figcaption class="blocks-gallery-caption wp-element-caption">Shoppinglist, Bar Inventory, Minigame &#8220;Spin the Wheel&#8221;, Minigame &#8220;Mix it Up&#8221;</figcaption></figure>



<p></p>



<p>Zudem können Nutzer:innen nun eigene Zutaten anlegen und Substitutes hinzufügen, um Rezepte noch individueller anzupassen als je zuvor. Die neue Save Draft Funktion ermöglicht es, während des Erstellens eines Rezeptes die View zu verlassen und später an dem Rezept weiterzuarbeiten. Das Design der App hat ebenfalls ein frisches und benutzerfreundliches Designupdate erhalten.</p>



<figure class="wp-block-gallery has-nested-images columns-4 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12498" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-create-ingredient.png" alt="" class="wp-image-12498"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12499" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-substitutes.png" alt="" class="wp-image-12499"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12500" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-save-draft.png" alt="" class="wp-image-12500"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12501" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-dashboard.png" alt="" class="wp-image-12501"/></figure>
<figcaption class="blocks-gallery-caption wp-element-caption">Create Ingredient, Substitutes, Save Draft, Neues Design</figcaption></figure>



<p></p>



<p>Zusätzlich wird nun die E-Mail-Adresse verifiziert, die Einstellungen wurden erweitert, eine Ladeanimation wurde ergänzt, und Empfehlungen basierend auf den aktuell im Barbestand vorhandenen Zutaten wurden hinzugefügt. Die Empfehlungen werden gemäß der übereinstimmenden Barbestand-Zutaten mit den für das Rezept benötigten Zutaten absteigend angeordnet (siehe Chip-Komponente links neben dem Like-Button).</p>



<figure class="wp-block-gallery has-nested-images columns-4 is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12503" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-email-verifizierung.png" alt="" class="wp-image-12503"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12505" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-settings.png" alt="" class="wp-image-12505"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="550" height="1060" data-id="12504" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/bevry-ladeanimation.png" alt="" class="wp-image-12504"/></figure>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1080" height="1920" data-id="12542" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/recommended-drinks-1.png" alt="" class="wp-image-12542" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/recommended-drinks-1.png 1080w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/recommended-drinks-1-864x1536.png 864w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /></figure>
<figcaption class="blocks-gallery-caption wp-element-caption">Emailverifizierung, erweiterte Settings, Ladeanimation, Empfehlungen basierend auf Bar Inventory</figcaption></figure>



<p>Diese Erweiterungen machen unsere Web-App zu einem unverzichtbaren Tool für alle Cocktail-Liebhaber und Hobby-Barkeeper.</p>



<h2 class="wp-block-heading">Technologien</h2>



<h3 class="wp-block-heading">Bestehende Technologien</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Alle Technologien aus dem letzten Semester haben wir beibehalten. Hier nochmal zur Erinnerung:</p>



<ul class="wp-block-list">
<li><strong>Vue.js:</strong> Unser Frontend-Framework</li>



<li><strong>Vuetify:</strong> Unser UI-Framework</li>



<li><strong>Pinia:</strong> Unsere State Management Library</li>



<li><strong>NestJS:</strong> Unser Backend-Framework</li>
</ul>



<p>Zusätzlich verwenden wir im Backend:</p>



<ul class="wp-block-list">
<li><strong>TypeORM:</strong> Für die Datenbankverwaltung</li>



<li><strong>JWT:</strong> Für die Authentifizierung</li>



<li><strong>bcrypt:</strong> Für die Passwortverschlüsselung</li>



<li><strong>OpenAPI:</strong> Für die API-Dokumentation mit Swagger</li>
</ul>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%"><div class="wp-block-image">
<figure class="alignleft size-full is-resized"><img loading="lazy" decoding="async" width="765" height="805" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/logo.png" alt="" class="wp-image-11778" style="width:235px;height:auto"/></figure></div></div>
</div>



<h3 class="wp-block-heading">Erweiterungen</h3>



<p>Außerdem haben wir als neues Paket <code>lottie-web</code> installiert, um die Ladeanimation und die &#8220;Spin the Wheel&#8221;-Animation anzeigen zu können. Diese wurden von Elisa, unserer Animationsdesignerin, im Lottie-Format angefertigt. Mit Lottie-web können wir Adobe After Effects-Animationen, die als JSON exportiert wurden, problemlos anzeigen. Nachdem es mit den Paketen <code>vue-lottie</code> und <code>vue3-lottie</code> nicht geklappt hat, sind wir bei lottie-web geblieben. Nach anfänglichen Schwierigkeiten mit der korrekten Anzeige der Animationen ging es dennoch recht gut. Es war cool zu sehen, dass es dann doch relativ einfach ist, Animationen anzuzeigen, nachdem uns das Lottie-Format vorher nicht geläufig war.</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%"><div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="847" height="1710" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/verification-1.png" alt="" class="wp-image-12525" style="width:202px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/verification-1.png 847w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/verification-1-761x1536.png 761w" sizes="auto, (max-width: 847px) 100vw, 847px" /></figure></div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Für die E-Mail-Verifizierung haben wir die Pakete <code>nodemailer </code>und <code>maildev </code>benutzt. Maildev war super, um das Senden der E-Mails lokal testen zu können, da es als SMTP-Server fungiert. Es bietet eine webbasierte Benutzeroberfläche, über die Entwickler die gesendeten E-Mails einsehen und testen können, ohne dass diese tatsächlich über das Internet versendet werden müssen.</p>



<p>Während Maildev als lokaler SMTP-Server dient, um E-Mails zu empfangen und zu testen, wird Nodemailer verwendet, um E-Mails zu generieren und an einen SMTP-Server (wie Maildev oder einen echten E-Mail-Server) zu senden. Es ist ein Node.js-Modul, das es ermöglicht, E-Mails einfach aus Node.js-Anwendungen heraus zu versenden. Somit konnten wir das E-Mail-Versenden dann schließlich über den echten E-Mail-Server bei world4you laufen lassen.</p>
</div>
</div>



<p></p>



<h2 class="wp-block-heading">Minigames</h2>



<h3 class="wp-block-heading">Grundlegendes</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Um das Mischen von Cocktails noch spaßiger zu machen, haben wir Bevry um den Games Hub erweitert. Dieser Bereich der App ist den Minigames gewidmet. Wir haben uns dazu entschieden, zwei Spiele zu entwickeln, die in unterschiedlichen Kontexten zur Geltung kommen können. Da Bevry den gemeinsamen Spaß an Cocktails hervorheben soll, musste eines der Spiele ein Party-Game sein, das mit mehreren Spieler:innen gespielt werden sollte. Dieses Minigame verwendet das neue Bar Inventory und damit Zutaten, die die Spieler bereits bei der Hand haben. Auf technischer Seite basiert es auf auf Timeouts und Zufallswerten.</p>



<p>Andererseits soll der Cocktail-Spaß auch abseits der Cocktail-Party nicht aufhören müssen &#8211; daher entschieden wir uns dazu, aus dem zweiten Minigame zu ein Singleplayer-Game zu machen, mit dem Spieler:innen jederzeit den Spaß am Cocktails mischen genießen können, ohne tatsächlich Zutaten zu benötigen. Gleichzeitig bedient sich dieses Minigame an echten Rezepten aus Bevrys Rezeptesammlung. Damit können Spieler:innen neue Rezepte spielerisch entdecken und die Cocktails bei Interesse auch selbst machen. Für die Umsetzung dieses Spiels wurde die HTML Canvas API verwendet.</p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1920" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/games-hub.png" alt="" class="wp-image-12548" style="width:279px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/games-hub.png 1080w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/games-hub-864x1536.png 864w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /></figure>
</div>
</div>



<h3 class="wp-block-heading">Spin The Wheel</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1080" height="1920" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/spinthewheel.png" alt="" class="wp-image-12551" style="width:231px;height:auto" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/spinthewheel.png 1080w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/spinthewheel-864x1536.png 864w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Im Minigame Spin The Wheel geht es vor allem um Schnelligkeit und Spaß in der Gruppe. Zu Beginn werden zufällige Zutaten zusammengesucht und bereit gestellt, die dann im Spiel zu einer wilden Mischung werden. Der Reihe nach müssen die Spieler:innen ein “Rad drehen”, um eine Zutat zu wählen, die in ein Glas in der Mitte gefüllt werden muss. Sobald das erledigt ist, wird das Handy an die nächste Person weitergegeben. So geht es weiter, bis der versteckte Timer abläuft und die letzte Person, die das Rad dreht, das Gemisch trinken muss. Je nach Zutaten kann diese Spieler:ien also Gewinner:in oder Verlierer:in des Spiels sein.</p>



<p>Das Spiel besteht aus einem Setup, in dem die zufälligen Zutaten aus dem Barbestand (mit oder ohne alkoholische Zutaten) ausgewählt und angepasst werden können. Dann müssen alle Zutaten und ein Glas in der Mitte platziert werden, bevor das Spiel gestartet werden kann. Zusätzlich ist es möglich eine Anleitung zu lesen, die den Spielablauf erklärt. </p>
</div>
</div>



<p>Bei Spielstart wird ein zufälliger Timer in einem vorgegebenen Zeitraum gestartet, der das Spielende vorgibt. Nach Ablauf des Timers kommt man zum Endscreen, der die letzte Spieler:in dazu auffordert, das Gemisch zu trinken. Es ist möglich ein Spiel mit denselben Einstellungen nochmals zu starten oder zurück zum Setup zu navigieren, um eine neue Runde mit anderen Zutaten zu beginnen.</p>



<h3 class="wp-block-heading">Mix It Up</h3>



<p>Das Minigame Mix It Up ist ein Singleplayer Spiel, in dem die Spieler:innen Rezepte der App besser kennenlernen sollen. Das Ziel ist es alle richtigen Zutaten eines Rezeptes mit einem Glas einzusammeln. Dabei sollen falsche Zutaten vermieden werden, um möglichst keine Leben zu verlieren. Sobald ein Rezept fertig ist, kommt man zum nächsten Level mit dem nächsten Rezept. Das passiert so lange, bis man keine Leben mehr hat und der erreichte Punktestand in einem Highscore Board gespeichert wird.</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>In diesem Fall wird im Setup nur ein zufällig vorausgewähltes Rezept angezeigt. Bei Bedarf können die zugehörigen Zutaten nachgelesen werden, ansonsten kann man sich das Spiel etwas schwieriger machen und es ohne diese probieren. Bei Bedarf kann eine Anleitung durchgelesen werden, bevor das Spiel gestartet wird. Im Spiel fallen zufällige Zutaten herunter, die eingesammelt oder vermieden werden sollen. Jede Zutat, die für das Rezept benötigt ist, muss von dem:der Spieler:in zumindest ein Mal eingesammelt werden, um den Level abzuschließen. Falls es nochmal eingesammelt wird, werden Bonuspunkten gesammelt, die für den Highscore am Ende herangezogen werden. Falsche Zutaten führen dazu, dass eines von insgesamt 5 Leben abgezogen wird. Bis der:die Spieler:in alle Leben verliert sollen so viele Punkte gesammelt und Level abgeschlossen werden, wie möglich. Am Endscreen wird der erreichte Rang und Punktestand angezeigt, gemeinsam mit dem Highscore Board, dass die besten Punktestände aller Spieler:innen inkludiert.</p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1080" height="1920" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/moscow-mule.png" alt="" class="wp-image-12552" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/moscow-mule.png 1080w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/moscow-mule-864x1536.png 864w" sizes="auto, (max-width: 1080px) 100vw, 1080px" /></figure>
</div>
</div>



<p></p>



<h2 class="wp-block-heading">Zusammenarbeit</h2>



<h3 class="wp-block-heading">Scrum</h3>



<p>Von der Zusammenarbeit im letzten Semester nahmen wir einige Learnings im Bezug auf Zeit- und Projektmanagement in dieses Semester mit. Wir nahmen uns von Anfang an vor, Scrum für unseren Arbeitsprozess in diesem Semester zu verwenden, um eine bessere Kontrolle über Deadlines, Arbeitsteilung, und To-Dos zu haben.</p>



<p>Wir starteten am Donnerstag, dem 7. März, mit unserem ersten zweiwöchigen Sprint. Das Sprint Planning und Sprint Review passierte demnach immer alle zwei Wochen während unserem wöchentlichen Meeting am Donnerstag.</p>



<p>Wir nutzten Jira, um Tickets zu erstellen und deren Status auf dem Kanban-Board zu verfolgen. Dieser Prozess erwies sich als äußerst hilfreich, nicht nur um unsere anfangs gesetzten Deadlines für individuelle Features einzuhalten, sondern auch in Bezug auf Kommunikation. Da nun auf einen Blick klar war, wer gerade woran arbeitete, konnten wir untereinander abhängige To-Dos besser abstimmen und Blockaden schnell an die richtige Person kommunizieren.</p>



<p>Außerdem erstellten wir Akzeptanzkriterien für die individuellen Tickets, um Missverständnisse dahingehend zu vermeiden, wann ein To-Do als abgeschlossen gelten konnte. Dieses Verfahren erwies sich als äußerst nützlich, auch um Details zu einzelnen Requirements festzuhalten (z.B. wie mit der Groß- und Kleinschreibung von Benutzernamen umgegangen werden sollte), sodass wir nicht versehentlich aneinander vorbeiarbeiteten. Auch die Organisation der Tickets in einzelne Epics war hilfreich, um schnell einen Überblick zu bekommen und zu behalten.</p>



<p>Die wöchentlichen Meetings nutzten wir, um einander zu unserem jeweiligen Stand zu informieren und um aktuelle Probleme und nächste Schritte zu besprechen. Außerdem nutzten wir die Meetings, um aktuelle Aufgaben zu besprechen, welche die Ausschreibungen betrafen, und trafen gemeinsame Entscheidungen zu gelieferten Designvorschlägen, Entwürfen, und mehr.</p>



<h3 class="wp-block-heading">Ausschreibungen</h3>



<p>Im Rahmen der Lehrveranstaltung Tun/Forschen/Gründen erstellten wir Ausschreibungen zu verschiedenen Aufgabenbereichen für Bevry. Diese umfassten Fotografie für Cocktail-, Marketing- und Portfoliofotos; Design zur Überarbeitung aller Screens für ein einheitliches visuelles Erscheinungsbild und Interaktionskonzept sowie für den Entwurf von Custom Icons; Sound Design für die Erstellung von Soundtracks und Sound Effects, vor allem für die Minigames; und Animation für eine Ladeanimation sowie für Animationen innerhalb der Minigames.</p>



<p>Um die Kommunikation für die Auftragnehmenden einfach zu gestalten, definierten wir die jeweiligen Auftraggeberinnen der Ausschreibung als primäre Kontaktperson für die Auftragnehmenden. Zusätzlich wurden alle Auftragnehmenden zum Jira-Projekt hinzugefügt und Tickets für ihre einzelnen Aufgaben erstellt, sodass alle einen Überblick über den aktuellen Stand des Projekts behalten konnten.</p>



<h4 class="wp-block-heading">Anna: Fotografie</h4>



<p>Die Zusammenarbeit mit Anna, unserer Fotografin, war insgesamt positiv. Mit ihr wurden Fotos von Cocktails für die App und Portfoliofotos der Gruppe erstellt.</p>



<p>Wir arbeiteten nur bei den Fotoshootings mit Anna in Person gemeinsam, während die Besprechung restlicher Anforderungen größtenteils online verlief. Dies führte manchmal zu Kommunikationsschwierigkeiten.</p>



<p>Ein großes Hindernis waren die Deadlines. Ursprünglich geplante Termine mussten verschoben werden und die Fotos wurden teilweise sehr verspätet zur Auswahl bereitgestellt, was wiederum zu spätem Erhalt der bearbeiteten Bilder führte. Trotz Schwierigkeiten gelang es uns, die notwendigsten Fotos bis zur Abgabe einzubinden.</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1152" height="850" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/WhatsApp-Image-2024-05-30-at-15.39.15.jpeg" alt="" class="wp-image-12508" style="width:535px;height:auto"/></figure>



<h4 class="wp-block-heading">Paul: Audio</h4>



<p>Auch die Zusammenarbeit mit Paul für die Soundeffekte, verlief erfreulich. Paul hielt uns regelmäßig auf dem Laufenden, informierte über neue Entwicklungen und bat um Feedback, was den Prozess sehr transparent gestaltete.</p>



<p>Es gab jedoch einige chaotische Momente, besonders hinsichtlich der Deadlines und des Endprodukts. Diese waren größtenteils auf Verzögerungen bei den Minigames und anfängliche Unklarheiten in unserer Gruppe zurückzuführen. Wir waren uns zu Beginn nicht sicher, ob wir auch Sounds außerhalb der Games benötigen und welche das sein sollten.</p>



<p>Die Kommunikation erfolgte teilweise auch mit Elisa, die für die Animationen zuständig war. Besonders bei der Abstimmung zur &#8220;Spin the Wheel&#8221;-Animation und dem dazugehörigen Sound mussten wir eng zusammenarbeiten. Trotz der anfänglichen Herausforderungen haben die Soundeffekte und die Musik gut zu unseren Vorstellungen sowie den Animationen gepasst, und sie tragen erheblich zum gewünschten Spielgefühl bei.</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1435" height="1028" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/WhatsApp-Image-2024-05-30-at-15.48.31.jpeg" alt="" class="wp-image-12510" style="width:530px;height:auto"/></figure>



<h4 class="wp-block-heading">Julia: Design</h4>



<p>Die Zusammenarbeit mit Julia, unserer Grafikdesignerin, war sehr erfreulich. Sie hielt alle Deadlines ein und zeigte sich äußerst flexibel, um unseren Anforderungen gerecht zu werden.</p>



<p>Julia gestaltete sowohl die Screendesigns als auch die Icons für die App. Sie lieferte uns drei Entwürfe für die Screendesigns, aus denen wir einen Vorschlag auswählten. Anschließend designte sie alle Screens basierend auf unserem Feedback. Auch bei den Icons für die Gläser gab es Besprechungen und Änderungen, die schnell und zuverlässig eingearbeitet wurde.</p>



<p>Dank ihrer Pünktlichkeit und Anpassungsfähigkeit konnten wir die Grafiken rechtzeitig in die App integrieren.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="373" height="176" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/WhatsApp-Image-2024-05-16-at-16.33.15.jpeg" alt="" class="wp-image-12511"/></figure>



<h4 class="wp-block-heading">Elisa: Animation</h4>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<p>Dank Elisas Mitwirkung konnten wir die App mit einer Ladeanimation sowie mit Animationen für die Minigames aufwerten. Elisa lieferte für jede dieser Animationen mehrere Entwürfe und Designvorschläge, die zur Markenidentität von Bevry und zum bestehenden Erscheinungsbild passten.</p>



<p>Bezüglich grafischer Assets (vor allem für die neuen Gläser-Icons) und Abstimmung mit dem Sound Design für diese Animationen arbeitete sie auch mit Julia und Paul zusammen, was ohne Probleme funktionierte.</p>



<p>Elisa war über die gesamte Zusammenarbeit hinweg verlässlich, pünklich, und lieferte qualitativ hochwertige Arbeit. Auch als die Zeit vor der Projektevernissage knapp wurde und bei den Dateiexporten einige händische Korrekturen notwendig waren, konnten die fertigen Animationen dank der Flexibilität seitens Elisa noch rechtzeitig eingebunden werden.</p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="648" height="948" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/Bildschirmfoto-2024-06-10-um-19.44.15.jpg" alt="" class="wp-image-12512" style="width:276px;height:auto"/></figure>
</div>
</div>



<p></p>



<h2 class="wp-block-heading">Hürden und Schwierigkeiten</h2>



<h3 class="wp-block-heading">Organisation</h3>



<p>Die Organisation gestaltete sich manchmal knifflig, vor allem wenn es darum ging, mit den Tun/Forschen/Gründen-Mitgliedern zusammenzuarbeiten. Wir mussten geeignete Deadlines finden, die sowohl mit ihren Ergebnissen als auch mit unseren eigenen Projekten harmonierten. Außerdem war es wichtig, klar abzustimmen, welche Aufgaben priorisiert werden sollten, bevor wir neue beginnen konnten. Die Kommunikation zwischen Backend und Frontend war ebenfalls entscheidend und erforderte eine genaue Koordination.</p>



<h3 class="wp-block-heading">Umsetzung</h3>



<p>Bei der Umsetzung stießen wir auf verschiedene Herausforderungen. Zum Beispiel machten uns die Minigames im Canvas einige Kopfschmerzen, insbesondere das Stoppen der GameLoop beim Verlassen der Seite und die richtige Anzeige von Animationen und Bildern. Auch das Timing und der Einbau von Animationen und Sound waren nicht immer einfach. Die Einrichtung des Mail-Servers für die E-Mail-Verifizierung erwies sich ebenfalls als komplex. Die Verwendung von Vuelidate zur Formularverifizierung erforderte genaue Aufmerksamkeit, ebenso wie das korrekte Positionieren von Stylingelementen aus den Screendesigns.</p>



<h3 class="wp-block-heading">Teamwork</h3>



<p>Im Teamwork gab es auch einige Herausforderungen zu bewältigen. Die Zusammenarbeit mit den Mitgliedern von Tun/Forschen/Gründen erforderte eine klare Kommunikation und eine klare Ansprechperson. Das regelmäßige Aktualisieren, wenn Aufgaben abgeschlossen waren, erwies sich als nützliche Praxis. Es war wichtig, die Aufgaben fair aufzuteilen und sicherzustellen, dass jedes Teammitglied die Möglichkeit hatte, an Aufgaben zu arbeiten, die sie interessierten. Wir mussten auch darauf achten, dass es keine Überschneidungen im Code gab, was eine kontinuierliche Kommunikation und die Nutzung von Branches im Versionskontrollsystem erforderte.</p>



<h2 class="wp-block-heading">Personal Learnings</h2>



<h3 class="wp-block-heading">Sara</h3>



<p>Ich arbeitete an verschiedenen Aufgaben im Frontend wie der Entwicklung von Filtern, der Implementierung des Barbestands und anderen Funktionen. Auch bei der Gestaltung der Minigames konnte ich ein wenig mitwirken.</p>



<p>Dieses Semester verwendeten wir Jira und Confluence, was das Projektmanagement erheblich erleichterte. Diese Tools halfen uns, Aufgaben effizient zu verteilen und den Überblick zu behalten. Obwohl es gegen Ende des Projekts etwas stressig wurde, konnten wir dank der guten Organisation die Arbeitsprozesse gut koordinieren.</p>



<h3 class="wp-block-heading">Laura</h3>



<p>Ähnlich wie im letzten Semester habe ich wieder am Backend mitgearbeitet und mein Wissen in diesem Bereich ausweiten können. Zusätzlich habe ich sehr viel an den Minigames mitgearbeitet, diese konzipiert, Spielregeln überlegt und schließlich umgesetzt. Bei der Umsetzung war ich besonders an der Game Logik und dem Setup beteiligt. Außerdem habe ich die Musik und Soundeffekte in der App eingebaut und mich darum gekümmert, dass diese an den richtigen Stellen abgespielt und pausiert werden. Durch das Benutzen von Jira und Confluence habe ich auch noch mehr im Punkt Organisation mitnehmen können. Unser Workflow war auch durch zusätzliche wöchentliche Meetings (Bevry Weekly) um einiges strukturierter und hat mir das Entwickeln neuer Skills im Bereich des Teamworks ermöglicht.</p>



<h3 class="wp-block-heading">Sophia</h3>



<p>Ich konnte in diesem Semester meine Programmierkenntnisse weiter vertiefen. Abgesehen von Frontend-Entwicklung war ich vor allem im Game Design und -Development involviert. Hier konnte ich auf meinen Game-Design-Kenntnissen aus dem Bachelorstudium aufbauen. Laura und ich nutzten häufig Pair Programming bei der Entwicklung der Minigames, wodurch ich ebenfalls meine Programmierkenntnisse verbessern und von ihr lernen konnte. Die Verwendung von Scrum war für mich zwar nicht komplett neu und war mir ein großes Anliegen für dieses Semester, aber erforderte eine gewisse Disziplin und Kommunikationsfähigkeiten, die mir für zukünftige Projekte von Nutzen sein werden. Die Tatsache, dass wir durch die Verwendung von Scrum so effizient waren und so viel umsetzen konnten, hat für mich bestätigt, wie wertvoll die Zeit ist, die in Projektmanagement investiert wird. Auch die Organisation und Koordination mit Elisa für die Animationen stellten sich als äußerst lehrreich heraus, und ich konnte viel über die Implementierung von Animationen im Webbereich dazulernen.</p>



<h3 class="wp-block-heading">Vanessa</h3>



<p>Durch meine Rolle im Projekt habe ich wertvolle persönliche Lernerfahrungen gesammelt, insbesondere im Bereich Frontend-Entwicklung und Designimplementation. Ich habe meine Fähigkeiten in Javascript und der Kommunikation mit dem Backend deutlich erweitert und gelernt, wie wichtig ein benutzerfreundliches und ansprechendes Design für den Erfolg einer Web-App ist. Die Umsetzung der neuen Features hat mir gezeigt, wie man komplexe Anforderungen in eine intuitive Benutzeroberfläche integriert. Darüber hinaus habe ich erneut auch gute Einblicke in die Sprint Planung gewonnen, was uns als Team dieses Semester sehr geholfen hat, die Arbeitsprozesse effizienter zu gestalten und die Teamarbeit zu koordinieren. Diese Erfahrungen haben nicht nur meine technischen Fähigkeiten gestärkt, sondern auch meine organisatorischen und kommunikativen Kompetenzen verbessert.</p>



<h3 class="wp-block-heading">Katharina</h3>



<p>Dieses Semester haben wir deutlich strukturierter gearbeitet, indem wir alle zwei Wochen Aufgaben zugewiesen haben. Das hat die Arbeit erleichtert und dafür gesorgt, dass kontinuierlich am Projekt gearbeitet wurde. Auch die wöchentlichen Treffen haben geholfen, den Fortschritt zu verfolgen und Probleme frühzeitig zu erkennen. Mit dem Deployment gab es gegen Ende einige Probleme, das hätten wir deutlich früher angehen sollen, um den Stress am Ende zu vermeiden. Dabei stellten wir fest, dass es Unterschiede zwischen der lokalen Entwicklung und der Live-Version auf unserer Domain bevry.app gab. Zum Beispiel funktionierten manche Backend-Calls plötzlich nicht mehr, Bilder wurden nicht angezeigt, und die Ladeanimation auf dem iPhone funktionierte nicht richtig. Auch für das Testing hätten wir mehr Zeit einplanen müssen, da dabei einige unerwartete Probleme auftraten.</p>



<p>Dennoch konnte ich in diesem Semester mehr Erfahrung in der Backend-Entwicklung sammeln und war auch in die Frontend-Entwicklung involviert. Ich half beispielsweise dabei, Julias Designs umzusetzen, die Glasicons einzubinden und kümmerte mich um die Ladeanimation. Backendseitig habe ich mich um die Shoppinglist, Substitutes und Ingredients gekümmert. Auch das Usermanagement habe ich ausgebaut und die E-Mail-Verifizierung ergänzt.</p>



<p>Alles in allem bin ich zufrieden mit dem, was wir erreicht haben, besonders da wir uns sehr viel vorgenommen hatten. Das haben wir vor allem der guten Kommunikation und Organisation während des Semesters zu verdanken. Jeder war motiviert und gab sich Mühe, seine persönlichen Sprintziele zu erreichen.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/bevry-semesterprojekt-sose24/">Bevry | Semesterprojekt SoSe24</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Designing a Chatbot: From Simple Interfaces to Engaging Avatars</title>
		<link>https://mobile.fhstp.ac.at/allgemein/designing-a-chatbot-from-simple-interfaces-to-engaging-avatars/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Fri, 07 Jun 2024 13:02:53 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[chatbot]]></category>
		<category><![CDATA[mobile]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=12389</guid>

					<description><![CDATA[<p>The world of chatbots has evolved significantly, from simple text-based interfaces to interactive assistants with personality. This evolution is not only fascinating but also sets high standards for the user experience. Customers today expect seamless interactions with chatbots, and a well-designed user interface (UI) is key to meeting these expectations. Getting started with chatbot UI <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/designing-a-chatbot-from-simple-interfaces-to-engaging-avatars/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/designing-a-chatbot-from-simple-interfaces-to-engaging-avatars/">Designing a Chatbot: From Simple Interfaces to Engaging Avatars</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>The world of chatbots has evolved significantly, from simple text-based interfaces to interactive assistants with personality. This evolution is not only fascinating but also sets high standards for the user experience. Customers today expect seamless interactions with chatbots, and a well-designed user interface (UI) is key to meeting these expectations.</p>



<p>Getting started with chatbot UI design can be challenging, but it is crucial for ensuring user satisfaction and retention. This article will cover the definition, role, and expectations of chatbot UIs.</p>



<h2 class="wp-block-heading">What is a Chatbot User Interface?</h2>



<p>A chatbot user interface (UI) consists of graphical and language elements that facilitate human-computer interaction. Unlike traditional interfaces such as buttons or menus, chatbots often use natural language processing (NLP) to understand and respond to user input in text or voice form.</p>



<h2 class="wp-block-heading">Types of Chatbots</h2>



<p>There are two main types of chatbots: rule-based and AI-driven. Rule-based chatbots work with predefined scripts and respond to specific keywords or commands. In contrast, AI chatbots use advanced technologies like machine learning and natural language processing to conduct complex conversations and adapt to user input over time.</p>



<h3 class="wp-block-heading">Choosing Between Rule-Based and AI Chatbots</h3>



<p>Chatbots have become an integral part of modern business processes, offering efficient customer service and automation solutions. When deciding between AI-driven and rule-based chatbots, it&#8217;s important to consider the strengths and weaknesses of each option.</p>



<p><strong>Rule-Based Chatbots</strong></p>



<p><strong>Advantages:</strong></p>



<ul class="wp-block-list">
<li><strong>Cost-Effective:</strong> Budget-friendly and quick to implement.</li>



<li><strong>Ease of Implementation:</strong> Simple setup without extensive training.</li>



<li><strong>Time Savings:</strong> Automate routine tasks and inquiries.</li>
</ul>



<p><strong>Disadvantages:</strong></p>



<ul class="wp-block-list">
<li><strong>Lack of Personalization:</strong> Limited ability to adapt to user preferences.</li>



<li><strong>Limited Use Cases:</strong> Constrained by predefined scripts.</li>



<li><strong>Poor Fit for Complex Issues:</strong> Not suitable for larger businesses with sophisticated support needs.</li>
</ul>



<p><strong>AI-Driven Chatbots</strong></p>



<p><strong>Advantages:</strong></p>



<ul class="wp-block-list">
<li><strong>Intelligence and Adaptability:</strong> Understand user intent and handle complex inquiries.</li>



<li><strong>Enhanced User Experience:</strong> Provide natural, conversational interactions.</li>



<li><strong>Advanced Data Protection:</strong> Operate securely on internal servers.</li>
</ul>



<p><strong>Disadvantages:</strong></p>



<ul class="wp-block-list">
<li><strong>Longer Setup Time:</strong> Requires extensive training and coordination.</li>



<li><strong>User Hesitation:</strong> Some users may be reluctant to interact with AI systems.</li>



<li><strong>Resource Intensive:</strong> Initial investment in training and implementation.</li>
</ul>



<p>The choice between AI-driven and rule-based chatbots depends on various factors, including the size of the business and the customer base. It&#8217;s important to choose the right option to improve customer service and streamline business operations.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="918" height="612" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/image.png" alt="" class="wp-image-12396"/><figcaption class="wp-element-caption"><strong>[A]</strong> Difference between Rule-based and AI Chatbot</figcaption></figure>



<h2 class="wp-block-heading">The Benefits of an Engaging Chatbot Avatar</h2>



<p>In the digital age, the desire to express one&#8217;s personality is stronger than ever. Online, an avatar reflects individual interests, views, and principles. With chatbot avatars, efficiency is improved, the user experience is enhanced, and branding is effectively represented.</p>



<h3 class="wp-block-heading">Chatbot Avatars – What Are the Options?</h3>



<p>Avatars come in all shapes and sizes. Traditionally, avatars are known from video games, where they represent the player&#8217;s virtual likeness. Players have complete freedom to design their avatar to resemble themselves or adopt an entirely different appearance.</p>



<p>In the realm of chatbots, the possibilities for creating an avatar are nearly limitless. However, there are some common types to consider, including:</p>



<ul class="wp-block-list">
<li>The company&#8217;s logo</li>



<li>An image of a person</li>



<li>A cartoon or illustration</li>



<li>A geometric shape</li>



<li>A video recording</li>



<li>An animation</li>



<li>Just text</li>
</ul>



<p>These avatars are generally classified as:</p>



<ul class="wp-block-list">
<li>Human</li>



<li>Non-human</li>



<li>Abstract</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2000" height="2000" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/06/7092436-1.jpg" alt="" class="wp-image-12394" style="object-fit:cover" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/7092436-1.jpg 2000w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/7092436-1-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/7092436-1-1536x1536.jpg 1536w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/06/7092436-1-120x120.jpg 120w" sizes="auto, (max-width: 2000px) 100vw, 2000px" /><figcaption class="wp-element-caption"><strong>[B]</strong> Example of possible cartoon and non-human avatars</figcaption></figure>



<p>When designing a chatbot avatar, there are numerous possibilities. Here is an overview of static avatar types for chatbots. The right type of avatar for a chatbot depends on the bot&#8217;s personality and the company&#8217;s values.</p>



<h3 class="wp-block-heading">Strengthening the Chatbot&#8217;s Personality with an Avatar</h3>



<p>A well-designed avatar enhances the chatbot&#8217;s persona, reflecting the brand&#8217;s identity in every aspect. This involves fundamental decisions like how the chatbot addresses users and crafting humorous responses. An avatar visually represents this persona, making interactions feel more personal and human, thereby increasing engagement. Users feel they have a direct contact, giving them the sense of undivided attention from the chatbot.</p>



<h3 class="wp-block-heading">Immersive Storytelling Through Avatars</h3>



<p>Storytelling is a crucial marketing tool to promote a brand or product innovatively. It allows the branding to have an engaging identity and tell an authentic, creative, and inspiring story to the target audience. A chatbot avatar helps users immerse themselves in the world created by the brand, playing various roles in the company&#8217;s narrative.</p>



<h3 class="wp-block-heading">Teamwork – Reaching Goals Together with the User</h3>



<p>The goal of most chatbots is to guide customers to a specific objective, such as answering a service question or finding a new apartment. It&#8217;s essential that users feel the chatbot is collaborating with them to reach the desired goal, not hindering or sabotaging them.</p>



<p>Avatars play a significant role here, taking users by the hand and staying with them until the goal is achieved. This can be particularly helpful for tasks that users regularly complete via the chatbot. The avatar becomes a familiar face, associated with the task, whose assistance is appreciated after multiple successful interactions.</p>



<h3 class="wp-block-heading">At a Glance: What to Consider When Developing an Avatar</h3>



<p>An avatar that aligns with the developed persona and the company&#8217;s branding is a valuable addition to any chatbot. It makes the dialogue with the user feel more personal, guides them effectively, and quickly becomes a trusted advisor. An avatar allows users to immerse themselves in the brand&#8217;s world and helps tell immersive stories. It perfectly embodies the brand&#8217;s identity and becomes a standout representative in the digital space.</p>



<h2 class="wp-block-heading">Best Practices for Implementing a Chatbot User Interface</h2>



<p>Implementing an effective chatbot UI requires careful planning and consideration. Here are some best practices to keep in mind:</p>



<ol class="wp-block-list">
<li>Choose the right chatbot platform that meets the requirements and technical expertise.</li>



<li>Define the chatbot&#8217;s personality and tone to create a consistent brand experience.</li>



<li>Write dialogues that mimic natural conversations and evoke positive emotions in users.</li>



<li>Design a conversational flow that guides users through interactions and efficiently resolves their queries.</li>



<li>Integrate visual elements such as images and GIFs to enhance the chatbot experience and convey information effectively.</li>



<li>Educate users on bot commands and functionalities to streamline interactions and improve user satisfaction.</li>



<li>Strike a balance between proactive and reactive engagement to offer timely assistance without overwhelming users.</li>



<li>Enable seamless escalation to human support when needed by facilitating smooth transitions from bot to agent interactions.</li>
</ol>



<h2 class="wp-block-heading">Conclusion</h2>



<p>Chatbots are a powerful tool to improve customer interactions and increase the efficiency of business processes. By following best practices in designing and implementing chatbot user interfaces and selecting the right chatbot solution for your needs, the full potential of this technology can be realized.</p>



<h2 class="wp-block-heading">Literature</h2>



<p><strong>[1]</strong> 5 Examples of Fantastic Chatbot UI <a href="https://www.userlike.com/en/blog/chatbot-ui#:~:text=A%20chatbot%20user%20interface%20(UI,their%20terms%2C%20not%20the%20computer's.">Link</a></p>



<p><strong>[2]</strong> All You Need to Know to Use Chatbots in Business. Complete Guide 2024 <a href="https://www.chatbot.com/blog/chatbot-guide/#:~:text=A%20chatbot%20is%20a%20computer,messages%20in%20the%20chat%20window.">Link</a></p>



<p><strong>[3] </strong>Warum Ihr Chatbot unbedingt einen Avatar haben sollte <a href="https://www.assono.de/blog/warum-ihr-chatbot-unbedingt-einen-avatar-haben-sollte">Link</a></p>



<p><strong>[4]</strong> Rule-Based vs. AI Chatbots: Key Differences <a href="https://borndigital.ai/rule-based-vs-ai-chatbots-key-differences/">Link</a></p>



<p><strong>[5]</strong> What if you endowed your chatbot with an avatar? <a href="https://www.visiativ.com/en/visiativ-chatbot-solutions-an-avatar-for-your-chatbot/">Link</a></p>



<p><strong>[6]</strong> AI Chatbot vs Rule-based Chatbot: Which is the Smarter Choice for Your Business? <a href="https://www.giosg.com/blog/ai-chatbot-vs-rule-based-chatbot">Link</a></p>



<h3 class="wp-block-heading">Images</h3>



<p><a href="https://www.freepik.com/free-vector/man-robot-with-computers-sitting-together-workplace-artificial-intelligence-workforce-future-flat-illustration_20827812.htm#query=chatbot&amp;position=13&amp;from_view=keyword&amp;track=sph&amp;uuid=62d1097e-8fdf-4ba5-a854-4ae644eacca1">Headerimage by pch.vector</a></p>



<p><strong>[A]</strong> <a href="https://www.giosg.com/blog/ai-chatbot-vs-rule-based-chatbot">Difference between Rule-based and AI Chatbot Image</a></p>



<p><strong>[B]</strong> <a href="https://www.freepik.com/free-vector/cure-glitzy-pet-stickers-set_27596479.htm#fromView=search&amp;page=1&amp;position=47&amp;uuid=62f26c30-4ffd-43a8-ade8-6b609736fcda">Example of possible cartoon and non-human avatars Image by freepik</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/designing-a-chatbot-from-simple-interfaces-to-engaging-avatars/">Designing a Chatbot: From Simple Interfaces to Engaging Avatars</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Bevry &#124; Semesterprojekt WS23</title>
		<link>https://mobile.fhstp.ac.at/studium/studium-projekte/bevry-semesterprojekt-ws23/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Thu, 18 Jan 2024 09:32:50 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Dokumentation]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Tests]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[NestJs]]></category>
		<category><![CDATA[Vue.js]]></category>
		<category><![CDATA[WebApp]]></category>
		<category><![CDATA[webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=11761</guid>

					<description><![CDATA[<p>Als Gruppenprojekt für das erste Semester der Masterklasse haben wir uns zu fünft entschieden, eine Webapp zu entwickeln, die den Namen „Bevry“ trägt. Bevry richtet sich an alle Cocktail-Liebhaber, die gerne mit neuen Getränkekreationen experimentieren und ihre Rezepte teilen wollen. Konzipiert wurde die Idee im Rahmen der Lehrveranstaltung „Markenidentität und Corporate Design“, in der wir <a class="read-more" href="https://mobile.fhstp.ac.at/studium/studium-projekte/bevry-semesterprojekt-ws23/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/bevry-semesterprojekt-ws23/">Bevry | Semesterprojekt WS23</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Als Gruppenprojekt für das erste Semester der Masterklasse haben wir uns zu fünft entschieden, eine Webapp zu entwickeln, die den Namen „Bevry“ trägt. <a href="https://flock-2071.students.fhstp.ac.at">Bevry</a> richtet sich an alle Cocktail-Liebhaber, die gerne mit neuen Getränkekreationen experimentieren und ihre Rezepte teilen wollen. Konzipiert wurde die Idee im Rahmen der Lehrveranstaltung „Markenidentität und Corporate Design“, in der wir im Laufe des Semesters parallel zur Entwicklung auch ein Corporate Design inklusive eines herausstechenden Logos für Bevry erschaffen haben.</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:500px">
<h2 class="wp-block-heading">Rollenverteilung</h2>



<ul class="wp-block-list">
<li><strong>Sara</strong>: Design, Frontend, Usertests</li>



<li><strong>Laura</strong>: Backend</li>



<li><strong>Sophia</strong>: Design, Frontend, Dokumentation, Usertests</li>



<li><strong>Vanessa</strong>: Design, Frontend, Organisation</li>



<li><strong>Katharina</strong>: Backend</li>
</ul>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-image">
<figure class="alignleft size-full is-resized"><img loading="lazy" decoding="async" width="765" height="805" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/logo.png" alt="" class="wp-image-11778" style="width:187px;height:auto"/></figure></div></div>
</div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1807" height="2560" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/02/poster-scaled.jpg" alt="" class="wp-image-11894" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/02/poster-scaled.jpg 1807w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/02/poster-1084x1536.jpg 1084w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/02/poster-1446x2048.jpg 1446w" sizes="auto, (max-width: 1807px) 100vw, 1807px" /></figure>



<h2 class="wp-block-heading">Umgesetzte Funktionalitäten</h2>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="874" height="886" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/bevry-categories.png" alt="" class="wp-image-11771" style="width:399px;height:auto"/></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<p>Die technischen Funktionen der App drehen sich primär um das Erstellen, Teilen, und Entdecken von Cocktail-Rezepten aller Art. Grundsätzlich können nur registrierte und angemeldete Nutzer:innen die Rezeptsammlung sehen. Rezepte sind in Kategorien unterteilt, die ein zielgerichtetes Filtern ermöglichen. Mithilfe einer Suchleiste können Nutzer:innen ihre Suche zusätzlich verfeinern, indem sie nicht nur nach Kategorie, sondern auch nach Rezeptnamen oder Zutaten suchen können. Rezepte können von den Nutzer:innen, die sie erstellt haben, bearbeitet oder auch gelöscht werden.</p>
</div>
</div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:280px">
<p>Ebenfalls können Nutzer:innen Rezepte liken und so alle Lieblingsrezepte – ob es die eigenen sind oder von anderen Nutzer:innen erstellt – in einer Favoritenliste sammeln. Eine Bewertungsfunktion erlaubt es, Rezepten sowohl eine Sternebewertung zu verleihen als auch ein öffentliches Kommentar zu posten. </p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="1304" height="881" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/bevry-favorites.png" alt="" class="wp-image-11770" style="width:548px;height:auto"/></figure>
</div>
</div>



<p>Sollte das Mischen eines Getränks mehrere Schritte umfassen, können diese einzeln gespeichert und in einer Step-by-Step Anleitung durchgeklickt werden. So können Nutzer:innen einem Rezept leicht folgen, ohne zwischendurch den Faden in seitenlangem Anleitungstext zu verlieren. Falls ein Rezept nur für die eigenen Augen bestimmt sein soll, kann es auch privat geschaltet werden.</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-image">
<figure class="alignleft size-full is-resized"><img loading="lazy" decoding="async" width="1302" height="881" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/bevry-usermanagement.png" alt="" class="wp-image-11766" style="width:515px;height:auto"/></figure></div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:300px">
<p>Abgesehen von ihren geposteten Rezepten können Nutzer:innen auch ihr Profil anpassen und so ihre Individualität zum Ausdruck bringen. Dies beinhaltet das Hochladen und Ändern des Profilbilds sowie die Aktualisierung des Benutzernamens. Falls Nutzer:innen sich dafür entscheiden, Bevry nicht mehr zu nutzen, haben sie auch die Option, ihren Account zu löschen.</p>
</div>
</div>



<h2 class="wp-block-heading">Geplante Funktionalitäten</h2>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow">
<p>Alle genannten Funktionen wurden für das Wintersemester geplant und auch umgesetzt. Als Ergänzung im nächsten Semester steht die Ausweitung von sozialen Features im Raum — von Umfragen und Multiplayer-Minispielen bis hin zu geteilten Einkaufslisten und Event-Planung (vgl. Wireframes). Auch der eigene Barbestand soll künftig festgehalten werden können. Darauf basierend sollen Nutzer:innen passende Rezeptvorschläge bekommen, deren Zutaten bereits vorhanden sind. Um die Benutzeroberfläche zusätzlich zu beleben, sind auch Animationen geplant, die beispielsweise beim Laden der Anwendung gezeigt werden sollen.</p>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="wp-block-image">
<figure class="alignright size-full is-resized"><img loading="lazy" decoding="async" width="780" height="844" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/bevry-wireframes.png" alt="" class="wp-image-11776" style="width:381px;height:auto"/></figure></div></div>
</div>



<h2 class="wp-block-heading">Technologien</h2>



<h3 class="wp-block-heading">Frontend</h3>



<p>Zu Beginn unseres Projektes entschieden wir uns für die Nutzung von Vue.js als Frontend-Framework. Diese Entscheidung basiert auf der Flexibilität, Leistung und Einfachheit von Vue.js, was eine effiziente Entwicklung ermöglicht. Des Weiteren konnten wir in der LV &#8220;Advanced Web Programming&#8221; erste Einblicke in die Arbeit mit dem Framework gewinnen, was unsere Entscheidung unterstützte, Vue.js zu erlernen.</p>



<p>Die Integration von Vuetify als UI-Framework wurde aufgrund seiner ansprechenden und responsiven Komponenten getroffen. Durch die vorgegebenen Komponenten erleichterte uns Vuetify die Entwicklung einer konsistenten Benutzeroberfläche, wodurch wir insgesamt Zeit einsparen konnten.</p>



<p>Für das Zustandsmanagement wählten wir Pinia, eine State Management Library speziell für Vue.js. Pinia verwenden wir für unser gesamtes User Management (Login, Registrieren, Logout), um den Status des Nutzers abzuspeichern. Vue.js, Vuetify und Pinia bildeten insgesamt für uns eine leistungsstarke Kombination, die uns zu einem bislang erfolgreichen Projekt geführt hat.</p>



<h3 class="wp-block-heading">Backend</h3>



<p>Im Backend haben wir mit NestJS gearbeitet. Nachdem wir von Armin bereits eine Einführung bekommen haben, wollten wir uns mehr im Detail mit den Möglichkeiten von Nest auseinandersetzen und ein umfangreicheres Backend damit umsetzen.</p>



<p>Zusätzliche Packages, die wir benutzt haben, inkludieren TypeORM, um mit den Datenbank-Entities umzugehen, JWT und bcrypt für die Sicherheit bei Login und Registrierung und Swagger um OpenAPI zu nutzen. Mit OpenAPI konnten wir unsere Endpoints automatisch in Swagger anzeigen und die Zusammenarbeit zwischen Back- und Frontend Entwicklung up to date halten.</p>



<p></p>



<h2 class="wp-block-heading">Hürden und Schwierigkeiten Frontend/Backend</h2>



<h3 class="wp-block-heading">Frontend</h3>



<p>Im Frontend konnten wir zu Beginn unser bestehendes Projekt aus der LV &#8220;Advanced Web Programming&#8221; zur Hilfe nehmen, was das Aufsetzen erleichterte. Zuerst haben wir das Frontend ohne die Einbindung von Vuetify und Pinia aufgesetzt, in der Annahme, dass dies auch im Nachhinein noch funktionieren würde, diese hinzuzufügen. Leider hat das nicht ganz geklappt, und daher mussten wir das Frontend noch einmal neu aufsetzen. Dabei haben wir direkt ausgewählt, dass wir das Advanced Paket mit Vuetify, Routing und Pinia inkludiert haben möchten.</p>



<p>Die größte Herausforderung bestand im stetigen Herumprobieren und Durchtasten der Funktionalitäten und der Logik von Vue. Da das gesamte System für uns noch unbekannt war, war es notwendig, durch Probieren zum Ziel zu kommen. Wir haben die Views im Frontend-Team aufgeteilt und konnten daher alle separat arbeiten. Das war einerseits positiv, da man selbst für etwas verantwortlich war und selbst zum Ziel finden musste. Andererseits war es etwas schwierig, da dadurch nicht immer ein konsistentes und zusammenpassendes User Interface vorhanden war. Hinzu kam, dass uns lange nicht bewusst war, dass das Styling der einzelnen Views standardmäßig übergreifend auf alle Views Auswirkungen hat, wodurch wir uns manchmal in die Quere kamen.</p>



<p>Eine weitere Herausforderung bestand im Arbeiten mit den REST-Endpoints. Leider schafften wir es aus Zeitgründen nicht immer, dass das Backend-Team weit genug voraus war. Daher mussten wir des Öfteren die Anbindung und Verwendung der Endpoints überarbeiten, da es im Backend Änderungen gab, die nicht mehr zu unserem Stand im Frontend passten. In Zukunft werden wir definitiv darauf achten, dass Frontend und Backend nicht genau zeitgleich erstellt werden.</p>



<h3 class="wp-block-heading">Backend</h3>



<p>Bezogen auf das Backend, gab es im Laufe des Projekts einige Hindernisse. Beim Aufsetzen hatten wir ein paar Probleme die Verbindung mit der Datenbank herzustellen, was sich nach einer Umstellung auf einen anderen Server lösen ließ. Außerdem funktionierte die Verbindung mit dem Frontend nicht, bis wir ein Proxy einstellten, beziehungsweise beim späteren Deployment CORS aktiviert haben.</p>



<p>Um bereits am Anfang Rezepte, Kategorien, Zutaten und Glastypen zur Verfügung zu haben, wollten wir Daten aus einer API beziehen, was wir für die Zutaten umsetzen konnten. Da uns die Kategorien und Glastypen der API nicht gefallen haben und der Aufbau der Rezepte jedoch zu unterschiedlich zu unserem war (vorallem bezogen auf die Maßangaben), haben wir uns entschlossen diese nicht zu inkludieren, da sie mit unseren implementierten Features nicht wie gewollt funktioniert hätten.</p>



<p>Ansonsten mussten wir einiges in Bezug auf authorization, error handling und http codes lernen, was wir unserer Meinung nach schlussendlich gut bewältigen konnten. Abgesehen davon, gab es ein paar Bugs, die im lokalen Development nicht aufgefallen sind, jedoch im build vorkamen und noch bearbeitet werden mussten.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/02/phone-mockup-mocktail-recipe-1540x800.jpg" alt="" class="wp-image-11893" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2024/02/phone-mockup-mocktail-recipe-1540x800.jpg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2024/02/phone-mockup-mocktail-recipe-770x400.jpg 770w" sizes="auto, (max-width: 1540px) 100vw, 1540px" /></figure>



<h2 class="wp-block-heading">Usability Test Ergebnisse &amp; Nächste Schritte</h2>



<h3 class="wp-block-heading">Ergebnisse der User Tests</h3>



<p>Die Ergebnisse der Umfrage zeigen, dass die Mehrheit der Befragten eine positive Erfahrung beim Suchen und Posten von Cocktailrezepten in der App hatte. </p>



<ul class="wp-block-list">
<li>Beim Suchen gaben 3 Personen an, dass es &#8220;<strong>gut</strong>&#8221; war, während 7 Personen es als &#8220;<strong>sehr gut</strong>&#8221; bewerteten. </li>



<li>Beim Posten eines Rezepts empfanden 6 Personen die Erfahrung als &#8220;<strong>gut</strong>&#8220;, während 4 Personen sie als &#8220;<strong>sehr gut</strong>&#8221; bezeichneten.</li>
</ul>



<p>Die positiven Aspekte der App, die besonders gut ankamen, waren die Drink-Kategorien und das Design. Fünf Personen lobten die strukturierte Organisation mit Kategorien, die große Auswahl und die saisonalen Kategorien hervor. Andererseits betonten fünf Personen das Design, das als simpel, modern und mit ansprechenden Bildern beschrieben wurde.</p>



<p>Die Überraschungsfaktoren, die von den Befragten genannt wurden, umfassten eine positive Benutzererfahrung, die übersichtliche Gestaltung sowie das Lob für ein wunderschönes und &#8220;cooles&#8221; Logo.</p>



<h4 class="wp-block-heading">Während der Tests wurden jedoch auch einige Bereiche identifiziert, die möglicherweise verbessert werden könnten:</h4>



<p>Leere Input-Felder im Create Drink View sind leicht zu übersehen, und es gibt kein sichtbares User Feedback, wenn ein Formularfeld nicht ausgefüllt ist. Ein Verbesserungsvorschlag besteht darin, automatisch nach oben zu den leeren Feldern zu scrollen, damit Nutzer:innen den dort angezeigten Hilfstext sehen können. Zudem könnte die Markierung aller Pflichtfelder mit Asterisken eine klarere Orientierung bieten.</p>



<p>Der Like-Button in der Rezeptansicht ist schwer aufzufinden. Eine mögliche Verbesserung wäre, den Like-Button zu vergrößern oder prominenter zu platzieren, um die Nutzung zu erleichtern.</p>



<p>Es wurde beobachtet, dass Nutzer:innen zuerst versuchen, den Nutzernamen im Profile View durch Tippen zu bearbeiten. Um diese Handlung intuitiver zu gestalten, könnte das Edit-Icon direkt bei den Nutzernamen angezeigt werden, sodass Nutzer:innen nicht zuerst in den Settings-View wechseln müssen.</p>



<p>Einige Nutzer:innen meldeten, dass die Step-Anzahl ab dem ersten Step im Create Drink View vereinzelt nicht korrekt ist. Als mögliche Verbesserung könnte die Step-Anzahl beim Posten immer automatisch zurückgesetzt werden.</p>



<p>Ein weiterer identifizierter Punkt ist ein Serverfehler, der auftritt, wenn Nutzer:innen versuchen, einen Feedback-Kommentar mit Emojis zu posten. Als Lösung könnte eine Anpassung erfolgen, um die korrekte Codierung von Emojis zu ermöglichen.</p>



<h4 class="wp-block-heading">Net Promoter Score (NPS)</h4>



<p>Im Laufe der User Tests fragten wir außerdem den Net Promoter Score (NPS) ab. Das ist die Kennzahl, die die Kundenloyalität gegenüber einem Produkt, einer Dienstleistung oder einer Marke misst. Er wird durch eine einfache Umfrage ermittelt, bei der die Teilnehmer gebeten werden, auf einer Skala von 0 bis 10 anzugeben, wie wahrscheinlich es ist, dass sie das Produkt, die Dienstleistung oder die Marke an Freunde oder Kollegen weiterempfehlen würden.</p>



<p>Die Berechnung des NPS erfolgt durch die Klassifizierung der Teilnehmer in drei Gruppen:</p>



<ol class="wp-block-list" start="1">
<li>Promotoren (Bewertung 9-10): Personen, die das Produkt oder die Dienstleistung sehr positiv bewerten und wahrscheinlich weiterempfehlen würden.</li>



<li>Indifferent (Bewertung 7-8): Personen, die neutral sind und nicht besonders begeistert oder enttäuscht von dem Produkt oder der Dienstleistung.</li>



<li>Detraktoren (Bewertung 0-6): Personen, die das Produkt oder die Dienstleistung negativ bewerten und es wahrscheinlich nicht weiterempfehlen würden.</li>
</ol>



<p>Der NPS wird dann berechnet, indem der Prozentsatz der Detraktoren von dem Prozentsatz der Promotoren subtrahiert wird. Im Falle unserer User Tests:<br><strong>NPS = (Prozentsatz der Promotoren) &#8211; (Prozentsatz der Detraktoren) = 70% &#8211; 10% = 60%</strong></p>



<p>Ein NPS von 60 wird als &#8220;gut&#8221; bewertet und deutet darauf hin, dass die Mehrheit der Teilnehmer das Produkt oder die Dienstleistung positiv wahrnimmt und wahrscheinlich bereit ist, es weiterzuempfehlen. Ein höherer NPS deutet in der Regel auf eine stärkere Kundenloyalität und Zufriedenheit hin.</p>



<h3 class="wp-block-heading">Nächste Schritte</h3>



<p>Auf dem Weg zur Weiterentwicklung unserer App stehen einige praktische Schritte an. Basierend auf den User Tests liegt die höchste Priorität bei den nächsten Schritten zur Verbesserung unserer App in zwei zentralen Bereichen:</p>



<p><strong>Rezepte Posten</strong></p>



<ul class="wp-block-list">
<li>Implementierung eines verbesserten Bild Upload Feedbacks, um die Benutzererfahrung beim Hochladen von Rezeptbildern zu optimieren.</li>



<li>Entwicklung einer effizienteren Suchfunktion für Zutaten, um das Anlegen von Rezepten zu erleichtern.</li>



<li>Klare Anpassung der Bezeichnung von &#8220;Servings&#8221; zu &#8220;Number of Servings&#8221; für transparentere Rezeptangaben.</li>



<li>Vergrößerung der Abstände oben und unten im Rezept-Posting-Bereich, um die Sichtbarkeit der Buttons am Rand des Bildschirms zu verbessern.</li>



<li>Besseres und leichter Sichtbares Feedback, beim Ausfüllen und Fehlender Eingabe der Input Felder.</li>



<li>Anpassung um die korrekte Codierung von Emojis.</li>
</ul>



<p><strong>User Management</strong></p>



<ul class="wp-block-list">
<li>Deutliche Verbesserung der Sichtbarkeit und Unterscheidung zwischen dem Delete Account- und dem Logout-Button durch erhöhten Abstand.</li>



<li>Integration von zusätzlichem Feedback während des Registrierungsvorgangs, um einen transparenten und unterstützenden Prozess für neue Benutzer:innen zu gewährleisten.</li>



<li>Benutzernamen ändern intuitiver machen, indem User den Namen direkt im Profil ändern können.</li>
</ul>



<p>Abgesehen von den Ergebnissen der User Tests nehmen wir uns vor, das Styling zu vereinheitlichen, Filter-Funktion zu integrieren, eine Umrechnungsmöglichkeit für die Einheiten zu implementieren und den Code aufzuräumen. In der Hektik der Abgabe haben wir einige Dinge vielleicht etwas eilig erledigt, und es gibt Raum für Verbesserungen.</p>



<h3 class="wp-block-heading">Weitere Funktionen für die Zukunft</h3>



<p>Wir haben bereits einige weitere Ideen für zukünftige Funktionen skizziert. Wir wollen vor allem den sozialen Aspekt der App durch verschiedenste Gruppenfeatures ausbauen. Darunter Multiplayer-Minispiele, einen Eventplaner, Abstimmungsmöglichkeiten für Rezepte und Sammlungen.</p>



<p>Weitere Ideen im Design Bereich wäre die Einbindung von Animationen und Custom Icons, um der App mehr Dynamik zu verleihen – wie zum Beispiel bei einem Ladebildschirm.</p>



<p>Außerdem beabsichtigen wir fest, eine Reporting-Funktion zu implementieren, die es den Nutzern ermöglicht, bestimmte Inhalte zu melden.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1500" height="976" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2024/01/bevry-mockup.jpg" alt="" class="wp-image-11791"/></figure>



<p></p>



<h2 class="wp-block-heading">Personal Learnings</h2>



<h3 class="wp-block-heading">Sara</h3>



<p>Ich konnte jede Menge Erfahrungen im Bereich Frontend mit Vue und Vuetify sammeln. Mein Fokus lag dabei vor allem auf den Seiten für Login, Registrierung, Dashboard und den Kategorien sowie der Suchleiste. Die Herausforderungen während der Entwicklungsphase waren nicht zu unterschätzen. Frontend-Umsetzung verlangte nicht nur Verständnis für Design, sondern auch technisches Know-how.</p>



<p>Die Projektvernissage war ein Highlight für mich. Direktes Feedback von externen Personen zu bekommen gab wertvolle Einblicke für mögliche Verbesserungen. Sophia und ich führten außerdem Nutzertests mit vereinzelten Personen am Stand durch und konnten somit die Verbesserungen noch genauer definieren. Die App durch die Augen potenzieller Nutzer:innen zu sehen, half uns, sowohl Stärken als auch Schwächen zu erkennen und zukünftige Entwicklungen zu optimieren.</p>



<p>Die Erfahrung mit Bevry hat definitiv meine Programmier-Fähigkeiten verbessert und auch wenn es teilweise stressig war am Projekt zu arbeiten, freue ich mich die App in den nächsten Semestern weiter auszubauen.</p>



<h3 class="wp-block-heading">Laura</h3>



<p>Da meine Aufgabe im Backend Development war, habe ich mich besonders viel mit NestJS auseinandergesetzt. Hierbei habe ich nicht nur den Umgang mit Decorators vertieft, sondern auch besonders viel Zeit in das richtige Error Handling gesteckt. Zum Anfang des Projektes hatte ich keine Ahnung von http Codes und in welchen Fällen, man welche einsetzt, was sich im Laufe des Projektes stark geändert hat. Auch wenn ich sicher noch kein Experte bin, kann ich behaupten Fehlercodes jetzt viel besser zu verstehen und für mich persönlich einen logischen Aufbau gefunden zu haben.</p>



<p>Außerdem habe ich mich tiefer mit der API beschäftigt. Nach anfangs händisch geschriebenen Endpoints, die ich auch mehrmals überarbeitet habe, habe ich mich außerdem mit OpenAPI beschäftigt und dem automatischen Generieren von Swagger, was im Laufe der Entwicklung sehr nützlich war, um Echtzeit-Änderungen im Code auch so fürs Frontend darzustellen.</p>



<p>Obwohl das Projekt damit angefangen hat, dass ich vor allem nur Teil des Backend-Developments geworden bin, da ich es mir von unseren Mitgliedern noch am ehesten vorstellen konnte, bin ich nun sehr froh die Verantwortung dafür übernommen zu haben. Ich habe mich technisch sehr weiterbilden können und auch einiges im Bereich des User Managements und der Authentifizierung lernen können.</p>



<p>Auch wenn der Start, nicht nur für mich, sondern ich denke für die ganze Gruppe, nicht der leichteste war, freue ich mich, dass wir so eine gute Grundbasis bilden konnten, an der wir im nächsten Semester gut aufbauen können.</p>



<h3 class="wp-block-heading">Sophia</h3>



<p>Im Rahmen dieses Projekts war ich hauptsächlich für das Frontend der Rezeptdetailansicht, der Rezeptanleitung, der Einstellungen-Übersicht und der Seite zum Bearbeiten des Profilbilds und Benutzernamens zuständig. Ich hatte zuvor nur oberflächliche Erfahrung mit Vue und konnte dahingehend meine Kenntnisse deutlich vertiefen. Mit Vuetify hatte ich zuvor noch nie gearbeitet, aber ich konnte mich schnell damit anfreunden. Da ich meinen persönlichen Fokus im Laufe des Bachelorstudiums vorrangig auf UX/UI-Design gesetzt hatte, fühlte ich mich in Sachen Programmierung etwas „aus der Übung“, konnte aber nun wieder in Schwung kommen. Ich konnte sowohl meine Programmierkenntnisse verbessern als auch tiefergehende Erfahrungen im Umgang mit Gitlab und Git sammeln, da ich zuvor nie mit so vielen Gruppenmitgliedern an einem Repository gearbeitet hatte.</p>



<p>Ich kümmerte mich außerdem darum, ein Ticketsystem und einen zentralen Ort zur Dokumentation aufzusetzen. Wir nutzten Jira, um unsere Aufgaben aufzuteilen und den Fortschritt zu verfolgen. In Confluence dokumentierten wir unter anderem Aufgabenaufteilungen und Testdesign und -auswertung für eine erste Runde von Usability-Tests.</p>



<p>Sara und ich führten während der Projektevernissage Usability-Tests durch, wodurch wir wertvolles Feedback und frische Perspektiven zu unserem Projekt sammeln konnten. Während sich einige unserer Hypothesen und bekannten Probleme bestätigten, war es zudem spannend, auch neue Themen aufzudecken, an die wir noch gar nicht gedacht hatten. Die Auswertung zeigte aber im Großen und Ganzen ein sehr positives Bild von den gesammelten Eindrücken.</p>



<p>Im Großen und Ganzen bin ich zufrieden mit dem, was wir in der Zeit, die wir hatten, erreicht haben. Der Projektstart war mit Beginn des Masterstudiums etwas verzögert, aber wir konnten dennoch in kurzer Zeit ein umfangreiches Projekt auf die Beine stellen, und ich bin schon gespannt darauf, wie wir im nächsten Semester darauf aufbauen können.</p>



<h3 class="wp-block-heading">Vanessa</h3>



<p>Ich habe mich bislang nur einmal intensiv mit einem Framework auseinandergesetzt, und das war im Projektsemester des Bachelors mit Angular. Damals beschränkten sich meine Hauptaufgaben auf HTML und CSS. In diesem Projekt war ich Teil des Frontend-Teams, und mein Fokus lag vor allem auf den Seiten für das Anzeigen aller Rezepte, das Anzeigen der favorisierten Rezepte, das Anlegen und Bearbeiten von Rezepten sowie dem Benutzerprofil. Nebenbei kümmerte ich mich auch um organisatorische Aufgaben wie das Vereinbaren von Sync-Meetings und das Setzen von Meilensteinen.</p>



<p>In Bezug auf das Programmieren war vor allem das Anlegen und Bearbeiten von Rezepten für mich eine riesige Herausforderung. Ich hatte noch keine Erfahrung mit der Verwendung von Vue oder REST-Endpunkten, und meine JavaScript-Kenntnisse beschränkten sich auf das Notwendigste. Am Ende dieses Semesters kann ich jedoch stolz sagen, dass ich sehr viel Neues dazulernen konnte und mittlerweile ein viel größeres Verständnis in der Frontend-Entwicklung habe.</p>



<p>Mein Highlight stellte die Projektvernissage dar, die am Ende viel schneller kam, als wir anfangs dachten. Zwischenzeitlich bangten wir alle, ob wir es schaffen würden, alle geplanten Funktionalitäten umzusetzen. Am Ende schafften wir es jedoch, unser Ziel am Tag der Vernissage zu erreichen, und das Feedback von den Besuchern unseres Projektstandes hat uns definitiv gezeigt, dass der Aufwand es wert war. Ich freue mich, dass ich durch dieses Projekt so viel Neues dazulernen konnte und bin schon gespannt, wie wir dieses Projekt im kommenden Semester weiter ausbauen werden.</p>



<h3 class="wp-block-heading">Katharina</h3>



<p>Ich war mit Laura für die Backend-Programmierung zuständig und habe mich um die Umsetzung der Rezepte gekümmert. Da ich vorher noch keine Erfahrung mit NestJS hatte und meine Backend-Kenntnisse überschaubar waren, wollte ich mich der Herausforderung stellen, meine Komfortzone im Frontend zu verlassen und mich mit der Backendentwicklung auseinander zu setzen.</p>



<p>Meine bisherigen Erfahrungen beschränkten sich auf PHP und das manuelle Verfassen von SQL-Anfragen. Es war interessant zu sehen, wie unterschiedlich NestJS im Vergleich zu PHP ist. So konnte ich mittels TypeORM viel komfortabler und weniger Fehleranfällig Datenbankoperationen erstellen. Bei künftigen Backend-Projekten würde ich definitiv wieder NestJS in Betracht ziehen.</p>



<p>Vor dem eigentlichen Programmierbeginn erstellten wir ein Entity-Relationship-Diagramm und dokumentierten die Endpunkte in Swagger. Diese Erfahrung war neu für mich, da ich zuvor noch nie eine Datenbankstruktur geplant oder mit Swagger gearbeitet hatte. Armin wies uns darauf hin, dass wir mithilfe von OpenAPI die Swagger-Dokumentation automatisch generieren können, was sich als äußerst hilfreich erwies, um einen klaren Überblick über alle Endpunkte zu behalten. Insbesondere für die Frontend-Entwickler, um stets auf dem neuesten Stand zu sein. In diesem Semester war es leider nicht immer möglich, den Frontendentwicklern vorauszusein. Teilweise mussten sie mit Beispieldaten arbeiten oder Änderungen aufgrund sich ändernder Endpoints vornehmen. Wir streben an, dieses Problem in Zukunft zu verbessern, insbesondere da das Grundgerüst nun endlich steht.</p>



<p>Das Projekt war meine erste Gelegenheit, mich intensiver mit Backend-Entwicklung auseinanderzusetzen und eine Anwendung von Grund auf mit sowohl Frontend als auch Backend zu entwickeln. Das Projekt hat mir neues Selbstvertrauen gegeben, indem es mir gezeigt hat, dass man mit dem richtigen Team innerhalb kurzer Zeit schon einiges schaffen kann.</p>



<p></p>



<h2 class="wp-block-heading">Abschließende Gruppenreflexion</h2>



<p>Jedes Mitglied unseres Teams konnte individuelle Lernerfahrungen sammeln – sei es durch die Vertiefung von Frontend-Kenntnissen oder die erfolgreiche Bewältigung von Backend-Herausforderungen. Diese Vielfalt an Erfahrungen hat nicht nur unsere technischen Fähigkeiten verbessert, sondern auch die Stärkung der Teamarbeit. Neben der Entwicklung einer funktionsfähigen Webanwendung haben wir gelernt, wie entscheidend klare Kommunikation und effektive Teamkoordination sind. Die enge Zusammenarbeit ermöglichte es uns, Schwierigkeiten zu überwinden und auf das Erreichte stolz zurückzublicken. Die positiven Rückmeldungen aus den User-Tests, wie auch der gute Net Promoter Score  stärken unsere Motivation für künftige Entwicklungen. Wir freuen uns darauf, Bevry im nächsten Semester weiter zu verbessern, zusätzliche Funktionen zu integrieren und hoffen, viele unserer Ideen, insbesondere im Bereich der sozialen Features, erfolgreich umzusetzen.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/bevry-semesterprojekt-ws23/">Bevry | Semesterprojekt WS23</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SOTA &#8211; Voice Interaction On Mobile Devices And Ways To Ensure Better User Experience.</title>
		<link>https://mobile.fhstp.ac.at/allgemein/sota-voice-interaction-on-mobile-devices-and-ways-to-ensure-better-user-experience/</link>
		
		<dc:creator><![CDATA[Sara Ladner]]></dc:creator>
		<pubDate>Thu, 21 Dec 2023 12:33:29 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=11641</guid>

					<description><![CDATA[<p>This paper explores the use of voice interaction on mobile devices and other Voice User Interfaces (VUIs). It addresses challenges in current VUI designs, emphasizing the need for effective communication of system capabilities. The advantages and challenges of voice interaction on mobile devices are discussed, including various voice recognition methods. Guidelines for enhancing VUIs are <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/sota-voice-interaction-on-mobile-devices-and-ways-to-ensure-better-user-experience/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/sota-voice-interaction-on-mobile-devices-and-ways-to-ensure-better-user-experience/">SOTA &#8211; Voice Interaction On Mobile Devices And Ways To Ensure Better User Experience.</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-file"><a id="wp-block-file--media-1ee9922d-5ff1-4955-bff1-afdf7c95dff0" href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2023/12/SOTA_it231510.pdf">SOTA_it231510</a><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2023/12/SOTA_it231510.pdf" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-1ee9922d-5ff1-4955-bff1-afdf7c95dff0">Download Article</a></div>



<p>This paper explores the use of voice interaction on mobile devices and other Voice User Interfaces (VUIs). It addresses challenges in current VUI designs, emphasizing the need for effective communication of system capabilities. The advantages and challenges of voice interaction on mobile devices are discussed, including various voice recognition methods. Guidelines for enhancing VUIs are introduced, focusing on tailoring conversations, addressing turn-taking challenges and prioritizing personalization. </p>



<h2 class="wp-block-heading">1 INTRODUCTION</h2>



<p>Interacting with a device via our voice has become common and Voice User Interfaces (VUIs) have been seamlessly integrated into our daily lives, driven by the widespread adoption of voice assistants like Google Home and Amazon Alexa. We tell phones, cars or even household devices, what we want them to do. As a result, voice assistants are experiencing rapid commercial growth in recent years [1].</p>



<p>If used right, voice interaction has the possibility to enhance user experience with different devices, this is also true for mobile applications. However, due to the complexity of designing accurately understanding flexible natural language commands it is not always easy to implement [2]. In what ways can we refine the voice interaction experience on mobile devices and Voice User Interfaces, overcoming current design obstacles and ensuring seamless communication of system capabilities?</p>



<h2 class="wp-block-heading">2 VOICE USER INTERFACE (=VUI)</h2>



<p>The general term for speech recognition technology that allows people to interact with a computer, smartphone or other device through voice is called Voice User Interface. In the last five years, users&#8217; attitudes towards VUIs have improved, with increasing recognition of their diverse applications, such as hands-free interaction and a natural communication with technology [3].</p>



<p>Currently, there is no established software architecture standard for voice assistants. Nonetheless, there are two fundamental operations involved in the processing of user utterances. First, the user&#8217;s spoken words are transcribed into text using automated speech recognition (ASR). This step is crucial for converting spoken language into a format that can be further analysed and understood by the system. Then, the transcribed text undergoes Natural Language Understanding (NLU), which aims to extract the user&#8217;s intent from the processed language. NLU systems analyse the text to understand the meaning, context, and specific commands or queries conveyed by the user [4].</p>



<h2 class="wp-block-heading">3 VOICE INTERACTION ON MOBILE DEVICES</h2>



<p>Voice interaction has several advantages, like expressive communication, easy learning, and hands-free usability. Employing voice commands to automate smartphone tasks enhances the interaction on mobile apps. However, creating voice interfaces for specific tasks is challenging due to the difficulty of accurately understanding flexible natural language commands. Developers often need extensive data, handwritten rules, or machine learning models, making efforts grow with the increasing number of tasks. This limitation results in only a few tasks having voice interfaces. Nevertheless, there is a strong desire, especially among non-programmers, to create voice interfaces for various tasks [2].</p>



<h3 class="wp-block-heading">3.1 Voice Recognition</h3>



<p>Nearly every mobile operating system includes access to at least one conversational user interface, typically in the form of an interactive personal agent [5]. Various acoustic signals are received by a microphone during the operation of the voice recognition system on the device, aiming to distinguish human voice from non-voice signals like background noise. Detecting voices accurately is important for the system to work well and understand emotions correctly. Among various methods to find voices, the energy-based one is chosen for mobile devices because it needs less computing power and gives reliable results. This method continuously checks the strength of sounds in fixed-length parts. If the strength of consecutive parts is louder than a certain level, it marks the beginning and end of voice signals [4].</p>



<h3 class="wp-block-heading">3.2 Detection of emotions</h3>



<p>Identified voice signals from the initial stage undergo processing to extract acoustic features that reveal emotional characteristics. Different types of acoustic features can illustrate human emotions, with certain spectral features like pitch, log-energy, and Mel-Frequency Cepstral Coefficient (MFCC) — a representation capturing the spectral content of the voice — being particularly valuable for distinguishing between emotion types. These features, extracted from each frame in the voice region, form a sequence of feature vectors [6].</p>



<h2 class="wp-block-heading">4 SYSTEM FEEDBACK AND CHALLENGES</h2>



<p>Voice User Interfaces are becoming increasingly popular in homes, yet users often underutilize available features. Researchers have identified that the learnability of VUIs poses a significant challenge for users, with the primary hurdle being errors in understanding and responding to natural language. This field involves the interaction between computers and humans using everyday language. Both new and frequent users face difficulties in comprehending and navigating through VUI features and commands, making it challenging to keep up with the introduction of new functionalities [7].</p>



<p>It seems that current VUI designs don&#8217;t make it easy for users to adjust to how the machines work during a conversation. The designs lack proper feedback and information about what the system can do, making it challenging for users to try new tasks. Instead, users often use shorter sentences or simpler language with repeated phrases to make sure the VUIs understand them. These interactions can be frustrating, with users struggling to accomplish their intended tasks [8].</p>



<h2 class="wp-block-heading">5 GUIDELINES AND IMPROVEMENTS</h2>



<h3 class="wp-block-heading">5.1 Task Domains and Context</h3>



<p>Designing conversations for voice interfaces should be tailored to the task domain, ensuring comprehensive coverage of knowledge within that domain. Handling a wide range of topics in the task domain enhances usefulness and accommodates diverse user preferences. It is crucial for the system to possess sufficient knowledge in the specified task domains to satisfy user needs effectively. Immediate communication of the reason for task failure is essential, and considering user inferences based on the task domain can contribute to a more effective interaction [9].</p>



<p>Furthermore, a study about the transition from GUI (Graphical User Interface) to VUI conducted by Murad et al. (2021, S. 7), found that GUI experts had concerns about the inability of a lot of VUI devices to retain memory or context of previous requests, impacting interaction continuity. Devices lack memory of prior requests, hindering the ability to build on or refer to earlier queries. The absence of an undo capability was also highlighted, causing frustration due to the lack of contextual memory [10].</p>



<h3 class="wp-block-heading">5.2 Turn-Taking</h3>



<p>Phukon et al. (2022) discuss the significance of turn-taking in spoken interactions and the challenges of automating this process in human-computer conversational systems. Turn-taking involves the exchange of speech and silence between participants, and while researchers have developed solutions like silence-based models, which focus on recognizing and managing periods of silence in speech, and continuous models, designed to transcribe speech seamlessly without explicit word segmentation, finding the right settings for these methods remains a challenge. Overall, automating turn-taking in conversational systems is an ongoing area of research with specific challenges, including avoiding awkward silences or overlapping speech [8].</p>



<h3 class="wp-block-heading">5.3 Importance of personalizing</h3>



<p>It is important to take users&#8217; background knowledge and inferences into consideration to tailor conversations according to users&#8217; needs and capabilities. There are various methods for achieving this, from learning and adjusting conversations based on user responses, to utilizing the task domain to establish a common ground. The need for adjustment arises from the potential lack of understanding or unpredictable remarks by users, such as questions for clarification, which the system may struggle to comprehend or answer <strong>[9]. </strong></p>



<p>Once a common ground is established, the guidelines recommend that voice systems should further adapt to each user. Personalization is key, involving the learning of user behaviors, language usage, and specific needs. The goal is to tailor the interaction to individual users, as highlighted by the suggestion to adapt the agent&#8217;s style based on who the user is, how they speak, and even their emotional state. Creating user profiles is presented as one effective method to achieve this level of personalization [9].</p>



<h3 class="wp-block-heading">5.4 Transparency</h3>



<p>A VUI should distinctly communicate its capabilities and limitations to effectively manage user expectations. Providing this transparency is crucial for establishing accurate mental models and expectations during interactions. Presenting the system&#8217;s abilities at the beginning and utilizing prompts helps convey the user&#8217;s potential actions [9].</p>



<h3 class="wp-block-heading">5.5 Clear Feedback</h3>



<p>Clear feedback is paramount for user understanding, encompassing processing status and error notifications. Delivery should be swift and efficient to eliminate uncertainty about the system&#8217;s comprehension and actions. Non-verbal feedback enhances user interaction. Visibility is key, ensuring the user is always aware of the system&#8217;s status, especially during various functions. Comprehensive feedback on system failure, including reasons, is essential. User notification during processing or listening phases is vital, with progress indications being specific and unambiguous. The goal is to instill confidence in users regarding the accurate processing of conveyed information [9].</p>



<p>Building on the principles of clear feedback highlighted in usability guidelines and referring to the study from Murad et al. (2021, S. 7), GUI experts assessed two display-less devices, shedding light on usability concerns related to audio and visual feedback. These experts observed the use of colored indicators for actions such as volume adjustments and signaling when the interface was actively listening or processing user input. However, they encountered challenges with both visual and audio feedback, underscoring the imperative for enhanced clarity in the design. Some test participants expressed a preference for a design that minimizes the need for active observation of visual indicators, aligning with the goal of providing swift, efficient, and unambiguous feedback for optimal user confidence, as emphasized in established usability principles [10].</p>



<h3 class="wp-block-heading">5.6 Make it “real”</h3>



<p>Designing conversational interaction in VUIs that align with real-world conversational norms and dialogue patterns makes a VUI seem “realer”. Utilizing well-known conversational norms and allowing users to employ natural speech are essential. Key points include:</p>



<ol class="wp-block-list" type="1">
<li><u>Speech</u>: The importance of appropriate prosody, clear pronunciation, and user control over speech aspects, such as speed and tone. Non-verbal forms of auditory feedback are also recommended.</li>



<li><u>Realism</u>: Matching interaction to real-world conversation models, user language structure, and incorporating familiar terms. However, realism should be balanced, considering the system&#8217;s use case.</li>



<li><u>Conversation</u>: Following natural turn-taking, brief responses, and using conversation to guide interaction. Repairing breakdowns collaboratively and incorporating questions for guidance and common ground.</li>



<li><u>Dialogue</u>: Designing dialogue trees, allowing for response variations, rephrasing prompts for better understanding, accepting a variety of user responses, and handling interruptions appropriately. The system should not interrupt users during input.</li>
</ol>



<p>The overall goal is to create a VUI interaction that is natural, user-friendly, and aligned with users&#8217; expectations of conversation [9].</p>



<h2 class="wp-block-heading">CONCLUSION</h2>



<p>Several challenges with current VUI designs were identified, including difficulties in user adjustment during conversations, lack of proper feedback, and limited information about system capabilities. Users tend to simplify their language to ensure understanding, leading to frustration. This paper emphasizes the need for effective communication of the system&#8217;s intelligence and capabilities to users. The advantages and challenges of voice interaction on mobile devices are discussed, highlighting the benefits of expressive communication and hands-free usability.</p>



<p>Guidelines for improving VUIs are presented, focusing on tailoring conversations to the task domain, addressing turn-taking challenges, and emphasizing the importance of personalization. Transparency in communicating system capabilities and limitations is underscored, along with the significance of clear and informative feedback to enhance user understanding. In conclusion, there is an ongoing need to persistently enhance VUIs by tackling current challenges and applying guidelines that emphasize user experience, transparency, and efficient communication.</p>



<h3 class="wp-block-heading">REFERENCES</h3>



<p>[1] Luger, E., Sellen, A. (2016). <em>“Like Having a Really bad PA”: The Gulf between User Expectation and Experience of Conversational Agents</em> (p. 1).&nbsp; ACM Digital Library: https://dl.acm.org/doi/10.1145/2858036.2858288</p>



<p>[2] Pan, L., Yu, C., Li, J., Huang, T., Bi, X., &amp; Shi, Y. (2022, May 6). <em>Automatically Generating and Improving Voice Command Interface from Operation Sequences on Smartphones</em> (p. 1-2).&nbsp; ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3491102.3517459</p>



<p>[3] Murad, C., Tasnim, H., &amp; Munteanu, C. (2022, July 26-28). <em>“Voice-First Interfaces in a GUI-First Design World”: Barriers and Opportunities to Supporting VUI Designers On-the-Job</em> (p. 2).&nbsp; ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3543829.3543842</p>



<p>[4] Tarakji, A. B., Xu, J., Colmenares, J. A., &amp; Mohomed, I. (2018, June 10-15). <em>Voice enabling mobile applications with UIVoice </em>(p. 1-2).ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3213344.3213353</p>



<p><strong>[5]</strong> Jaber, R., &amp; McMillan, D. (2020, July 22-24). <em>Conversational User Interfaces on Mobile Devices: Survey </em>(p. 1). ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3405755.3406130</p>



<p><strong>[6]</strong> Park, J.-S., &amp; Jang, G.-J. (2015, October 21). <em>Implementation of Voice Emotion Recognition for Interaction with Mobile Agent</em> (p. 1). ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/2814940.2815004</p>



<p><strong>[7]</strong> Myers, C. M., Pardo, L. F., Acosta-Ruiz, A., Canossa, A., &amp; Zhu, J. (2021, July 21). <em>“Try, Try, Try Again:” Sequence Analysis of User Interaction Data with a Voice User Interface</em> (p. 1).&nbsp; ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3469595.3469613</p>



<p>[8] Phukon, M., Shrivastava, A., &amp; Balentine, B. (2022, November 9-11). <em>Can VUI Turn-Taking Entrain User Behaviours?</em> (p. 1). ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3570211.3570215</p>



<p>[9] Murad, C., Candello, H., &amp; Munteanu, C. (2023, July 19-21). <em>What’s The Talk on VUI Guidelines? A Meta-Analysis of Guidelines for Voice User Interface Design </em>(p. 1-11).&nbsp; ACM Digital Library: https://dl-acm-org.ezproxy.fhstp.ac.at:2443/doi/10.1145/3571884.3597129</p>



<p>[10] Murad, C., Munteanu, C., Cowan, B.R., Clark, L. (2021, July 27-29). <em>“Finding a New Voice: Transitioning Designers from GUI to VUI Design</em> (p. 7).&nbsp; ACM Digital Library: https://dl.acm.org/doi/10.1145/3469595.3469617<br></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/sota-voice-interaction-on-mobile-devices-and-ways-to-ensure-better-user-experience/">SOTA &#8211; Voice Interaction On Mobile Devices And Ways To Ensure Better User Experience.</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
