Sunteți pe pagina 1din 17

43

Adaption and Customization of


Software Developing Models
in Animation Production

Mohammad-Reza Hosnaee2 Fatemeh Maleki1


hosnaee@art.ac.ir f.maleki@gmx.com

Abstract Keywords
In this paper we introduce software developing models and dis- Animation, Production,
cuss the adaption of each model in animation production regard- Software, Methodology,
ing to the aspects of the production such as the team size, time Development
needed, context, etc. First we explain why this adaption could
be applicable and why it could be useful. The similarities between
animation production and software development, and the projects
involving both animation and software development like games
and 3D computer animations are discussed as the reasons to pro-
ceed in this adaption and customization, then software develop-
ing models such as Linear, Prototyping, Rad, incremental, spiral
and formal models are introduced and being discussed on Hows,
Whys and Whens of adaption and customization, and the similari-
ties between some proposed animation production pipelines and
software developing models are mentioned.
1. M.A in Animation,
B.Sc. in Software
Engineering
Animation Dept.,
Art University,
Tehran, Iran

2. PhD in Animation
Production, Assistant
Professor in Art Uni-
versity of Tehran, Iran
44 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

1 · Introduction
Not only the product, either animation or software, but also the
way of producing it are of great importance. The way has direct ef-
fects on the product. Roger S. Pressman defines software process
model as follows,

To solve actual problems in an industry setting, a software


engineer or a team of engineers must incorporate a develop-
ment strategy that encompasses the process, methods and tools
layers …. This strategy is often referred to as process model or
software engineering paradigm. A process model for software
engineering is chosen based on the nature of the project and
application, the methods and tools to be used , and the controls
and deliverables that are required (Pressman 2001, p. 26)

Later we discuss the adaption of each model in animation


production, but first it is necessary to explain the importance of
this adaption. Although there are differences between software
development and animation production including that software
developing is more depended on requirement analysis and is more
customer-based, in addition it has an important phase which is
support phase. Besides all the differences, animation production
has the most similarities with software development comparing to
other visual or aural arts. Teamwork is one of the similarities. Be-
ing able to divide the production and the development into phases
is another similarity, although an orchestra concert is also done
through teamwork but it is not as similar to software development
as animation production is. Even comparing an animation project
to a live action movie with no visual or special effects_ of the same
scale_, production is more important due to financial, tempo-
ral and human resource management that it needs to prevent
large failures. Reusing/Recycling is a vital subject in animation
production it has also been noticed in software engineering too
and it leads to some specialized concepts in software engineering
and programing such as classes, modules and component based
programs.
Not only these similarities may rationalize the Whys of the
adaption but also there are some other important reasons,
those projects that involve both animation production and
Adaption and Customization of Software Developing Models in Animation Production 45
Fatemeh Maleki; Mohammad-Reza Hosnaee

software development together, such as 3D CG animations that


include software developing or game that are software develop-
ment but they include animation production too.
Defining similar or at least compatible models can make it
easier to do this compound projects.

2 · Process in Animation Production and Software


Development
Pressman (2001) defines software engineering as a layered
technology

Software engineering is a layered technology…. any engineer-


ing approach (including software engineering) must rest on an
organizational commitment to quality.…
The foundation for software engineering is the process
layer. Software engineering process is the glue that holds the
technology layers together and enables rational and timely
development of computer software.… Software engineering
methods provide the technical how-to’s for building software.
Methods encompass a broad array of tasks that include
requirements analysis, design, program construction, testing,
and support… Software engineering tools provide automated
or semi-automated support for the process and the methods….

F.1 Software
engineering layers
(Pressman 2001, p.21)

If we change this layered view on animation, we can define


layers as: storytelling, production pipeline, methods and tools.
Storytelling refers to being able to narrate the story well, it
includes direction and art, and in the scientific animations or ab-
stract animations it refers to being able to show the topic precisely
and clearly or to make the desired effect. Production pipeline
46 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

refers to managing what should be done, the order of them and


human resources management.
Methods refer to production phases such as scriptwriting,
making animatics, coloring, etc.
Tools refer to either physical devices and accessories or software
used for production.

F.2 Animation art


viewed as layered

3 · Adaption and Customization of Models


There are some notes we should considers before discussing the
Hows of adaptions of models.
· Animation production phases are more than software devel-
oping phases and they may vary in detail from
project to project greatly.
· The order of animation production phases may change to
some extend according to director’s decision.
· Customer and his/her needs are vital and of great impor-
tance in software developing. Although audiences are very impor-
tant too in animation production but its effect is more delicate and
indirect. Knowing the audiences’
psychology and taste can improve the impact of animation. In
some animations ordered by clients such as advertisement anima-
tions, relationship management with client is of great importance.

3.1 · Linear Model


Sometimes called the classic life cycle or the waterfall model,
the linear sequential model suggests a systematic, sequential
approach to software development that begins at the system
level and progresses through analysis, design, coding, testing,
and support (Pressman 2001, p. 21)
Adaption and Customization of Software Developing Models in Animation Production 47
Fatemeh Maleki; Mohammad-Reza Hosnaee

F.3 The linear


sequential model
(Pressman 2001, p.21)

To adapt this model the separate phases that have the least
concurrency should be defined. We propose the phases shown in F.4 Adaption of Linear
Picture 4. Model for Animation
Production
(The phases named
here are inaccurate
and dependent on the
technique

There may be some criticism on applicability of this adaption.


Pressman (2001, p.30) also has criticism on the main model

The linear sequential model is the oldest and the most widely
used paradigm for software engineering. However, criticism of
the
paradigm has caused even active supporters to question its
efficacy (Pressman 2001, p.30)

The adaption may not be applicable to many real projects since


not always the phases are done sequential, sometimes there are
some backward movements to the past phases as like the Rata-
touille(2007) which the story changed by Brad bird after the phase
of story reel was done under direction of Jan Pinkava. But this
model can be used for projects with early deadline and a small
project team, or techniques with less possibility of backward
changes such as sand animation.
Picture 5 shows a diagram of computer animation production
pipeline, proposed by Gaul, et al.(Gaul et al. 2003).
48 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

The diagram considers the workflow between different depart-


ments more similar to the linear model

F.5 Computer
animation production
pipeline (Gould et al.
2003, p.21)

3.2 · Prototyping Model


The prototyping model has great emphasis on customer’s feed-
back and objective, as Pressman (2001) explains:

Often, a customer defines a set of general objectives for


software but does not identify detailed input, processing, or
Adaption and Customization of Software Developing Models in Animation Production 49
Fatemeh Maleki; Mohammad-Reza Hosnaee

output requirements. In other cases, the developer may be


unsure of the efficiency of an algorithm, the adaptability of an
operating system, or the form that human/machine interac-
tion should take. In these, and many other situations, a proto-
typing paradigm may offer the best approach.
(Pressman 2001, p. 30)

Prototypes often refer to a quick design or Graphical User Inter-


face (GUI) of the program not so much functional since
they may have just some little codes.

F.6 Prototyping Model


(Pressman 2001, p.31)

Of course not all the animations are ordered but this model
can be applied in some projects:
· The projects that are ordered and those who order are into
animation or some fields of it and want to
participate in the project.
· Animations that are more produce to introduce a new tech-
nique and experiment new technical ideas.
The proposed production pipeline in picture 7 (Cantor & Va-
lencia 2004) induced that the story reel is changed and
developed gradually; this pipeline is more similar to prototyping
model than other models.
50 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

F.7 Inspired 3D short


Film Production Pipe-
line (Cantor & Valencia
2004)

3.3 · The RAD Model

Rapid application development (RAD) is an incremental soft-


ware development process model that emphasizes an extremely
short development cycle. The RAD model is a “high-speed”
adaptation of the linear sequential model in which rapid de-
velopment is achieved by using component-based construction.
(Pressman 2001, p. 32)
Adaption and Customization of Software Developing Models in Animation Production 51
Fatemeh Maleki; Mohammad-Reza Hosnaee

F.8 Rad Model


(Pressman 2001, p. 33)

This model is applicable on projects that can be divided


into some separate and independent parts. This model is used
where the project should be done rapid, and the number of team
members is limited. According to the two mentioned notes,
this model can be very suitable for TV serial shows that all the
episodes should be produced before being shown on TV and there
is a limited time in contraction to deliver all of the episodes. In
addition each episode has a separate story and is to some extends
independent to other. The first episodes that introduce main char-
acters should be done before the start of applying this model.
52 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

F.9 adaption and


customization of Rad
model for animation
serials

This model can also be applied to projects where some parts of


it are done by a separate group far away as like Avatar
(2009).
In this model the director should be careful to guide the pro-
ject in a way that there would be no significant difference in
the result of the final animation of each team. Regular and prede-
fined documentation can be so vital and useful while
using this model.

3.4 · Evolutionary Models

Evolutionary models are those kinds of models that are applied


when a final deliverable working product is made but
Adaption and Customization of Software Developing Models in Animation Production 53
Fatemeh Maleki; Mohammad-Reza Hosnaee

gradually it is being completed and its features are added, so each


time a new version of that software is delivered. As
pressman (2001) says:

Evolutionary models are iterative. They are characterized in a


manner that enables software engineers to develop increasingly
more complete versions of the software. (Pressman 2001, p. 34)

Since animations are not delivered in versions, it may be


thought that these models are not applicable to animation, but
we propose that these models can be applied to some cases:
1. When a TV serial animation is produced, and the production
is in a way that while some episodes are being
shown the next ones are being produced simultaneously.
2. When team want the animation movie to have sequential.
3. When the animation has two separate stories and tech-
niques, for example two characters talk about something
and then one starts telling a story, and the techniques of these two
nested stories are different.

3.4.1 · The Incremental Model


Pressman (2001) explains this model as follows:

The incremental model combines elements of the linear sequen-


tial model (applied repetitively) with the iterative philosophy of
prototyping…. Each linear sequence produces a deliverable
“increment” of the software…. For example, word-processing
software developed using the incremental paradigm might
deliver basic file management, editing, and document produc-
tion functions in the first increment; more sophisticated edit-
ing and document production capabilities in the second incre-
ment; spelling and grammar checking in the third increment;
and advanced page layout capability in the fourth increment.
It should be noted that the process flow for any increment can
incorporate the prototyping paradigm.
When an incremental model is used, the first incre-
ment is often a core product. That is, basic requirements are
addressed, but many supplementary features (some known,
others unknown) remain undelivered. (Pressman 2001, p. 35)
54 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

F.10 Incremental
Model
(pressman 2001, p. 35)

This incremental evolutionary model is very proper to be ap-


plied on TV serial animation production. The same as software
production the first iteration is of great importance in animation
too since in the first episodes the main characters and the story are
introduced to audiences.
In this model the staffs are organized in a way that there are no
or the least spare times for each production phase’s team.

F.11 Customization of
incremental model for
animation production
(Phases are inaccurate
and can vary according
to technique used in
production)
Adaption and Customization of Software Developing Models in Animation Production 55
Fatemeh Maleki; Mohammad-Reza Hosnaee

In cases where the financials are provided by client per epi-


sode, the story and design could be in a way that the first episodes
need less money and the staff are smaller but the complication of
the techniques and story can grow gradually with more
finances provided.

3.4.2 · The Spiral Model


This model is evolutionary too and is done in iterations but it
has an important task before each iteration and that is Customer
Communication and also a task after each iteration, Customer
Evaluation.
Pressman (2001) explains it as follows:

The spiral model, originally proposed by Boehm …, is an


evolutionary software process model that couples the itera-
tive nature of prototyping with the controlled and systematic
aspects of the linear sequential model. It provides the potential
for rapid development of incremental versions of the software.
(Pressman 2001, p. 36)
As this evolutionary process begins, the software engi-
neering team moves around the spiral in a clockwise direction,
beginning at the center. The first circuit around the spiral
might result in the development of a product specification;
subsequent passes around the spiral might be used to develop a
prototype and then progressively more sophisticated versions of
the software. (Pressman 2001, p. 37)

We have no customer in animation but it does not mean that


we cannot adapt this model. Although there is no customer needs
but an animation TV serial which has many episodes and is pro-
duced while being shown can take the feedback of audience into
account and change the story, design, rhythm and other proper-
ties of the animation according the audiences’ taste.
This model is applied in the cases that the boundaries of the
software that should be delivered are not clear, so the model can
help to make it possible to grow the software later. The same can
happen for a TV serial, for example a TV channel, or commercial
that the client may order another series of episodes.
Some movies with special effects can be done through this
56 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

F.12 Spiral Model


(Pressman 2001, p. 37)

F.13 adaption of
spiral model

model too; the first product with the least effects can be
delivered in first iterations and if there was any time/finance the
final additional effects such as lightening, matt painting etc. can
be added later. A proper example could be animations for game, a
first animation can be delivered to the programming team so they
could be aware of the duration, points of special events and any
other data they need, and then adding the effects can be done in
later iterations.
Adaption and Customization of Software Developing Models in Animation Production 57
Fatemeh Maleki; Mohammad-Reza Hosnaee

The way that Alex McDowell1 layout the animation production 1. British production
pipeline in picture 14 (Desowitz 2003) is more designer and film
much similar to how the spiral model is. producer, (born April
1, 1955)

F.14 McDowell lays out


the production pipeline
in this pie chart
(Desowitz 2003)

3.5 · COMPONENT-BASED DEVELOPMENT


This development has direct relation with reuse topic in anima-
tion production. Pressman conveys it as below:

Classes created in past software engineering projects are stored


in a class library or repository …. Once candidate classes are
identified, the class library is searched to determine if these
classes already exist. If they do, they are extracted from the
library and reused. If a candidate class does not reside in the
library, it is engineered using object-oriented methods …. The
first iteration of the application to be built is then composed,
using classes extracted from the library and any new classes
built to meet the unique needs of the application. Process flow
58 CONFIA . 3nd International Conference on Illustration & Animation
Braga . Portugal . April 2015 . ISBN: 978-989-98241-9-5

then returns to the spiral and will ultimately re-enter the com-
ponent assembly iteration during subsequent passes through
the engineering activity. The component-based development
model leads to software reuse, and reusability provides soft-
ware engineers with a number of measurable benefits.
(Pressman 2001, pp. 43, 44)

In software development what are stored are classes and the


archive is called class library but in animation production a
company or even a small team can form their archive in many
categories such as animation cycles, character design,
backgrounds, 3D objects and many others.
Animation reuse has a long story in Disney animations. Pixar
reuse its 3D objects or characters so much creatively too.
Luxo Balls has been uses so many times that it has become as like
a signature.

3.6 · The Formal Methods Model


This model has a great emphasis on mathematics,

The formal methods model encompasses a set of activities


that leads to formal mathematical specification of computer
software.
Formal methods enable a software engineer to specify,
develop, and verify a computer-based system by applying a
rigorous,mathematical notation.

This model has its own difficulties even to be used in soft-


ware development. It is hard to imagine adapting it to anima-
tion production, but in some cases that the animations are just
simulations of body, factory, instruments, etc. The production can
become close to this model.

4 · Conclusion and Future Works


In this paper we talked about software developing models and
the idea of adapting and customizing them to be used in anima-
tion production. First we explained why animation can accept
this models and what the benefits of this adaption are. Then we
discussed adaption of each model, what type of animations and
Adaption and Customization of Software Developing Models in Animation Production 59
Fatemeh Maleki; Mohammad-Reza Hosnaee

when can be produced going through that model. Some models


such as Win-Win model or Concurrent model are not explained
since we think they are hardly adaptable. However discussing
other models, and even the idea of adaption of software develop-
ment methodologies can be researched and discussed in future,
these discussions can help the production of multidisciplinary arts
such as games.

5 · Resources
[1] Pressman, Roger S. (2001); Software Engineering: a Practi-
tioner’s Approach, 5th ed., Mc Graw Hill
[2] Desowitz, B. (2003); ‘The Previs Gospell…According to Mc-
Dowell and Franked’, Animation World Magazine, 26 September.
Available at: http://www.awn.com/articles/previs-gospel-accord-
ing-mcdowell-and-frankel [last accessed 19 November 2012]
[3] Cantor, Jeremy; Valencia, Pepe (2004); Inspired 3D Short Film
Production, Course Technology PTR
[4] Gould, David; Menache , Alberto; Kazmier, Chris; Parent,
Rick; Gross, Markus; Muller , Matthias; Keiser , Richard;
Ebert , David; Lumsden, Charles(2009); Computer Animation
Complete: All-in-One: Learn Motion Capture, Characteristic,
Pointbased, and Maya Winning Techniques, Morgan Kaufmann
Publishers Inc.

S-ar putea să vă placă și