By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach ›...

19
A Bartering System Web Application Version 1.0 December 8, 2015 By John, Jessica, Mana, Nina, and Cosi

Transcript of By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach ›...

Page 1: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

A Bartering System Web ApplicationVersion 1.0

December 8, 2015By John, Jessica, Mana, Nina, and Cosi

Page 2: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Presentation Overview

1. Project Overviewa. Backgroundb. Motivationc. Goals

2. Development3. Demo4. Future Enhancements

Page 3: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Overview: Background

❖ What is the Trading Post?➢ A bartering system

■ Trade goods and services ➢ A web application

■ MEAN Stack

Page 4: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Overview: Motivation

❖ Why do we need it?

◆ Does not involve monetary exchange◆ Encourages reuse◆ Unpredictability of economic behavior

◆ Increase communication in local communities

Page 5: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Overview: Goals

❖ Provide an alternative to the monetary system❖ Strengthen bonds in local communities❖ Facilitate trade through the web application

➢ Provides a means to trade➢ Offers convenience

Page 6: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Overview: Goals

Page 7: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development

❖ Steps taken➢ Features➢ Visual design➢ Software framework➢ Design pattern➢ Database design

❖ Challenges

Page 8: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Features

❖ Sort and search for goods and services

❖ Browse most recent posts

❖ Create an account

❖ Make trades with other users

❖ Fill out a profile, containing the user’s:

■ wishlist, inventory, and trades

Page 9: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Visual Design

❖ Name origin❖ Logo design❖ Color scheme❖ Layout overview❖ Tools used

Page 10: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Software framework

❖ Front-end and back-end JavaScript❖ MEAN Stack

➢ MongoDB (Database)➢ ExpressJS (Server)➢ AngularJS (Client)➢ NodeJS (Server-side JS)

Page 11: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Source: What Developers Mean When They Build a MEAN Stack - New Spin Digital

Page 12: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Design pattern

❖ Model-View-Controller (MVC) for modularity➢ The model

■ MongoDB➢ The view

■ HTML, AngularJS, EJS➢ The controller

■ ExpressJS, AngularJS■ Control data flow between view and model

Page 13: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December
Page 14: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Database design

❖ MongoDB➢ A back-end, no SQL database➢ Uses JSON-like documents as opposed to tables (called

“collections” here)➢ Each field in a document has corresponding key/value pairs

Page 15: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Database design

Page 16: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Development: Challenges and Solutions

❖ Learning a new framework❖ Implementing sessions❖ Designing❖ Coordinating with team members

Page 17: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Demo

Page 18: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Future Enhancements❖ Features to completely implement:

➢ Messaging ➢ User feedback score

■ Rate your trades with other users➢ Show trade history➢ Show recent activity on profile➢ Check for inappropriate content

■ Text■ Images

Page 19: By John, Jessica, Mana, Nina, and Cosi December 8, 2015 ...birgit.penzenstadler.de › teach › 493a › TradePost.pdf · A Bartering System Web Application Version 1.0 December

Questions? Comments?