CƠ SỞ LÝ THUYẾT
Hệ điều hành Windows Phone 8
2.1.1 Giới thiệu về hệ điều hành Windows Phone 8
Windows Phone 8 là hệ điều hành phiên bản thứ hai của Microsoft dành cho điện thoại, kế tục nề tảng Windows Mobile Trước Windows Phone 8, bắt đầu vào ngày 11/10
2010, Microsoft đã cho ra mắt Windows Phone 7 Windows Phone 8 được giới thiệu vào ngày 20/6/2012 nhưng đến ngày 29/10/2012 Microsoft bắt đầu phát hành phiên bản này
Nó sở hữu giao diện Modern UI ( trước là Metro ) của Windows 8/8.1/RT
Windows Phone 8 đã chuyển từ nhân Windows CE, được sử dụng trong Windows Phone 7, sang nhân NT tương tự như Windows 8 Do đó, các thiết bị chạy Windows Phone 7 không thể nâng cấp lên Windows Phone 8, và các ứng dụng mới trên Windows Phone 8 không tương thích với các thiết bị Windows Phone 7.
Windows Phone 8 mặc dù có một số tính năng hữu ích như hub mạng xã hội và khả năng gửi thông báo lên Live Tile, nhưng vẫn còn thiếu nhiều tính năng quan trọng Đặc biệt, hệ điều hành này không có trung tâm thông báo thống nhất và không hỗ trợ VPN cho môi trường doanh nghiệp, điều này đã được cải thiện trong Windows Phone 8.1.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 21
2.1.2 Kiến trúc hệ điều hành Windows Phone 8
Hình 2.1 Kiến trúc hệ điều hành Windows Phone 8
Trước đây, Windows Phone 7 sử dụng nền tảng Windows CE, khiến cho việc chạy native code++ trở nên không khả thi Native code chủ yếu dựa vào bộ Framework DirectX do Microsoft phát triển để xây dựng game, nhưng chỉ hỗ trợ một số thư viện trong số rất nhiều thư viện có sẵn.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 22
Do Windows Phone 8 và Windows 8 sử dụng chân dung Windows NT nên tiện lợi cho lập trình viên có thể triển khai trên hai nền tản Windows Phone
8 và Windows 8 mà sử dụng chân dung mã nguồn
Windows Phone 8 chỉ hỗ trợ tối da cho DirectX 3D vì XNA khá yếu về 3D
Mặc dù XNA đã cung cấp một bộ thư viện hỗ trợ mạnh mẽ cho phát triển 2D, nhưng DirectX2D không còn cần thiết Windows Phone 8 lựa chọn thư viện hỗ trợ DirectX, với phiên bản tối ưu là từ DirectX 11 trở lên, trong khi phiên bản DirectX 9 trở về trước gần như không được hỗ trợ.
2.1.3.2 Khả năng tương tác giữa DirectX và C++, XAML và C#
DirectX mới và C++ cung cấp tính năng tích hợp dễ dàng với XAML và C#, cho phép các bề mặt vẽ của DirectX hoạt động như một phần tử trong trang XAML Điều này giúp chúng ta dễ dàng kết hợp chúng với các yếu tố XAML khác.
2.1.4 Giới thiệu về công cụ
2.1.4.1 Microsoft Visual Studio Express 2013 for Windows Phone 8
Bộ công cụ Microsoft Visual Studio Express for Windows Phone là một giải pháp miễn phí và tiện lợi cho việc phát triển ứng dụng trên Windows Phone 8 Nó bao gồm Windows Phone SDK 8.0, nền tảng Silverlight, và XNA Game Studio 4.0, hỗ trợ tốt cho cả Windows Phone 7 và 8 Màn hình giả lập giúp kiểm tra ứng dụng dễ dàng, nhưng cũng có thể gặp khó khăn với những ứng dụng yêu cầu môi trường thiết bị thật, vì việc mô phỏng trên giả lập không phải lúc nào cũng khả thi.
Cảm biến gia tốc, cảm ứng đa chạm và chương trình sử dụng camera là những ví dụ điển hình Ngoài ra, chúng ta có thể kiểm tra chương trình bằng cách chạy thử trên một điện thoại thật thông qua kết nối USB.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 23
Blend là công cụ hàng đầu trong việc thiết kế ứng dụng Silverlight hiệu quả và nhanh chóng, đồng thời cũng hỗ trợ thiết kế ứng dụng cho Windows Phone 8 Phiên bản mới nhất hiện nay là Blend 4.0, được Microsoft tích hợp trong bộ công cụ Visual Studio, phục vụ cho nhu cầu của các nhà thiết kế và chuyên gia đồ họa.
Tính năng của công cụ Blend:
- Chuyển đổi file Photoshop psd thành ứng dụng Silverlight
- Tạo hình mượt mà với Easing Animation
- Có thể mở trực tuyến trong IDE Visual Studio
- Tạo Template riêng cho một Control hoặc UIElement một cách dễ dàng
- Data Binding trong thời gian thiết kế
2.1.5 Nền tảng công nghệ Đối với các lập trình viên thì Windows Phone 8 (WP8) thật sự cuốn hút Windows Phone 8 hỗ trợ 2 platform( môi trường) lập trình thông dụng và tiên tiến là: Silverlight và XNA
Silverlight, a client-side initiative based on Windows Presentation Foundation (WPF), empowers web developers to create sophisticated user interfaces by integrating available controls, high-quality graphics, vector images, media, animations, and data binding, all compatible across platforms and browsers With the introduction of Windows Phone 8, Silverlight's capabilities have extended to mobile devices, enhancing user experiences.
XNA là một nền tảng phát triển game hỗ trợ cả thể loại game 2D và 3D, sử dụng kiến trúc game-loop truyền thống Nền tảng này chủ yếu được thiết kế để phục vụ cho việc phát triển game, mang lại sự linh hoạt và tiện ích cho các nhà phát triển.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 24 trên console Xbox360 nhưng XNA cho phép các developer có thể dùng nó để phát triển trên PC hoặc ZuneHD
Both Silverlight and XNA are suitable application platforms for Windows Phone 8, but a choice must be made between the two To develop on Windows Phone 8, it is essential to install the appropriate version of Visual Studio.
2012 trở lên, trong bộ Visual Studio nó có tích hợp sẵn bộ Windows Phone 7 và 8
The Visual Studio package includes XNA and the Windows Phone 8 emulator, allowing developers to create effects and animations for Silverlight applications using Microsoft Expression Blend.
Silverlight và XNA đều hỗ trợ phát triển ứng dụng cho Windows Phone 8, với khả năng chia sẻ một số thư viện giữa hai nền tảng này Điều này cho phép người dùng ứng dụng Silverlight tận dụng một số thư viện từ XNA và ngược lại, tạo ra sự linh hoạt trong quá trình phát triển.
Khi phát triển ứng dụng Windows Phone 8 bằng Silverlight, các ứng dụng này hoạt động như các chương trình và tiện ích Chúng được xây dựng từ sự kết hợp giữa markup, gọi là XAML (Extensible Application Markup Language), và code XAML chịu trách nhiệm khai báo layout cho các control giao diện người dùng và các bảng panel, trong khi các file code-behind thực hiện một số khởi tạo và logic, nhưng không xử lý các sự kiện từ các control.
Windows Communication Foundation (WCF)
Trước đây, phát triển ứng dụng phân tán gặp nhiều khó khăn do các vấn đề về cơ sở hạ tầng, ngôn ngữ lập trình và kiến trúc phần mềm Doanh nghiệp muốn tối ưu chi phí phát triển phần mềm, bao gồm chi phí nhân sự, vật chất và thời gian Nhiều nhà cung cấp đã giới thiệu thiết bị công nghệ không đồng bộ, gây ra sự khác biệt trong kết nối.
Hiện nay, chúng ta đã quen thuộc với các phương pháp lập trình như lập trình cấu trúc, lập trình hướng đối tượng và lập trình hướng dịch vụ Một giải pháp lý tưởng là khả năng gọi dịch vụ từ nhà cung cấp mà không cần quan tâm đến công nghệ phía sau Mặc dù đã có nhiều giải pháp cho ứng dụng phân tán như COM, DCOM, Net Remoting và Web Services, nhưng mỗi giải pháp đều tồn tại những ưu nhược điểm riêng, chưa đáp ứng đầy đủ yêu cầu của người dùng.
Kể từ khi phát hành Net Framework 3.0, Microsoft đã giới thiệu giải pháp công nghệ cho việc phát triển ứng dụng phân tán, nhằm thống nhất các công nghệ hiện có, đồng thời tích hợp và phát triển thêm các tính năng mới, dẫn đến sự ra đời của công nghệ Windows Communication Foundation (WCF).
2.2.1 Giới thiệu về Windows Communication Foundation
Windows Communication Foundation (WCF) is a technology introduced by Microsoft at the Microsoft Developers Conference in Los Angeles, California, in 2003 Commonly known as Indigo, WCF was featured in the Visual Studio 2005 development tool.
WCF là một bộ thư viện lớp được xây dựng trên nền tảng NET Framework 2.0 CLR và tích hợp trong NET Framework 3.0 cùng với WF, WPF và Windows Cardspace
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 35
WCF là công nghệ nền tảng trong NET 2.0, được phát hành vào tháng 11/2005 bởi Microsoft, nhằm thống nhất nhiều mô hình lập trình giao tiếp thành một mô hình duy nhất Nó cung cấp các hàm API cho liên lạc qua SOAP, tối ưu hóa sự tương tác giữa các nền tảng sử dụng Web Services Ngoài ra, NET 2.0 còn hỗ trợ API cho liên lạc nhị phân giữa các ứng dụng Windows qua NET Remoting, cũng như các API cho giao dịch phân tán và liên lạc dị bộ WCF kết hợp tất cả các API này để đáp ứng nhu cầu lập trình hướng dịch vụ.
WCF hỗ trợ giao tiếp giữa các tiến trình thông qua các bản tin SOAP, cho phép các ứng dụng WCF tương tác với các tiến trình khác Khi liên lạc với tiến trình không phải WCF, các bản tin SOAP được mã hóa dưới dạng XML Ngược lại, khi giao tiếp với tiến trình WCF khác, các bản tin SOAP có thể được tối ưu hóa bằng mã hóa nhị phân.
WCF không chỉ đơn thuần là một phương pháp xây dựng hệ thống phân tán, mà còn cung cấp nhiều tính năng vượt trội hơn so với các công nghệ trước đây.
2.2.2 Kiến trúc của Windows Communication Foundation
Windows Communication Foundation (WCF) là một framework trong NET 3.0, bao gồm nhiều thư viện và không gian tên (namespace) phục vụ cho việc lập trình ứng dụng WCF Kiến trúc WCF được tổ chức thành các tầng chính, mỗi tầng đảm nhiệm những chức năng khác nhau trong quá trình phát triển ứng dụng.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 36
Hình 2.13 Kiến trúc của Windows Communication Foundation(WCF)
2.2.3 Mô hình lập trình với Windows Communication Foundation
Khi làm việc với các dịch vụ web, bạn sẽ quen thuộc với mô hình này Việc tạo ra một dịch vụ web thực chất là tạo ra một dịch vụ (service) mà trong đó chứa một tài liệu XML mô tả đầy đủ mọi thông tin cần thiết về dịch vụ Tài liệu này được viết bằng ngôn ngữ Web Service Description Language (WSDL) và bao gồm ba phần chính.
Dịch vụ (Service): Chứa thông tin về vị trí của dịch vụ
Liên kết (Binding): Chứa thông tin về cách liên lạc với dịch vụ, như dịch vụ sử dụng giao thức, vvv
Kiểu cổng (PortType): Giải thích về dịch vụ sẽ làm gì
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 37
Mô hình dịch vụ trên WCF tương tự như mô hình dịch vụ trên Web, nhưng có sự khác biệt trong cách đặt tên Trong WCF, các thành phần được gọi là địa chỉ (address), binding và hợp đồng (contract) thay vì Service, Binding và PortType.
WCF (Windows Communication Foundation) là mô hình lập trình giúp nhà phát triển xây dựng các giải pháp dịch vụ với tính ổn định, bảo mật và khả năng đảm bảo giao dịch Nó đơn giản hóa quá trình phát triển ứng dụng kết nối, mang lại cho nhà phát triển những giá trị tiềm năng chưa được nhận ra, đồng thời cung cấp cách tiếp cận phát triển hệ thống phân tán một cách thống nhất, đơn giản và dễ quản lý.
2.2.3.1 Các phương pháp lập trình
Có ba phương pháp lập trình hay được sử dụng khi phát triển dịch vụ WCF:
Phương pháp khai báo (Declarative programming)
Hình 2.14 Minh họa về lập trình khai báo trong WCF
Phương pháp lập trình trực tiếp (Explicit programming) là một hình thức lập trình hướng đối tượng, cho phép lập trình viên tương tác trực tiếp với các lớp và giao diện (interface) được cung cấp bởi mô hình đối tượng của WCF.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 38
Phương pháp sử dụng tập tin cấu hình: nó cũng giống như phương pháp khai báo, nhưng ta làm việc thông qua tập tin cấu hình dịch vụ
Hình 2.15 Minh họa phương pháp lập trình sử dụng tập tin cấu hình trong WCF
Mỗi phương pháp trong WCF đều có ưu và nhược điểm riêng, tuy nhiên điều đặc biệt là có nhiều cách để giải quyết một vấn đề Người dùng không cần phải chỉ chọn một phương pháp duy nhất; thay vào đó, việc kết hợp các phương pháp sẽ mang lại sự linh hoạt và mềm dẻo cho dịch vụ.
Nhiều người sẽ hỏi: Nguyên lý ABC là gì? Thực chất, ABC là viết tắt của ba khái niệm quang trọng trong WCF Đó là Address, Binding, Contract
Address trả lời cho câu hỏi Where? - Xác định nơi mà lời gọi dịch vụ sẽ gửi tới
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 39
Binding trả lời cho câu hỏi How? - Xác định cách thức mà lời gọi sẽ được gửi đi
Contract trả lời cho câu hỏi What? - Xác định nội dung mà lời gọi sẽ gửi đi
Bộ ABC thường được xem như một cổng giao tiếp (endpoint) với thế giới bên ngoài của dịch vụ trong WCF Để mô tả endpoint, chúng ta sử dụng một tập tin XML đặc biệt gọi là WSDL (Web Services Description Language) WSDL cung cấp thông tin về khả năng của dịch vụ, cách thức truy cập dịch vụ từ bên ngoài, cũng như vị trí để tìm kiếm dịch vụ đó.
Địa chỉ WCF là thông tin quan trọng giúp xác định giao thức của máy chủ ứng dụng và đường dẫn tới dịch vụ, từ đó cho phép chúng ta gửi lời gọi đến dịch vụ một cách chính xác.
Địa chỉ điểm cuối (endoint address): http://localhost:8080/Caro
Địa chỉ cơ sở (base address): http://localhost:8080/Caro/DSPhong
Địa chỉ siêu thông tin (mex address): http://localhost:8080/Caro/mex
Các định dạng địa chỉ
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Trang 40
Bảng 2.1 Các định dạng địa chỉ trong WCF Địa chỉ Đặc điểm Ví dụ
HTTP Là định dạng địa chỉ hay dùng nhất http://localhost/Service/HelloWorld
TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO
Danh sách các nghiệp vụ
Game Caro là một trò chơi đối kháng phổ biến trên giấy, thường được chơi bởi học sinh, sinh viên và nhân viên văn phòng để giải trí sau những giờ học và làm việc căng thẳng Tuy nhiên, trò chơi này đang dần bị lãng quên do nhu cầu giải trí ngày càng cao trong xã hội hiện đại Việc tin học hóa trò chơi dân gian này là cần thiết để thu hút người chơi hơn Trò chơi Caro diễn ra trên một bàn cờ giữa hai người, giúp tổ chức ván cờ dễ dàng và tạo không khí hấp dẫn, sôi động Với luật chơi đơn giản, Caro phù hợp với mọi lứa tuổi và hứa hẹn sẽ trở thành một trò chơi phổ biến trên các thiết bị di động hiện nay.
3.1.2 Hiện trạng và nhược điểm
Trên thị trường hiện nay, cũng đã có một số game caro online, nhưng chủ yếu là chơi trên web
Với sự phát triển mạnh mẽ của công nghệ di động, nhiều game caro đã được phát triển cho thiết bị mobile, chủ yếu là offline, khiến người chơi gặp khó khăn trong việc thi đấu đối kháng Mặc dù có một số game hỗ trợ chơi online, nhưng tốc độ đáp ứng chậm vẫn là điểm yếu lớn của các game online trên mobile hiện nay.
Trò chơi này hướng đến việc khắc phục những nhược điểm hiện có bằng cách phát triển một game caro online trên điện thoại di động, cho phép người dùng chơi mọi lúc, miễn là có kết nối internet.
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 44
3.1.3 Các chức năng chính của trò chơi
Chơi online cho phép người dùng tham gia vào một cộng đồng ảo để giao lưu và đánh cờ caro Người chơi có thể tạo một bàn riêng để chờ bạn chơi hoặc lựa chọn bàn đã được hẹn trước để bắt đầu ván cờ Khi đã sẵn sàng, người chơi có thể bắt đầu trận đấu với đối thủ cùng bàn.
- Hai người chơi: Hai người có thể cùng đánh trên một bàn cờ và trên cùng một điện thoại
- Đánh với máy: Người chơi có thể đánh với máy để nâng cao trình độ
- Hướng dẫn chơi: Hướng dẫn người dùng về luật chơi và các quy định của game
- Thông tin: Thông tin tác giả và phiên bản phần mềm
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 45
Vẽ sơ đồ Use Case tổng quát
3.2.1 Sơ đồ Use Case Caro
Sơ đồ chức năng của Client:
Hình 3.1 Sơ đồ Use Case tổng quát
Danh sách các Use Case:
Bảng 3.1 Danh sách các Use Case của Client
STT TÊN USE CASE Ý NGHĨA
1 Đánh hai người Hai người chơi đánh với nhau
2 Đánh với máy Người chơi đánh với máy
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 46
4 Xem hướng dẫn Xem hướng dẫn luật chơi
5 Xem thông tin Xem thông tin phần mềm, tác giả
3.2.2 Sơ đồ Use Case Chơi Online
Sơ đồ chức năng của Chơi Online:
Hình 3.2 Sơ đồ Use Case Chơi Online
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 47
Danh sách các Use Case:
Bảng 3.2 Danh sách các Use Case của Chơi Online
STT TÊN USE CASE Ý NGHĨA
1 Tạo bàn Tạo bàn chơi mới
2 Chọn bàn Vô bàn chơi
3 Trở về Trở về giao diện chính.
Đặc tả Use Case
Khi hai người chơi muốn tham gia trò chơi caro mà không có giấy bút, chỉ cần sử dụng điện thoại, chức năng này sẽ hỗ trợ họ đánh cờ trực tiếp với nhau.
- Chọn chức năng đánh hai người và thực hiện đánh với nhau
- Trong khi không có mạng, không có người nào đánh cùng, người chơi dùng chức năng này
- Giúp người chơi luyện tập để nâng cao trình độ
- Người chơi có thể thực hiện đánh cờ giao lưu trình độ với nhiều người trong một thế giới ảo hóa
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 48
- Hướng dẫn cho những người lần dầu chơi biết luật chơi của game
- Cách thức chơi game và những quy định của game
- Mô tả thông tin về tác giả
- Mô tả thông tin về phiên bản phần mềm
- Người chơi thực hiện chọn chức năng tạo bàn chơi
- Nhập tên bàn muốn tạo
- Nếu tên bàn đã tồn tại thì thực hiện tạo lại
- Người chơi chọn bàn mình muốn đánh
- Nếu bàn đã đầy, hiện thông báo đầy và người chơi thục hiện chọn bàn khác
- Người chơi thực hiện chọn trở về để quay lại giao diện chức năng chính.
Sequence diagram
Hı̀nh 3.3: Sơ đồ Class
3.4.1 Sơ đồ tuần tự cho chức năng chọn bàn
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 50
Hình 3.4 Sơ đồ chức năng chọn bàn
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 51
3.4.2 Sơ đồ tuần tự cho chức năng tạo bàn
Hình 3.5 Sơ đồ chức năng tạo bàn
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 52
3.6 Mô hình bắt tay giữa hai Client
Hình 3.6 Mô hình bắt tay giữa hai client trong chơi online
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 53
Hình 3.7 Giao diện chính của game
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 54
3.5.2 Giao diện tạo phòng và chọn phòng
Hình 3.8 Giao diện tạo và chọn phòng
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 55
Hình 3.9 Giao diện đánh cờ
Thiết kế giao diện
Hình 3.7 Giao diện chính của game
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 54
3.5.2 Giao diện tạo phòng và chọn phòng
Hình 3.8 Giao diện tạo và chọn phòng
CHƯƠNG 3: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME CARO Trang 55
Hình 3.9 Giao diện đánh cờ
TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO
Danh sách các nghiê ̣p vu ̣
Trò chơi Uno đang trở nên phổ biến ở nước ngoài, đặc biệt trong giới trẻ, nhưng tại Việt Nam, rất ít người biết đến Uno chủ yếu được biết đến trong các công ty nước ngoài và có thể cho phép từ vài người đến mười người cùng tham gia chơi trong một không gian chung Trò chơi này không chỉ tạo điều kiện thuận lợi cho việc tổ chức mà còn mang lại không khí sôi động, hấp dẫn cho người chơi Ngoài luật chơi truyền thống, Uno còn hỗ trợ nhiều luật chơi khác nhau, thu hút người chơi ở mọi lứa tuổi Với những yếu tố này, trò chơi Uno hứa hẹn sẽ dần trở nên phổ biến hơn tại Việt Nam.
4.1.2 Hiê ̣n tra ̣ng và nhươ ̣c điểm
Trên thi ̣ trường hiê ̣n nay, chı̉ có mô ̣t vài sản phẩm hỗ trơ ̣ chơi bài uno và chưa phổ biến trong đa ̣i đa số người dân Viê ̣t Nam
Hiện tại, trò chơi Uno chỉ được tổ chức dưới hình thức đánh bài trực tiếp, điều này dẫn đến việc giới hạn số lượng người tham gia Hơn nữa, việc tìm kiếm một không gian phù hợp để tổ chức các buổi đánh bài Uno trực tiếp cũng gặp nhiều khó khăn.
Với sự phát triển mạnh mẽ của công nghệ di động, trò chơi sẽ khắc phục những nhược điểm trước đây Việc xây dựng một game Uno trên thiết bị di động cho phép người dùng có thể đánh bài bất kỳ lúc nào mà không cần lo lắng về không gian và địa điểm xung quanh.
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 57
4.1.3 Chức năng chı́nh của trò chơi
Người dùng có thể tham gia vào một cộng đồng ảo để chơi bài Uno cùng nhau Họ có khả năng tạo phòng riêng để đánh bài, cũng như chọn bàn mà mình muốn tham gia Khi đã sẵn sàng, người chơi bắt đầu đánh bài với những người cùng bàn Bên cạnh đó, người chơi còn có thể cài đặt âm thanh nhạc nền theo sở thích của mình trong quá trình chơi.
- Hướng dẫn: Hướng dẫn người chơi về luâ ̣t chơi và các quy đi ̣nh của game
- Thông tin: Thông tin về tác giả và phiên bản phần mềm
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 58
Vẽ sơ đồ Use Case tổng quát
4.2.1 Sơ đồ Use Case Uno
Hı̀nh 4.1: Sơ đồ Use Case tổng quát
Danh sách các Use Case:
Bảng 4.1 Danh sách các Use Case Game Uno
STT TÊN USE CASE Ý NGHĨA
1 Đánh bài Thực hiện đánh bài online
2 Xem hướng dẫn Xem hướng dẫn luâ ̣t chơi
3 Xem thông tin Xem thông tin về tác giả và phiên bản
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 59
4.2.2 Sơ đồ Use Case chơi game
Hı̀nh 4.2: Sơ đồ Use Case chơi game
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 60
Danh sách các Use Case:
Bảng 4.2 Danh sách các Use Case của Chơi game
STT TÊN USE CASE Ý NGHĨA
1 Tạo phòng Tạo phòng chơi mới
2 Chọn phòng Vô phòng chơi
3 Sửa cài đă ̣t Tùy chỉnh nhạc nền
4 Trở về Trở về giao diện trước.
Đă ̣c tả Use Case
Khi muốn chơi bài Uno nhưng không có đủ điều kiện như địa điểm hay số lượng người chơi, bạn có thể sử dụng chức năng trực tuyến để tham gia đánh bài.
Chức năng này hỗ trợ người chơi hiểu rõ hơn về luật chơi và các quy tắc trong game Uno, đặc biệt là khi họ chưa nắm vững thông tin.
- Mổ tả thông tin về tác giả
- Mô tả thông tin về phiên bản phần mềm
- Người chơi thực hiê ̣n cho ̣n chức năng ta ̣o phòng chơi
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 61
- Nhâ ̣p tên phòng muốn ta ̣o
- Nếu phòng đã tồn ta ̣i thı̀ thực hiê ̣n ta ̣o la ̣i
- Người chơi cho ̣n phòng mı̀nh muốn đánh
- Nếu phòng đã đầy, hiê ̣n thông báo đầy và người chơi thực hiê ̣n cho ̣n phòng khác
- Người chơi cho ̣n chức năng này để thiết lâ ̣p âm thanh lúc chơi bài
- Người chơi thực hiê ̣n cho ̣n trở về để quay la ̣i giao diê ̣n chức năng chı́nh
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 62
Hı̀nh 4.3: Sơ đồ Class
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 63
4.5.1 Sơ đồ tuần tư ̣ cho chức năng Ta ̣o phòng
Hı̀nh 4.4: Sơ đồ tuần tự chức năng Tạo phòng
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 64
4.5.2 Sơ đồ tuần tư ̣ cho chức năng Cho ̣n phòng
Hı̀nh 4.5: Sơ đồ tuần tự chức năng Tạo phòng
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 65
4.5.3 Sơ đồ tuần tư ̣ cho chức năng Cài đă ̣t
Hı̀nh 4.6: Sơ đồ tuần tự chức năng Tạo phòng
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 66
Hı̀nh 4.7: Giao diê ̣n chı́nh
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 67
4.6.2 Giao diê ̣n ta ̣o phòng
Hı̀nh 4.8: Giao diê ̣n tạo phòng
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 68
4.6.3 Giao diê ̣n hiển thi ̣ phòng chơi và cho ̣n phòng
Hı̀nh 4.9: Giao diê ̣n phòng chơi và chọn phòng
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 69
Hı̀nh 4.10: Giao diê ̣n đánh bài Uno
CHƯƠNG 4: TIẾP NHẬN VÀ PHÂN TÍCH YÊU CẦU GAME UNO Trang 70
Hı̀nh 4.11: Giao diê ̣n cài đặt.