MỞ ĐẦU 1.1 Lý do chọn đồ án Ngày nay, nhu cầu vui chơi giải trí ngày càng phát triển. Trong đó nhu cầu ăn uống cũng phát triển không kém, đặc biệt là giới trẻ. Trong điều kiện kinh tế thị trường cạnh tranh đòi hỏi các nhà quản lý phải có thông tin chính xác nắm bắt thông tin kịp thời về sở thích, mong muốn của người dùng….Từ đố đưa ra các kế hoạch và chiến lược kinh doanh hợp lý để giảm chi phí, nâng cao hiệu quả kinh doanh và có cơ hội phát triển hơn. Để làm được việc đó, việc ứng dụng tin học hóa vào vấn đề quản lý là rất cần thiết.
Trước đây chưa có phần mềm quản lý đều gặp nhiều khó khăn đòi hỏi phải có một lượng nhân lực lớn mà hiệu quả không cao. Giờ đây nhờ các ứng dụng quản lý, tin học hóa được thao tác thủ công mà làm việc ở các cửa hàng trở nên thuận lợi. Chính vì những lý do trên nên em quyết định chọn đề tài để nghiên cứu là: “Xây dựng ứng dụng bán trà sữa”.2 Mục tiêu của đồ án 1.1 Mục tiêu tổng quát Xây dựng ứng dụng bán trà sữa 1.2 Mục tiêu cụ thể Xây dựng ứng dụng bán sách gồm các chức năng: - Đăng nhập, đăng ký tài khoản - Xem các loại danh mục trà sữa của cửa hàng - Đặt mua hàng - Tìm kiếm và thanh toán - Xem được trạng thái của đơn hàng 6 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa 1.3 Giới hạn và phạm vi của đồ án 1.1 Đối tượng nghiên cứu - Đối tượng nghiên cứu: Mọi người, chú trọng đến các bạn học sinh, sinh viên 1.2 Phạm vi nghiên cứu - Phạm vi không gian: Cửa hàng trà sữa tại Hà Nội - Phạm vi thời gian: Từ tháng 2 đến tháng 5 1.4 Nội dung thực hiện - Bước 1: Tìm hiểu và nghiên cứu các ứng dụng bán trà sữa và các ứng dụng liên quan - Bước 2: Phỏng vấn các bạn học sinh, sinh viên tại Hà Nội - Bước 3: Thiết kế cơ sở dữ liệu, giao diện, các đối tượng của chương trình - Bước 4: Lập trình ứng dụng - Bước 5: Kiểm thử ứng dụng 1.5 Phương pháp tiếp cận - Khảo sát yêu cầu của người dùng - Tìm hiểu các thông tin liên quan, nhu cầu người dùng 7 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Quy trình phát triển phần mềm 2.1 Giới thiệu Quy trình phát triển phần mềm Quy trình phát triển phần mềm là một cấu trúc bao gồm tập hợp các thao tác và kết quả tương quan sử dụng trong việc phát triển để sản xuất ra một phần mềm Chúng ta có thể chia quy trình phát triển phền mềm ra làm 4 giai đoạn: - Đặc tả phần mềm: Là tiến trình để hiểu và xác định những dịch vụ nào cần có trong hệ thống, nhưng ràng buộc đối với việc phát triển và hức năng của hệ thống. Tiến trình này sẽ sinh ra các tài liệu yêu cầu.
- Thiết kế và thực thi phần mềm: liên quan đến việc chuyển những yêu cầu phần mềm thành hệ thống có thể thực thi được Thiết kề phần mềm: Là việc mô tả các trúc phần mềm, dữ liệu của hệ thống, giao diện giao tiếp giữa các thành phần, thuật toán được sử dụng. Thực thi phần mềm: Các lập trình viên dùng các ngôn ngữ lập trình để viết lệnh (source) thực thi để tạo ra hệ thống dựa trên các bản đặc tả thiết kế chi tiết, đồng thời tiến hành các thử nghiệm (test case) với các dữ liệu giả định. - Kiểm thử phần mềm: Là quá trình vận hành chương trình để tìm ra lỗi - Cài đặt và bảo trì phần mềm: Cài đặt và triển khai hệ thống vừa phát triển để người dùng có thể sử dụng được Bảo trì phần mềm: Điều chỉnh các lỗi chưa được phát triển trong các giai đoạn trước, nâng cao tính năng sử dụng và an toàn vận hành của phần mềm, đảm bảo cho việc phần mềm 8 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa được cập nhật khi môi trường và yêu cầu của người sử dụng thay đổi 2.2 Một số mô hình quy trình phát triển phần mềm - Một số mô hình quy trình phát triển phần mềm: Hình 2. 1: Mô hình thác nước - Mô hình thác nước: là một mô hình quy trình phát triển phần mềm, trong đó quy trình phát triển trông giống như một dòng chảy, với các pha được thực hiện theo một cách nghiêm ngặt và không có sự quay lui hay nhảy vượt pha là: Phân tích yêu cầu, thiết kế, triển khai thực hiện, kiểm thử, liên kết và bảo trì.
9 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa Hình 2. 2 : Mô hình chữ V - Mô hình V hiện nay là một trong những mô hình quy trình phát triển phần mềm được sử dụng rộng rãi nhất. Trong mô hình V việc thực hiện kiểm tra được diễn ra ngay từ giai đoạn lấy yêu cầu. V mô hình cũng được gọi là mô hình xác minh(verification) và mô hình xác nhận(validation).
1 0 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa Hình 2. 3 : Mô hình xoắn ốc - Mô hình xoắn ốc là quy trình phát triển định hướng rủi ro cho các dự án phần mềm. Kết hợp thế mạnh của các mô hình khác và giải quyết khó khăn của các mô hình trước còn tồn tại. Dựa trên các mô hình rủi ro riêng biệt của mỗi dự án, mô hình xoắn ốc đưa ra cách áp dụng các yếu tố của một hoặc nhiều mô hình xử lý, chẳng hạn như mô hình gia tốc, mô hình thác nước hoặc mô hình tạo mẫu tiến hóa.2 Phương pháp phân tích thiết kế hướng đối tượng 2.1 Giới thiệu ngôn ngữ UML Khái niệm về UML (Unified Modeling Language) UML là ngôn ngữ mô hình hóa hợp nhất dùng để biểu diễn hệ thống.
Nói một cách đơn giản là nó dùng để tạo ra các bản vẽ nhằm mô tả thiết kế hệ thống. Các bản vẽ này được sử dụng để các nhóm thiết kế trao đổi với nhau cũng như dùng để thi công hệ thống (phát triển), thuyết phục khách hàng, các nhà đầu tư v. (Giống 1 1 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa như trong xây dựng người ta dùng các bản vẽ thiết kế để hướng dẫn và kiểm soát thi công, bán hàng căn hộ v.) Tại sao lại là OOAD và UML? OOAD cần các bản vẽ để mô tả hệ thống được thiết kế, còn UML là ngôn ngữ mô tả các bản vẽ nên cần nội dung thể hiện. Do vậy, chúng ta phân tích và thiết kế theo hướng đối tượng và sử dụng UML để biểu diễn các thiết kế đó nên chúng thường đi đôi với nhau.
OOAD sử dụng UML UML sử dụng để vẽ cho nhiều lĩnh vực khác nhau như phần mềm, cơ khí, xây dựng v… trong phạm vi các bài viết này chúng ta chỉ nghiên cứu cách sử dụng UML cho phân tích và thiết kế hướng đối tượng trong ngành phần mềm. OOAD sử dụng UML bao gồm các thành phần sau: –View (góc nhìn) –Diagram (bản vẽ) –Notations (ký hiệu) –Mechanisms (qui tắc, cơ chế) Chúng ta sẽ tìm hiểu kỹ hơn các thành phần trên. View (góc nhìn) Mỗi góc nhìn như thầy bói xem voi, nó không thể hiện hết hệ thống nhưng thể hiện rõ hệ thống ở một khía cạnh. Chính vì thế trong xây dựng có bản vẽ kiến trúc (nhìn về mặt kiến trúc), bản vẽ kết cấu (nhìn về mặt kết cấu), bản vẽ thi công (nhìn về mặt thi công).
Trong phần mềm cũng như vậy, OOAD sử dụng UML có các góc nhìn sau: 1 2 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa Hình 2. 4: Các View trong OOAD sử dụng UML Trong đó, – Use Case View: cung cấp góc nhìn về các ca sử dụng giúp chúng ta hiểu hệ thống có gì? ai dùng và dùng nó như thế nào. – Logical View: cung cấp góc nhìn về cấu trúc hệ thống, xem nó được tổ chức như thế nào. – Process View: cung cấp góc nhìn động về hệ thống, xem các thành phần trong hệ thống tương tác với nhau như thế nào.
– Component View: Cũng là một góc nhìn về cấu trúc giúp chúng ta hiểu cách phân bổ và sử dụng lại các thành phần trong hệ thống ra sao. – Deployment View: cung cấp góc nhìn về triển khai hệ thống, nó cũng ảnh hưởng lớn đến kiến trúc hệ thống. Tập hợp các góc nhìn này sẽ giúp chúng ta hiểu rõ hệ thống cần phân tích, thiết kế. Trong hình 1 chúng ta thấy góc nhìn Use Case View nằm ở giữa và chi phối tất cả các góc nhìn còn lại.
Chính vì thế chúng ta thường thấy các tài liệu nói về 4 view + 1 chứ không phải 5 view nhằm nhấn mạnh vai trò của Use Case View. Diagram (Bản vẽ) Diagram các bạn có thể dịch là sơ đồ. Tuy nhiên ở đây chúng ta sử dụng từ bản vẽ cho dễ hình dung. Các bản vẽ được dùng để thể hiện các góc nhìn của hệ thống.
1 3 ĐỒ ÁN 4: Xây dựng ứng dụng bán trà sữa Hình 2. 5: Các bản vẽ trong OOAD sử dụng UML Trong đó, – Use Case Diagram: bản vẽ mô tả về ca sử dụng của hệ thống. Bản vẽ này sẽ giúp chúng ta biết được ai sử dụng hệ thống, hệ thống có những chức năng gì. Lập được bản vẽ này bạn sẽ hiểu được yêu cầu của hệ thống cần xây dựng.
– Class Diagram: bản vẽ này mô tả cấu trúc của hệ thống, tức hệ thống được cấu tạo từ những thành phần nào. Nó mô tả khía cạnh tĩnh của hệ thống. – Object Diagram: Tương tự như Class Diagram nhưng nó mô tả đến đối tượng thay vì lớp (Class). – Sequence Diagarm: là bản vẽ mô tả sự tương tác của các đối tượng trong hệ thống với nhau được mô tả tuần tự các bước tương tác theo thời gian.
– Collaboration Diagram: tương tự như sequence Diagram nhưng nhấn mạnh về sự tương tác thay vì tuần tự theo thời gian. – State Diagram: bản vẽ mô tả sự thay đổi trạng thái của một đối tượng. Nó được dùng để theo dõi các đối tượng có trạng thái thay đổi nhiều trong hệ thống. – Activity Diagram: bản vẽ mô tả các hoạt động của đối tượng, thường được sử dụng để hiểu về nghiệp vụ của hệ thống.
– Component Diagram: bản vẽ mô tả về việc bố trí các thành phần của hệ thống cũng như việc sử dụng các thành phần đó. – Deployment Diagram: bản vẽ mô tả việc triển khai của hệ thống như việc kết nối, cài đặt, hiệu năng của hệ thống v.v… Chúng ta sẽ bàn kỹ các bản vẽ này trong các bài tiếp theo.