Accessibility
 
Home / Developer Center / Mobile and Devices Developer Center /

Developer Center Article

Icon or Spacer Icon or Spacer Icon or Spacer
Flash Enabled
 
Flash Enabled
www.flashenabled.com
 

Flash Enabled: Flash Design and Development for Devices Chapter 5: Understanding the Flash Application Development Workflow


The authors of Flash Enabled: Flash Design and Development for Devices (New Riders Publishing, 2002) are a smart and talented bunch; just check out their bios at the bottom of the page. This book allows Macromedia Flash designers and developers to create content and applications for multiple devices with Flash and other tools. Focusing on the Pocket PC platform, this book also discusses how to develop with Flash for set-top box systems, cell phones, and Palm devices. The book targets four main concepts: design and development considerations, creating content once and deploying to many platforms, creating Flash content for the Pocket PC, and application development using Flash integrated with middleware. Throughout, the authors provide guidelines, step-by-step tutorials, workflow, best practices, and case studies.

 

Chapter 5, "From Start to Finish: Understanding the Flash Application Development Workflow," covers planning and defining your project, and then steps you through the process of creating an event guide in Flash for the Pocket PC.

Introducing the event guide application
"We've all been to trade shows and are familiar with the cumbersome-but-necessary printed event guides that show us the conference schedule, presenters, a map of the exhibits, conference sponsors, and so on.

"I use a Pocket PC device daily for various purposes including calendar, contacts, notes, and Flash development, among other uses. During these conferences, I find myself using both the event guide and my Pocket PC, which is not easy to do as I'm walking around. So I thought, why not take the same information (or at least the information that I find useful), create a great user experience, and put it on a Pocket PC that I can easily access? Not only can I include information about the event, but I can also include hotel information, local map, points of interest, and anything else that might be specific to the event.

"Creating this application for the Pocket PC using Flash seemed like a useful way to present the workflow process in this chapter while at the same time creating a functional-and hopefully fun-model. By using Flash to create this event guide application, we're able to take advantage of the "develop once, deploy anywhere" feature of Flash, which has been mentioned throughout this book. This same event guide that we will create can also be viewed on desktops, WebTV, and other devices that can display Flash with no or little modifications done to the finished files.

"As a developer, you will no doubt create a wide variety of Flash projects on many different devices. Each project will have its own quirks and challenges, but there will be similar issues to address in them all. Using Flash to develop an event guide for the Pocket PC serves as an example that requires you to think about the following issues determine the best solutions:

  • What stages are involved in developing a Flash application?
  • What's involved in specing out a project?
  • What's the target audience?
  • How do I assess the limitations and plan for them before I begin?
  • What resources do I have for troubleshooting?
  • What type of connectivity will be required?
  • How much time do I have to develop, test, and implement the project?

"These questions and more are sure to come up as you plan your own Flash projects (see Figure 5.1). For that reason, the process of developing the Flash event guide will help you anticipate and answer some of the challenges you will find in your own projects.

 
Completed Pocket PC Flash event guide
 

Planning your project
"One of the most important things you need to do before, during, and after a project is to be organized. Being organized might seem time consuming, but in the overall picture, it helps you keep focused on what you need to do and keeps you on track. Organization is a good skill to have, and it will help you in other situations.

"At this point, you should have an idea of the types of devices you're considering, cost and time estimates for completion, and how you plan to utilize the capabilities of Flash for your project.

Five things to ask first
"Here is a quick checklist of questions that you should ask in the initial meetings with a client:

  • What's the purpose?
  • Are there any specific requirements?
  • Who will be the end users?
  • What's the scope?
  • What's your budget?

"Remember: This checklist can be used in all types of projects, not just Pocket PC Flash projects.

 

Understanding your limitations
"Every project will have its own unique set of limitations—only in an ideal world will we have all the time, resources, functionality, and flexibility to create projects just the way we want them. Here are some limitations I've found that might affect your Flash project:

  • Available time for development
  • Available resources (which means "cheap is good")
  • Ambiguity from the client
  • Ignorance about the software
  • Hardware (platform?) limitations
  • Limited training available
  • Lack of IT support
  • Internal politics and personality clashes
  • Other concurrent projects you might have

"In the event guide example that we're following in this chapter, we need to consider many major limitations: the event guide content, the Pocket PC Flash Player, and the Pocket PC devices. For example, consider these issues:

  • Amount of content. Event guides usually include a lot of information. How do you choose what you need for your Pocket PC application? What's fluff and what's important? You will most likely determine the specifics with your client, but the sifting will have to be done.

  • Information that is hard to reproduce. Event guides often have large maps that show you city information and where to find booths you're interested in visiting (see Figure 5.2). A large map or a complex table can be hard to display well on the Pocket PC.

  • Flash Player for the Pocket PC. You've already read in Chapter 2, "Creating Content for the Pocket PC Using Flash," about the Flash Player for the Pocket PC, and you should be aware of the limitations of displaying Flash content on Pocket PCs. Please refer to that chapter for more detailed information.

  • Screen size. Pocket PC devices have a relatively small screen size that you must take into account when planning your design.

  • Color depth. Keep in mind color depth limitation when planning your design for display on Pocket PCs.

  • Available RAM. Another limitation you need to plan for might be the storage space or built-in RAM. Currently, devices have anywhere from 32-64MB, with the latter being plenty for most projects.
 
Map of the city of Santa Monica, California

"When creating your project, you should keep in mind that in most cases, devices have limited storage space or bandwidth; therefore, file size should be a consideration.

 

Planning the workflow
"Most people are visual learners; they remember things more easily if they're able to see a picture or diagram of a concept as opposed to just reading about it. This is where a project workflow comes into play. It doesn't have to be complex or confusing, but something simple to which you and the client can refer throughout the project. Here is an example of a project workflow for a medium-sized Pocket PC Flash project:

  1. Initial meeting with client in which you get your questions answered. [Time estimate: 2 hours]

  2. Spec, research, and prepare proposal, with prototype if needed. [Time estimate: 8-16 hours]

  3. Confirmation meeting with client-presentation of project plan. [Time estimate: 1-2 hours.] This could be done online to save time.

  4. Begin development. Determine the number of developers, make task assignments, and set deadlines, with checkpoints midway through. [Time estimate: 1-4 weeks (depends on complexity)]

  5. Walkthrough meeting with client, which can be scheduled once or several times during development. [Time estimate: 2-4 hours]

  6. Testing and modification cycle. [Time estimate: 2-8 hours (depends on number of modifications)]

  7. Rollout/deployment. [Time estimate: 2-8 hours]
 

Defining your project
"This might be the most critical part of your project, so it's important to spend the time to get it right the first time. At this point, you should have already met with the client, asked your questions, and have a good understanding of the purpose of the project, the requirements, the scope, and so forth. Now you need to define what the project will be, what needs to be accomplished, and how your project might be used beyond its intended scope.

"Here are a few things to consider as you begin to define the goals and expectations of your project:

  • Remember the purpose of the project.
  • Research and determine the best solutions.
  • Have a device on which to test your project.
  • Create realistic goals and deadlines.
  • Manage your hours to stay within budget.
  • Be prepared for things to go wrong.

"Thinking and planning beyond the scope of your project toward how it can grow is a great selling point to a client for follow-up work. Not only will the client get enhanced capabilities, but the development time and costs will also be minimized because you're adding to an existing project. When defining your project, it's best not to think of it as only one project, but instead as the start of several projects. A great way I've found to accomplish this is to present your project in "phases" to the client. Each phase of the project can be built on the other, developed and deployed at different times. This "phased" approach might not be applicable to all projects, but always try to develop projects this way."

The authors continue by introducing the event guide, choosing the platform, and planning the user experience, before embarking on a detailed overview of creating the Macromedia Flash project. This discussion includes project requirements, organizing the project, gathering content, and organizing your folders. Finally they discuss making the event guide—laying the foundation, creating the sections, creating the navigation, testing, and deployment—before concluding:

"As you can see, creating applications in Flash for Pocket PC devices takes preparation, planning, development, and testing—each of these having its own requirements. The important thing is that you should now understand the process and limitations for developing a Flash application for Pocket PC devices. You can modify this project development process to fit your own Flash projects. There isn't an absolute right or wrong way of working on a project; it's different for each person. What's similar is the fact that we can share ideas for developing projects, thus learning from each other."

 

You can download the entire version of Chapter 5 below:

Download Chapter 5 flash_enabled_ch05.pdf (640K)
You can also check out the book's official site at www.flashenabled.com.
 

About the authors
Christian Cantrell is a software developer specializing in web-based and network applications. For the past two years he has been integrating Java, JSP, Macromedia Flash, and Generator into various large-scale commercial applications. Recently Christian has turned his attention toward platform-independent development for mobile and embedded devices, concentrating on integrating Flash user interfaces with lightweight Java server software.

Mike Chambers has been creating applications primarily utilizing Flash, Generator, and Java for the past three years. He also has experience working with ASP, JSP, PHP, and ColdFusion. Mike currently works at Macromedia.

Branden Hall, a well-known member of the Flash community, can most often be found regulating on the highly popular Flashcoders (chattyfig.figleaf) mailing list that he founded over a year ago. Both he and his wife, Patti, work at Fig Leaf Software in Washington D.C.

Robert M. Hall is currently the senior developer for mCom LLC in Philadelphia, PA. He architects projects and develops ATM machine interfaces, award-winning Internet banking software, and wireless device applications. Robert uses a variety of technologies, including Flash, PHP, and MySQL.

Andreas Heim hails from Hattenhofen, Germany, close to Stuttgart, a center of German car engineering. Originally intending to become a professional soccer player, his education took him into the area of media studies and programming. Andreas currently works on all kinds of cutting-edge digital media projects, including bringing Flash to devices.

Craig Kroeger creates Flash-friendly, vector-based pixel fonts perfect for large or small screen applications available at miniml, a site whose purpose is to encourage functional and beautiful design by providing inspiration and resources.

Steve "Leo" Leone (unplug.tv) is currently a freelance illustrator/designer and former art director of NexusGroup. He holds multiple design awards and has been involved in some of the most innovative Flash projects to date.

Markus Niedermeier is a producer, writer, and director in Munich, Germany, who frequently works on integrated concepts for TV and the Internet. Markus wrote and directed Germany's first commercial Flash web-cartoon, animated by Smashing Ideas, for hugely popular "Diddl-Maus."

Bill Perry is a senior consultant at Prosum where he focuses on web design and wireless application development for various clients. He's the creator of pocketpcflash, a Flash development resource for Pocket PCs. He is a member of Team Macromedia and is exploring alternative uses of Flash applications in wireless Pocket PC environments.

Fred Sharples is the founder of Orange Design, a digital creativity company that specializes in Flash application and game development. Under Fred's direction, Orange created Old Navy's online game collection and, in collaboration with MarchFIRST, also helped develop Barbie Pix, a Flash-based painting program that lets users make online pictures, save them, and send them to friends.

Glenn Thomas is one of the founders of Smashing Ideas, a leading digital media services company. Smashing Ideas' projects include the Madonna "Music" Shockwave Single, Email Chess, webcasting the Sydney 2001 Paraolympics, Pocket PC games, and web animation shows, such as Zombie College.

Phillip M. Torrone is director of product development of Fallon Worldwide. From developing applications and hardware for the first PDA, the Apple Newton, to creating the first 100% Flash-based, Generator-driven online bank and creating rich data-driven content for cell phones, devices, and automobiles, Phillip applies his diverse skill set to push the boundaries of current technologies. As this book went to press, Phillip was awarded Microsoft's Most Valuable Professional award in the mobile devices category.