分享

Online game infrastructures, Part 5: Make the...

 daomucun 2009-01-15

Online game infrastructures, Part 5: Make the game work

An architectural approach to providing online game infrastructures

developerWorks
Document options
Set printer orientation to landscape mode

Print this page

Email this page

E-mail this page


Hey there! developerWorks is using Twitter

Follow us


Rate this page

Help us improve this content


Level: Introductory

Veronika Megler (vmegler@us.ibm.com), Senior IT Architect, IBM Sales & Distribution

11 Aug 2004

The business of the online gaming industry is a complex one, requiring the input and integration of many variables -- people, business conditions, product goals, and more -- to create, implement, and distribute a successful online game. In the last of five articles, IBM® Senior IT Architect Veronika Megler recaps here the entire process for designing a game environment infrastructure, delivers a final revised build-buy-borrow template for game environment functions, discusses putting all this effort to work, and notes a few additional potential functions.

In this, the last part in this series, I start by recapping the entire design process to demonstrate how far you've come in providing an online game environment. Next, I deliver a revised build-buy-borrow outline, complete with some real-world product solutions. Lastly, as a way of putting the game environment to work, I offer up a thought on further potential functions for the environment that you may want to consider.

Up until this point

In Part 1, you learned to:

  • Migrate from a game focus to a business focus, using an e-commerce model to ensure success.
  • Apply business patterns to the development of a game environment.
  • Craft a business description of the environment you want.
  • Take that description and pull out pertinent elements, and build a solution overview of the project.
  • Use the overview to identify the needed patterns to develop the infrastructure.

In Part 2, you learned to:

  • Refocus on the game, applying a patterns-based perspective to illuminate its design.
  • Outline and understand why you chose certain patterns, based on your determinations.
  • Walk through the application, applying patterns as you go.
  • Examine scale requirements and determine which patterns fit those best.
  • Integrate runtime patterns into a workable solution.
  • Match real-world products with the runtime functions.
  • Determine when and where reuse (buy or borrow) was appropriate.

In Part 3, you :

  • Identified a new scenario -- game playing as a lifestyle -- and the resulting requirements.
  • Discussed the requirements needed to create ancillary products for the gamer to purchase.
  • Highlighted potential graphics issues in translating game images to physical items.
  • Covered the components necessary for building a barter/exchange system that works within the gaming world and between the game environment and the real world.
  • Examined the realities of connectivity between the game and the multitude of devices that gamers may use.
  • Outlined the critical issues in connectivity concerning devices.
  • Matched the useful patterns to help adapt the solution to allow a larger number of potential gamers to access the most services in the environment.

In Part 4, you :

  • Discussed needed community-issue functions such as providing for self-regulating communities.
  • Focused on purpose-built content and personalization.
  • Discussed giving groups the ability to recognize their own members for the purpose of content distribution.
  • Talked about offering gamer education.
  • Identified the need some users might have to communicate with other players within the game.
  • Postulated a statistics-based function that could help matchmake gamers.
  • Covered downloading and installing patches.
  • Recognized the need to be able to identify the current version a player is using.
  • Focused on automatically installing patches needed to bring a player's game up to date.
  • Realized the need to provide an indicator of when a new game version is available.
  • Highlighted the need for a user-accepted install service.
  • Examined self-service user account management that allows registered gamers to renew their subscription, check their account status and balance, and do other account maintenance.
  • Detailed when to use customer service through multiple mechanisms such as e-mail, chat, and telephone.
  • Offered pattern advice for each of the new functions you uncovered.
  • Matched the appropriate new functions to real-world products.

I've provided an index to help you locate the key concepts discussed in this series, including the functions identified and the patterns I chose to meet those requirements.

Now, look at the new and improved build-buy-borrow picture.



Back to top


The new, improved build-buy-borrow picture

Start with the additions from the extended scenarios and build a new build/buy/borrow hypothesis that incorporates the changes.

As with my earlier approach, I used IBM and IBM Business Partner products because I know they can provide the functions you identified. Clearly, you need to more closely examine each case to validate that the functions of the products provided really meet your exact needs.

First, review the patterns-based solution that you designed for your game environment.


Figure 1. The final overview patterns solution
The final overview patterns solution

Taking the components from the overview, you'll now match up real-world products to fulfill the functions of those components.

Table 2. Product options for your online game environment needs

Function Products
  • Edge services (cache)
  • Use content caching; Partner with Akamai for content download
  • Protocol/domain firewalls
  • IBM Secureway® Firewall
  • Registration and login
  • Use IGS registration service and WebSphere® Application Server
  • Matchmaking
  • ISV Application such as Andago, WebSphere Application Server
  • Web server redirector
  • WebSphere Network Dispatcher
  • IBM HTTP Server with IBM WebSphere Application Server Plug-in
  • Collaboration
  • Lotus® Domino®
  • Lotus Sametime®
  • Lotus Quickplace®
  • Content delivery; provisioning
  • IBM Video Charger
  • FTP Server
  • WebSphere Everyplace® Delivery Manager
  • Content management
  • IBM DB2® Content Manager
  • IBM DB2 UDB
  • Voice-activated response system
  • IBM Voice Server
  • IBM WebSphere Application Server
  • Directory and security services
  • IBM Secureway Directory
  • Customer relationship management
  • Industry leading CRM application like KANA or Onyx
  • Digital rights management
  • Business partner, to be researched
  • Portal and portal services, including:
    Personalization server
    Presentation server
    Search and indexing
    Application server; commerce application
    Billing, subscription
  • IBM WebSphere Application Server
  • IBM WebSphere Portal
  • IBM DB2 UDB
  • IBM WebSphere Personalization
  • WebSphere Portal Server Search and Indexing Portlets
  • WebSphere Digital Media Enabler
  • IBM WebSphere Commerce
  • WebSphere Commerce Payments
  • WebSphere Commerce Recommendation Engine
  • Billing, subscription
  • Use WebSphere Commerce's subscription purchase
  • for micropayments use iPin
  • Database server
  • IBM DB2 UDB
  • Data Mining Application (optional)
  • Load balancer/proxy
  • Game servers
  • Depending on the game: IBM Network Dispatcher
  • GameGrid/OptimalGrid
  • In-game collaboration service
  • In-game provisioning
  • In-game commerce service
  • Other in-game services
  • Business Integration for Games: use to connect to native services for each required service



Back to top


Final concepts

As a games infrastructure provider you are, in effect, a service provider. Your ability to make money is tightly coupled to your ability to keep your gamers happy. Therefore, you have to consider these other requirements as well:

  • Scalability. You want to be able to service all users who show up to play, no matter when or how.
  • Availability. You need to provide reliable service all the time.
  • Performance. You want to provide good, reliable, consistent response times.
  • Digital Rights Management. In today's world, you cannot have an e-commerce component to your business and not consider the consequences of property rights.

In a number of cases, existing patterns can address these requirements. The non-functional requirements of scalability and availability, for example, have runtime patterns and implementation suggestions that can add significant detail to your diagrams. These subjects are worthy of an entire collection of articles in themselves.



Back to top


Game over!

Clearly, you can apply unlimited creativity when planning and implementing a games infrastructure. By using some fairly standard patterns as the basis for your infrastructure, you can continue to build up a complex, rich, integrated environment without creating a maze that is impossible to maintain.

Also, I've not addressed a variety of issues, such as availability, scalability, and performance. But as you can see, you've broken interesting, challenging game functions into a variety of straightforward functionality implemented with off-the-shelf components to support the more boring business needs. These components are available, well understood, and well tested; and when coupled with one or more exciting research technologies, you can provide truly leading-edge capabilities.



Resources



About the author

 

In the early 1980s, Veronika Megler was part of the birth of the computer games industry in Australia as the first employee of the heralded Melbourne House Publisher. While there, she wrote best-selling computer games, including a legendary cult game, the best selling game ever on the Spectrum 64 home computer, The Hobbit. Twenty years has taken her career full circle -- after working in operations, application development, systems programming, systems management disciplines, project management, and IT management consulting, she spent a large part of 2003 working to match IBM's products with the nascent online games industry. Now a Senior IT Architect for IBM Sales & Distribution working on Offerings for Emerging & Competitive Accounts, she is passionate about making IBM solutions and technology usable by customers and consumers. She enjoys building architectural solutions to solve real business problems, then proving they work in practice. Reach Veronika at vmegler@us.ibm.com.


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多