Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KĨ THUẬT MÁY TÍNH
LỚP KTMT03
----------oOo----------
BÁO CÁO THỰC TẬP
XÂY DỰNG ỨNG DỤNG HỖ TRỢ DẪN ĐƯỜNG CHO ÔTÔ TRÊN ANDROID
Công ty thực tập: TNHH MTV TƯ DUY MỚI
Người phụ trách: NGUYỄN QUANG THẮNG
Sinh viên thực hiện : PHAN VĂN TRAI
TP Hồ Chí Minh, ngày 15 tháng 8 năm 2012
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
Lời cảm ơn
Em xin gửi lời cảm ơn chân thành đến Công ty TNHH MTV TƯ DUY MỚI và đặc biệt là anh Nguyễn Quang Thắng – người đã tận tình giảng dạy và hướng dẫn em trong suốt khóa thực tập. Công ty đã tạo môi trường thuận lợi để em có thể tham gia khóa thực tập một cách tốt nhất. Cảm ơn các anh chị hướng dẫn trong công ty đã tạo điều kiện trong suốt quá trình tìm hiểu và thực hiện dự án. Em xin chân thành cám ơn quý thầy cô trong khoa Kĩ Thuật Máy Tính đã nhiệt tình hỗ trợ và tạo điều kiện cho em thực hiện bài báo cáo thực tập này. Cuối cùng em xin gửi lời biết ơn đến gia đình, bạn bè đã ủng hộ, giúp đỡ và động viên trong những lúc khó khăn cũng như trong suốt thời gian thực tập. Mặc dù em đã cố gắng hoàn thành khóa thực tập với tất cả nỗ lực của mình, nhưng dự án thực tập chắc chắn không tránh khỏi những thiếu sót nhất định, rất mong nhận được sự cảm thông, chia sẻ và tận tình đóng góp chỉ bảo của quý Thầy Cô.
SINH VIÊN THỰC HIỆN
PHAN VĂN TRAI
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
NHẬN XÉT CỦA KHOA
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
................................................................................................................................................
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
M c l cụ ụ1 Giới thiệu về công ty thực tập................................................................................1
1.1 Giới thiệu về công ty TNHH MTV Tư Duy Mới..............................................1
1.2 Một số thông tin chi tiết về công ty Tư Duy Mới.............................................1
2 Kế hoạch thực tập...................................................................................................2
3 Đồ án thực tập.........................................................................................................2
3.1 Yêu cầu chức năng (Requirement)....................................................................2
3.1.1 Giới thiệu về đồ án.....................................................................................2
3.1.2 Chức năng chính.........................................................................................2
3.1.3 Mô hình use case........................................................................................3
3.1.4 Yêu cầu chức năng.....................................................................................4
3.2 Thiết kế..............................................................................................................7
3.2.1 Sơ đồ lớp....................................................................................................7
3.2.2 Sơ đồ tuần tự..............................................................................................8
3.2.3 Database.....................................................................................................9
3.3 Sản phẩm và hướng dẫn sử dụng....................................................................10
4 Kết quả đạt được...................................................................................................14
4.1 Kiến thức chuyên môn....................................................................................14
4.2 Kỹ năng thực hành..........................................................................................14
4.3 Một số kinh nghiệm........................................................................................14
4.4 Kỹ năng mềm..................................................................................................14
5 KẾT LUẬN..........................................................................................................15
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
1 Gi i thi u v công ty th c t pớ ệ ề ự ậ
1.1 Gi i thi u v công ty Tớ ệ ề NHH T DUY M IƯ Ớ
- Công ty TNHH MTV Tư Duy Mới được thành lập năm 2008 và nhanh chóng trở thành công ty phần mềm uy tín , đáp ứng được mọi yêu cầu của khách hàng. Mục tiêu của Tư Duy Mới là trở thành Công ty phần mềm lớn mạnh hàng đầu ở Việt Nam.
1.2 M t s thông tin chi ti t v công ty ộ ố ế ề TNHH MTV T DUY M IƯ Ớ
Tên Công ty Công ty TNHH MTV Tư Duy Mới
Trụ Sở 481/12 Nguyễn Văn Quá, P. Đông Hưng Thuận, Q.12, Tp.HCM
Dịch Vụ- Dịch vụ và giải pháp phần mềm- Nghiên cứu và phát triển các ứng dụng di động
Công nghệ
- Phần mềm nhúng và di động: VxWorks, RT-Linux, Windows Mobile, J2ME, iPhone, SMS…
- Phần mềm ứng dụng cho doanh nghiệp: dựa trên công nghệ Microsoft và mã nguồn mở
SVTH: Phan Văn Trai Trang 1
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
2 K ho ch th c t pế ạ ự ậTuần
Nhiệm vụ chính Training - Toastmaster
1 - Viết requirement cho dự án - Đào tạo về quy trình phát triển phần mềm (requirement, design và implement)
- Toasmaster tuần 12 - Viết design cho dự án - Đào tạo về quy trình phát
triển phần mềm (requirement, design và implement)
- Toasmaster tuần 23 - Viết test plan + test case - Đào tạo về testing
- Toasmaster tuần 34 - Tìm hiểu kiến thức cơ bản về lập
trình trên Android- Toasmaster tuần 4
5 - Tìm hiểu sâu kiến thức Android phục vụ cho việc thực hiện dự án
- Toasmaster tuần 5
6 - Code - Toasmaster tuần 67 - Code - Toasmaster tuần 78 - Code - Toasmaster tuần 89 - Code - Toasmaster tuần 910 - Kiểm thử + viết báo cáo - Toasmaster tuần 1011 - Báo cáo thực tập12 - Tuần dự trữ
3 Đ án th c t pồ ự ậ
3.1 Yêu c u ch c năng (Requirement)ầ ứ
3.1.1 Gi i thi u v đ ánớ ệ ề ồ- Đồ án “Car Emulator” là một phần của hệ thống dẫn đường cho ô tô chạy trên
nền Android, người dùng có thể xem được vị trí của ô tô trên bản đồ, có thể phóng to hay thu nhỏ đê xem chi tiết bản đồ, xoay bản đồ để thay đổi hướng nhìn và có thể trượt bản đồ để xem những phần khác nhau của bản đồ.
- Đồ án này được thực hiện trên nền Android, sử dụng ngôn ngử Java và phần mềm mã nguồn mở Eclipse.
3.1.2 Ch c năng chínhứ- Xoay bản đồ (rotate)- Phóng to, thu nhỏ (zoom in, zoom out)- Trượt bản đồ (scroll)- Hiển thị (view)- Chuyển động (animation)
SVTH: Phan Văn Trai Trang 2
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
- Kết nối cơ sở dữ liệu (database conneting)
3.1.3 Mô hình use case
3.1.3.1 B ng use caseả
System Features Main Use Case Use Case ID
<Feature name>
View M3B3_UC_View
Animation M3B3_UC_Animation
Rotate M3B3_UC_Rotate
Zoom M3B3_UC_Zoom
Scroll M3B3_UC_Scroll
3.1.3.2 Use case diagram
SVTH: Phan Văn Trai Trang 3
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
3.1.4 Yêu c u ch c năngầ ứ
3.1.4.1 B ng chi ti t yêu c uả ế ầ
ID Mô tả yêu cầu
FR1.0 View and Animation: trên màn hình điện thoại, chúng ta có một biểu tượng (ôtô hay mũi tên) biểu thị cho ôtô của người dùng. Ngoài ra chúng ta còn có một số đường được hiển thị nổi lên để biểu diễn đường đi của ôtô. Người dùng có thể nhìn vào bản đồ mà biết được đường đi của mình. Khi ô tô của người dùng di chuyển thì biểu tượng trên mà hình cũng sẽ di chuyển theo đường đi được hiển thị trên bản đồ. Bản đồ sẽ tự động di chuyển biểu tượng để đảm bảo biểu tượng ô to không vượt ra khỏi màn hình.
FR1.1 Zoom: người dùng phóng to hay thu nhỏ bản đồ để biết được đường đi một cách chính xác. Có thể zoom bản đồ để nhìn bản đồ được bao quát hơn từ vị trí hiện tại. Tỉ lệ zoom sẽ được cung cấp cho người dùng, người dùng chạm vào màn hình điện thoại và chọn tỉ lệ để zoom bản đồ. Người dùng cũng có thể quay trở lại màn hình hiển thị để được tiếp tục hướng dẫn đường đi bất cứ khi nào.
FR1.2 Rotate: Người dùng có thể xoay bản đồ quanh tâm điểm của màn hình. Hướng xoay có thể cùng chiều hoặc ngược chiều kim đông hồ.
FR1.3 Scroll: Bởi vì bản đồ thì lớn chúng ta chỉ hiển thị được một phần bản đồ nên chúng ta cần trượt bản đồ để xem được những phần khác nhau. Có thể trượt mọi hướng để xem đường đi trên bản đồ.
FR1.4 Database connection: Ứng dụng sẽ kết nối với database để lấy dữ kiệu bản đồ.
- Use case ‘View’_ M3B3_UC_View
Use Case ID M3B3_UC_View
Name View
Goal Cung cấp cho người dùng khung nhìn của toàn cảnh bản đồ cùng với ô tô.
Bản đồ sẽ tự động xoay và zoom hình để chắc chắn rằng ô tô luôn ở giữa màn hình hiển thị với kích thướt mặc định + góc mặc định.
Actors User
Include N/A
Extended N/A
Pre-conditions - Phải có tọa độ (kinh độ + vĩ độ) của ô tô và con đường để mô phỏng bản đồ
- Phải có đường đi cho ô tô ngay tại thời điểm đó.
- Phải có kích thướt mặc định, góc mặc định của khung nhìn
SVTH: Phan Văn Trai Trang 4
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
Post-conditions N/A
Main Flow - Sử dụng tọa độ để di chuyển khung nhìn về vùng khung nhìn chuẩn
Exceptions N/A
Open Issues N/A
- Use case ‘Animation’_ M3B3_UC_Animation
Use Case ID M3B3_UC_Animation
Name Animation
Goal Làm cho ô tô di chuyển theo con đường trên bản đồ.
Actors User
Include N/A
Extended N/A
Pre-conditions - Dùng công cụ Eclipse để phát triển, môi trường ADV và SDK
- Phải có tọa độ của ô tô và tuyến đường trên bản đồ mô phỏng.
- Phải có tuyến đường đi của ô tô.
- Phải có tốc độ của ô tô.
Post-conditions N/A
Main Flow - Làm cho ô tô di chuyển theo tuyến đường
Exceptions N/A
Open Issues N/A
- Use case ‘Rotate’_ M3B3_UC_Rotate
Use Case ID M3B3_UC_Rotate
Name Rotate
Goal Chương trình có tính năng cho phép người dùng tự xoay màn hình
Actors User
Include N/A
Extended N/A
Pre-conditions - Góc xoay tùy người dùng chọn
- Phải có bản đồ
Post-conditions N/A
SVTH: Phan Văn Trai Trang 5
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
Main Flow - Xoay bản đồ để thay đổi khung nhìn
Exceptions N/A
Open Issues N/A
- Use case ‘Zoom’_ M3B3_UC_Zoom
Use Case ID M3B3_UC_Zoom
Name Zoom
Goal Phóng to hay thu nhỏ khung nhìn của bản đồ
Actors User
Include N/A
Extended N/A
Pre-conditions - Người sử dụng chọn mức độ zoom
- Phải có bản đồ
Post-conditions N/A
Main Flow - Thay đổi kích cở khung nhìn
Exceptions N/A
Open Issues N/A
- Use case ‘Scroll’_ M3B3_UC_Scroll
Use Case ID M3B3_UC_Scroll
Name Scroll
Goal Trượt khung nhìn của bản đồ theo hướng: lên, xuống, trái, phải.
Actors User
Include N/A
Extended N/A
Pre-conditions - Phải có bản đồ mô phỏng.
Post-conditions N/A
Main Flow - Thay đổi vị trí của khung nhìn.
Exceptions N/A
Open Issues N/A
SVTH: Phan Văn Trai Trang 6
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
3.2 Thi t kế ế
3.2.1 S đ l pơ ồ ớ
SVTH: Phan Văn Trai Trang 7
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
3.2.3 Database- Database sử dụng cơ sở dữ liệu SQLlite phù hợp với bộ nhớ nhỏ của điện thoại
di động.
SVTH: Phan Văn Trai Trang 9
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
3.3 S n ph m và h ng d n s d ngả ẩ ướ ẫ ử ụ- Bắt đầu chương trình
SVTH: Phan Văn Trai Trang 10
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
- Giao diện chính
Thay đổi tốc độ: Chúng ta có thể thay đổi tốc độ của ôtô bằng cách bấm vào Menu->SpeedChange. Tốc độ giới hạn từ 10km/h đến 300k/h.
SVTH: Phan Văn Trai Trang 12
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
- Thay đổi đường đi Mặc định trong chương trình sẽ có 2 tuyến đường đi, khi ta chọn chức
năng này thì 2 tuyến đường sẽ chuyển đổi qua lại.
SVTH: Phan Văn Trai Trang 13
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
- Ngoài ra chương trình còn hỗ trợ cho người dùng những chức năng khác như: Reset default view: chức năng này cho phép người dùng quay trở lại màn
hình mặc định. Restart: chức năng này cho phép người dùng chạy lại chương trình từ đầu. Pause Animation/ Resum Animation: chức năng này cho phép cho người
dùng dừng quá trình chuyển động của ô tô cũng như tiếp tục (nếu đang dừng).
4 K t qu đ t đ cế ả ạ ượ
4.1 Ki n th c chuyên mônế ứ- Kỹ thuật lập trình cơ bản Android trên ngôn ngữ Java- Kỹ thuật tạo và truy xuất cơ sở dữ liệu SQlite trên điện thoại di động.- Cách thức sử dụng đồ họa trên Android để tạo ứng dụng(đặc biệt là kỹ thuật
animation)
4.2 Kỹ năng th c hànhự- Kỹ năng làm việc nhóm với công cụ subversion trong môi trường thực tế- Kỹ năng viết code theo chuẩn – coding standard- Kỹ năng viết báo cáo tiến độ hằng tuần
4.3 M t s kinh nghi mộ ố ệ- Cách thức lưu dữ liệu địa lý dưới định dạng shapfile (longbinary). - Đọc kiểu dữ liệu này với SQlite.- Chuyển đổi hệ tọa độ địa lý thực tế (kinh độ vĩ độ) sang tọa độ màn hình điện
thoại.- Cách xây dựng và chạy ứng dụng trên điện thoại Android thật.
4.4 Kỹ năng m mề- Kỹ năng làm việc nhóm- Kỹ năng quản lý thời gian- Kỹ năng thuyết trình, báo cáo- Kỹ năng viết email bằng tiếng anh- Kỹ năng giao tiếp bằng tiếng anh (thông qua các buổi toastmaster hằng tuần của
công ty)
SVTH: Phan Văn Trai Trang 14
Báo cáo thực tập GVHD: Ts. Vũ Đức Lung
5 K T LU NẾ Ậ- Chương trình thực tập của công ty Tư Duy Mới đã đáp ứng được yêu cầu của nội
dung môn học “Thực Tập Cuối Khóa”. Qua 12 tuần tham gia thực tập tại Công ty Tư Duy Mới, em đã tích lũy được các kiến thức quan trọng khi làm việc trong môi trường thực tế tại công ty.
- Bên cạnh các kiến thức học được, em còn nhận được các nhận xét, đánh giá của các anh chị, cấp trên tại công ty, giúp em có cái nhìn rõ hơn về bản thân để tự trau dồi, phát triển bản thân sau này.
SVTH: Phan Văn Trai Trang 15