MIN-roamer - Assignment 2 — Team Formation and Topic Selection

MIN-roamer MIN-roamer 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

Assignment 2 — Team Formation and Topic Selection

ItemContent
CourseSoftware Engineering (Fuzhou University · Maynooth International Engineering College)
Assignment RequirementsClass CSDN community: Second assignment — Team up and Topic selection
Team NameMIN-roamer
Project NameTravel Planning Social Platform (nickname: MIN)
CSDN Team AccountMIN-roamer Team Account
GitHub OrganizationMIN-roamer-SoftwareEngineering-2026
Assignment ObjectiveComplete team formation and topic selection; clarify the project plan, division of labor and performance assessment scheme; analyze the topic with the NABCD model
Other ReferencesThe Method of Construction (Zou Xin); TREK open-source travel planning project (github.com/mauriceboe/TREK)

Contents

1. Team Introduction

2. Project Introduction

3. Team Project Plan

4. Project Division of Labor

5. Performance Assessment

6. Requirements Specification Document

1. Team Introduction

1.1 Team Name & Meaning

Team Name: MIN-roamer (Min · Roamer)

MIN: "Min" (闽), the abbreviation for Fujian, echoing our positioning with Fuzhou (Fujian) as the demo city.

roamer: a wanderer, echoing our travel and roaming theme.

Our project is the Travel Planning Social Platform, nicknamed MIN — plan trips visually with maps + notes, and let users "find mates" to travel together. The team name MIN-roamer captures this positioning in one sentence: Roam Min, meet your mates.

Team Slogan: Roam Min, find your mates.

1.2 Team Members

14 members in total, with 1 team leader; divided into five development groups (A–E) plus an AI group by functional module.

Member 1 | Chen Hang(陈杭)— Team Lead

Student ID: 832401103

CSDN: Chen Hang's csdn

Personality: Introvert

Technical Expertise: Project progress control, backend development

Hobbies: Long-distance running, open source

Role: Project Management (Team Lead) / Backend

Slogan: Life is a long-term mean reversion.

Member 2 | Chen Kongzhou(陈孔舟)

Student ID: 832401104

CSDN: Chen Kongzhou's csdn

Personality: Patient, careful, gentle, easygoing and responsible

Technical Expertise: Use AI tools to assist frontend and backend coding, look up technical materials, debug simple code, write project documents

Hobbies: Listening to music, ball games, watching movies, FPS games, Go

Role: Backend Development

Slogan: Keep improving, learn by doing.

Member 3 | Qiu Yuqi(邱钰琪)

Student ID: 832401120

CSDN: Qiu Yuqi's csdn

Personality: Pragmatic and logical (ISTP)

Technical Expertise: Frontend development and UI visual design

Hobbies: Sleeping, playing games

Role: Frontend Developer & UI Designer

Slogan: Keep it simple, make it usable.

Member 4 | Zha Shi(查实)

Student ID: 832401102

CSDN: Zha Shi's csdn

Personality: Honest and straightforward

Technical Expertise: Frontend development

Hobbies: Basketball

Role: Frontend Developer

Slogan: Solve problems step by step.

Member 5 | An Liuzhi(安留智)

Student ID: 832401101

CSDN: An Liuzhi's csdn

Personality: Warm-hearted and approachable

Technical Expertise: Frontend page development and function realization

Hobbies: Listening to music

Role: Frontend Developer

Slogan: Small progress adds up.

Member 6 | Master Oogway(庄益君)

Student ID: 832401130

CSDN: Master Oogway's csdn

Personality: Hardworking, patient, eager to keep learning

Technical Expertise: Backend development

Hobbies: Coding, gaming, hiking

Role: Backend Developer

Slogan: Slow progress is still progress.

Member 7 | Wenjie Huang(黄文杰)

Student ID: 832401206

CSDN: Wenjie Huang's csdn

Personality: Hands-on and methodical; good at breaking down complex problems

Technical Expertise: Frontend development, UI/UX design, C++, Python

Hobbies: DIY electronics, hiking, competitive programming, video games

Role: Frontend & UI/UX Developer

Slogan: Measure twice, solder once.

Member 8 | Yuhe Jiang(江余赫)

Student ID: 832402107

CSDN: Yuhe Jiang's csdn

Personality: Curious, responsible, eager to learn new things

Technical Expertise: Python, Java, Deep Learning, frontend development

Hobbies: Doomscrolling

Role: Frontend Developer

Slogan: Never settle.

Member 9 | Chen Yibing(陈仪冰)

Student ID: 832401107

CSDN: Chen Yibing's csdn

Personality: Responsible, thoughtful, eager to learn and willing to take challenges

Technical Expertise: Basic programming, AI-assisted coding & debugging, web development, API interaction, project documentation

Hobbies: Listening to music, learning English, exploring new technologies

Role: Frontend Design

Slogan: Stay curious, keep learning, and grow through practice.

Member 10 | Wang Jingling(王婧菱)

Student ID: 832402119

CSDN: Wang Jingling's csdn

Personality: Introverted but glad to communicate with teammates

Technical Expertise: C/C++, UI design, video editing, technical document writing

Hobbies: Photography, writing, video editing

Role: UI Designer, Document Producer

Slogan: Design tells stories.

Member 11 | Qiyang Chen(陈启扬)

Student ID: 832401105

CSDN: Qiyang Chen's csdn

Personality: Curious, responsible, creative, eager to explore new technologies

Technical Expertise: C/C++, Python, embedded systems, basic web development

Hobbies: Coding, electronics, playing the piano, gaming

Role: Backend Developer

Slogan: Stay curious, keep learning, and never stop exploring.

Member 12 | Huang Qiwei(黄其威)

Student ID: 832401208

CSDN: Huang Qiwei's csdn

Personality: Quiet, dependable and detail-obsessed; thinks before speaking and always delivers on time

Technical Expertise: Frontend development, UI/UX design

Hobbies: Badminton and listening to music

Role: Frontend Developer & UI/UX Designer

Slogan: Design simple, build solid, deliver on time.

Member 13 | Zou Jiayu(邹佳妤)

Student ID: 832402130

CSDN: Zou Jiayu's csdn

Personality: Logical and pragmatic (ISTP)

Technical Expertise: Backend development

Hobbies: Playing games

Role: Backend Developer

Slogan: No more eight early.

Member 14 | Anson(康赐齐)

Student ID: 832401115

CSDN: Anson's csdn

Personality: Calm, steady, capable of completing tasks with precision

Technical Expertise: Frontend development, algorithm and mathematical-related work

Hobbies: Coding, Designing

Role: Frontend Developer

Slogan: Always believe that wonderful things are about to happen.

1.3 Team Vision

We chose the Travel Planning Social Platform because of a real pain point: planning a group trip means switching between maps, notes and chat records, and searching everywhere for "what's good to eat, how to get there".

We want to achieve three things:

1. Make planning intuitive: use "map + sticky notes" to drag a trip onto the map, with the route clear at a glance.

2. Make local info ready to use: do Fuzhou deep and well as the demo city, with curated attractions, food and transport guides ready out of the box.

3. Let travel have companions: through the community square and "find mates", let people heading to the same place find each other.

We don't pursue being large and all-inclusive; instead we do one city (Fuzhou) fully and well first, building a product that "really works and people want to use"; later, switch cities and pull local data via external APIs.

1.4 Team Photo

img

1.5 Team Logo

The logo uses a "map pin" outline, with a deep-blue "M" mountain and three water-blue ripples inside, symbolizing Min mountains and Min waters; the warm-orange dot on top represents the destination of a journey and the warmth of meeting mates. The palette is consistent with the PPT and requirements document (deep sea blue + warm orange).

2. Project Introduction

2.1 Background & Reasons

Existing travel products are "booking-heavy, planning-light": Ctrip and Fliggy focus on ticket/hotel booking with a weak planning experience; Mafengwo and Qyer are content communities with crude planning tools.

Collaborative trip planning is a real need but ignored: when traveling together, there is no lightweight, visual, multi-user editable trip tool.

The "find mates" demand is real: big platforms turn it into an info feed, lacking a lightweight solution tied to planning.

Insufficient local depth: generic platforms cover a single city's deep content (e.g., Fuzhou food, transport) poorly.

For these reasons, we chose a Fuzhou-first, visual planning + social companionship travel platform with a clear differentiation, technically within the course scope.

2.2 Project Description

Travel Planning Social Platform — a Web application (mobile-first) that combines trip planning, destination information and social sharing.

FeatureDescription
PlanningVisual trip planning with map + sticky notes
Destination InfoFuzhou preset attractions/food/transport, city switching, weather
CollaborationMulti-user trip editing (Owner / Member)
BudgetExpense records, budget control, charts
CommunityPublish trips, browse/like/favorite others' trips
Find MatesPublish/browse travel companion posts
AI AssistantAI trip draft generation + travel Q&A

Tech Stack: Frontend React + Vite + TypeScript + Tailwind CSS + Leaflet + Zustand; Backend Java + Spring Boot + Spring Data JPA; Database H2; Auth JWT; AI via Qwen API (Tongyi Qianwen).

2.3 NABCD Analysis

N — Need

Group travel lacks a visual, collaborhttps://i-blog.csdnimg.cn/communtity/4f9c316cd89d47eaaa6f4d2a9dccb562.png "#left") ative planning tool; local (Fuzhou) deep information is scattered and inefficient to gather; the "find mates" companion need is not well served by existing products.

A — Approach

Map + sticky notes visual planning: drag to edit, auto-connect routes; Fuzhou curated data, ready out of the box; multi-user collaboration on trips; an AI assistant generates drafts and answers questions; community square + find mates forms a social loop; built-in budget management.

B — Benefit

Lower the planning bar; save time (local data ready); AI boosts efficiency, social boosts stickiness; more "city-savvy" than generic tools, better at "planning" than content communities.

C — Competitors

CompetitorStrengthOur difference
Ctrip / FliggyBookingWe focus on planning & social, not booking
Mafengwo / QyerContentOur planning tool is stronger & visual
AmapRoutesWe add trip organization, collaboration, social
Notion / MubuNotesWe have maps, local data, find-mates

D — Delivery

Course project: do Fuzhou deep and well first, mobile-first Web app; grow content via community UGC (review notes, mate posts); later expand to other cities (pull data via external APIs).

3. Team Project Plan

3.1 Development Milestones (4 Phases)

PhaseTimeMain TasksDeliverable
Phase 1: Setup + User SystemWeeks 7–8Init Git repo, scaffold frontend/backend, configure ESLint/Prettier, get register/login workingRegister/login works, blank home page
Phase 2: Core Trip FeaturesWeeks 8–10Trip CRUD, map display, place search, sticky notes, basic weather/food, expense CRUDCreate trips, plan on map, add expenses, view weather/food
Phase 3: Community + AI + PolishWeeks 11–12Route connection, AI trip generation, community, mate posts, collaboration, charts, UI polishFeature-complete usable version
Phase 4: Testing & FinalizeWeeks 13–14Overall testing & bug fixing, docs, demo data, defense PPT/videoFinal submission version

P0/P1/P2 priorities are described in the Requirements Specification Document.

4. Project Division of Laborhttps://i-blog.csdnimg.cn/communtity/55d35b0b2b1d4c71a55ea6875ebad013.png "#left")

4.1 Division Diagram

Team Division Diagram

Contribution is in two tiers: Lead / Architecture 8% · other members 7%, totaling 100%. This is an estimated ratio; the actual score will be adjusted based on each member's actual contribution.

5. Performance Assessment

5.1 Objective

Fairly and transparently measure each member's actual contribution, motivate members to take initiative, ensure on-time quality delivery, and provide an objective basis for the final defense and course grade.

5.2 Dimensions & Weights

DimensionWeightDescription
Code & Features40%Quantity, quality and acceptance of completed modules
Docs & Design15%Writing and maintaining requirements / API / database docs
Collaboration & Process20%Code review, task response, meeting attendance, Git discipline
Defense & Demo15%Ability to explain one's module and answer questions
Peer Review10%Anonymous peer scoring, reflecting real collaboration

Total = Code×40% + Docs×15% + Collaboration×20% + Defense×15% + Peer×10% (out of 100)

5.3 Quantitative Criteria

① Codehttps://i-blog.csdnimg.cn/communtity/cbe237bff13b4dcd9e0ae78f46527c04.png "#left") & Features (40 pts)

IndicatorScoringData source
Feature completionWhether assigned P0/P1 features are all done and acceptedMilestone acceptance records
Code qualityWhether passing Code Review, following ESLint/PrettierGit PR records
Commit activityWhether pushing daily without long gapsGit commit records
DifficultyExtra points for core modules (map/sticky notes/AI)Team lead evaluation

② Docs & Design (15 pts)

Whether submitting the module's requirements / API / database design on time; whether the API docs are well-formatted and usable for other groups.

③ Collaboration & Process (20 pts)

IndicatorDescription
Code ReviewActively review others' PRs, follow the PR flow
ResponsivenessResponse speed in the group chat / on tasks
Meeting attendanceAttending group meetings and milestone reviews
PunctualityFinishing self-claimed tasks on time

④ Familiarity with One's Own Work (15 pts)

Whether able to explain the design, technical difficulties and solutions of one's module.

⑤ Peer Review (10 pts)

Anonymous peer scoring (1–10) at the end of each stage, averaged, to avoid "free-riding".

5.4 Bonus & Penalty

TypeItemPoints
BonusFinishing early and proactively helping other groups+5
BonusSolving key technical difficulties (e.g., map drag, AI proxy)+5
BonusImproving project infrastructure (i18n, CI, deployment)+5
PenaltyRepeatedly missing self-claimed tasks without explanation−10
PenaltyPushing directly to protected branches / breaking main−10
PenaltyPlagiarizing code or faking contributionsVeto (0 pts)

5.5 Process

1. Task claiming: at the start of each milestone, members claim tasks on the task board.

2. Stage self-review: at the end of each milestone, members submit self-reviews.

3. Team lead scoring: the lead scores each dimension based on Git records + acceptance results.

4. Peer review: members anonymously score each other.

5. Announcement & appeal: results are announced; members can appeal for a review.

5.6 Application of Results

The performance score is an important basis for the final course grade.

6. Requirements Specification Document

The Requirements Specification Document is submitted as an attachment to this blog, including: project overview, tech stack selection, detailed requirements for the functional modules (with acceptance criteria), database design, API design, Git collaboration rules, and development milestones.

Requirements Specification Document.pdf 462.44K

...全文

相关推荐

评论
收藏 已收藏
分享
返回顶部