Qua đó em học hỏi được rất nhiều thứ, chẳng hạn như: Khả năng tự tìm hiểu kiến thức mới được khách hàng sử dụng, đọc hiểu tài liệu chỉ thị, đào sâu code từ để điều tra, thực hiện từ giao
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO THỰC TẬP
PHÂN TÍCH DỮ LIỆU VÀ HIỂN THỊ
LÊN WIDGET
Công ty thực tập : Công ty Cổ phần FUJINET SYSTEMS Người phụ trách : Mr Trương Văn Hậu
Thực tập sinh : Phạm Tấn Phát
TP Hồ Chí Minh, tháng 12 năm 2021
Trang 21
LỜI MỞ ĐẦU
Ngày nay, việc các doanh nghiệp cần một hệ thống quản lý, cũng như khả năng phân tích data để đánh giá tình hình kinh doanh dựa trên biểu đồ là điều không còn xa lạ
Em chọn công ty Cổ phần FUJINET SYSTEMS vì dây là công ty outsource chuyên làm việc với các khách hàng bên Nhật Qua đó em học hỏi được rất nhiều thứ, chẳng hạn như: Khả năng tự tìm hiểu kiến thức mới được khách hàng sử dụng, đọc hiểu tài liệu chỉ thị, đào sâu code
từ để điều tra, thực hiện từ giao diện cho đến Unit Test, tác phong làm việc chuyên nghiệp – tuân thủ tuyết đối quy định bảo mật
Trang 32
LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công ty Cổ phần FUJINET SYSTEMS đã tạo điều kiện cho em
có cơ hội được thực tập tại công ty
Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của nhóm trainer, chúng em
đã tiếp thu được những kiến thức quan trọng Chân thành cảm ơn các anh chị trong nhóm trainer
đã bỏ ra nhiều thời gian,công sức để hướng dẫn chúng em hoàn thành đợt thực tập này
Đặc biệt cảm ơn anh Nguyễn Viết Lộc đã hướng dẫn, giúp đỡ cho em tận tình cả những
khó khăn trong công việc, đến những khó khăn việc làm quen với môi trường mới, thao tác remote máy tính khi Work From Home cũng như tạo điều kiện thuận lợi nhất để em được lên công ty
làm việc, cảm ơn em Trương Văn Hậu đã chỉ dẫn anh rất nhiều trong việc làm quen với các
kiến thức lập trình được sử dụng trong dự án, thao tác Debug để điều tra code và tìm lỗi, cách viết
QA cho khách hàng Những điều này giúp chúng em rất nhiều trong công việc thực tế sau này
Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm bài báo cáo này
Phạm Tấn Phát
TP HCM, ngày 21 tháng 12 năm 2021
Trang 43
NHẬN XÉT CỦA KHOA
Trang 5
4
MỤC LỤC
LỜI MỞ ĐẦU 1
LỜI CẢM ƠN 2
NHẬN XÉT CỦA KHOA 3
Chương 1: Giới thiêu công ty thực tập 5
1 Giới thiệu công ty Cổ phần FUJINET SYSTEMS 5
2 Sản phẩm của công ty 5
Chương 2: Nội dung thực tập 6
1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 6
2 Nghiên cứu kỹ thuật 6
2.1 Các công cụ làm việc 6
2.2 Tìm hiểu công nghệ 7
2.3 Bài tập Training 1 9
2.4 Tham gia dự án mẫu (đã từng là dự án thực tế tại FUJINET SYSTEMS) 9 TÀI LIỆU THAM KHẢO 11
TỔNG KẾT 12
Trang 65
Chương 1: Giới thiêu công ty thực tập
1 Giới thiệu công ty Cổ phần FUJINET SYSTEMS
FUJINET được thành lập năm 1996 Ngày 06/09/2000: Thành lập Công ty TNHH Mạng Máy Tính Phú Sĩ (FUJINET Co., Ltd.) chuyên phát triển phần mềm cho thị trường Nhật Bản Ngày 01/09/2015: Công ty FUJINET chuyển đổi thành Công ty Cổ phần FUJINET SYSTEMS
Lĩnh vực:
- Phát triển và xuất khẩu phần mềm: Lập trình, vận hành và bảo trì hệ thống nghiệp vụ, lập trình Web Application, lập trình Smart Phone Application
- Nghiên cứu phát triển và ứng dụng công nghệ mới: Cung cấp giải pháp công nghệ mới như AI, RPA, BigData
- Tích hợp hệ thống thông tin: Cung cấp thiết bị máy tính và software licensed Thiết kế / thi công / vận hành / bảo trì hệ thống mạng
- Cung cấp giải pháp phần mềm: Cung cấp phần mềm quản lí sản xuất, phần mềm bán hàng, phần mềm kế toán
- Đồ họa / nhập dữ liệu: Thiết kế bản vẽ kiến trúc bằng 3DSMAX, tạo phối cảnh 3D, AutoCad
2 Sản phẩm của công ty
Hệ thống quản lý bán hàng, Hệ thống quản lý kho tự động, Hệ thống YYY, Hệ thống quản ký chi tiết các bộ phận chế tạo theo LOT, các dự án Migrations…
Trang 76
Chương 2: Nội dung thực tập
Đợt thực tập nhằm mục đích giúp sinh viên thực tập được được tham gia trải nghiệm các dự án thực tế tại công ty, hiểu hơn về cách công ty làm việc với khách hàng cũng như môi trường làm việc chuyên nghiệp Ngoài ra còn nâng cao kĩ năng tự học của sinh viên, khả năng lập trình Full Stack
Vì yêu cầu bảo mật của công ty Cổ phần FUJINET SYSTEMS, nên em không thể báo cáo chi tiết về dự án em đã tham gia trong công ty
1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty
Thời gian: 2 buổi Training Online trong quá trình thực tập
Nội dung :
- Giới thiệu sơ về công ty, cách tổ chức của công ty
- Được nghe người phụ trách giới thiệu về công ty, quá trình thành lập và phát
triển, quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty
- Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng email trong công việc…
- Quan trọng hơn hết là được nghe về Quy định bảo mật của công ty (ISMS), đây là điều tiên quyết quan trọng khi làm việc tại FUJINET SYSTEMS
Kết quả : Hiểu thêm về công ty FUJINET SYSTEMS, quá trình thành lập và phát triển,
sơ đồ tổ chức, sử dụng trang web nội bộ công ty Có thêm các kỹ năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm hơn
2 Nghiên cứu kỹ thuật
2.1 Các công cụ làm việc
Thời gian: Trong quá trình thực tập
Nội dung: Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc
Trong thời gian này, mentor đã hướng dẫn thực tập sinh tìm hiểu về các công cụ sẽ giúp ích cho trong công việc sau này Một số phần mềm trong số đó như Tortoise SVN
- sử dụng trong làm việc nhóm, JSON Review Online – Công cụ giúp định dạng lại dữ liệu dạng JSON, Notepad ++ - một chương trình soạn thảo văn bản rất hữu ích và phổ
Trang 87 biến với lập trình viên, Redmine: Trang web giúp báo cáo công việc hàng ngày, gửi lỗi hoặc câu hỏi trong quá trình thực hiện dự án
Thực hiện: Thực hành sử dụng các phần mềm đã nêu trên
Kết quả: Lập trình sử dụng các công cụ miễn phí, giúp dễ dàng kết hợp các công cụ
với nhau
2.2 Tìm hiểu công nghệ
Thời gian: 10 ngày (2 tuần)
Nội dung: Được training về các kỹ thuật JavaScript, HTML, Java nâng cao, những
kiến thức quan trọng cho việc tối ưu trên Web
- Kiến thức HTML, CSS, SCSS
HTML là viết tắt của từ Hyper Text Markup Language, có nghĩa là ngôn ngữ đánh dấu siêu văn bản HTML được sử dụng để định dạng và hiển thị văn bản trên trình duyệt tới người sử dụng Nó là xương sống của một trang web
CSS là viết tắt của Cascading Style Sheets Đây là một ngôn style sheet được sử dụng
để mô tả giao diện và định dạng của một tài liệu viết bằng ngôn ngữ đánh dấu (markup)
Nó cung cấp một tính năng bổ sung cho HTML
SCSS là ngôn ngữ tiền xử lý CSS Nó có nhiệm vụ logic hóa mã CSS sao cho gần giống với ngôn ngữ lập trình
- Kiến thức JavaScript
Javascript là ngôn ngữ lập trình kịch bản hướng đối tượng được phát triển bởi Netscape Communications cho các ứng dụng client/server Javascript là một ngôn ngữ lập trình thông dịch JavaScript hiển thị các trang web theo cách tương tác và năng động góp phần tạo nên trang web động Điều này cho phép các trang bắt các sự kiện, hiện thị các hiệu ứng đặc biệt, tự động tạo nội dung HTML, xác thực dữ liệu, tạo cookie, lấy thông tin trình duyệt của người dùng
- Kiến thức JSON
JSON là viết tắt của JavaScript Object Notation JSON là một định dạng trao đổi dữ liệu chuẩn mở JSON nhẹ và tự mô tả JSON có nguồn gốc từ JavaScript JSON rất dễ đọc và viết JSON là ngôn ngữ độc lập JSON hỗ trợ các cấu trúc dữ liệu như mảng và đối tượng
Trang 98
- Kiến thức AJAX
Ajax là viết tắt của cụm từ "Asynchronous JavaScript And XML" Ajax là phương thức trao đổi dữ liệu với máy chủ và cập nhật các phần của trang web - mà không cần tải lại toàn bộ trang
- Kiến thức Java Core
Java là một một ngôn ngữ lập trình hiện đại, bậc cao, hướng đối tượng, bảo mật, mạnh
mẽ và là một Platform Ngôn ngữ lập trình java có các tính năng sau: Hướng đối tượng , Nền tảng độc lập, Đơn giản, Bảo mật, Kiến trúc - trung lập, Portable, Mạnh mẽ, Đa luồng, Thông dịch, Hiệu năng cao, Phân tán, Năng động
- Kiến thức SQL
SQL là viết tắt của Structured Query Language có nghĩa là ngôn ngữ truy vấn có cấu trúc, là một ngôn ngữ máy tính để lưu trữ, thao tác và truy xuất dữ liệu được lưu trữ trong một cơ sở dữ liệu quan hệ
- Kiến thức framework AngularJS
AngularJS là một framework ứng dụng web mã nguồn mở Nó được phát triển lần đầu năm 2009 bởi Misko Hevery và Adam Abrons Hiện tại nó được duy trì bởi Google Phiên bản mới nhất của nó hiện tại là 1.3.14
AngularJS là một framework có cấu trúc cho các ứng dụng web động Cho phép sử dụng HTML như là ngôn ngữ mẫu và cho phép mở rộng cú pháp của HTML để diễn đạt các thành phần ứng dụng của một cách rõ ràng và súc tích Hai tính năng cốt lõi: Data binding và Dependency injection
- Thư viện Highcharts
Một thư viện hỗ trợ vẽ biểu đồ được khách hàng của FUJINET sử dụng tại dự án Hiểu rõ về cách thức cài đặt và hoạt động, có thể áp dụng vào dự án thực tế cũng như tùy chỉnh theo yêu cầu khách hàng
- Kiến thức Spring, MyBatis
Spring là một Framework phát triển các ứng dụng Java được sử dụng bởi hàng triệu lập trình viên Nó giúp tạo các ứng dụng có hiệu năng cao, dễ kiểm thử, sử dụng lại code…
Trang 109 MyBatis là một persistence framework mã nguồn mở, đơn giản, gọn nhẹ và dễ sử dụng MyBatis cung cấp các API giúp thao tác với Database dễ dàng hơn
Thực hiện:
- Đọc các tài liệu mà công ty cung cấp
- Làm các bài Online Test, áp dụng vào đồ án được giao
Kết quả:
- Hiểu rõ về các công nghệ được sử dụng tại dự án
- Có được những kiến thức quan trọng cho việc lập trình dự án thực tế sau này
- Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc, dễ hiểu
2.3 Bài tập Training 1
Thời gian: 15 ngày (3 tuần)
Nội dung: Sử dụng các kiến thức đã tìm hiểu để tạo ra một màn hình có thể lấy dữ liệu
từ đường dẫn file JSON được nhập vào Cho phép cài đặt các thuộc tính cần thiết được hiển thị tại biểu đồ Tính toán dữ liệu theo yêu cầu và vẽ được biểu đồ đúng như mô tả
Thực hiện:
- Đọc code mẫu từ source code có sẵn, lần lượt thực hiện từng yêu cầu của bài tập được giao,
- Yêu cầu nào chưa hiểu thì thực hiện QA trên Redmine hoặc đọc lại tài liệu
- Báo cáo công việc hàng ngày lên Redmine
- Thực hiện công việc kiểm thử sau khi hoàn thành tất cả yêu cầu của bài tập
- Sub-leader review code và chấm điểm
Kết quả: Thực tập viên hiểu rõ hơn về Javascrpit, HTML, cũng như biết được các yêu
cầu mà khách hàng của FUJINET muốn trong dự án thực tế sẽ như thế nào Ôn lại khả năng tư duy thuật toán để tính toán dữ liệu, hiểu được cách nào việc nhóm tại công ty
2.4 Tham gia dự án mẫu (đã từng là dự án thực tế tại FUJINET SYSTEMS)
Thời gian: 35 ngày (7 tuần)
Trang 1110
Nội dung: Đọc tài liệu mô tả yêu cầu và thực hiện tạo mới Widget có tên “Result and
Rate” cho trang web khách hàng, bao gồm màn hình cài đặt và tính toán dữ liệu hiển thị lên biểu đồ (bao gồm bar chart và line chart kết hợp)
Thực hiện:
- Cài đặt môi trường lập trình cho dự án của khách hàng
- Đọc tài liệu hướng dẫn của khách hàng
- Đọc hiểu tài liệu của dự án: Guildline, Quy tắc lập trình, thuật ngữ
- Đọc kĩ tài liệu định nghĩa yêu cầu cũng như tài liệu mô tả của Widget
- Thực hiện QA các nội dung của Widget (đã hiểu và chưa hiểu) dựa trên các tài liệu đã đọc để nhờ khách hàng xác nhận
- Đào sâu điều tra source code từ những Widget có sẵn để hiểu rõ hơn về cách thức hoạt động của trang web cũng như Widget
- Thực hiện code từ giao diện cho đến các xử lý tính toán bên dưới CSDL
- Báo cáo công việc cùng những khó khăn gặp phải hàng ngày lên Redmine để team nắm được
- Sau khi hoàn thành Widget và chạy ổn định thì tiến thành Unit Test
- Sub-leader review code và chấm điểm
Kết quả
- Hoàn thành Widget được giao
- Widget chạy ổn định, màn hình Cài đặt và dữ liệu biểu đồ hiển thị đúng với mô
tả khách hàng
- Hiểu rõ được code đã viết và cách hệ thống vận hành
Trang 1211
TÀI LIỆU THAM KHẢO
https://vietjack.com
https://viettuts.vn
https://www.w3schools.com/
https://www.tutorialspoint.com/
https://www.highcharts.com/
Trang 1312
TỔNG KẾT
Như vậy, sau ba tháng thực tập tại FUJINET SYSTEMS, bản thân thực tập sinh đã có những kiến thức nền tảng về các công nghệ sử dụng trong thực tế Do khi bắt đầu thực tập, tỉnh hình dịch COVID-19 tại TP.HCM còn phức tạp nên chỉ có thể Work From Home cùng rất nhiều hạn chế (đường truyền mạng, tương tác với người hướng dẫn, tốc độ của máy tính cá nhân ), nhưng khi công ty cho phép nhân viên quay lại công ty làm việc, em đã chủ động xin phép để được lên công ty 2 ngày/tuần, qua đó hiểu được thêm về môi trường làm việc công sở tại FUJINET SYSTEMS, đẩy nhanh tiến độ hoàn thành công việc được giao
Chân thành cảm ơn sự giúp đỡ của các anh team 3 của công ty FUJINET SYSTEMS, đã giúp đỡ em rất nhiều để hoàn thành chương trình thực tập này Cảm ơn thầy Lê Thanh Trọng đã giới thiệu em thực tập tại công ty