THE MULTIMEDIA DEVELOPMENT PROCESS

Software Evaluation Criteria

  1. Usefulness - does the application accomplish an important task?
  2. Efficiency - how efficiently does the software get its job done?
  3. Stability - how stable and predictable is the application?
  4. Portability - can the application run on multiple platforms with minimal redevelopment?
  5. Scalability - can additional functions be readily added on?
  6. Ease of Use - do users find it easy or hard to make the program work? Do they like using it?

Development Cycle

Rapid prototyping is typical of multimedia applications.

Software developed for testing with focus groups, such as at Microsoft, takes about half of an 18-month development cycle for a new title. After testing and revision, the test software yields the interface and media content, but the application is typically recoded in a lower-level language, like C++.

Most CD-ROM games, educational and reference titles, take about 18 months to develop also. They are typically coded in a higher-level language, like Lingo, and programming is also about half of the development cycle. For CPU-intensive 3D games, programming takes up almost all of the development cycle.

Web site development is very rapid. Depending on the size and complexity of the project, development time can be as little as a month.Typically though there is more programming involved and most sites take 3 - 6 months to launch. Some large corporate sites can take over a year to launch.

Steps in the Process

The steps taken in developing a multimedia product are like those of any software project

  1. Determine project goals
  2. Develop work scope
  3. Assess system requirements
  4. Design the system
  5. Develop the system
  6. Test
  7. Deliver
Determine Project Goals

A one-page summary of the project should provide the reader with the "big picture":

Develop Work Scope

In the work scope, you need to specify

Assess System Requirements

The first step in any application development is an assessment of...

Technical requirements

These generally translate to restrictions or constraints that will help guide your design, including

Market or client requirements

Know thy user, for he (or she) is not thyself

Applications that are easy to learn are more likely to attract a wider audience. Take advantage of your users' considerable knowledge and experience

Current means of accomplishing the task, including competition

Using a computer should always be easier than not using a computer.

Task analysis

Be sure you understand the task at hand before you leap to a solution!

Design the System

Several different types of design, undertaken by different designers/teams, go into a multimedia product. At the very least, these include...

Interface design

Ease of use is a property of the system; not a "feature" tacked on at the end.

- Repetoire of functionality
- Concept of operations - how the user uses the system, and how the system fits in the user's life
- External behavior of the system, including response to errors

Myth vs. Conceptual model

Every application is designed with a use model in mind. An explicit use model ensures that it is designed for the correct audience.

Functional design

Functional design describes how exactly the system will do what it is supposed to.

Develop the system

Development of the system includes ...

It is strongly advisable to use incremental development.

Test

Testing includes the following:

Testing typically takes half of your development time. Be sure to allow plenty of time for testing!

Deliver

When delivering the finished system, it is important to

Support

Even when the system is delivered, the work isn't over.

Maintain system
- Fix bugs
- Enhance functionality
- Maintain versions

Evaluate technical feedback, market reaction, and user reaction
- What frustrations do users experience?
- What shortcuts do users invent or ask for?
- What gets used? what doesn't?
- Who is buying or using it? who is not? why?

top of page