Upload
joan-strickland
View
227
Download
1
Tags:
Embed Size (px)
Citation preview
Mike MillerCS 526
General IntroductionHungry Guide Project IntroductionPrevious Application WorkflowDesign Goals for new WorkflowDesign Overview ImplementationOutcomesFuture IterationsSources
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
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
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
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
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
PHP process provided preview and signoff
Ruby process compiled HTML pages and bundled assets for phone
Obj-C generic reader to parse HTML structure
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
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