ARENA Case Study Project for Software Engineering 510411 Supervisor: Dr. Qutaibah Mallohi Prepared by: Dalal Al-Shammari 2001/55313 Fall 2005 Outline: • Why using a case study? • ARENA!!!! • Steps of ARENA case study. Why using a study case? • Activities as software engineering project. • Use comprehensive. • More realistic trade offs and decisions. ARENA!!! • Multi-user, web-based system. • Organizing ,conducting tournaments. • Add new games. • Announce tournaments. steps of ARENA case study.. 1. Initial problem statement. Initial problem statement. • Initial meeting. • Problem statement . ,But… • No budget ….No date. 1. ARENA problem statement. 1. Problem: The internet and the World Wide Web enabled the creation of virtual communities. This community could be short or long. Many multiplayer computer games now include support for the virtual communities that are players for the given game. Players can receive news about game upgrades and new game maps. They can announce and organize matches and compare scores. The game company takes advantage of this infrastructure to generate revenue and advertise for its products. Each game company develops such community for each individual game. Each company uses a different infrastructure, different concepts and provide different levels of support. This may have disadvantages. 1. ARENA problem statement. 2. Objectives: - Provide an infrastructure for operating an arena ,including registration new games and players, organize tournaments and track of players scores. - Provide a frame work for league owners to customize the number and the sequence of matches . - Provide a frame work for game developers for developing new games or for adapting existing game into the arena frame work. - Provide an infrastructure for advertisers. 1. ARENA problem statement. 3. Functional requirements: ARENA supports five types of users: Operator: should be able to define new games, new tournament and manage users. - League owners: should be able to define a new league ,organize and announce new tournaments. - Players: should be able to register in an arena , play matches and apply for a league. - Spectators: should be able to monitor any match, check score and statistics of past matches. - Advertiser: should be able to upload new advertisement. 1. ARENA problem statement. 4. Nonfunctional requirements: - Low operating cost: the operator should be able to install any arena without needing additional software component. - Extensibility: the operator must be able to add new games without any modification of the existing system. - Scalability: the system must support the kick-off of many parallel tournaments. - Low bandwidth network: players should be able to play matches via a 56k analog modem and faster. 1. ARENA problem statement. 5. Target environment: - All users should be able to access the arena with a web browser, java script and java applet. Administration functions used by the operator should not be available through the web. - ARENA should run on any Unix operating system. steps of ARENA case study.. 1. Initial problem statement. 2. Identifying Actors and Scenarios. 2. Identifying Actors and Scenarios. • Develop use cases models, actors and scenarios. • 5 actors (operator, league owner, player, spectators, and advertiser) • Steps: 1. Example scenario (TicTacToeTournament) 2. Focus on narrow slice of the system.(why?) 3. Examples & questions. Now we can have an initial cost. 4. Shorter scenarios for each actor.(not detailed) steps of ARENA case study.. 1. Initial problem statement. 2. Identifying Actors and Scenarios. 3. Identifying Use cases. 3. Identifying Use cases. 1. Scenarios to use cases. • • Related functions Unrelated functions single use case several use cases 2. Entry conditions, exit conditions and flow of events 3. Actor actions.. Whereas.. steps of ARENA case study.. 1. Initial problem statement. 2. Identifying Actors and Scenarios. 3. Identifying Use cases. 4. Refining use cases and identifying relationships. 4. Refining use cases and identifying relationships. • • • • System boundaries. Detailed interaction with the system. Detailed use cases. Developers is able to define information exchanged among the actors. • here is an example of organizedTournament detailed use case. • Discovery of flow of events and exceptions system should handle. • Identifying detailed use case of each step. steps of ARENA case study.. 1. Initial problem statement. 2. Identifying Actors and Scenarios. 3. Identifying Use cases. 4. Refining use cases and identifying relationships. 5. Identifying Nonfunctional requirements. 5. Identifying Nonfunctional requirements. • • • • Usability (spectator) Reliability (crashes should be handled)(restart) Performance (players should be able to play) Supportability (operator must be able to add new games) • Implementation (all user should access arena) • Operation (advertiser should not spend money) • Legal (offers and replies needs authentication) conclusion • A high quality software should covers all the expectation of the client. • So these steps should be followed for better software. Thanks a lot for your time and attention orgnizeTicTacToeTouranment New actor