Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.02 MB, 33 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
TRƯỜNG CAO ĐẲNG FPT POLYTECHNIC ĐÀ NẴNG
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><small>2.5Kế hoạch thực hiện ( file excel )32.6Dự kiên kết quả đạt được3CHƯƠNG 1.CƠ SỞ LÝ THUYẾT4</small>
<small>CHƯƠNG 2. PHÂN TÍCH THIẾT KẾ HỆ THỐNG72.2.3Biểu đồ triển khai132.2.4Ứng dụng tương đồng để phát triển ứng dụng của chúng ta142.2.5Bản triển khai công việc152.2.6Mockup cho ứng dụng15CHƯƠNG 3: XÂY DỰNG CƠ SỞ DỮ LIỆU VÀ HÌNH ẢNH GIAO DIỆN CỦA ỨNG DỤNG 19</small>
<small>2.2.2Giao diện ứng dụng22CHƯƠNG 4 : HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI27</small>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><b>1.BỐI CẢNH ĐỀ TÀI</b>
Ngày nay việc ứng dụng và phát triển công nghệ thông tin đã giúp con người giải phóng sức mạnh vật chất, trí tuệ và tinh thần, thúc đẩy phát triển nền kinh tế góp phần nâng cao chất lượng cuộc sống của con người. Giúp con người giải quyết các hoạt động ngồi đời sống một cách nhanh chóng và tiện lợi. Vì nhu cầu cuộc sống mà các món ăn ngày càng phổ biến rộng rãi hơn, để có được những món ăn ngon các bà nội trợ hay những người thích vào bếp phải bỏ thời gian ra tìm các sách dạy nấu ăn, các món ăn trên trang web để nấu được các món ăn ngon, nếu như vậy sẽ tốn rất nhiều thời gian của anh – chị - em chúng ta.
Vì vậy thiết nghĩ cần phải có một ứng dụng trên di động giới thiệu về các món ăn và chia sẽ công thức giúp tiết kiệm thời gian hơn và khơng cần phải đắng đo suy nghĩ nên nấu gì và cơng thức như thế nào?
<b>Chính vì vậy, ý tưởng của tôi đưa ra là: “Xây dựng ứng dụng giới thiệu các món ăn và chia</b>
<b>sẽ cơng thức chế biến cho từng món ăn trên di động mang tên“Cẩm nang ẩm thực””2.MỤC ĐÍCH VÀ H Ư ỚNG XÂY DỰNG ĐỀ TÀI</b>
<b>2.1 Mục đích của đề tài </b>
<b>" Ứng dụng giới thiệu các món ăn và chia sẽ cơng thức chế biến cho từng món ăn</b>
<b>trên di động " là ứng dụng được thiết kế để sử dụng trên các thiết bị di động. Nhằm</b>
cung cấp thơng tin và hình ảnh các món ăn để người dùng học hỏi thơng qua ứng dụng.Người dùng có thể tìm kiếm thơng tin của các món ăn được giới thiệu trong app. Ngồi ra, họ có thể đăng tải các chia sẽ về món ăn của họ thông qua chức năng đăng bài viết. Quan trọng hơn, ứng dụng đem lại lợi ích cho đại đa số người dùng, với mỗi người dùng đều là người khai thác và người phát triển kho dữ liệu và ngồi ra cịn giúp các khách hàng tiết kiệm được thời gian mà lại có được món ăn ưng ý như mình đang cần tìm.
<b>2.2 Nhiệm vụ cần thực hiện</b>
<b>2.2.1 Nghiên cứu phát triển ứng dụng trên Android.2.2.2 Tìm hiểu về JSON trên firebase.</b>
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6"><b>2.2.3 Tìm hiểu cách thức hoạt động của các phần mềm quản lý trao đổi thông</b>
tin trên di động đã có.
<b>2.2.4 Tạo thơng tin món ăn.</b>
<b>2.2.5 Xây dựng phần mềm ứng dụng trên nền tảng Android.2.4.3 Gennymatio, nox, bluestark..2.5 Kế hoạch thực hiện ( file excel )2.6 Dự kiên kết quả đạt được</b>
Dự kiến ứng dụng hồn tồn có khả năng triển khai thực tiễn. Các mục tiêu cần đạt được: Xây dựng thành công hệ thống kho dữ liệu ở Server với Firebase cung cấp việc giao
tiếp giữa ứng dụng với kho dữ liệu.
Xây dựng thành công ứng dựng trên điện thoại di động Android.
Triển khai thành công hệ thống chạy trên môi trường thực tiễn, cụ thể là: internet cho server và trên điện thoại di động chạy hệ điều hành Android cho ứng dụng.
Qua lần thực hiện dự án có thể đúc kết những kiến thức lập trình, nâng cao khả năng xây dựng dự án trong tương lai,tổng hợp lại kiến thức đã được học tập từ trước đến nay để chuẩn bị cho kỳ thi tốt nghiệp sắp tới
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7"><b>1.1 HỆ ĐIỀU HÀNH ANDROID</b>
<b>1.1.1 Giới thiệu về hệ điều hành Android</b>
<b><small>Hình 1. Giới thiệu android</small></b>
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các thiết bị di động có màn hình cảm ứng như điện thoại thơng minh và máy tính bảng Ban đầu, Android được phát triển bởi Tổng cơng ty Android, với sự hỗ trợ tài chính từ Google và sau này được chính Google mua lại vào năm 2005. Android ra mắt vào năm 2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm tay mở: một hiệp hội gồm các công ty phần cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động. Chiếc điện thoại đầu tiên chạy Android được bán vào tháng 10 năm 2008.
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép Apache. Chính mã nguồn mở cùng với một giấy phép khơng có nhiều ràng buộc đã cho phép các nhà phát triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều chỉnh và phân phối Android một cách tự do. Ngoài ra, Android cịn có một cộng đồng lập trình viên đơng đảo chuyên viết các ứng dụng để mở rộng chức năng của thiết bị, bằng một loại ngôn ngữ lập trình Java có sửa đổi. Vào tháng 10 năm 2012, có khoảng 700.000 ứng dụng trên Android, và số lượt tải ứng dụng từ Google Play, cửa hàng ứng dụng chính của Android, ước tính khoảng 25 tỷ lượt.
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">Những yếu tố này đã giúp Android trở thành nền tảng điện thoại thông minh phổ biến nhất thế giới, vượt qua Symbian vào quý 4 năm 2010, và được các công ty công nghệ lựa chọn khi họ cần một hệ điều hành khơng nặng nề, có khả năng tinh chỉnh, và giá rẻ chạy trên các thiết bị cơng nghệ cao thay vì tạo dựng từ đầu. Kết quả là mặc dù được thiết kế để chạy trên điện thoại và máy tính bảng, Android đã xuất hiện trên TV, máy chơi game và các thiết bị điện tử khác. Bản chất mở của Android cũng khích lệ một đội ngũ đơng đảo lập trình viên và những người đam mê sử dụng mã nguồn mở để tạo ra những dự án do cộng đồng quản lý. Những dự án này bổ sung các tính năng cao cấp cho những người dùng thích tìm tịi hoặc đưa Android vào các thiết bị ban đầu chạy hệ điều hành khác.
<b>1.1.2 Intent</b>
Khái niệm Intend:
Là một cấu trúc dữ liệu mô tả cách thức, đối tượng thực hiện của một Activity
Là cầu nối giữa các Activity: ứng dụng Android thường bao gồm nhiều Activity, mỗi Activity hoạt động độc lập với nhau và thực hiện những cơng việc khác nhau. Intent chính là người đưa thư giúp các Activity có thể triệu gọi cũng như truyền các dữ liệu cần thiết tới một Activity khác. Điều này cũng giống như việc di chuyển qua lại giữa các Forms trong lập trình Windows Form.
<small>\</small>
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9"><b>1.2 JSON </b>
JSON là viết tắt của JavaScript Object Notation. Chi tiết tại nó là một chuẩn để định dạng dữ liệu, về mặt này có thể so sánh JSON với XML YAML… Nhưng khi JSON đi với JavaScript hoặc ActionScript thì nó có tính ưu việt hơn hẳn.
JSON có liên quan đến JavaScript, ActionScript. Đơn giản là vì dữ liệu được định dạng thành chuỗi JSON chính là cách biểu diễn một đối tượng trong các Scripting Language này.
Khi sử dụng JSON với JavaScript hay ActionScript, khơng cần phải có các bước phân tích phức tạp như đối với XML. Mà có thể truy vấn trực tiếp giá trị theo tên (khóa) được định nghĩa trong JSON.
<b>1.3 SERVER</b>
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><b>2.1 PHÂN TÍCH U CẦU2.1.1 Mơ tả bài tốn</b>
Xem thơng tin từng món ăn trên tồn ứng dụng Truy cập thơng tin
Đăng bài viết chia sẽ về món ăn và cơng thức (có hình ảnh minh họa món ăn) Khi có sự thay đổi về các món ăn đã chia sẽ phần mềm sẽ tự động cập
nhật thông tin thay đổi, chỉ cần thiết bị smartphone có kết nối mạng Wifi hoặc 3G
Quản lý bài đã đăng và thông tin tài khoản
Chia sẽ các món ăn đã được đăng trong ứng dụng Cơ sở dữ liệu
Danh sách thông tin các món ăn do người dùng cung cấp (có chức năng nhập dữ liệu từ ứng dụng lên sever). Mang tính chất dữ liệu mở
Danh sách thơng tin các món ăn có sẵn trong ứng dụng.Mang tính chất dữ liệu mở
<b>2.1.2 Phân tích hiện trạng</b>
Việt Nam có đủ các yếu tố để phát triển ngành công nghệ thông tin và truyền thông trở thành ngành kinh tế mũi nhọn. Với tiềm năng phát triển mạnh mẽ của công
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">nghệ thông tin đa dạng và phong phú, đất nước trở thành điểm đến của các công ty CNTT nổi tiếng của thế giới. Trong đó ngành phát triển và sử dụng các ứng dụng trên điện thoại di động ngày càng nhiều.
<b>2.1.3 Phân tích u cầu bài tốn</b>
<i>2.1.3.1 Người sử dụng</i>
Đối tượng sử dụng: đối tượng sử dụng được chia thành hai loại: - Người chia sẽ
- Người sử dụng
Mục đích sử dụng: Mục đích lớn của hệ thống là hướng tới đại đa số người dùng. Hệ thống đi kèm với việc xây dựng kho dữ liệu là phát triển một ứng dụng trên điện thoại di động, cụ thể là điện thoại chạy hệ điều hành Android. Và người sử dụng sẽ được:
Cung cấp các thơng tin từng món và cơng thức theo các tiêu chí khác nhau. Thực hiện việc đăng tải thông tin trên ứng dụng hướng tới người dùng khác. Hỗ trợ chia sẽ các món ăn đến người dùng khác.
<i>2.1.3.2 Dữ liệu </i>
Xây dựng
Kho dữ liệu được xây dựng dựa theo hai nguồn dữ liệu được cung cấp: Nguồn dữ liệu nhập từ người lập trình qua Firebase.
Nguồn dữ liệu nhập từ người dùng qua ứng dụng . Cập nhật
Cập nhập dữ liệu mang yếu tố quan trọng cho hệ thống và kho dữ liệu. Lương thơng tin cập nhập càng nhiều thì sẽ tăng tính chất mở của kho dữ liệu. Cập nhập dữ liệu thông qua các bước sau:
<b> Bước 1: Người sử dụng sẽ xem thơng tin các món được chia sẽ trên ứng dụng. Bước 2: Thông tin được tiến hành lưu trữ vào hệ quản trị cơ sở dữdữ liệu.</b>
(thơng tin được nhập bao gồm tên món ăn, cơng thức chế biến,hình ảnh minh họa và sửa đổi tùy ý người dùng đã đăng
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">Công nghệ là yếu tố đưa các thông tin của kho dữ liệu tới với người dùng. Công
Ngôn ngữ lập trình Java Android
Việc lựa chọn các cơng nghệ này để phát triển ứng dụng đều dựa trên tính phổ biến và thơng dụng hiện nay. Phần chính là server sẽ cung cấp các phương thức để truy xuất thông tin từ kho dữ liệu, phần ở điện thoại di động mang tính chất hiển thị trực quan. Cơng nghệ sử dụng ở điện thoại di động được lựa chọn là nền tản di động Android, với bộ Android SDK. Đây là một trong những nền tản công nghệ mạnh nhất trong lĩnh vực điện thoại thông minh (smartphone), bên cạnh đó các thiết bị Android đã được chuẩn hóa nên việc ảnh hướng lớn từ thay đổi công nghệ là rất nhỏ.
Vậy, khi cơng nghệ thay đổi thì với hệ thống ở server thì sẽ cung cấp các phương thức cần thiết đảm bảo việc viết ứng dụng trên các nên tảng cơng nghệ được diễn ra nhanh chóng. Và sự thay đổi về mặt công nghệ sẽ không ảnh hưởng nhiều tới kho dữ liệu.
<b>2.1.4 Phân tích khả thi </b>
<i>2.1.4.1 Tính khả dụng</i>
Hệ thống hồn tồn có thể triển khai trên thực tế. Cộng đồng sử dụng điện thoại thông minh (cụ thể Android) rất đông đảo.
Nhu cầu trao đổi thông tin ngày càng lớn
Ứng dụng được cung cấp miễn phí cho mọi người dùng và hướng tới phát triển trên mọi nền tảng di động phổ biến hiện nay.
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14"><i>2.1.4.2 Chi phí phát triển</i>
Điện thoại thơng mình ngày nay đang phát triển các dịng điện thoại bình dân, nghĩa là chi phí cho một chiếc điện thoại hỗ trợ đầy đủ các tính năng mà chương trình u cầu thì hồn tồn khơng đắt.
Chi phí cho Server Firebase với lượng người dùng ban đầu là thấp.
Ngồi ra, với việc thu phí cho một số tính năng nâng cao của hệ thống sau này sẽ là nguồn thu nhằm duy trì và tiếp tục phát triển hệ thống.
Từ các mơ tả trên ta có các tác nhân của hệ thống như sau:
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15"> Người dùng trao đổi món ăn
<b> UseCase trao đổi món ăn giữa những người dùng ứng dụng</b>
Lập trình viên
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">
<i>2.2.1.1Yêu cầu phi chức năng</i>
Hệ thống Web Server Tốc độ truy cập nhanh.
Đảm bảo tính bảo mật của người dùng, nếu có vị phạm thì tiến hành khóa tài khoản và thoát đăng nhập ở ứng dụng.
Một số chức năng yêu cầu đăng nhập chỉ có thể gọi được tại ứng dụng cho hệ thống cung cấp.
Ứng dụng trên điện thoại di động
Giao diện đơn giản, phù hợp với màn hình điện thoại (nhỏ). Tối ưu hóa các thao tác trên điện thoại.
Đảm bảo tính ổn định (khơng chết chương trình quá 5 lần/ 1 tuần).
<b>2.2.2 Biểu đồ hoạt động</b>
a) Đăng nhập
Biểu đồ hoạt động - Đăng nhập
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">Biểu đồ tuần tự - Lấy thông tin từ Server sau khi đăng nhập thành công
<b>2.2.3 Biểu đồ triển khai</b>
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">Biểu đồ triển khai
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20"><b>2.2.5 Bản triển khai công việc</b>
<b><small>Người đảm nhiệm</small></b>
<small>Bùi việt phiBùi việt phiBùi việt phiBùi việt phiBùi việt phi</small>
<small>Trương khánh mậuTrương khánh mậuBùi việt phi</small>
<small>Bùi việt phiBùi việt phi</small>
<small>Trương khánh mậuBùi việt phi</small>
<small>Bùi việt phi</small>
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24"><b>2.2.1 Cơ sở dữ liệu MY SQL DỰ ÁN 2</b>
Bảng chi tiết đơn hàng: chứa các thông tin vế thể lại món ăn:
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25"> Bảng chứa danh sách hình ảnh món ăn:
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26"> Bảng danh sách bình luận món ăn:
Bảng danh sách người đăng ký:
</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">Màn hình trang chủ hiện lên danh sách các thể loại món ăn sau khi click vào một thể loại sẽ hiện ra danh sách các món ăn cịn màn hình cộng đồng sẽ hiện thị thẳng các món ăn được chia sẻ lên
<b> Màn hình tab menu khi đăng nhập(phải) và chưa đăng nhập (phải)</b>
Khi đăng nhập tài khoản vào ứng dụng , tab menu sẽ có thêm chức năng thơn tin tài khoản, đổi mật khẩu,bài viết đã đăng
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28"><b><small> </small></b> <small> </small>
<b> Màn hình menu thể loại món ăn thu gọn(trái) và danh sách món ăn(phải)</b>
Khi click vào màn hình menu thu gọn sẽ hiển thị ra màn hình chứa danh sách các món ăn trong cùng một thể loại
<b><small> </small></b> <small> </small>
<b> Màn hình chi tiêt món ăn khi tắt và bật floating button</b>
Màn hình chi tiết món ăn khi tắt (trái) và bật (phải) Floating Action Button
Ở màn hình chi tiết các món ăn, nết ta bấm vào button dấu cộng sẽ hiện ra các button chưa các chức năng mới
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29"><b><small> </small></b> <small> </small>
Màn hình xem thơng tin tài khoản (trái) và xem danh sách tài khoản đã đăng ký(phải) Tại màn hình xem thơng tin tài khoản chúng ta có thể chỉnh sửa thơng tin và xóa tài khoản nếu khơng muốn sử dụng nữa.
màn hình xem danh sách tài khoản đã đăng ký(chỉ có admin mới có chức năng này) dùng để hiển thị tất cả các tài khoản mà người dùng đã đăng ký
<small> </small>
<b> Màn hình đăng nhập và đăng ký tài khoản cá nhân</b>
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30"><b> Màn hình quên mật khẩu (trái) và gửi về mật khẩu (phải)</b>
ở màn hình quên mật khẩu để lấy lại mật khẩu chỉ cần nhật email và mã số bảo về khi lập tài khoản sau đó sẽ có thơng báo gửi mật khẩu về cho bạn
<b><small> </small></b>
<b> Màn hình tìm kiếm món ăn (trái) và đổi mật khẩu(phải)</b>
Chức năng tìm kiếm món ăn theo tên, bạn cần viết chữ hoa đầu tiên của món ăn cần tìm và tên món ăn khơng có dấu
</div>