Vending Machine FSM Benjamin Welton 03/20/2010 CS 480.

Slides:



Advertisements
Similar presentations
Remote Visualisation System (RVS) By: Anil Chandra.
Advertisements

3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Overview Environment for Internet database connectivity
12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.
Welcome to Middleware Joseph Amrithraj
University of Virginia 1 Modern Web Application Development Overview of some newer web applications methods Web 2.0 Ajax fundamentals Ruby on Rails.
Edoclite and Managing Client Engagements What is Edoclite? How is it used at IU? Development Process?
Single view of customer Support deposit and loan accounts Fully integrated General Ledger module that can be customised according to customer specification.
Technical Architectures
Web-based Distributed Flexible Manufacturing System (FMS) Monitoring and Control Student: Wei Liu Instructor: Dr. Chang Apr. 23, 2003.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Introduction to ASP.NET. 2 © UW Business School, University of Washington 2004 Outline Static vs. Dynamic Web Pages.NET Framework Installing ASP.NET First.
IS 360 Course Introduction. Slide 2 What you will Learn (1) The role of Web servers and clients How to create HTML, XHTML, and HTML 5 pages suitable for.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Apache Tomcat Server Typical html Request/Response cycle
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
CS 432 Object-Oriented Analysis and Design
Proxy Cache Leonid Romanovsky Olga Fomenko Winter 2003 Instructor: Konstantin Sinyuk.
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
Session-01. Layers Struts 2 Framework The struts 2 framework is used to develop MVC-based web application. Struts 1.0 was released in June The.
Client/Server Architecture
INTRO TO MAKING A WEBSITE Mark Zhang.  HTML  CSS  Javascript  PHP  MySQL  …That’s a lot of stuff!
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
CRM WEB UI – ARCHITECTURE- DEFINITIONS For More details please go to
Client/Server Architectures
INTRODUCTION TO WEB DATABASE PROGRAMMING
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Ruth Betcher Ruth Christie
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
Dynamic Content On Edge Cache Server (using Microsoft.NET) Name: Aparna Yeddula CS – 522 Semester Project Project URL: cs.uccs.edu/~ayeddula/project.html.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Silverlight Technology. Table of Contents 1.What is Silverlight Technology? 2.Silverlight Overview. 2.1 How it works 2.2 Silverlight development tools.
Implementation - Part 2 CPS 181s March 18, Pieces of the Site-building Puzzle Page 180, figure 4.1.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
1 Welcome to CSC 301 Web Programming Charles Frank.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Grid Chemistry System Architecture Overview Akylbek Zhumabayev.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
HR for XML WebService -- Week 2 System Design Phase Smartest Fish.
Web application architecture1 Based on Jim Conallen: Web Applications with UML.
Martin Kruliš by Martin Kruliš (v1.1)1.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Copyright © 2003 T. Trappenberg Overview B 1 B. Some tools of the trade Module 1 Technology: GR01E - Electronic Commerce Overview.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
Introduction to Model-View-Controller (MVC) Web Programming with TurboGears Leif Oppermann,
EWS Redesign Business Case A look at creating a reports client for new or small market participants.
Overview Web Technologies Computing Science Thompson Rivers University.
Expense Tracking System Developed by: Ardhita Maharindra Muskan Regmi Nir Gurung Sudeep Karki Tikaprem Gurung Date: December 05 th, 2008.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
/16 Final Project Report By Facializer Team Final Project Report Eagle, Leo, Bessie, Five, Evan Dan, Kyle, Ben, Caleb.
Mary Ganesan and Lora Strother Campus Tours Using a Mobile Device.
J2EE Platform Overview (Application Architecture)
Web Technologies Computing Science Thompson Rivers University
WEB SERVICES.
IS 360 Course Introduction
Silverlight Technology
Lecture 1: Multi-tier Architecture Overview
Model-View-Controller (MVC) Pattern
Tiers vs. Layers.
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Web Technologies Computing Science Thompson Rivers University
Presentation transcript:

Vending Machine FSM Benjamin Welton 03/20/2010 CS 480

Overview System Overview  Design Considerations  Development methods Architecture  Architecture Strategy's  System Architecture System Design Overview

System Overview Build a FSM that mimics the functionality of a standard vending machine (such as a coke machine) Web based interface that is portable and does not require a full web server (such as apache) to run Database used for storage of states of the vending machine

Design Considerations Need for multiplatform support to allow for cross platform development and testing Distributed version control Ability to demonstrat the web interface without access to the internet (self contained)

Dependencies  Python 2.x line (2.5+ required)  Django web framework  Web-browser with AJAX and Javascript support

Development Methods Bazaar / Launchpad for version control Python Enhancement Proposal 8  Used for coding style guidelines  Comment guidelines / ect

Architecture Strategies Python  Large standard library  Multi-platform support  Allows for focus on application logic instead of implementation issues. Django  MVC Structure  Simple database integration  Out of the box development web server

Architecture Strategies (cont) AJAX  Allows for communication with Django without page refreshes  Does not rely on external dependencies on the client machine (such as java or silverlight)  Smaller and more dynamic code base

System Architecture Functionality broken up into two pieces Front end  Consists of the user interface  Handles interaction with the user and displays balance / selection of products Back end  Handles the programming logic  Communicates with the front end via AJAX / XML Request's

System Design Overview XML DTD Database scheme Django Function / Web API URL's

XML DTD Communicates user actions and responses between django and the web interface Transaction XML DTD  Handles transaction request (purchase, balance change, balance inquery, ect) Response XML DTD  Handles the response to the transaction DTD request (after the business logic has been preformed)

Transaction DTD

Response XML DTD

Django Database Modes  Products  Users

Django (cont) Database Models (cont)  State

Example FSM Diagram

Django (cont) Views  GetIndex  ajax

AJAX Functions  AJAX : Sends and receives ajax request from django  Product_Selected : Generates an AJAX Request when a user selects a product  Insert_Money : Handles when a coin/bill is inserted  Dandle_Response : Handles the response from django (callback function)

References Python  Django  Style guide for python code PEP 8: 

Questions