UML and Object Oriented Analysis and Design for Computer Game Programming
Course
Inhouse
Description
-
Type
Course
-
Methodology
Inhouse
-
Duration
5 Days
Students completing this course will acquire a whole range of useful skills. understanding the role of Use Case Analysis in refining the requirements for user - game interaction, exploring and refining "game plots and scenarios". using statecharts and sequence diagrams to model complex interactions and behaviours occuring in computer games. identifying. Suitable for: This course is primarily aimed at those involved in the development of computer games software. Apart from computer game software programmers the course should also be of benefit to. game designers. game scriptwriters. planners and project managers. game software testers
Reviews
Course programme
One of the main values of UML2 comes from its use as both a tool for communicating ideas and intentions and as a tool for "thinking through" various approaches and possibilities to tackling software analysis, design, implementation and testing. In the devlopment of computer games there is a great need for communication between those creating game content to interact with those implementing the software that will realise their "dreams" and "vision". Other values include
- making intentions and wishes more precise
- providing a reference point for game software testing
- creating a framework that will aid project management
- facilitating attempts to understand and work with complex frameworks
Course Benefits
Students completing this course will acquire a whole range of useful skills
- understanding the role of Use Case Analysis in refining the requirements for user - game interaction, exploring and refining "game plots and scenarios"
- using statecharts and sequence diagrams to model complex interactions and behaviours occuring in computer games
- identifying classes, class hierarchies and composite structures to represent computer game entities
- using architectural design techniques to manage complexity in computer game development
Course Contents
Object Oriented Concepts and Thinking
- Classes and class instances (objects)
- Inheritance, polymorphism and interfaces
- Creating more complex objects out of simpler objects
- relationships between classes and relationships between class instances
- communications and interactions between objects
- event driven programming - events and how objects respond to events
- object lifecycles - creation, management and destruction of objects
- computer games development lifecycle models
- survey of the different UML diagram types
- class diagrams and object diagrams
- use case diagrams
- collaboration diagrams
- sequence diagrams
- activity diagrams
- state diagrams
- deployment diagrams
- component diagrams
- uses of the different UML diagram types in different parts of the lifecycle
- identifying and documenting Scenarios and Use Cases
- brainstrorming
- user - game interaction
- game entity - game entity interaction
- story boarding and use case analysis
- structuring and refining use cases
- the many facets of a computer game
- combining use cases from different facets
- getting to the most effective level of abstraction
- developing and refining use cases
- sequence diagrams
- activity diagrams
- state diagrams
- sequence diagrams
- use of analysis models to bridge the gap between the use case model and the design model
- robustness analysis
- performance analysis
- identifying boundary classes, entity classes and control classes and the associations between them
- moving from the analysis model to the design model
- interaction modeling
- allocating behaviour
- CRC cards approaches
- detailing interactions
- grouping classes using package diagrams
- evolving designs
- subsystems and architecture testing
- refining classes and associations
- developing class properties - visibility, scope, multiplicity, attributes, operations
- extending UML using stereotypes, tagged values and constraints
- design for reuse
- template classes
- generalisation and generalisation hiererchies
- abstract classes
- polymorphism
- frameworks
- Abstract factory
- Builder
- Prototype
- Singleton
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
- Command
- Iterator
- Mediator
- Observer
- State
- Strategy
- Visitor
UML and Object Oriented Analysis and Design for Computer Game Programming