Tài Liệu Phân Tích - Thiết Kế Hệ Thống Thông Tin Xây Dựng Hệ Thống Đo Lường Hiệu Năng Giao Thông.pdf

28 3 0
Tài Liệu Phân Tích - Thiết Kế Hệ Thống Thông Tin Xây Dựng Hệ Thống Đo Lường Hiệu Năng Giao Thông.pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI ****** ****** BÁO CÁO THỰC TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN ĐỀ TÀI XÂY DỰNG HỆ THỐNG ĐO LƯỜNG HIỆU NĂNG GIAO THÔNG SIGNAL PERFORMANCE MEASUREMENT Sinh viên thực hiện N[.]

tai lieu, luan van1 of 98 ĐẠI HỌC QUỐC GIA HÀ NỘI ****** ****** BÁO CÁO THỰC TẬP PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN ĐỀ TÀI XÂY DỰNG HỆ THỐNG ĐO LƯỜNG HIỆU NĂNG GIAO THÔNG SIGNAL PERFORMANCE MEASUREMENT Sinh viên thực hiện: Nguyễn Thế Hợp – 18001142 Người hướng dẫn: Nguyễn Bá Sơn: Trưởng khối giải pháp phần mềm doanh nghiệp Ths Nguyễn Tuấn Dũng: Giám đốc kỹ thuật Hà Nội, 21/05/2022 document, khoa luan1 of 98 tai lieu, luan van2 of 98 [Hà Nội – 20/05/2022] Mục lục Lời mở đầu Lời cảm ơn Phân tích hệ thống Mục đích Phạm vi Chức nghiệp vụ Bảng điều khiển Trình tạo cảnh báo Trình phân tích liệu Trình tạo báo cáo Yêu cầu hệ thống Yêu cầu giao diện Yêu cầu hệ thống Yêu cầu bảo mật Công nghệ sử dụng General Back-End Front-End Cloud Thiết kế hệ thống 10 Xây dựng biểu đồ Use case (Use case diagram) 10 Xây dựng biểu đồ (Sequence diagram) 11 Đăng nhập xác thực người dùng 11 Tạo cảnh báo 12 Tạo báo cáo 13 Phân tích liệu 14 Kiến trúc micro-service 14 Xác thực phân quyền 15 Role-Base Access Control 15 document, khoa luan2 of 98 tai lieu, luan van3 of 98 Phân quyền cho hệ thống micro-service 16 Cấu hình tập trung 17 Quy trình vận hành phát triển 19 Agile scrum 19 CI/CD 19 Tổng quan CI/CD 19 GitLab CI 20 Git Flow 21 Triển khai hệ thống 22 Kiến trúc mạng 22 Kiến trúc đám mây 22 Tài liệu tham khảo 26 Công việc kết 27 Công việc giao 27 Nhận xét người hướng dẫn 27 document, khoa luan3 of 98 tai lieu, luan van4 of 98 [Signal Performance Measurement] Lời mở đầu Ngày nay, với phát triển mạnh mẽ cơng nghệ thơng tin, máy tính đại làm nhiều việc thay sức lao động người với độ xác, tin cậy cao Các công nghệ phát triền phần mềm không ngừng cải tiến, mở rộng ngày tốt Các nhà phát triển ứng dụng có nhiều lựa chọn công cụ phát triển phần mềm khác để đời sản phẩm phần mềm có tính ứng dụng đời sống thực tiễn Xu hướng công nghệ tương lai, phần mềm di chuyển lên dịch vụ đám mây sử dụng đâu thơng qua mạng internet Do ngơn ngữ lập trình web phát huy mạnh tương lai Qua trình thực tập, em may mắn tham gia vào dự án thực tế công ty làm phần mềm liên quan đến quản lí hệ thống giao thơng Vì vậy, báo cáo nhằm tổng kết điều em học làm trình thực tập qua việc trình bày phân tích kiến trúc hệ thống dự án mà em làm Lời cảm ơn Với thực tập sinh bước vào môi trường làm việc, người dẫn dắt bước chân người đáng quý Em xin chân thành gửi lời cám ơn đến anh chị: - Anh Nguyễn Bá Sơn: Trưởng khối giải pháp phần mềm doanh nghiệp Chị Nguyễn Thị Doan: Trưởng khối kiểm thử nghiệp vụ phần mềm doanh nghiệp Ths Nguyễn Tuấn Dũng: Giám đốc kỹ thuật công ty cổ phần Eastgate software tận tình hướng dẫn em suốt q trình thực tập làm việc cơng ty Khơng tránh nhiệm, cịn tình cảm giúp đỡ đến từ tận đáy lòng mà anh chị dành cho em Em xin chân thành cám ơn thầy khoa Tốn – Cơ – Tin học, thầy cô trường ĐH KHTN giảng dạy, trang bị cho em kiến thức tảng quý báu để em có kiến thức kinh nghiệm chuẩn bị cho cơng việc tương lai document, khoa luan4 of 98 tai lieu, luan van5 of 98 Trong trình trực tập, nhiều hạn chế kinh nghiệm kiến thức nên cịn nhiều điểm thiếu sót, em mong nhận ý kiến nhận xét phản hồi từ thầy cô bạn document, khoa luan5 of 98 tai lieu, luan van6 of 98 Phân tích hệ thống Mục đích Xây dựng tảng SPM (signal performance mesurement) dựa đám mây cho phép quan quản lý giao thông chuyên gia ngành giao thông để cải thiện hiệu nút giao thông trọng điểm, cho phép việc quản lý giao lộ tối ưu hóa Ngồi ra, hệ thống giản hóa việc quản lý giao lộ làm bật khu vực có vấn đề với khả nâng cao trình tạo logic cảnh báo, giúp chuyên gia giao thông ưu tiên hành động họ dễ dàng nhiều Phạm vi Hệ thống thiết kế tảng web đám mây, sử dụng đâu có mạng, khơng thời gian cài đặt phần mềm Chức nghiệp vụ Bảng điều khiển - Cung cấp cho chuyên gia giao thơng cách nhanh chóng, tổng quan vấn đề giao lộ với ba thành phần chính: o Bản đồ nhiệt độ: Cung cấp nhìn tổng quan giao lộ có vấn đề o 10 nút giao thông hang đầu theo báo động: Hiển thị 10 giao lộ có nhiều cảnh báo o Mở cảnh báo theo danh mục: Các loại biểu đồ thể số lượng cảnh báo, tùy chỉnh theo danh mục cách dễ dàng Trình tạo cảnh báo - Cho phép người dùng cài đặt để tạo cảnh báo dựa điều kiện logic định Cho phép người dùng quản lí số theo cách mà họ muốn Trình phân tích liệu - Cho phép tạo phân tích liệu theo mục đích khác nhau: o Số lượng xe vượt đèn đỏ o Số lượng người qua đường document, khoa luan6 of 98 tai lieu, luan van7 of 98 - o Số lượng xe dừng chờ đèn đỏ o … Việc tạo phân tích chọn theo khoảng thời gian với giao lộ Có thể xuất liệu chia sẻ cách đơn giản lần nhấp chuột Có sử dụng thuật tốn học máy để cải thiện hiệu độ xác phân tích Trình tạo báo cáo - Cho phép người dùng tạo mẫu cài đặt thời gian nhận báo cáo tình trạng giao thơng Hỗ trợ việc cài đặt báo cáo vào khung thời gian định cách dễ dàng Tùy chỉnh nhận báo cáo kênh khác nhau: Thông báo trang web qua hòm thư điện tử Yêu cầu hệ thống Yêu cầu giao diện - Giao diện dễ sử dụng, thân thiện với người dùng - Hỗ trợ đa ngơn ngữ, nhiều chủ đề (theme) - Tương thích với nhiều kích thước hình loại thiết bị khác Yêu cầu hệ thống - Chạy ổn đinh, tính khả dụng vụ cao (high avaibility) - Hiệu suất hoạt động tốt - Dữ liệu phân tích hiệu quả, xác, sai số phạm vi cho phép - Hỗ trợ tự động tăng giảm tài nguyên hệ thống tùy theo lưu lượng truy cập để tối ưu chi phí Yêu cầu bảo mật - Hệ thống phải đảm bảo bảo mật thông tin người dùng, tránh bị lộ liệu - Tránh dạng công internet document, khoa luan7 of 98 tai lieu, luan van8 of 98 Công nghệ sử dụng General - Sonarqube platform mã nguồn mở giúp kiểm tra chất lượng code dự án, viết java hổ trợ nhiều ngơn ngữ khác nhau: PHP, Ruby, Java (bao gồm Android), C#, JavaScript, TypeScript, C/C++, Kotlin, Go, COBOL, PL/SQL, PL/I, ABAP, VB.NET, VB6, Python, RPG, Flex, Objective-C, Swift, CSS, HTML, XML hỗ trợ database để lưu trữ kết quả: MySql, Postgresql Các tiện ích chính: o Phát bug o Phát code smell, duplicate o Tính tốn độ bao phủ Unit test (Unit-test coverage) o Tính tốn technical debt o So sánh chất lượng code so với lần kiểm tra trước Back-End - - - Spring framework, Spring Boot, Spring Cloud, Spring Security, Spring data, làm web framework cho phía back-end Spring cung cấp mơ hình lập trình cấu hình tồn diện cho ứng dụng doanh nghiệp dựa Java đại - loại tảng triển khai Yếu tố Spring hỗ trợ sở hạ tầng cấp ứng dụng: Spring tập trung vào "hệ thống ống nước" ứng dụng doanh nghiệp để nhóm tập trung vào logic nghiệp vụ cấp ứng dụng, mà ràng buộc khơng cần thiết với mơi trường triển khai cụ thể JWT: Sử dụng làm xác thực người dùng Hibernate: ORM Redis cache: Nguồn mở, kho lưu trữ liệu nhớ hàng triệu nhà phát triển sử dụng làm sở liệu, nhớ cache, công cụ phát trực tuyến môi giới tin nhắn Apache Kafka: Apache Kafka tảng phát trực tuyến kiện phân tán mã nguồn mở hàng nghìn cơng ty sử dụng cho đường ống liệu hiệu suất cao, phân tích luồng, tích hợp liệu ứng dụng quan trọng Front-End - ReactJS: Thư viện JavaScript để xây dựng giao diện người dùng dựa thành phần document, khoa luan8 of 98 tai lieu, luan van9 of 98 - - MobX: Cho phép bạn quản lý trạng thái ứng dụng bên ngồi khung giao diện người dùng Điều làm cho mã bạn tách rời, di động Open street map (OSM) dự án hợp tác nhằm tạo sở liệu địa lý chỉnh sửa miễn phí giới Bootstrap: Bộ cơng cụ giao diện người dùng mạnh mẽ, mở rộng đóng gói nhiều tính Xây dựng tùy chỉnh với Sass, sử dụng hệ thống lưới thành phần dựng sẵn, đồng thời đưa dự án vào sống với plugin JavaScript mạnh mẽ Cloud - - - Gitlab: Từ lập kế hoạch đến sản xuất, tập hợp nhóm lại với ứng dụng Gửi mã bảo mật nhanh hơn, triển khai lên đám mây thúc đẩy kết kinh doanh Azure DevOps: Lập kế hoạch thông minh hơn, cộng tác tốt giao hàng nhanh với loạt dịch vụ nhà phát triển đại Docker: Loại bỏ tác vụ cấu hình lặp lặp lại, thơng thường sử dụng suốt vòng đời phát triển để phát triển ứng dụng nhanh chóng, dễ dàng di động - máy tính để bàn đám mây Nền tảng tồn diện từ đầu đến cuối Docker bao gồm giao diện người dùng, CLI, API bảo mật thiết kế để hoạt động tồn vịng đời phân phối ứng dụng AWS: Tận dụng sở hạ tầng điện tốn tồn cầu mở rộng, đáng tin cậy an toàn document, khoa luan9 of 98 tai lieu, luan van10 of 98 Thiết kế hệ thống Xây dựng biểu đồ Use case (Use case diagram) Hình: Biểu đồ use case hệ thống 10 document, khoa luan10 of 98 tai lieu, luan van14 of 98 Phân tích liệu Hình: Biểu đồ cho tính phân tích liêuk Kiến trúc micro-service - 14 Sử dụng kiến trúc micro service cho hệ thống Chia nghiệp vụ thành phần tách biệt riêng độc lập với document, khoa luan14 of 98 tai lieu, luan van15 of 98 Hình: Kiến trúc microservice Xác thực phân quyền Role-Base Access Control - - 15 Có nhiều lựa chọn cho loại acess control: o Kiểm soát truy cập bắt buộc (MAC) o Kiểm soát truy cập tùy ý (DAC) o Kiểm soát truy cập dựa quyền (RBAC) o … Lựa chọn Role-Base access control cho hệ thống document, khoa luan15 of 98 tai lieu, luan van16 of 98 Hình: Role-Base access control Phân quyền cho hệ thống micro-service - - 16 Có nhiều cách tiếp cận cho việc xác thực phân quyền người dùng hệ thống microservice: o Xác thực phân quyền service o Xác thực phân quyền toàn cục (tại service cho tất service lại) o Xác thực toàn cục phân quyền chỗ Mỗi cách tiếp cận có ưu nhược điểm riêng Hệ thống chọn cách thứ 3: Xác thực toàn cục phân quyền chỗ document, khoa luan16 of 98 tai lieu, luan van17 of 98 Hình: Xác thực phân quyền người dùng Cấu hình tập trung - - 17 Cấu hình tập trung đề cập đến việc lưu trữ liệu dạng cấu hình vị trí chung mà máy tính khác truy cập Cấu hình tập trung đơn giản hóa việc quản lý liệu cấu hình chia sẻ cài đặt cấu hình máy chủ Một tính thú vị có Máy chủ cấu hình Spring Cloud tự động làm Bất thay đổi cam kết với kho lưu trữ git, cấu hình ứng dụng tự động làm document, khoa luan17 of 98 tai lieu, luan van18 of 98 Hình: Cấu hình tập trung sử dụng Spring cloud 18 document, khoa luan18 of 98 tai lieu, luan van19 of 98 Quy trình vận hành phát triển Agile scrum - - Một số mơ hình phát triển phần mềm như: o Mơ hình thác nước (water fall) o Mơ hình chữ V o Mơ hình Agile Scrum Áp dụng quy trình phát triển phần mềm agile scrum cho dự án Waterfall hoạt động tốt dự án hoàn thành theo kiểu tuyến tính khơng cho phép quay lại giai đoạn trước Agile tập trung vào quy trình làm việc thích ứng, đồng thời Các phương pháp Agile chia dự án thành giai đoạn nhỏ hơn, lặp lặp lại Hình: Quy trình Agile Scrum CI/CD Tổng quan CI/CD - CI/CD đôi công việc, bao gồm CI (Continuous Integration) CD (Continuous Delivery), ý nói q trình tích hợp (integration) thường xun, nhanh chóng code thường xuyên cập nhật phiên (delivery) 19 document, khoa luan19 of 98 tai lieu, luan van20 of 98 Hình: Quy trình CI/CD GitLab CI Hình: Gitlab CI/CD 20 document, khoa luan20 of 98 tai lieu, luan van21 of 98 Git Flow Hình: Git Flow 21 document, khoa luan21 of 98 tai lieu, luan van22 of 98 Triển khai hệ thống Kiến trúc mạng - Toàn dịch vụ triển khai bên VPC (Virtual Private Cloud) – Đám riêng ảo Toàn yêu cầu đến dịch vụ qua internet gateway mà trực tiếp vào dịch vụ Hình: Kiến trúc mạng Kiến trúc đám mây - - 22 Tất tài nguyên triển khai AWS CloudFormation: o VPC-stack: Sử dụng để triển khai tài nguyên AWS đám mây riêng ảo Chẳng hạn mạng, mạng con, bảng lộ trình, v.v o ECR-stack: Sử dụng để triển khai đăng ký docker (AWS ECR) o Resource-stack: Sử dụng để triển khai tài nguyên cần thiết cho phía back-end phía front-end Chẳng hạn sở liệu, redis, S3, Cloud Front, v.v o ECS-stack: Sử dụng để triển khai cụm back-end side - Tài nguyên đám mây cho phía front-end o S3: Nhóm S3 định cấu hình để lưu trữ trang web tĩnh giao diện người dùng o CloudFront: Cung cấp ứng dụng API cách an toàn cho khách hàng toàn cầu với độ trễ thấp, tốc độ truyền cao Tài nguyên đám mây cho phía back-end document, khoa luan22 of 98 tai lieu, luan van23 of 98 - 23 o Tất tài nguyên AWS cần thiết sử dụng cho phía back-end đưa vào mạng riêng o Tất dịch vụ triển khai thành cụm giống Mỗi dịch vụ có cân tải (Load Balancer) riêng (để tự động phân phối lưu lượng ứng dụng đến), Auto Scaling (để chia tỷ lệ tài nguyên cần thiết) tường lửa (nhóm bảo mật) để hạn chế quyền truy cập o Để triển khai phiên dịch vụ mới, hệ thống lấy docker image từ AWS ECR bắt đầu vùng chứa Sau triển khai, phiên Nhóm mục tiêu AWS giám sát Bộ cân tải có thông tin phiên o Trước ứng dụng khởi động, ứng dụng phải truy cập vào trình quản lý AWS Secret để lấy liệu nhạy cảm cập nhật cấu hình (chẳng hạn thông tin đăng nhập sở liệu, khóa bí mật, v.v o Mỗi hàm lambda cấu hình kiện để kích hoạt cơng việc theo lịch trình (chẳng hạn xóa liệu cũ, đồng hóa với Datahub, v.v.) o Tất thông tin nhật ký từ chức Lambda AWS ECS gửi hiển thị AWS Cloud Watch Giao tiếp phía front-end phía back-end o API Gateway thiết lập để thu thập tất RestAPI tất dịch vụ Ngoài ra, API Gateway “máy chủ ổ cắm web” (web socker server) sử dụng để gửi thông báo đến phía front-end o CORS kích hoạt để hạn chế việc truy cập RestAPI API Gateway Nó hạn chế yêu cầu HTTP có nguồn gốc chéo khởi tạo từ tập lệnh chạy trình duyệt o Vì dịch vụ back-end định cấu hình mạng riêng, API Gateway phải sử dụng Liên kết VPC để cấp quyền truy cập document, khoa luan23 of 98 tai lieu, luan van24 of 98 Hình: Kiến trúc đám mây 24 document, khoa luan24 of 98 tai lieu, luan van25 of 98 Hình: Kiến trúc cloud AWS 25 document, khoa luan25 of 98 tai lieu, luan van26 of 98 Tài liệu tham khảo - 26 https://spring.io/ https://reactjs.org/ https://microservices.io/ https://topdev.vn/ https://dzone.com/ https://www.docker.com/ https://docs.aws.amazon.com/ document, khoa luan26 of 98 tai lieu, luan van27 of 98 Công việc kết Công việc giao - Tham gia phát triển tính dự án theo yêu cầu Bảo trì dự án vá lỗi cho dự án có sẵn công ty Hỗ trợ hướng dẫn bạn thực tập công ty Nhận xét người hướng dẫn - Tên công ty: Công ty Cổ phần Eastgate Software Địa chỉ: Tòa nhà 187 Nguyễn Lương Bằng, Quang Trung, Đống Đa, Hà Nội Người hướng dẫn: Nguyễn Bá Sơn Chức vụ: Trưởng khối giải pháp phần mềm doanh nghiệp SĐT: 0989897183 Email: hieu.nguyentrung@wecommit.com.vn o Xác nhận công việc giao có báo cáo ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………… o Kết đạt có báo cáo ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………… o Ý thức, thái độ làm việc, học tập sinh viên thời gian thực tập công ty ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… …………………………………… o Những vấn đề cần góp ý với sinh viên/ nhà trường để cơng việc tiến hành tốt 27 document, khoa luan27 of 98 tai lieu, luan van28 of 98 ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… …………………………………… o Những ý kiến khác (có tiếp tục nhận sinh viên làm việc công ty không, …) ……………………………………………………………………………………… …………………………………… o Điểm đánh giá cho sinh viên cụ thể (thang điểm 10, làm tròn tới 0.5) ……………………………………………………………………………………… ………………………………… o Ký đóng dấu cơng ty 28 document, khoa luan28 of 98 ... of 98 Phân tích hệ thống Mục đích Xây dựng tảng SPM (signal performance mesurement) dựa đám mây cho phép quan quản lý giao thông chuyên gia ngành giao thông để cải thiện hiệu nút giao thông trọng... thống - Chạy ổn đinh, tính khả dụng vụ cao (high avaibility) - Hiệu suất hoạt động tốt - Dữ liệu phân tích hiệu quả, xác, sai số phạm vi cho phép - Hỗ trợ tự động tăng giảm tài nguyên hệ thống. .. hệ thống Yêu cầu giao diện - Giao diện dễ sử dụng, thân thiện với người dùng - Hỗ trợ đa ngôn ngữ, nhiều chủ đề (theme) - Tương thích với nhiều kích thước hình loại thiết bị khác Yêu cầu hệ thống

Ngày đăng: 16/02/2023, 21:41

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan