assignment3_ gamers2

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

Gamers2 拾光 FindBack — Assignment 3: Requirement Analysis

ItemContent
CourseEE308FZ Software Engineering 2026 Fall — course community
Assignment requirementThird assignment — Requirement Analysis
Team nameGamers2, group 4 of the course
Project name拾光 FindBack — a campus lost-and-found platform with image-based candidate matching
Team accountGamers_2
Previous assignmentSecond assignment — team formation and topic selection
Goal of this assignmentBuild on the previous requirements draft to complete user scenarios, a UML class model, interface prototypes and verifiable requirements, delivering the SRS, the requirement-analysis presentation and this blog post
Current SRSv1.3, FB-SRS-2026-V1.3, 18 October 2026; cross-reviewed within the team, awaiting course review
ReferencesChapter 8 of The Method of Construction (Zou Xin), GB/T 9385-2008, GB/T 8567-2006, IEEE 830-1998, the assignment-2 materials and the frontend feasibility assessment

We want a lost item on campus to move from "someone posted about it" to "the item actually went back". This requirement analysis follows the loop of publishing, candidate matching, evidence verification, offline handover and two-sided confirmation, and states who performs each step, how exceptions are handled, and what evidence finally counts as acceptance.

This round produced a nine-chapter SRS and a 25-slide presentation (15 spoken slides, 3 appendix slides, 7 backup slides), covering 8 user scenarios, 14 core classes, 12 interface prototypes, and the acceptance and traceability links for 42 functional requirements. Product development, real user research and pilot validation proceed on the following plan; the items, scores and statistics shown in the prototypes are illustrative only.

Contents

目录

  • Gamers2 拾光 FindBack — Assignment 3: Requirement Analysis
  • Contents
  • 1 Team division of labour and contribution
  • 1.1 Role groups
  • 1.2 Work and actual contribution for this assignment
  • 2 Team organisation and collaboration
  • 2.1 Connecting roles through user scenarios
  • 2.2 Integrating and reviewing the deliverables
  • 3 Software Requirements Specification
  • 3.1 Document download
  • 3.2 Nine-chapter structure
  • 4 User scenarios and business flow
  • 4.1 Users and scope
  • 4.2 The eight scenarios
  • 4.3 Main flow illustrated with a folding umbrella
  • 5 Class model and domain model
  • 5.1 The fourteen core classes
  • 5.2 Two state machines
  • 5.3 Persistence view
  • 6 Interface prototypes
  • 6.1 Page structure
  • 6.2 Prototype showcase
  • 7 Functional requirements and traceability
  • 7.1 Requirement list and priorities
  • 7.2 Five-way traceability example
  • 8 Non-functional requirements and acceptance
  • 8.1 Performance and capacity targets
  • 8.2 Five acceptance categories
  • 8.3 Definitions of the three metrics
  • 9 Delivery form and technology choices
  • 9.1 H5 as the primary delivery, mini program for demonstration
  • 9.2 Backend and algorithm service
  • 10 Key difficulties and consistency revisions
  • 10.1 Entity tables cannot fully express the business model
  • 10.2 Similar images cannot prove ownership
  • 10.3 External notification and campus identity depend on platforms
  • 10.4 Case closure and metrics must stay consistent
  • 10.5 Unified baseline across the three deliverables
  • 10.6 The technology change and synchronising three deliverables
  • 11 Project plan and open items
  • 11.1 Planned schedule
  • 11.2 Open items
  • 12 Requirement analysis presentation
  • 13 References

1 Team division of labour and contribution

1.1 Role groups

The team has 14 members and keeps the six role groups defined in the second assignment (the membership has been adjusted since then). Item owners and finders are product user roles and are managed separately from the development groups below.

GroupMembers (count)Scope of responsibility
Project managementSun Zikun, Zhou Shengdong (2)Project scope, schedule and delivery coordination, consistency checks across the three deliverables
Product requirementsZhou Debin, Zheng Ziyang (2)User research, scenarios, SRS body, acceptance criteria
Frontend and UIWu Junjia, Zheng Zongyuan, Zuo Xiangrong, Li Jianhang (4)Prototypes, page interaction, H5 and mini-program differences, upload and messaging experience
Backend and operationsLuo Yuhan, Liu Peikun, Wang Qiushi, Xiao Zhengyu (4)Domain model, interfaces, identity and permissions, storage, transactions and deployment
AlgorithmLiu Junye (1)Image candidate retrieval, re-ranking and match-quality assessment
TestingXu Yichao (1)Requirement testability, exception paths, compatibility and acceptance design

1.2 Work and actual contribution for this assignment

The table below is the actual division of labour and contribution for this assignment, confirmed by all 14 members on the basis of document revisions and review records, and totalling 100%. The percentages are weighted by task difficulty and effort; they are not distributed evenly, nor carried over from the second assignment.

Student IDName and work description for this assignmentContribution
832401315Sun Zikun: coordinated scope and schedule; merged and final-reviewed the SRS; wrote the requirement traceability matrix (9.1) and the open-items list (9.2); organised the internal cross-review8%
832401313Luo Yuhan: set up the document repository and folder conventions; unified the Word template and figure/table numbering; exported the PDF; maintained the blog and attachment links; wrote section 2.4 (deployment and resource constraints) and section 7.6 (maintainability)12%
832401329Zhou Debin: designed and ran the user research (questionnaire and interviews); wrote the main body of Chapter 3 user scenarios (3.1–3.10)5%
832401327Zheng Ziyang: wrote the eight detailed scenario descriptions (3.2–3.9) and the use-case overview (3.1); wrote the terminology and abbreviations table (1.3); completed the data dictionary (6.3); presented this report10%
832401223Wu Junjia: led Chapter 5 interface prototypes, including the design rules (5.1) and the 12 key interface wireframes (5.2–5.13)6%
832401328Zheng Zongyuan: drew the page map (5.1, Figure 5-1) and the four page flows (5.1.1); wrote the prototype-to-acceptance mapping table5%
832401230Zuo Xiangrong: designed the publishing and image-upload interface chain (UI-02/03/05/12), including the interaction notes for automatic masking of ID documents5%
832401210Li Jianhang: designed the search and candidate-matching interfaces (UI-01/UI-04) and how match reasons are presented6%
832401213Liu Peikun: led the Chapter 4 class model, covering the attributes, operations and multiplicities of the 14 core classes (4.1–4.3); drew the ER view (4.5)6%
832401317Wang Qiushi: drew the two state machines (4.4); wrote the 10 business rules (6.4); wrote the security, privacy and compliance requirements (7.2, 7.7)8%
832401318Xiao Zhengyu: wrote the performance and capacity targets (7.1), reliability and idempotency (7.4) and maintainability (7.6)6%
832401212Liu Junye: designed the matching-related classes and the candidate scoring model; defined Hit@5 and the match-quality evaluation criteria (8.4)6%
832401319Xu Yichao: wrote the Chapter 8 acceptance and verification criteria (8.2–8.4, 8.7); test coverage and traceability6%
832401330Zhou Shengdong: tracked progress and delivery checks; compiled the device-compatibility matrix and test samples (7.5, 8.6); checked the consistency of the SRS, the presentation and this blog11%
Total14 members100%

Contribution review follows the principle proposed last time — "assess by task quality, collaboration and review records" — rather than counting files or commits. The actual share for this assignment and the projected share for the semester are recorded separately.

2 Team organisation and collaboration

2.1 Connecting roles through user scenarios

Collaboration in this round was organised around user scenarios. A single requirement change has to be checked against the business rules, the classes, the pages and the acceptance criteria at the same time. For example, "one-sided confirmation must not close a case" affects the case state, the uniqueness constraint on confirmations, the button feedback in UI-06, and the duplicate-request and concurrency tests — it cannot be handled by editing one sentence of text.

The requirements group explains why users act and what they expect; the frontend turns inputs, feedback and exceptions into pages; the backend reviews permissions, state and data consistency; the algorithm group explains what a candidate means and when matching degrades; the testing group rewrites requirements into executable checks; the team lead consolidates scope and open items.

2.2 Integrating and reviewing the deliverables

The version changes actually recorded in the files are: v1.0 added the model and prototypes; v1.1 reorganised the document into nine chapters and unified the business rules; v1.2 aligned the runtime environment and the pilot configuration in NFR-02 to 8 CPU cores and 16 GB of memory; v1.3 changed the business backend stack from Java 17 / Spring Boot 3 to C# / .NET + ASP.NET Core (Web API). The presentation and this blog cite the same identifiers, counts and metrics.

Subsequent reviews follow the process below, with the records archived alongside the tasks:

  1. Every task names an owner, the related requirements, a planned completion date and a reviewer.
  2. Progress, blockers and requirement changes are synchronised in the team's existing channels, and conclusions are written into the shared change log.
  3. Scenarios, model, pages and acceptance criteria are cross-reviewed between roles, and the traceability matrix is re-checked after any change.
  4. Differences between the SRS, the presentation and the blog are reconciled so that one consistent set of attachments can be submitted.
  5. The actual reviewers, dates, decisions and open issues are recorded before an approved baseline is established.

The actual record of this review:

ItemContent
Review time2026-10-18 18:30–19:30
ParticipantsSun Zikun, Luo Yuhan, Zheng Ziyang, Zhou Shengdong, Liu Peikun, Wang Qiushi
Communication toolWeChat group
Review conclusionsContribution shares confirmed; backend stack changed to C#; presentation re-organised for an 8-minute slot
Open issuesReal user-research data, service-point cooperation, and others

3 Software Requirements Specification

3.1 Document download

The files are 需求规格说明书-拾光FindBack-v1.3-后端技术栈调整版.docx and 拾光FindBack-第三次作业-需求分析汇报-v1.3-交付版.pptx. The attachments must be uploaded and the two links above replaced before publishing, so that readers who are not logged in to a team account can access them under the platform's permissions.

3.2 Nine-chapter structure

SRS stands for Software Requirements Specification: the document that fixes the behaviour, constraints and acceptance basis of the system to be built.

ChapterMain content
1 IntroductionPurpose, the four pain points, terminology and abbreviations, references
2 Overall descriptionProduct positioning, functional structure, user characteristics, runtime environment, constraints and dependencies
3 User scenariosDescriptions of the four roles, 8 full scenarios, the use-case overview and the state of research evidence
4 Class model and domain model14 core classes, attributes and operations, multiplicity, composition and aggregation, two state machines and the ER view
5 Interface prototypesPage structure, 12 prototypes, control descriptions, inputs and outputs, exception feedback and page flows
6 Functional requirements18 modules, 42 FRs, priorities, iterations, inputs and outputs, data dictionary and business rules
7 Non-functional requirementsPerformance, privacy, usability, reliability, compatibility, maintainability and platform constraints
8 Acceptance and verification criteriaVerification methods and pass criteria for interface, function, non-functional, match quality and pilot
9 Requirement traceability matrixFive-way links between scenario, function, class, interface and verification, plus the TBD list and review status

External interface requirements are kept in Appendix E as input for later API design. The interface tables, the data entity tables and the interface prototypes describe different concerns and none of them can substitute for another.

4 User scenarios and business flow

4.1 Users and scope

The product serves item owners, finders, service-point staff and administrators. An owner and a finder may be the same user taking different roles in different cases. If the campus authorities only receive anonymised statistics, they are treated as a stakeholder and do not automatically gain access to private evidence.

The scope for this semester is a controlled pilot on a single campus: no payments, no custody guarantee, no cross-campus interoperability and no automatic ownership adjudication. Only service points with confirmed cooperation and authorisation can enter the receiving or verification flow.

img

4.2 The eight scenarios

ScenarioMain taskKey exceptions
SC-01 Login and campus authenticationEstablish a session and verify campus identityVerification code failure, name not on the list, authorisation refused
SC-02 Owner publishes and searchesPublish a lost-item post and search found-item posts with combined filtersMissing fields, image failure, no results
SC-03 Finder publishes, candidates generatedPublish a found-item post, process images, generate candidatesMasking or moderation failure, algorithm unavailable
SC-04 Claim evidence reviewSubmit private details and supporting proof, reviewed by a humanInsufficient evidence, duplicate requests, disputes
SC-05 Handover confirmation and disputesAgree a handover, both sides confirm separatelyOne-sided confirmation, timeout, concurrent retries
SC-06 Content moderation and reportsModerate content under authorisation, handle reports and dictionariesPrivilege escalation, missing reason, insufficient evidence
SC-07 Message preferences and optional aidsView pending items, control preferences and optional subscriptionsWeChat message failure, target no longer available
SC-08 Metrics and pilot retrospectiveRecompute statistics over a fixed windowZero denominator, insufficient sample

4.3 Main flow illustrated with a folding umbrella

An owner realises a folding umbrella is missing, completes campus authentication, and publishes a photo, time, place and public description. A finder publishes a found-item post and states where the item is actually kept. After processing the images, the system returns candidates, and the user can look further using the similarity score and the real match reasons.

Once both sides accept, the claimant fills in details that are not visible in the public photo and may provide an old photo or other proof. The finder, or an authorised staff member, reviews the evidence by hand and records the decision and the reason. After approval the two sides agree an offline handover, confirm separately that the item was received or handed over, and the system closes the case and updates the statistics exactly once.

If the algorithm fails, publishing and manual search still work; if evidence is insufficient, it is sent back for completion; if only one side confirms, the case stays pending; if a dispute arises, it goes to manual handling. Real questionnaire and interview results from M1 are still outstanding, and the concrete item in the scenario is not treated as a survey sample.

5 Class model and domain model

5.1 The fourteen core classes

Beyond the entity descriptions, this round adds a UML class model with the key attributes, operations and relationships between classes.

Class IDClass nameResponsibility
C01UserAccount, campus identity and participation permission
C02ItemA lost or found post and its state
C03ItemPhotoOriginal image, masked derivative and processing state
C04MatchCandidateCandidate link between posts of opposite type, with reasons and feedback
C05CaseClaim, verification, handover and dispute case
C06VerificationChallengeNon-public claim question configured by the finder
C07VerificationEvidencePrivate evidence and review record submitted in the current case
C08HandoverConfirmationOne handover confirmation by a single participant
C09CreditRecordConfirmed credit event and its appeal status
C10NotificationIn-app notification and channel delivery state
C11SubscriptionA user's optional subscription condition and on/off state
C12ReportReported object, reason and handling result
C13AuditLogAudit record carrying the target type and the operator
C14ServicePointService point with confirmed cooperation and authorised operations

img

img

img

A post owns 1–6 images and may configure 0–3 non-public questions. A case links one found-item post and optionally one lost-item post, and the two parties must be different users. A case may have several pieces of evidence, but a normal handover has at most two confirmations, enforced by UNIQUE(caseId, userId) so that one person cannot occupy both sides.

Service points are in an aggregation relationship with items. Retiring a service point must not delete the history of items and cases. Reports and audit logs record both the target type and the target identifier, so no object can be read merely by passing a client-side ID.

5.2 Two state machines

The item state describes whether a post is still matchable, has been returned, or has been archived; the case state describes acceptance by both sides, evidence review, handover arrangement, confirmation and dispute handling. An ordinary closure, a cancellation or an expiry-based archive must never be counted as a successful return.

img

img

5.3 Persistence view

The ER view continues to express the main tables and foreign-key relationships, and works with the class model to explain how data is stored. Operations on a class are not equivalent to database columns.

img

6 Interface prototypes

6.1 Page structure

The prototypes cover both the student side and the administration side. Visitors may browse; publishing redirects to authentication; an unverified user cannot enter the handover flow; the administrator entry point is permission-checked on the server.

img

PrototypePageKey requirement
UI-01Home and searchKeyword plus category, place and date filters; loading, empty result and error states are distinguished
UI-02Publish lost / found itemRequired-field checks, 1–6 images, custody location, input preserved on failure
UI-03Item detailPublicly masked information only; available actions depend on identity and state
UI-04Candidate matchingReal ranking reasons, relevance feedback and the acceptance state of both sides
UI-05Submit claim evidencePrivate answers and optional proof; the reference answer is never shown
UI-06Handover confirmationBoth sides' states shown separately; one side cannot close the case
UI-07Messages and casesThe user's own pending items, case timeline and authorised conversation
UI-08Profile and preferencesVerification state, my posts, message preferences and appeals
UI-09Administrator moderationModeration queue, necessary evidence, mandatory reason and operation log
UI-10Statistics and pilot dashboardStatistics window, sample size, numerator and denominator, and the no-data state
UI-11H5 login and campus verificationCampus e-mail and student ID verification, with an authorised manual path
UI-12Configure questions and review evidenceNon-public questions, current case material, manual decision and reason

6.2 Prototype showcase

The four showcase figures below together contain all 12 prototypes. Because the class session allows less than 8 minutes, the presentation only walks through the first two groups (slides 10–11, UI-01/02/03 and UI-04/05/12); the other six interfaces are on backup slides (19–20). Chapter 5 of the SRS gives the controls A–E, inputs and outputs, linked FRs and exception feedback for each page.

img

img

img

img

This version completes the basic requirement prototypes. High-fidelity design, walkthroughs with real users, and verification of the differences between H5 and the mini program continue in M2; the figures are not presented as finished interfaces.

7 Functional requirements and traceability

7.1 Requirement list and priorities

The original 42 FR identifiers are kept and classified with MoSCoW as 21 Must, 16 Should and 5 Could, grouped into 18 modules. Must items have to be satisfied, Should items allow a reasonable substitute, and Could items are implemented according to time and resources.

The core modules are account and campus identity, publishing lost and found items, browsing and search, image processing, candidate generation and re-ranking, messaging, evidence review, handover, credit and appeals, administration and statistics. Each FR records its inputs, outputs, source scenario, iteration and acceptance conditions in Chapter 6 of the SRS.

Automatic tagging is an optional aid, but FR-18.3, the tag privacy boundary, remains a Must. Turning the suggestion feature off does not lift the privacy requirements on public content.

7.2 Five-way traceability example

User scenarioFunctional requirementCore classesInterfaceFunctional verification
SC-02 Owner publishesFR-02.1C02, C03UI-02FT-02.1
SC-04 Claim reviewFR-11.1C05, C06, C07 and othersUI-05, UI-12FT-11.1
SC-05 Handover confirmationFR-12.1C05, C08 and othersUI-06FT-12.1
SC-07 In-app reminderFR-09.1C10 and othersUI-07 and othersFT-09.1

The complete matrix covers all 42 FRs. The original 41 use cases are retained as a use-case index; scenarios, use cases and functional requirements are allowed to map many-to-many, so their counts do not have to match. This round filled in the traceability gaps for FR-07.1, FR-07.2 and FR-18.3.

8 Non-functional requirements and acceptance

8.1 Performance and capacity targets

ItemTarget and test conditions
Pilot resources8 CPU cores, 16 GB memory
User scale300 registered users, recorded separately from concurrency
Concurrency test50 concurrent virtual users running for 10 minutes
Item pool10,000 items
Response targetsList or detail P95 under 1 s, search under 800 ms, candidates under 1.5 s
Image processingCPU single-image embedding under 2 s; 3 compressed images transferred in under 3 s under the agreed 4G conditions
Test recordHardware, network, sample, request mix, error rate, throughput and resource peaks; cold start reported separately

All of the above are targets still to be verified. P95 is the 95th percentile of the latency distribution and cannot be replaced by an average. Image transfer time is measured separately from user input and embedding generation.

Security requirements include HTTPS, role-based and object-level permissions, task-based authorisation for original images and private answers, masking of public images, and a clear statement of deactivation, deletion and retention scope. When the algorithm service is unavailable, legitimate publishing and basic search must still work; repeated confirmations must not close a case twice, add credit twice or double-count statistics.

8.2 Five acceptance categories

CategoryMethodPass criteria
InterfacePrototype walkthrough with at least 5 first-time users performing tasksEntries, controls and exceptions are consistent; the standard publish task after authentication takes no more than 30 s
Function42 FTs mapped to FRs, including positive, privilege-escalation, retry and state counter-examplesInputs, outputs and per-item acceptance conditions are satisfied
Non-functionalLoad, permission, failure, dual-platform and backup-recovery verificationThe corresponding NFRs are met and checkable records are retained
Match qualityFrozen independent labelled set, checked query by queryHit@5 is reproducible and reaches the threshold and latency confirmed in M2
Controlled pilot30–50 students planned over two weeks on the H5 pilotNo serious privacy, permission or case-closure blocking defect; actual sample and results reported

8.3 Definitions of the three metrics

Recovery rate: with a fixed publication cohort and observation cut-off, N is the number of valid lost-item posts and R the number confirmed as recovered; the recovery rate is R / N × 100%. When N is zero the display reads "no data". Re-confirming the same case must not increase R again.

Median time to return: for the recovered posts in that cohort, compute "final confirmation time minus publication time of the lost-item post", and report the median together with the number of recovered samples and the number still unresolved. When there is no recovered sample, 0 hours must not be shown.

Hit@5: Q is the number of queries in the independent test set that have a known true counterpart, and H the number of queries where at least one of the top five candidates is a true counterpart; the value is H / Q × 100%. A query using several images still counts once, and photos of the same physical item must not be split across the tuning and test sets. Online relevance feedback is counted separately.

The quality threshold, minimum sample size and false-reminder threshold of Hit@5 are recorded as TBD-07 and will be confirmed in the M2 review. This section explains the evaluation method; it does not report accuracy or recovery improvement that has not been measured.

9 Delivery form and technology choices

9.1 H5 as the primary delivery, mini program for demonstration

Following the frontend feasibility assessment, this semester uses uni-app, Vue 3 and TypeScript: one shared codebase compiled to a mobile H5 site served over HTTPS as the primary controlled pilot, with the WeChat mini program used as the development and demonstration form. The administration side is a role-authorised web console.

Compiling from the same source does not remove the need to adapt each platform: login, camera upload, routing, background behaviour and notifications must still be implemented and verified separately. WeChat login cannot by itself prove campus identity, so the rules for campus e-mail, student ID and the authorised pilot list still need to be confirmed in practice.

Core messages are kept in the in-app list and badge. WeChat subscription messages depend on user authorisation, templates and the platform environment; a refusal or a failed delivery must not block the business flow. The platform entity, domain name, package size and quotas will be verified in M2, and earlier estimates are not presented as current platform commitments.

9.2 Backend and algorithm service

SRS v1.3 has fixed the business backend stack as C# / .NET + ASP.NET Core (Web API); the database MySQL 8, cache Redis 7, object storage, Nginx and Docker are unchanged. The decision was proposed by the team's technical lead and confirmed within the team; section 2.4 of the SRS, the revision record and slide 12 of the presentation have been updated and state the same thing.

The change affects only the implementation layer and alters no user behaviour, permission, state or acceptance requirement in this document: the entity fields in Appendix D and the REST endpoints in Appendix E are independent of programming language, so the conclusions of Chapters 3–8 remain valid. The .NET runtime version, the data-access approach and the re-work of the interface contract are recorded as TBD-13 and will be confirmed in M2 (19 October – 1 November); until that item is closed we do not claim the backend is ready.

The algorithm service remains an independent Python service; CLIP, ResNet, FAISS and similar options will be compared in M2. The frontend reaches it through the business API and never connects directly to the algorithm intranet or holds object-storage keys.

10 Key difficulties and consistency revisions

10.1 Entity tables cannot fully express the business model

The raw material already contained data entities and interface information, but it still had to explain what operations an object has and how objects constrain each other. This round added class attributes and operations, multiplicity, composition and aggregation, and used Case to connect verification, handover and credit events. The ER view continues to express the persistence relationships.

10.2 Similar images cannot prove ownership

Similarity is good for generating candidates but cannot carry an ownership decision. Reference answers to claim questions are not disclosed, private evidence is isolated per case, and a manual review conclusion must record the operator, the time and the reason. Insufficient evidence can be completed or escalated to manual handling, and there is no rule under which "identical free text means automatic approval".

10.3 External notification and campus identity depend on platforms

Making mini-program publication or WeChat message delivery a prerequisite of the main flow would tie business availability to platform conditions that have not been verified. We therefore use H5 as the primary delivery and in-app messages as the core channel, and keep platform verification as a separate task. Service points and the pilot list likewise require real cooperation and authorisation.

10.4 Case closure and metrics must stay consistent

Archiving an item does not mean it was returned, and one-sided confirmation does not mean the handover is complete. State conditions, checks that the participants are different, unique constraints and idempotent handling prevent a repeated confirmation from closing a case and incrementing statistics more than once. Credit records are appended only for genuine completions or events confirmed by investigation; failed verification and unverified reports cannot lead directly to a penalty.

10.5 Unified baseline across the three deliverables

ItemUnified result in this round
Requirement count42 FRs: 21 Must, 16 Should, 5 Could
Scenarios and model8 scenarios, 14 core classes, two state machines
Prototypes12 basic prototypes; high fidelity and user walkthroughs continue in M2
Student-side deliveryH5 is the primary controlled pilot; the mini program is for development and demonstration
Verification and messagingPrivate evidence reviewed by a human; in-app messages as the core channel
Backend stackC# / .NET + ASP.NET Core (Web API); the algorithm service remains an independent Python service
Host resourcesThe runtime environment, NFR-02 and the presentation all use 8 CPU cores and 16 GB memory
Acceptance conclusionTargets are kept separate from measured results; real research, tests and review records are still to be completed

10.6 The technology change and synchronising three deliverables

The most time-consuming rework of this round happened on the day of submission: the team's technical lead asked for the business backend to be switched to C#, while the SRS, the presentation and this blog had already been finalised on the Java stack and referenced each other.

The difficulty was not in changing a few words but in the number of places each document referenced: the stack row in section 2.4 of the SRS, the revision record, the open items in 9.2; the "current requirement and solution" row on slide 12 of the presentation, the pending-decisions list on slide 13, and the version reference in every slide's speaker notes; and, in this blog, the version history, the attachment file names and the page references. Any one of them left behind would be enough for a reviewer comparing two files to spot a contradiction.

The order we worked in was: first raise the SRS to v1.3 and record the source of the change in the revision history; then change the two statements in the presentation and the pending-decision item; finally rewrite the version references in the blog against v1.3. At the same time we added TBD-13 to register "runtime version, data-access approach and interface-contract rework" as an item to be closed in M2, rather than hiding unfinished work behind a single sentence saying "already switched".

The rework also confirmed one thing: as long as a requirements document does not couple implementation details into its body, switching language is a one-line change to the stack row — the data tables in Appendix D and the interfaces in Appendix E were never language-specific, so not a word of Chapters 3–8 had to change.

11 Project plan and open items

11.1 Planned schedule

The dates below are planned; results will be updated against actual records.

PhaseDatesMain acceptance content
M1 Requirement analysis12–18 OctoberRequirements, model and prototypes produced; if the real research record is not closed, evidence is added in the next version
M2 Design and feasibility19 October – 1 NovemberHigh fidelity, identity and platform verification, .NET landing validation, algorithm and sample thresholds confirmed
It.1 Publish and search2–9 NovemberOne side publishes, the other finds it by category, place and keyword
It.2 Candidates and reminders10–19 NovemberCandidates are traceable, in-app pending items are visible, manual search survives an algorithm failure
It.3 Verification and handover20–29 NovemberManual review, independent confirmation, idempotent closure and dispute handling
Controlled H5 beta30 November – 13 December30–50 people planned for two weeks; actual participation, problems and metrics recorded
Wrap-up and showcase14–27 DecemberResult analysis, document archive and final showcase, adjusted to the course arrangement

11.2 Open items

ItemResponsible rolePlanned closure
Real questionnaire, interviews, valid sample and requirement adjustmentsRequirements groupM1; evidence added in the next version if missing
Service-point cooperation and the actual transfer flowTeam lead, requirements groupM1; the path stays closed if unconfirmed
Campus identity rules, H5 address and deployment resourcesRequirements, front and back end, operationsM2, no later than 1 November
Algorithm, independent labelled set, Hit@5 threshold and minimum sampleAlgorithm, testing, requirementsM2, frozen before the pilot
Mini-program platform conditions, dual-platform differences and end-to-end messagingFrontend, backend, testingVerified in M2, complete by It.2
Actual contribution shares, review sign-off and public attachment linksTeam lead and all membersBefore the assignment-3 submission
Credit scoring and whether it affects candidate displayRequirements, algorithm, administrationConfirmed before It.3 is enabled

The SRS keeps a complete list of 13 TBD items. Document modelling that is finished and research, development and testing that are still outstanding are tracked separately: the planned number of pilot invitees is not treated as an actual sample, and existing prototypes are not treated as a completed beta.

12 Requirement analysis presentation

The presentation has 25 slides — 15 spoken, 3 appendix and 7 backup — each with speaker notes. The class requires a presentation of less than 8 minutes, so the spoken part is paced at about 7 minutes 15 seconds, leaving roughly 45 seconds of buffer; the remaining slides are kept as backup and can be called up during questions.

SlideTopic
1Cover and presenter
2–3The four problems; user roles and project scope
4–5The eight user scenarios; the business flow from publishing to return
6Functional requirements and priorities (21 Must / 16 Should / 5 Could)
7–9Three core class diagrams: publishing and matching, verification and handover, administration and service points
10–11Six core interface prototypes: search and publish, candidates and evidence review
12Delivery form and system boundary
13Iteration plan and pending decisions
14Team division of labour and workload share
15Summary: problem, MVP and verification
16–18Appendix: users and use-case overview; the complete 42 functional requirements
19–25Backup: the other six interface prototypes → performance and security → five acceptance categories → two state machines → three metric definitions and the five-way traceability matrix

To fit the 8-minute limit, a division-of-labour slide was first added to the completed 24-slide version (making 25), and then four kinds of adjustment were made: the "page structure navigation" slide, which duplicated the prototype slides, was removed; the two state machines, the three metric definitions and the five-way traceability matrix were moved to backup; performance and security, and the five acceptance categories, were also moved to backup; and the interface prototypes were reduced from 4 slides to 2, walking through only the six interfaces that carry the main line (UI-01/02/03 and UI-04/05/12), with the other six interfaces on backup slides. A closing slide, "Summary: problem, MVP and verification", was added at the end.

The presentation explains how the system works using the model, the flow and the prototypes; per-item inputs and outputs, detailed business constraints and the full traceability matrix are in the SRS. The division of labour and contribution shares are on slide 14 and match section 1.2 of this blog.

13 References

  1. Third assignment — Requirement Analysis.
  2. Gamers2 second assignment — team formation and topic selection.
  3. Software Requirements Specification — 拾光 FindBack, v1.3, attachment to this submission.
  4. 拾光 FindBack Assignment 3 — Requirement Analysis Presentation, attachment to this submission.
  5. Frontend Technology Feasibility Assessment — WeChat Mini Program, project technical assessment material.
  6. GB/T 9385-2008 Specification for computer software requirements specifications, GB/T 8567-2006 Specification for computer software documentation, IEEE 830-1998 — references for the document structure.
  7. Zou Xin, The Method of Construction, Chapter 8 — reference for requirement analysis.
  8. DCloud conditional compilation documentation.
  9. Microsoft ASP.NET Core Web API documentation — technical reference for the backend stack.
...全文
人脸识别签到考勤系统实战源码 这是一套可直接运行的人脸识别智能签到考勤系统,基于OpenCV YuNet人脸检测与SFace特征识别实现,全程本机运行,数据保存在本地SQLite,不上传任何服务器。配套交付完整Python源码、9章实战教程(md/html/pdf三种格式)、逐步骤操作截图和答辩PPT讲解。 系统围绕五个功能模块展开:人脸注册支持照片批量导入并提取特征入库;识别签到支持照片或摄像头两种方式,实时框出人脸并标注姓名、相似度与考勤状态;考勤规则引擎按config.py里配置的上下班时间与宽限分钟,自动判定迟到、早退、缺勤;Tkinter管理面板完成人员管理、流水查询与月度汇总;最后通过openpyxl一键导出整月考勤矩阵,正常绿、迟到黄、缺勤红,Excel打开即用。 选型上特意选了YuNet+SFace路线:纯pip安装免编译,CPU单帧识别不到100ms,两个ONNX模型共约37MB,出自OpenCV官方模型仓库,毕设报告引用有据可查。教程第7章整理了16条Windows下真实踩过的报错及排查方法,第8章给出换模型、换人脸、加功能的二次开发路径。 适合做计算机视觉方向毕设或课程设计的学生,也适合想给班级、实验室、小团队搭一套本地签到工具的Python学习者。运行环境为Python 3.9以上、Windows 10/11,不需要GPU。 使用时先pip install -r requirements.txt装齐依赖,再运行download_data.py下载模型,最后启动main.py即可进入图形界面;命令行register、recognize、report子命令也可脱离界面单独调用。 立即下载

相关推荐

国央企创新负责人如何通过平台实现科研成果的快速识别与转化?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

BIZKEEN

PotPlayer自用皮肤

自用 PotPlayer 皮肤,仅微调了字体大小与颜色,是按个人习惯调整,未做适配性调整。

独特的时光

2-shell及常用命令-续.pdf

2-shell及常用命令-续.pdf

tianjiee

【电力负荷预测】项目介绍 MATLAB实现基于BO-Transformer-LSTM贝叶斯优化算法(BO)优化Transformer-LSTM组合模型进行居民用户多步电力负荷预测(含模型描述及部分示例

内容概要:本文介绍了一个基于BO-Transformer-LSTM的组合模型,用于实现居民用户多步电力负荷预测的完整项目实例。该模型融合Transformer的全局注意力机制与LSTM的局部时序记忆能力,构建能够捕捉长时依赖与周期性特征的深度学习架构,并引入贝叶斯优化(BO)自动搜索最优超参数组合,提升预测精度与训练效率。项目涵盖从原始数据清洗、特征工程、滑动窗口样本构建、模型设计到超参数优化、反归一化及多步误差评估的全流程,强调时间顺序划分以防止信息泄露,并通过周期编码、外生变量融合等方式增强数据表达能力。文中提供了详细的MATLAB代码示例,包括数据预处理、网络搭建、贝叶斯优化配置和预测结果评估等关键步骤。 适合人群:具备一定机器学习和时间序列分析基础,熟悉MATLAB编程环境,从事电力系统预测、智能电网、负荷管理等相关领域的研究人员、工程师及研究生。 使用场景及目标:①应用于居民级或多用户聚合负荷的短期至中期多步预测(如未来24小时);②服务于配电系统运行调度、需求响应基线设定、家庭能源管理系统优化、分布式能源协调控制等实际工程场景;③为科研提供可复现的深度学习+贝叶斯优化的技术路线参考。 阅读建议:此资源以实际项目为导向,建议读者结合提供的代码逐步实现并调试模型,重点关注数据质量控制、时间特征编码、组合网络结构设计与贝叶斯优化稳定性之间的协同关系,在实践中深入理解多步预测中的误差累积机制与超参数敏感性问题。

nantangyuxi

【无人机航测】MATLAB重叠率与地面分辨率协同设计:航线间距及飞行方向优化系统 MATLAB 无人机航测重叠率设计|地面分辨率与航线间距计算

内容概要:本文档介绍了基于MATLAB R2025b开发的无人机航测重叠率与航线间距计算系统,旨在通过建立统一的航测几何计算体系,实现重叠率、地面分辨率与航线间距的动态协同设计。系统结合相机参数、飞行参数、地形数据与风场信息,通过自动化候选航向搜索与多目标优化,选择兼顾覆盖质量、飞行效率与安全性的最优航线方向。项目涵盖从参数输入、摄影测量计算、地形与安全修正,到候选路线生成、综合评价与结果可视化的全流程,并构建了五万组模拟数据用于算法验证与模型训练,支持桌面交互、批量处理与服务化部署,适用于多种复杂场景下的无人机航测任务规划。 适合人群:具备一定MATLAB编程基础和摄影测量知识的科研人员、工程技术人员及高校师生,尤其适合从事无人机航测、地理信息系统(GIS)、遥感与测绘等相关领域的从业者。 使用场景及目标:① 实现无人机航测任务中地面分辨率与航线间距的精确计算与动态优化;② 解决复杂地形与风场环境下航线方向选择困难、覆盖质量难以保障的问题;③ 通过自动化设计减少人为经验依赖,提升航测任务的可靠性与效率;④ 为后续的三维建模、正射影像生成与灾害应急评估等应用提供高质量的数据基础。 阅读建议:建议读者结合文中提供的完整代码示例与GUI界面设计,逐步实践参数配置、模型计算与结果分析流程。重点关注摄影测量公式推导、地形修正策略与多目标优化算法的实现细节,并利用模拟数据进行敏感性分析与模型验证,以深入理解系统的设计理念与工程应用价值。

nantangyuxi
评论
收藏 已收藏
分享
返回顶部
Gamers_2
2601_FZU-MU_SE 173 成员 148 内容