• No results found

Agent Oriented Agile Based Game Development Methodology (AOAB)

5.3 Archetypical Development Methodologies

There are many methodologies offered within traditional systems and software development scenarios. As mentioned above, some of the better known methodologies include Waterfall, Incremental and Spiral. Each of these are structured as either linear or iterative, and are sometimes hybrid. Most linear methodologies are classified as predictive, even where they contain iteration; they typically follow sequential phases, such as Waterfall methodology.

Prototyping involves dividing the system into small segments to involve the user in the pro-cess.

Spiral methodology combines linear and iterative frameworks. Spiral development breaks down projects down into a number of cycles, all of which follow a set of increasingly larger steps. The majority of methodologies employed by game developers are predictive, employ-ing comprehensive plannemploy-ing as separate tasks prior to actual development. Some of these methodologies are also described as adaptive, because multiple iterations and prototypes are used to shape the game [70]. The question here is

What criteria should be applied to choose between predictive and adaptive models in game development methodology?

In AOAB, we will not select between the types, because we need to draw on both concepts for game creation. For this reason AOAB is a hybrid methodology, combining the best fea-tures from predictive and adaptive models. The second important question is

How can components from a variety of game design and development models be integrated into standard development guidelines?

In reality, it is a challenging task to create generic game development methodology to cover the most important game requirements. Furthermore, there should be standard game devel-opment guidelines. In this chapter, we have created an AOAB methodology that provides all the answers to these questions and requirements.

5.3.1 Predictive Model

In general predictive models are preferable when we have clear goals and the customer’s requirements are clear and complete and the specific structure of the game must be withheld at all costs, allowing for a definite vision of the final product to be established long before it takes a playable form as shown in Figure 5.2. We will take the AOSE methodology as an example of predictive methodology

Figure 5.2: Predictive Development Methodology[70].

5.3.2 Adaptive Model

Adaptive models are encouraging the change in customer requirements and customers are being allowed to add new goals or new requirements even in the late stages of games devel-opment, and thus these must not affect the game plan. Furthermore the customer is usually

74

invited to give a direct response on the development process, regarding the lessons learned, as shown in Figure 5.3. We will take Agile methodology as an example of an adaptive methodology.

Figure 5.3: Adaptive Development Methodology[70].

5.3.3 Predictive vs. Adaptive Methodologies

This section presents the difference between predictive and adaptive development method-ologies to reach a common understanding of predictive and adaptive characteristics. The adaptive models are based on iteration with follows a bottom up approach. Adaptive fo-cuses on are developing more than simply documentation. The predictive models are based on a linear process which follow a top bottom approach. Predictive focus on documentation and expected changes in requirements only effect the initial stages of development. Unlike the adaptive model which anticipates a change in the customer’s requirements in any stage

of development.

The other difference between adaptive and predictive relates to testing and debugging. The adaptive model deals with the integration of testing and debugging in the development pro-cess and iteratively in prototype building. However, the predictive testing and debugging is done mostly at the end of the development process and tests all the system components.

Ideally, the type of hybrid development methodology recommended for use by independent game developers would be likely to possess a mix of characteristics [70]. Table 5.1 from [70]

presents a comparison of adaptive and predictive characteristics.

Table 5.1: Comparison of adaptive - predictive characteristics [70].

predictive Adaptive

Linear Iterative

Pre-planned Planned

Focused on Documentation Minimal Documentation A broad definition of the game early in

de-velopment

Game features are developed, then later synthesised

Restriction of changes to the initial concept Refinement and adaption of the initial con-cept are then built upon and improved iteratively

The final difference between adaptive and predictive is the planning concept. The important question here is “How much planning is enough” . Adler et. He asserts that having a planned approach and project schedule before development begins can minimize the high risks of soft-ware development. Both of adaptive and predictive approaches are using planning concepts but in different ways. Predictive approach is based on pre-panned approach. This is because;

76

predictive is usually used when we have well understood of customer requirements.

While in adaptive approach, we also deals with planned approach over the software develop-ment process [17]. Keith argues that as much new knowledge is generated during the design process, constant iterations are needed in order to incorporate this knowledge into the fi-nal product. He stresses that working prototypes, playable demonstrations and constant adaption are integral to producing a fun, coherent game, rather than comprehensive design documents and pre-planning [80]. Aside from being iterative by being structured around a series of task iterations and revisions, Keith’s Agile game development model with Scrum could be labeled as adaptive. In this sense, although a final game is planned from the begin-ning of the development cycle, the developers constantly adapt the game’s features (and thus final form) throughout the development cycle, in response to feedback from prototyping and demonstrations. This differs from other more archetypically predictive development models [80].

Overall, predictive models would be preferable when there is a pre-defined customer expec-tation or specific structure the game must withhold at all costs, allowing for a definite vision of the final product to be established long before it takes a playable form. Adaptive models encourage change and thus will not usually allow for all aspects of a game to be planned in unison, seeking to allow a game’s final project to be a direct response to its development process and the lessons learnt within [70].

However, one can see that such models are rarely purely adaptive or predictive, often in-corporating elements primarily from one archetype but possessing a few from the other.

And these concepts are appearing clearly in AOAB methodology because it is fully hybrid methodology. It is recommended that independent teams should at least partially conceptu-alize and plan the core features of their game before development begins. The game’s scope should realistically be considered in terms of the team’s abilities and first and foremost focus on delivering a finished, playable game.