EE308FZ_Sixth Assignment_Beta Sprint_Sprint Essay 3
| Assignment 6 | Beta Sprint |
|---|---|
| Course | EE308FZ[A] — Software Engineering |
| Class Link | 2401_MU_SE_FZU |
| Requirements | Teamwork—Beta Sprint |
| Team Name | FZUGO |
| Objective | Sprint Essay 3_Day5-Day6 (12.15-12.16) |
| Other Reference | 1. WeChat Mini Program Design Guide 2. Javascript Style Guide 3. WeChat Developer Tools 4. The Art of Construction |
Catalog
- 1. SCRUM Section
- 1.1 Team Achievements
- 1.2 Achievements Showcase
- 1.2.1 Front and back end collaboration achievement
- 1.2.2 Improve homepage fluency and accuracy
- 1.3 Questionnaire survey feedback collection
- 1.4 SCRUM Meeting Photos
- 2. PM Report
- 2.1 Expected Tasks and Completed Tasks
- 2.2 Project Burn-Up Chart
- 3. Result Presentation
The completed task
- Map and Weather Module Integration and Bug Fixes
- System Stability Testing
- User Feedback Feature Collection
1. SCRUM Section
1.1 Team Achievements
| Team Member | Completed Tasks | Time Spent | Issues Encountered | Tomorrow’s Schedule |
|---|---|---|---|---|
| 王希瑞 | Map Module Integration and Bug Fixes | 3h | None | Fourth Beta Test Report Writing |
| 刘丹妮 | Map Module Integration and Bug Fixes | 3h | None | Fourth Beta Test Report Writing |
| 张子晔 | System Stability Testing | 2.5h | None | Ensure system stability under high loads |
| 寿宇浩 | System Stability Testing | 2.5h | None | Ensure system stability under high loads |
| 谢荣城 | Weather Module Integration and Bug Fixes | 3h | None | Improve frontend performance and user experience |
| 张绍钰 | Weather Module Integration and Bug Fixes | 3h | None | Improve frontend performance and user experience |
| 吴杨顺 | User Feedback Feature Collection | 2h | None | improve interface efficiency |
| 唐宁蔚 | User Feedback Feature Collection | 2h | None | Optimize data storage |
| 周欣怡 | Third Beta Test Report Writing | 3h | None | Optimize data storage |
| 薛墨澜 | Third Beta Test Report Writing | 3h | None | Ensure system stability under high loads |
1.2 Achievements Showcase
1.2.1 Front and back end collaboration achievement
The mini program map interface integrates positioning, search, navigation and point of interest display and other functions. Users can view the current location in real time, query the target location, and plan walking. The interface supports map mode switching, point of interest display and custom markers, providing smooth interactive experience and multi-language support. This interface is suitable for travel navigation
(1) Map module integration
Map location clustering is a technology that classifies and integrates geographic location data according to specific rules, often used to optimize location-related applications, such as map navigation, location recommendation, and business display. Its core purpose is to group multiple locations that are geographically close or have similar characteristics in order to better present information, improve system efficiency, or improve user experience.

Clustering principle
Clustering refers to the grouping of a set of geographic location data points by their spatial location or other characteristics (such as category, purpose, etc.). Common clustering algorithms include K-means, DBSCAN, hierarchical clustering and so on. These algorithms automatically divide geographic locations into clusters by calculating the similarity or distance between locations, with locations in each cluster having a high degree of similarity.
- Corresponding code block
includePoints() {var points = Array.from(this.data.polyline[0].points); // 路径点数组this.mapCtx = wx.createMapContext('map'); // 地图上下文this.mapCtx.includePoints({padding: [100, 40, 20, 40], // 地图视野的边距points: points, // 包括的所有坐标点});
}
(2)Repair path the SDK planning interface is easy to get stuck
- Corresponding code block
qqmapsdk.direction({mode: 'walking', // 路径规划模式(步行)from: e.detail.value.start, // 起点to: e.detail.value.dest, // 终点success: function (res) {var ret = res.result.routes[0]; // 获取规划结果var coors = ret.polyline; // 获取路径压缩坐标数组var pl = [{ // 初始化路径点串,添加起点latitude: e.detail.value.start.split(",")[0],longitude: e.detail.value.start.split(",")[1],}];// 解压缩路径点串var kr = 1000000;for (var i = 2; i < coors.length; i++) {coors[i] = Number(coors[i - 2]) + Number(coors[i]) / kr;}// 将解压后的路径点依次存入 `pl` 数组for (var i = 0; i < coors.length; i += 2) {pl.push({latitude: coors[i],longitude: coors[i + 1],});}// 添加终点pl.push({latitude: e.detail.value.dest.split(",")[0],longitude: e.detail.value.dest.split(",")[1],});// 更新 `polyline` 数据,显示路径_this.setData({polyline: [{points: pl,color: '#58c16c', // 路线颜色width: 10, // 路线宽度borderColor: '#2f693c', // 边框颜色borderWidth: 2, // 边框宽度arrowLine: true, // 显示箭头}]});_this.includePoints(); // 调整地图视野},
});
1.2.2 Improve homepage fluency and accuracy
Home interface design is simple and intuitive, the top display Fuzhou University image and emblem, and provide a school introduction entrance, convenient for users to quickly understand the school information. Functional modules include map navigation, campus guide, location popularity and friendly links to meet users’ needs for campus travel and information inquiry. It also displays real-time weather information in Fuzhou, Fujian Province, and the bottom navigation bar provides a shortcut entry for users to quickly access related functions.
(1)Home scrolling test

- Corresponding code block
background: [],indicatorDots: true, //是否显示面板指示点indicatorColor: "white", //指示点颜色activeColor: "#2adce2", //当前选中的指示点颜色autoplay: true, //是否自动切换circular: true, //是否采用衔接滑动interval: 3500, //间隔时间duration: 1500, //滑动时间windowWidth: 400,dialogShow: false,buttons: [{text: '关闭'}],},/*** 生命周期函数--监听页面加载*/onLoad(options) {this.getWeather()var that = this;wx.getSystemInfo({success: function (res) {that.setData({windowWidth: res.windowWidth,})}})this.get()},/*** 生命周期函数--监听页面初次渲染完成*/onReady() {},/*** 生命周期函数--监听页面显示*/onShow() {},/*** 用户点击右上角分享*/onShareAppMessage() {},/*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh() {console.log("PullDownRefresh")this.get()},/*** 用户点击右上角分享到朋友圈*/onShareTimeline: function (res) {},//图片比例imgHeight: function (e) {var winWid = wx.getSystemInfoSync().windowWidth; //获取当前屏幕的宽度var imgh = e.detail.height; //图片高度var imgw = e.detail.width; //图片宽度var swiperH = winWid * imgh / imgw + "px" //等比设置swiper的高度。 即 屏幕宽度 / swiper高度 = 图片宽度 / 图片高度 ==》swiper高度 = 屏幕宽度 * 图片高度 / 图片宽度this.setData({Height: swiperH //设置高度})},// 获取轮播图get() {db.collection('media').where({name: "轮播图"}).get().then(res => {wx.stopPullDownRefresh()console.log('success', res.data[0].img)this.setData({background: res.data[0].img,})}).catch(err => {console.log('fail', err)})},// 学校官微toschool() {wx.previewImage({current: this.data.guanwei[0],urls: this.data.guanwei})},// 图书馆官微tolibrary() {wx.previewImage({current: this.data.guanwei[1],urls: this.data.guanwei})},// 财务处官微tofinance() {wx.previewImage({current: this.data.guanwei[2],urls: this.data.guanwei})},// 招生官微toenroll() {wx.previewImage({current: this.data.guanwei[3],urls: this.data.guanwei})},
- (2)Improving the accuracy of real-time weather temperature, humidity and wind direction involves a variety of technical approaches

- Corresponding code block
<view class="list-laba"><image class="list-laba-image" src="{{weather}}" /><view class="list-laba-text weather_text">校园天气</view></view><view class="card-container"><view class="card-container-weather"><view class="card-container-weather-city">{{school_information.location}}</view><view class="card-container-weather-tmp"><view>{{now.temp}}°</view><image class="card-container-weather-tmp-icon" src="https://icons.qweather.com/assets/icons/{{now.icon}}.svg"></image></view><view class="card-container-weather-info"><view>{{now.windDir}} {{now.windScale}}级</view><view>湿度 {{now.humidity}}%</view><view>气压 {{now.pressure}}Pa</view></view>
Optimize weather models with machine learning and data assimilation to improve forecast accuracy. High-resolution weather models and automated correction systems can also adjust data in real time to enhance forecast accuracy.
// 获取天气getWeather() {var that = thiswx.request({url: 'https://devapi.qweather.com/v7/weather/now?key=' + that.data.APIKEY + "&location=" + that.data.school_location,success(result) {var res = result.datathat.setData({now: res.now})}})}
-
Test range
Stability test: Simulate high concurrent user access and test the performance of the system under peak load.
Response speed testing: Measures the average time it takes a system to process a request to ensure that performance standards are met. -
Test results
Stability test results:
The system performs stably under standard loads without crashes or abnormal outages.In the high load test, the system has a slight performance degradation, but does not affect the normal operation of the core function.

1.3 Questionnaire survey feedback collection
The application of questionnaires in small programs is mainly used to collect user feedback. Through structured questions, users can efficiently obtain comments on the functionality, interface, and performance of the applet, helping the development team identify problems, optimize the experience, and improve the product.

1.4 SCRUM Meeting Photos

2. PM Report
2.1 Expected Tasks and Completed Tasks
| Overall Project Prediction Tasks | Completed? |
|---|---|
| Map module integration | Yes |
| Bug of path the SDK planning interface and weather | Yes |
| Test results | Yes |
| More Aesthetically Pleasing UI | Yes |
2.2 Project Burn-Up Chart

3. Result Presentation

相关文章:
EE308FZ_Sixth Assignment_Beta Sprint_Sprint Essay 3
Assignment 6Beta SprintCourseEE308FZ[A] — Software EngineeringClass Link2401_MU_SE_FZURequirementsTeamwork—Beta SprintTeam NameFZUGOObjectiveSprint Essay 3_Day5-Day6 (12.15-12.16)Other Reference1. WeChat Mini Program Design Guide 2. Javascript Style Guid…...
Eureka学习笔记-服务端
Eureka学习笔记 服务端 模块设计 Resources :这部分对外暴露了一系列的 Restful 接口。Eureka Client 的注册、心跳、获取服务列表等操作都需要调用这些接口。另外,其他的 Server 在同步 Registry 时也需要调用这些接口。Controller :这里提…...
无限次使用 cursor pro
github地址 cursor-vip 使用方式 在 MacOS/Linux 中,请打开终端; 在 Windows 中,请打开 Git Bash。 然后执行以下命令来安装: 部分电脑可能会误报毒,需要关闭杀毒软件/电脑管家/安全防护再进行 方式1:通过…...
网站运维之整站同步
网站运维之整站同步 1、使用rsync安装rsync工具子服务器生成密钥子服务器发送公钥到服务端(需要root允许ssh登录)服务端添加密钥子服务器尝试免密登录子服务器添加任务计划 2、开启root用户远程ssh3、ubuntu开启root用户 1、使用rsync 很多时候由于访问…...
【机器人】Graspness 端到端 抓取点估计 | 论文解读
在复杂场景中实现抓取检测,Graspness是一种端到端的方法; 输入点云数据,输出抓取角度、抓取深度、夹具宽度等信息。 开源地址:GitHub - rhett-chen/graspness_implementation: My implementation of Graspnet Graspness. 论文地…...
力扣2300.咒语和药水的成功对数(二分法)
根据 灵茶山艾府 题解所写 题目描述: 给你两个正整数数组 spells 和 potions ,长度分别为 n 和 m ,其中 spells[i] 表示第 i 个咒语的能量强度,potions[j] 表示第 j 瓶药水的能量强度。 同时给你一个整数 success 。一个咒语和药…...
WEB开发: 全栈工程师起步 - Python Flask +SQLite的管理系统实现
一、前言 罗马不是一天建成的。 每个全栈工程师都是从HELLO WORLD 起步的。 之前我们分别用NODE.JS 、ASP.NET Core 这两个框架实现过基于WebServer的全栈工程师入门教程。 今天我们用更简单的来实现: Python。 我们将用Python来实现一个学生管理应用࿰…...
云原生周刊:Kubernetes v1.32 正式发布
开源项目推荐 Helmper Helmper 简化了将 Helm Charts导入OCI(开放容器倡议)注册表的过程,并支持可选的漏洞修复功能。它确保您的 Helm Charts不仅安全存储,还能及时应用最新的安全修复。该工具完全兼容 OCI 标准,能够…...
京准电钟:电厂自控NTP时间同步服务器技术方案
京准电钟:电厂自控NTP时间同步服务器技术方案 京准电钟:电厂自控NTP时间同步服务器技术方案 随着计算机和网络通信技术的飞速发展,火电厂热工自动化系统数字化、网络化的时代已经到来。一方面它为控制和信息系统之间的数据交换、分析和应用…...
深入探索Flink的复杂事件处理CEP
深入探索Flink的复杂事件处理CEP 引言 在当今大数据时代,实时数据处理变得愈发关键。Apache Flink作为一款强大的流处理框架,其复杂事件处理(CEP)组件为我们从海量实时数据中提取有价值信息提供了有力支持。本文将详细介绍Flink…...
clickhouse-数据库引擎
1、数据库引擎和表引擎 数据库引擎默认是Ordinary,在这种数据库下面的表可以是任意类型引擎。 生产环境中常用的表引擎是MergeTree系列,也是官方主推的引擎。 MergeTree是基础引擎,有主键索引、数据分区、数据副本、数据采样、删除和修改等功…...
力扣hot100——哈希
1. 两数之和 class Solution { public:vector<int> twoSum(vector<int>& nums, int target) {vector<int> ans;map<int, int> mp;for (int i 0; i < nums.size(); i) {if (mp.count(target - nums[i])) {ans.push_back(mp[target - nums[i]])…...
少样本学习之CAML算法
上下文感知元学习(Context-Aware Meta-Learning, CAML) 概述 在机器学习和深度学习领域,元学习(Meta-Learning)旨在通过学习如何学习,使模型能够在面对新任务时快速适应。传统的元学习方法通常需要在特定…...
C# 中的闭包
文章目录 前言一、闭包的基本概念二、匿名函数中的闭包1、定义和使用匿名函数2、匿名函数捕获外部变量3、闭包的生命周期 三、Lambda 表达式中的闭包1、定义和使用 Lambda 表达式2、Lambda 表达式捕获外部变量3、闭包的作用域 四、闭包的应用场景1、事件处理2、异步编程3、迭代…...
网络编程 03:端口的定义、分类,端口映射,通过 Java 实现了 IP 和端口的信息获取
一、概述 记录时间 [2024-12-19] 前置文章: 网络编程 01:计算机网络概述,网络的作用,网络通信的要素,以及网络通信协议与分层模型 网络编程 02:IP 地址,IP 地址的作用、分类,通过 …...
制作项目之前的分析
对网页的分析可以从多个角度入手,具体包括内容分析、技术分析、用户体验分析。 以下是对网页分析的详细步骤,帮助你从不同维度评估一个网页的效果与质量: 1. 内容分析 内容是网页最核心的部分,确保其符合用户需求是网页设计的首…...
LeetCode 1925 统计平方和三元组的数目
探索平方和三元组:从问题到 Java 代码实现 在数学与编程的交叉领域,常常会遇到一些有趣且富有挑战性的问题。今天,就让我们深入探讨一下 “平方和三元组” 这个有趣的话题,并使用 Java 语言来实现计算满足特定条件的平方和三元组…...
java开发入门学习三-二进制与其他进制
常见的进制 常用的进制有二进制,八进制,十进制,十六进制。而我们最熟悉的是十进制,他们分别是怎么表达的呢? 定义不同的进制,写法不同 二进制(Binary): 使用前缀 0b 或…...
C/S软件授权注册系统(Winform+WebApi+.NET8+EFCore版)
适用软件:C/S系统、Winform桌面应用软件。 运行平台:Windows .NETCore,.NET8 开发工具:Visual Studio 2022,C#语言 数据库:Microsoft SQLServer 2012,Oracle 21c,MySQL8…...
Linux —— 管理进程
一、查看进程 运行态(Running) 定义:处于运行态的进程正在 CPU 上执行指令。在单 CPU 系统中,同一时刻只有一个进程处于运行态;在多 CPU 或多核系统中,可能有多个进程同时处于运行态。示例: 当…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
Nginx server_name 配置说明
Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
