1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO THỰC TẬP-Game xếp hình trên điện thoại android

17 552 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 753,83 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Yêu cầu cho game xếp hình Khám phá các yêu cầu bằng việc phỏng vấn.lập kế hoạch cho buổi phỏng vấn Interviews: Kế hoạch phỏng vấn: Game: Xếp Hình Project reference : XH/01 Người tham

Trang 1

Nhóm 5:

Lê Minh Quang

Nguyễn Huy Thành

Nguyễn Đức Tuấn

Game xếp hình trên điện thoại android

1 Yêu cầu cho game xếp hình

Khám phá các yêu cầu bằng việc phỏng vấn.lập kế hoạch cho buổi phỏng vấn

Interviews:

Kế hoạch phỏng vấn:

Game: Xếp Hình Project reference : XH/01

Người tham dự: Huy Thành (người chơi game)

Quang(developer) Ngày

5/9/2011

Thời gian bắt đầu 15h.00

Thời gian hỏi

30 p

Địa điểm cafe

Mục đích của buổi phỏng vấn:

Thảo luận về trò chơi xếp hình và những vấn đề gặp phải khi chơi

Agenda:

- Trò chơi hiện tại

- Vấn đề gây khó khan, bất tiện khi chơi

- Ý kiến của người chơi

Tài Liệu:

Bản đặc tả: mục đích phân loại, sắp xếp và ghi lại các thông tin có được từ việc phỏng vấn

Bản đặc tả:

1 Các vấn đề của phiên bản hiện tại

- Không lưu được số điểm và thời gian chơi của người chơi

- Không thể đưa bức ảnh yêu thích vào để xếp hình

- Thiếu sự sinh động về hình ảnh và âm thanh

- Không thể trở lại bước đi trước khi chọn sai

- Không lưu được màn chơi

2 Mục tiêu của phiên bản mới

Trang 2

- Giao diện đẹp hơn

- Có thể lưu được thông tin người chơi và màn chơi

- Có chức năng back step

Sau khi phỏng vấn có thể tóm tắt 1 bản thông tin yêu cầu từ người chơi Mục đích là để xác nhận những yêu cầu của người chơi, đảm bảo rằng người phát triển đã nắm được những yêu cầu mà người chơi cung cấp

Interviews summary:

Tóm tắt phỏng vấn:

Game: Xếp Hình Project reference:XH/01

Người tham dự: Huy Thành (người chơi)

Quang (developer) Mục đích:

Thảo luận về trò chơi xếp hình và những vấn đề gặp phải khi chơi

Số

1

2

3

4

5

Mục thông tin Không lưu được thông tin người chơi

Không thể trở lại các bước đã đi

Không thể xếp hình với bức hình tùy ý

Khó khan trong việc lưu màn chơi để

thời gian sau chơi tiếp

Giao diện dễ sử dụng và đẹp mắt

Hành động yêu cầu

Có thể lưu thông tin người chơi như tên, tuổi,số điểm, level dễ dàng

Có thể quay về bước trước nếu cảm thấy mình đi sai

Có thêm chức năng đưa hình vào

Thêm chức năng lưu màn chơi cho người dung

Thiết kế giao diện đẹp và dễ sử dụng

Danh sách các yêu cầu cho trò chơi xếp hình

Đây là các yêu cầu được lấy từ cuộc phỏng vấn với người chơi Nó chỉ là danh sách cơ sở cho việc phát triển trò chơi theo cách hướng đối tượng

Game xếp hình phải:

- R1: Dễ dàng lưu thông tin người chơi như tên, tuổi, thời gian và level

- R2: Dễ dàng thay đổi hình ảnh xếp hình

Trang 3

- R3: Lưu màn chơi khi người chơi bận

- R4: Có thể back lại các bước đã đi

- R5: Cần có âm thanh nền hoặc theo phím bấm

- R6: Cần đếm thời gian mà người chơi mất

Chương 3: Use case

1 Mục đích

Mô hình use case sẽ giúp trực quan hóa những ý tưởng và các hoạt động trong hệ thống cần xấy dựng Do đó sẽ dễ dàng chia sẻ ý tưởng và giao tiếp với người sử dụng, và có thể kiểm chứng tốt hơn

Các bước xây dựng use case

Xác định actor

Actor hay còn gọi là tác nhân Để xác định được tác nhân cho hệ thống thì cần phải trả lời được những câu hỏi sau:

- Ai là người kích hoạt hệ thống?

- Ai là người duy trì hệ thống?

- Ai là người được hệ thống giúp đỡ?

- Ai là người lấy thông tin từ hệ thống?

- Ai là người cung cấp thông tin cho hệ thống?

- Hệ thống nào sử dụng hệ thống này không?

Với những câu hỏi ở trên ta xác minh được tác nhân duy nhất sử dụng game xếp hình và duy trì game hay trao đổi thông tin với game chính là người chơi (player)

Xác định use case

Nếu actor là một diễn viên thì use case chính là những cảnh mà diễn viên đó phải đóng

Use case chính là 1 chức năng của hệ thống đem lại một ý nghĩa nào đó cho người dùng

Diagram:

Trang 4

Các use case gồm:

Use case cấu hình

Use case: cấu hình

Actor: player

Goal: thiết lập các thông số

Overview: người chơi muốn thiết lập các thông số cho trò chơi tìm đến mục cấu hình và lựa

chọn điền các thông số vào, sau đó hệ thống sẽ đáp ứng các âm thanh, màu sắc, hình ảnh theo như người chơi đã chọn

Cross-reference :

R2, R5

Player

Game Xếp Hình trên Android

Cấu hình

Chơi

Lưu trò chơi

Chọn level

Đếm giờ

Tính điểm

<<include>>

<<include>>

Back step

<<extend

>>

Map

<<inc lude>

>

Trang 5

Typical course of event:

Actor

1 Điều chỉnh các thông số kỹ thuật về

mức âm thanh, ánh sang màu sắc,

giới hạn thời gian, level

System response

2 Lấy tưng thông số và áp dụng vào với trình chơi nhạc, màu sắc của máy Load màn chơi với thời gian và level

mà người chơi mong muốn

Use case Chơi xếp hình

Use case:Chơi xếp hình

Actor : player

Goal: xếp hình

Overview: đây chình là phần chính của trò chơi, người chơi sẽ thực hiện việc ghép các tấm hình

nhỏ với nhau để tạo ra hình đúng

Cross-reference :

R3, R4

Typical course of event:

Actor

1 Di chuyển ô ghép theo ý muốn

System response

2 Kiểm tra xem từ ô ban đầu tới ô đích

có đương đi hay không?

3 Nếu có thì di chuyển ô ghép , nếu không thì không cho phép di chuyển ô ghép

4 Nếu ô ghép được di chuyển thì kiểm tra xem bức hình đã được ghép hoàn chỉnh chưa?

5 Nếu hoàn chỉnh rồi thì kết thúc trò chơi và lưu lại thời gian và chuyển lên level cao hơn Nếu bức hình chưa hoàn chỉnh thì ko làm gì cả để người chơi tiếp tục

Use case Map

Trang 6

Use case: Map

Actor: player

Goal: load màn chơi

Overview: use case này sẽ hiển thị bàn chơi bao gồm hình ảnh, âm thanh, màu sắc, thời gian và

các menu cho người chơi

Cross-reference :

Typical course of event:

Actor

1 Người chơi bắt đầu start game

System response

2 Phân chia bức hình và sắp xếp 1 cách ngẫu nhiên các ô ghép

3 Load màn chơi

Use case Back step

Use case: Back step

Actor: player

Goal: trở lại bước đi trước

Overview: use case này được gọi khi mà người chơi muốn thực hiện lại cá bước đi trước đó Cross-reference :

R4

Typical course of event:

Actor

1 Người chơi yêu cầu được đi lại

System response

2 Quay trở lại trạng thái trước đó cho người chơi

Use case đếm giờ:

Use case : đếm giờ

Actor: player

Goal: đo thời gian chơi

Overview: use case này sẽ tự động được gọi khi người chơi bắt đầu xếp hình và se tính thời

gian mà người chơi tiêu tốn

Cross-reference :

R1,R6

Typical course of event:

Actor

1 Bắt đầu trò chơi

System response

2 Thời gian sẽ được đếm theo đơn vị giây

3 Sẽ thông báo nếu như thời gian giới

Trang 7

hạn đã hết

Use case Lưu trò chơi

Use case : Lưu trò chơi

Actor: player

Goal: lưu lại trạng thái

Overview: use case này sẽ thực hiện công việc lưu lại thông tin người chơi hoặc màn chơi khi

người chơi bận

Cross-reference :

R1

Typical course of event:

Actor

1 Người chơi yêu cầu lưu lại màn chơi

để tiếp tục chơi vào thời gian khác,

hoặc các thông tin về lần chơi này

System response

2 Sẽ lưu lại màn chơi hiện thời, và các thông tin như số điểm, thời gian và thông tin người chơi

Usecase chọn level

Use case : Chọn level

Actor: player

Goal: chọn mức chơi cho người chơi

Overview: use case này sẽ thực hiện công việc chọn mức độ của trò chơi cho người chơi Cross-reference :

R1

Typical course of event:

Actor

1 Người chơi yêu cầu chọn mức độ khó

của trò chơi

2 Người chơi sẽ chọn level theo ý muốn

System response

3 Hiển thị các level mà trò chơi cho phép chơi

4 Load màn chơi với độ khó theo level

mà người chơi chọn

Trang 8

Chương 4,5:Class và object

UML class diagram.ở mức phân tích này thì chưa cần phải đưa các phương thức vào

Xác định các đối tượng

Ta gạch chân các danh từ có mặt trong các bản đặc tả sẽ được : player, tên, tuổi, thời gian hoàn thành, level đã chơi, cấu hình, bàn chơi, ô ghép, level, thời gian, mức độ âm thanh, âm thanh, hình ảnh, đường dẫn, địa chỉ ô ghép, trạng thái ô ghép, trạng thái bức hình

- Tiếp theo ta xem xét những danh từ nào để trở thành đối tượng dựa vào cách xác định đối tượng ở chương 5 ta xét từng danh từ và thấy rằng các danh từ sau có thể trở thành đối tượng vì chúng có những hành vi xác định : player, config, piece, map

class diagram:

Player

Name: char

Age: integer

time: integer

level: integer

Operations

Config SoundLevel : integer TimeLimit: integer soundPath: string imagePath: string level: integer Operations

piece

pos: point

state: bolean

Operations

Map pieces: piece[][]

state: bolean config: config

Operations

1

*

1 1

Trang 9

Viết từ điển:

Player = name + Age +time + level;

name = title + [initial | firstName] + surname

Config = soundlevel + timeLimit + soundPath + imagePath + level; Piece = pos + state;

Map = pieces + state + config;

Pieces = {piece};

Trang 10

Chương 6 : CRC card và lược đồ tương tác

Kỹ thuật dùng CRC

- Xét use case cấu hình

Config responsibility collbaration

Điều chỉnh thông số về

mức độ âm thanh, hình

ảnh, thời gian

Chúng ta cần phải hiển thị các thông tin cấu hình (âm thanh, thời gian, level ) lên các ô text cho

người chơi thấy, nên ta cần có hàm getConfig()

Tương tự như vậy khi người chơi điền các thông tin vào cấu hình thì ta cần nhận các thông tin

đó từ ô text nên ta cần có hàm setConfig() với tham số là

- Xét use case chơi

Map responsibility collbaration

Load bàn chơi

Kiểm tra thời gian

Kiểm tra trạng thái bức

hình

Config

Piece

Piece responsibility collbaration

Lấy địa chỉ ô ghép

Đưa địa chỉ ô ghép

Kiểm tra đường đi

Kiểm tra trạng thái ô

map

Trang 11

ghép

Dựa vào bản mô tả chi tiết của use case chơi:

Use case:Chơi xếp hình

Actor : player

Goal: xếp hình

Overview: đây chình là phần chính của trò chơi, người chơi sẽ thực hiện việc ghép các tấm hình

nhỏ với nhau để tạo ra hình đúng

Cross-reference :

R3, R4

Typical course of event:

Actor

1 Di chuyển ô ghép theo ý muốn

System response

2 Kiểm tra xem từ ô ban đầu tới ô đích

có đương đi hay không?

3 Nếu có thì di chuyển ô ghép , nếu không thì không cho phép di chuyển ô ghép

4 Nếu ô ghép được di chuyển thì kiểm tra xem bức hình đã được ghép hoàn chỉnh chưa?

5 Nếu hoàn chỉnh rồi thì kết thúc trò chơi và lưu lại thời gian và chuyển lên level cao hơn Nếu bức hình chưa hoàn chỉnh thì ko làm gì cả để người chơi tiếp tục

Khi người chơi dịch chuyển ô ghép thì đối tượng piece sẽ nhận đại chỉ của ô ghép đó và địa chỉ

ô đích mà người chơi muốn chuyển đến, nên ta có hàm setPos(point) với tham số là 1 point Tiếp theo là đối tượng piece này sẽ kiểm tra đường đi nên ta có hàm CheckPath() với 2 tham số kiểu point Nếu có đường đi thì ta sẽ cho phép di chuyển với hàm movePiece() với tham số là 1

point địa chỉ ô đích Sau đó t tiếp tục kiểm tra trạng thái để biết ô ghép đó đã vào đúng vị trí

chưa với hàm checkState().Với tham số là địa chỉ point Sau cùng hệ thống phải kiểm tra bức

hình đã được ghép hoàn chỉnh chưa sau mỗi lần ô ghép được di chuyển vì thế ta có hàm

checkStateImage() để xem bức hình đã finish chưa Vậy ta có:

Trang 12

Piece: setPos(point)

CheckPath(), movePiece(), checkState()

Map: checkStateImage()

- Xét use case map:

Use case: Map

Actor: player

Goal: load màn chơi

Overview: use case này sẽ hiển thị bàn chơi bao gồm hình ảnh, âm thanh, màu sắc, thời gian và

các menu cho người chơi

Cross-reference :

Typical course of event:

Actor

1 Người chơi bắt đầu start game

System response

2 Phân chia bức hình và sắp xếp 1 cách ngẫu nhiên các ô ghép

3 Load màn chơi

Khi người chơi bắt đầu chơi thì đối tượng map phải phân chia bức ảnh nên ta phải có hàm

divImage() với tham số là số hàng và số cột.sau đó thì mới laod màn chơi lên cho người chơi

bằng hàm LoadMap() với tham số là 1 config

Map:divImage(), LoadMap(config )

- Xét use case backstep

Use case: Back step

Actor: player

Goal: trở lại bước đi trước

Overview: use case này được gọi khi mà người chơi muốn thực hiện lại cá bước đi trước đó Cross-reference :

R4

Typical course of event:

Actor

1 Người chơi yêu cầu được đi lại

System response

2 Quay trở lại trạng thái trước đó cho người chơi

Khi người chơi yêu cầu đi lại 1 bước thì hệ thống phải quay trở lại trạng thái trước đó, để đáp ứng được như thế thì ta phải có cơ chế lưu trữ sự thay đổi trên đối tượng pieceTemp thuôc

Trang 13

class piece, sẽ là bản sao của ô ghép lúc trước khi di chuyển nên ta có hàm savePiece() tham số

là địa chỉ và trạng thái của piece

Piece: savePiece(point, state)

- Xét use case đếm giờ

Use case : đếm giờ

Actor: player

Goal: đo thời gian chơi

Overview: use case này sẽ tự động được gọi khi người chơi bắt đầu xếp hình và se tính thời

gian mà người chơi tiêu tốn

Cross-reference :

R1,R6

Typical course of event:

Actor

1 Bắt đầu trò chơi

System response

2 Thời gian sẽ được đếm theo đơn vị giây

3 Sẽ thông báo nếu như thời gian giới hạn đã hết

Luôn có 1 tiến trình chạy ngầm để đếm thời gian và thông báo nếu như hết hạn nên ta có hàm

checkTime() cho đối tượng map

Map: checkTime()

- Xét use case lưu trò chơi

Use case : Lưu trò chơi

Actor: player

Goal: lưu lại trạng thái

Overview: use case này sẽ thực hiện công việc lưu lại thông tin người chơi hoặc màn chơi khi

người chơi bận

Cross-reference :

R1

Typical course of event:

Actor

1 Người chơi yêu cầu lưu lại màn chơi

để tiếp tục chơi vào thời gian khác,

hoặc các thông tin về lần chơi này

System response

2 Sẽ lưu lại màn chơi hiện thời, và các thông tin như số điểm, thời gian và thông tin người chơi

Trang 14

Để có thể lưu trữ map thì ta cần có hàm saveMap() với tham số là 1 map Còn để lưu thông tin người chơi thì cần có hàm savePlayer() tham số là 1 player

Map: saveMap(map)

Player: savePlayer(player)

- Xét use case chọn level

Use case : Chọn level

Actor: player

Goal: chọn mức chơi cho người chơi

Overview: use case này sẽ thực hiện công việc chọn mức độ của trò chơi cho người chơi Cross-reference :

R1

Typical course of event:

Actor

1 Người chơi yêu cầu chọn mức độ khó

của trò chơi

2 Người chơi sẽ chọn level theo ý muốn

System response

3 Hiển thị các level mà trò chơi cho phép chơi

4 Load màn chơi với độ khó theo level

mà người chơi chọn

Để có thể chọn riêng level thì đối tượng config cần phải có phương thức setlevel() tham số là

giá trị level muốn chọn

Config :setlevel(level)

Vậy ta có được diagram sau:

Trang 15

Lược đồ tương tác

Vẽ với use case chơi xếp hình

1 Lược đồ tuần tự

Lược đồ tuần tự nhấn mạnh đến thứ tự và thời gian các tiến trình được thực hiện

Player Name: char Age: integer time: integer level: integer savePlayer(player)

Config SoundLevel : integer TimeLimit: integer soundPath: string imagePath: string level: integer getConfig() setConfig(config) setLevel(level)

piece indicate: point

state: bolean

setPos(point)

checkPath(point1,point2)

movePiece(point)

checkState(point)

savePiece(point,state)

Map pieces: piece[][]

state: bolean config: config

checkImageState() divImage(h,c) Load(config) checkTime() saveMap(map)

1

*

1 1

Trang 16

2 Lược đồ cộng tác

Lược đồ cộng tác nhấn mạnh đến việc biểu diễn mô hình hóa các mối quan hệ giữa các đối tượng với nhau

Player

1 kiểm tra đường đi:

=checkPath

(point1,point2)

1.1 checkState (point)

1.2 movePiece

return return

Trang 17

1.

ch

P at

1.1.chec

kState()

1.2.mov ePiece()

1.3 checkIm ageStat e()

Ngày đăng: 17/05/2015, 11:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w