Mike miller cs 526
This presentation is the property of its rightful owner.
Sponsored Links
1 / 13

A Custom CMS for iPhone Application Development PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

Mike Miller CS 526. A Custom CMS for iPhone Application Development. Presentation Outline. General Introduction Hungry Guide Project Introduction Previous Application Workflow Design Goals for new Workflow Design Overview Implementation Outcomes Future Iterations Sources.

Download Presentation

A Custom CMS for iPhone Application Development

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Mike miller cs 526

Mike Miller

CS 526

A Custom CMS for iPhone Application Development

Presentation outline

Presentation Outline

  • General Introduction

  • Hungry Guide Project Introduction

  • Previous Application Workflow

  • Design Goals for new Workflow

  • Design Overview

  • Implementation

  • Outcomes

  • Future Iterations

  • Sources

General introduction

General Introduction

  • Business overview

    • We produce a variety of iPhone applications

    • Content generally comes from third parties

  • iPhone development overview

    • We write iPhone exclusively in Objective-C

    • Supporting technologies include RoR, PHP and DHTML

    • Apple’s DRM complicates distribution

Hungry guide project introduction

Hungry Guide Project Introduction

  • Each book follows a predefined structure

  • Contains venues for a specific location in a city

  • LA client provides content

  • COS location houses codebase and application development

  • Client wants to produce over 300 guides

Previous application workflow

Previous Application Workflow

  • Assets and content come from LA

  • Codebase, development tool chain and DRM in COS

  • Current template is poorly designed

  • Embedding content is tedious and error-prone

Design goals for new workflow

Design Goals for new Workflow

  • Enforce better defined workflow

  • Allow for multiple projects to be created at once

  • Remove tedious, error prone process of inserting assets into a template

  • Streamline template-to-application process

Design overview

Design Overview

  • Use a common backend

  • Write a custom CMS for client input

    • Allow client to input all assets and content

    • Allow client to create associations between data models

  • Create a process for generating a preview for client signoff

  • Create a process for compiling iPhone applications after client signoff

  • Create a generic reader application and bundle assets to package for it



  • MySQL chosen for backend

  • CMS was written using RoR

    • Workflow for uploading content and creating venues

    • Workflow for creating books from a list of venues

    • Acts as Attachment for Asset management

  • CMS made heavy use of AJAX and REST

Implementation ii

Implementation II

  • PHP process provided preview and signoff

  • Ruby process compiled HTML pages and bundled assets for phone

  • Obj-C generic reader to parse HTML structure

Implementation diagram

Implementation Diagram



  • Production was finished

  • Final product buggy on iPhone

    • UIWebview issues

    • Static HTML structure insufficient for dynamic app

  • Overall process shows promise

  • Process possible to refine to meet new demands

  • Lessons learned

    • Manage scope creep

    • Look into a premade CMS solution

    • Favor a native solution

    • Keep the technology stack small

Future iterations

Future Iterations

  • Adding to book creation workflow in CMS

  • Implementing client preview in RoR instead of PHP

  • Creating and bundling Obj-C source instead of DHTML

  • Creating secure download server for Obj-C source



  • Apache usage documentation

  • Apple development documentation

  • Thomas Fielding’s Doctoral Dissertation [related chapters]

  • Rails Acts As Attachment documentation

  • Login