Extreme Programming

832202213 - 吴杨顺 2024-11-26 23:08:44
Course for This Assignment2401_MU_SE_EE308
First memberLiu Danni (MU: FZU:832202208)
Second memberWu Yansghun (MU: FZU:832202213)
Assignment requirementsContact management system
Github Addresshttps://github.com/lnd2014/ExtremeProgramming
Other References2021最新阿里代码规范

Catalog

  • 1.Github's submission log
  • 2.Description of functional implementation ideas
  • 2.1 Bookmark/Favorite Contacts
  • 2.2 Add Multiple Contact Methods
  • 2.3 Import and Export Contacts
  • 3.Functional implementation
  • 3.1 Bookmark contacts
  • 3.2 Add multiple contact methods
  • 3.3 Import and Export
  • 4.Division of labor
  • 5.Difficulties encountered in cooperation and solutions
  • 5.1 The data format does not match
  • 5.2 State management problem
  • 6.PSP table


1.Github's submission log

  • main branch

    在这里插入图片描述

  • new branch

    在这里插入图片描述


2.Description of functional implementation ideas

2.1 Bookmark/Favorite Contacts

Objective: Allow users to mark certain contacts as favorites for quick access.

Implementation Ideas:

  • UI Element: Introduce a "Star" icon next to each contact in the list. Users can click this icon to toggle the bookmark status.
  • Database Schema: Add a star boolean field to the contacts table in your database to track whether a contact is bookmarked.

2.2 Add Multiple Contact Methods

Objective: Enable users to store multiple contact methods for a single contact.

Implementation Ideas:

  • UI Design: Set a detail link next to the contact, click to enter the details page to edit the contact information
  • Data Structure: Use a relational database design where a contact can have multiple entries in a contact_methods table, each linked to the main contacts table via a foreign key.
  • Validation: Ensure that the input methods are validated for correctness (e.g., email format, phone number format).
  • Edit and Delete: Allow users to edit or delete individual contact methods without affecting the main contact information.

2.3 Import and Export Contacts

Objective: Enable users to import and export their contacts to and from an Excel spreadsheet.

Implementation Ideas:

(1)Export:

  • Data Retrieval: Fetch all contacts and their details from the database.
  • Formatting: Ensure that the data is formatted correctly in the spreadsheet, with appropriate headers and data types
  • File Download: Provide a download button that users can click to download the generated Excel file.

(2) Import:

  • File Upload: Allow users to upload an Excel file through a file input in the UI.
  • Data Parsing: Read the Excel file and parse the data, ensuring that it matches the expected format.
  • Data Validation: Validate the imported data for completeness and correctness before adding it to the database.

3.Functional implementation

3.1 Bookmark contacts

You can mark a contact as a favorite. Contacts marked as favorites can be unfavorites. Contacts that are marked as favorites will appear on the Favorites page. Make it easy to find and modify favorites

3.2 Add multiple contact methods

A contact can add multiple categories of information, such as phone, address, email, and so on. You can add multiple contact information to each category, associating a single contact with multiple contact information.

3.3 Import and Export

  • Import: By importing the xlsx or xlx form of contact information in the correct format, you can accurately identify the corresponding information and add the information to the contact management system.
  • Export: The contact information in the contact management system is exported as an xlsx table. The contact information in the table is distributed in the correct format. Each behavior is a different contact, each list a different type of contact information, and record whether the contact is favorites.

4.Division of labor

Liu DanniWu Yangshun
Front-end frameFront-end page function implementation
Implementation of front and back end interactionFront-end page optimization
Back-end frameBlog writing
Back-end function implementation
Database implementation

5.Difficulties encountered in cooperation and solutions

5.1 The data format does not match

Description of the problem: The format of the data returned by the back-end is inconsistent with the format expected by the front-end, causing the front-end to fail to parse correctly.

Solution:
(1)Unified Data Format: Ensure that the data format returned by the back end is consistent with the front-end expectations.
(2)API Documentation: Provides detailed API documentation that specifies data structures and types that both front and back end developers should follow.

5.2 State management problem

Description of the problem: Application status management is chaotic, resulting in data inconsistency or difficulty to maintain.

Solution:
Unified status management: ensures unified status management and operations, avoiding multiple decentralized management.


6.PSP table

ModulesEstimated Time(hour)Actual Time(hour)
Planning0.51
Analysis and design22
Front-end810
Back-end810
Test24
Debug24
Blog12
Total23.533
...全文
31 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

170

社区成员

发帖
与我相关
我的任务
社区描述
2401_MU_SE_FZU
软件工程 高校
社区管理员
  • FZU_SE_TeacherL
  • 助教-吴可仪
  • 助教-孔志豪
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧