티스토리 뷰
3. Requirements
- For each requirement, specify the responsible module(s) and round(s). In the round field, state which part of the requirement is implemented in each round.
- Each round's completion condition requires at least one acceptance test for every requirement assigned to that round (§9-4).
3-1. Objectives
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-001 | The user can extract desired data (multiple records) from the DB through chat, and the agent explains the content and meaning of that data. | A0 · A1 · qa · compute · algorithms |
R1 (one question, one-step calculation) · R5 (multi-step calculation, A1) · R6 (A0 completion) |
| RQ-002 | Find meanings, values, and patterns in large datasets and answer users' questions. | A0 · A1 · qa · compute · algorithms |
R1 (minimum path) · R3 (algorithms basic list) · R5 (multi-step calculation) · R6 (A0 completion) |
| RQ-003 | Answer the user's questions accurately. | A0 · compute · guard · quality_metrics |
R1 (value-match guard) · R5 (calculation-order validation) · R6 (cross-checking explanatory claims) · R11 (accuracy measurement) |
| RQ-004 | Measure and report domain-specific answer accuracy according to the defined formula (denominator = a human-verified evaluation-question set; pass/fail = human confirmation). No target value is imposed. An analyzable data file is a basic prerequisite. | quality_metrics · ingest.loader |
R1 (loader data-file ingestion) · R11 (quality_metrics accuracy calculation and reporting) |
| RQ-005 | Learn and evolve autonomously so that performance improves over time and answers become appropriate to the questions. | A4 · A5 · A8 | R7 (A5 investigation adjustment) · R11 (A4 evaluation and learning-rate adjustment) · R12 (A8 exploratory questions) |
| RQ-006 | Even if the agent initially asks many questions, it should eventually provide accurate answers with fewer or no follow-up questions as iterations proceed. | quality_metrics |
R11 (trend in the number of agent questions) |
| RQ-007 | The system is intended for commercialization and operation across multiple customers, users, and cost centers. | access · llm_policy · domain_lifecycle |
R0 (access and domain_lifecycle skeleton) · R8 (access completion and llm_policy) · R9 (domain_lifecycle migration) |
| RQ-008 | Become a specialized data agent — supported by all other objectives in this section rather than by a separate feature. | All objectives | R12 (final acceptance scenario after all rounds are complete) |
| RQ-009 | Answer whole-period trend questions that explain changes in multiple measurements from the start to the end of the available data period; answers should converge toward correctness over multiple rounds. | A0 · A1 · query_slots · compute |
R1 (one-step calculation) · R5 (multi-step/range-segmented calculation) · R6 (A0 completion) |
| RQ-010 | Provide both the result data and the derivation process (why/how), enabling the user to judge the appropriateness of the result and process and provide feedback. | A0 · evidence_view |
R1 (calculation sequence and basic reference-data table) · R6 (determining feedback targets) · R10 (evidence window) |
| RQ-011 | Handle questions about component descriptions, identification of time conditions, and relationships involving period-specific characteristics; the system must not be hard-coded to the example questions themselves. | A0 · A1 · query_slots |
R1 (minimum slots) · R5 (question types and sub-questions) |
| RQ-012 | The deliverable shall provide scalability (independence checks and principle gates), reliability (guard · critic · A4), and usability (ui · display_optimizer). |
Independence checks · principle gates · guard · critic · A4 · ui · display_optimizer |
R0 (independence checks and principle gates) · R1 (guard value matching) · R4 (critic) · R10 (display_optimizer and ui shell completion) · R11 (A4) |
| RQ-013 | Completeness is evaluated by learning convenience/speed and answer accuracy. | quality_metrics |
R11 (learning-speed and accuracy metrics) |
| RQ-014 | Reduce total LLM token usage while maintaining answer accuracy and reliability. | llm_policy · conversation |
R6 (conversation reuse) · R8 (llm_policy invocation and token accounting) |
3-2. Requirements by Component
Multi-Agent Collaboration
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-015 | Derive answers through collaboration among multiple agents. | Entire agent layer | R1 (A0) · R3 (A6) · R4 (A7) · R5 (A1) · R7 (A5) · R11 (A4) · R12 (A8) |
| RQ-016 | Specifically define the tool agents needed for the final objective, adding or consolidating them when necessary. | Agent-layer composition (§4-3) | R0 (contracts and agent-layer composition) · R12 (final agent A8) |
| RQ-017 | Provide a tool that visualizes evidence data as a graph and shows the before/after grouping of data used for calculations. | evidence_view |
R10 |
| RQ-018 | Provide an agent that analyzes data — autonomously improve analytical accuracy, speed, and efficiency across multiple domains, efficiently analyze DBs ranging from hundreds of MB to several GB, and rapidly complete their connectivity structure. | A6 · understanding · parallel |
R0 (parallel) · R2 (method validation) · R3 (A6 · understanding) |
| RQ-019 | Naturally integrate a new system (domain) by reusing existing agents without modification. | domain_lifecycle · contracts |
R0 (domain_lifecycle.create · contract) |
| RQ-020 | The integration-management agent may cross-reference and coordinate common algorithms between similar domains only within the global asset, and must not connect to other domains. Define the interface only; no implementation round is required. | Integration-management agent slot (§11-1) | Slot (no implementation round · interface follows R0 contract format) |
| RQ-021 | Treat prediction and diagnosis as functions for deciding what to do rather than creating dedicated agents. | algorithms · A1 (§1-2) |
R3 (algorithms prediction/diagnosis algorithms) · R5 (A1 question types) |
| RQ-022 | The user-facing agent reflects conversation content (display composition is handled by tool functions), and structures relationships so the agent can understand cases where the same key has the same or different meanings depending on location. | A0 · meaning_structure |
R1 (A0 minimum) · R3 (meaning_structure conditional rules) · R6 (A0 completion) |
| RQ-023 | Design the system to respond adaptively to special requests and incorporate code generation from the beginning. | codegen · code_sandbox |
R12 |
Prior Information, Upload, and DB Creation
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-024 | Provide a stage and means for users to supply basic information they already know before DB data analysis. | ingest.user_input · A6 (reference for initial connectivity construction) |
R3 (accept prior information · A6 reference) |
| RQ-025 | Start from the data-file intake process as in actual use, create a connectivity structure, and proceed with meaning learning. | ingest.loader · A6 · A7 |
R1 (file ingestion) · R3 (A6 connectivity) · R4 (A7 meaning discussion) |
| RQ-026 | Through the user UI, upload data files (Excel, SQLite, etc.) together with explanatory material describing the types of input documents, and use them as references for constructing the initial connectivity structure. | ingest.loader · ingest.user_input · A6 (reference for initial connectivity construction) · ui (upload screen) |
R1 (data-file upload screen) · R3 (accept explanatory material for input-document types · A6 reference) |
| RQ-027 | Accept user opinions through multiple input methods, including direct user entry and LLM-generated input (no questionnaire-style interaction — §6 UR-01). | ingest.user_input · A7 (node opinions) |
R4 (node-opinion draft · A7) |
| RQ-028 | Allow node information to be uploaded as a file. | ingest.user_input · A6 (reference for initial connectivity construction) |
R1 (node-information file intake) · R3 (A6 reference) |
| RQ-029 | Read xlsx, csv, and sqlite files and convert them into DB data. | ingest.loader |
R1 (one file · one sheet) · R3 (completion) |
| RQ-030 | Remove duplicate data before storage. | ingest.loader |
R1 (initial ingestion) · R3 (additional ingestion) |
| RQ-031 | If an xlsx file contains multiple sheets with different column structures, ask the user in a UI window which sheets and columns to use, then store the selected data. | ingest.loader · ui |
R3 |
| RQ-032 | Store packed data inside columns exactly as raw data and extract, calculate, and judge it with a decoder when used; do not store decoded results. | ingest.loader · meaning_structure |
R1 (raw storage) · R3 (meaning_structure.decode) |
| RQ-033 | Provide input items appropriate to their purpose, such as calculation rules — accept them through a calculation-rule input screen rather than a questionnaire (§6 UR-01). | derived_data · ui (calculation-rule input screen) |
R5 |
| RQ-034 | Authorized users can upload the seed-question list at any time. | ingest.user_input · eval_lab · A4 · ui (upload screen) |
R3 (seed-question intake and upload screen) · R11 (eval_lab · A4 experiment input) |
Data Analysis — Documentation and Connectivity
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-035 | Provide documentation describing the given data first. | profile · ui (documentation view) |
R3 |
| RQ-036 | List column names and analyze column formats (numeric, string, JSON, or user-defined format); for JSON, explain key names and value formats; for user-defined formats, explain the composition (delimiter name, intended use, and range). | profile |
R2 (format-analysis method validation) · R3 |
| RQ-037 | Analyze each column's format and value range, paired columns, and key values that connect only to data in a specific column. | profile |
R2 · R3 |
| RQ-038 | Clarify the meaning of each data element through continuous discussion with the user. | A7 | R4 |
| RQ-039 | Complete a connectivity network linking tables, columns, data formats, keys, and value formats for each table. | connectivity |
R3 |
| RQ-040 | Reflect value links between different tables and multi-layer structures such as JSON and user-defined formats in the connectivity structure. | connectivity |
R3 |
| RQ-041 | Provide a connectivity structure in which all nodes are connected; nodes contain value formats and ranges (or permitted-value lists). | connectivity (node composition, §6 UR-09) |
R3 |
| RQ-042 | Present the connectivity structure in multiple views, such as a table file, graph image, or mind map. | connectivity · ui (connectivity window/export) |
R4 (connectivity window · export) · R10 (layout recommendation) |
| RQ-043 | When user-provided information matches a connectivity element, update that element. | connectivity · A6 (confirm user structural modification, §6 UR-10) |
R3 (apply_facts · A6 confirmation) · R4 (ui structural-modification input) |
| RQ-044 | Automatically generate raw samples and statistical profiles. | profile · A6 |
R3 |
| RQ-045 | Distinguish measured values from state/mode/condition values, and group measurements that show a flow under a particular state or condition. | value_roles · A6 · A7 (user classification modification, §6 UR-16) · grouping |
R2 (role-classification method validation) · R3 (value_roles · A6) · R4 (A7 classification modification) · R5 (grouping aggregation) |
| RQ-046 | Analyze correlations or randomness among continuous values, fixed differences or multiplier relationships, and correlations within an error range. | value_roles |
R3 |
| RQ-047 | Detect intervals where a flow is interrupted and then resumes under the same state or condition. | value_roles |
R3 |
| RQ-048 | A time column may be absent, but the system shall prepare for time-column classification. | value_roles |
R3 |
| RQ-049 | Pre-identify dependencies between fixed and changing values and use them for validation (critic). |
value_roles · critic |
R3 (dependencies) · R4 (critic) |
| RQ-050 | Do not fix a role to a specific delimiter. | meaning_structure · principle gates |
R2 (method-validation dataset) · R3 (meaning_structure · principle gate 5) |
| RQ-051 | Even when the same key appears, store cases where its meaning changes according to other co-occurring names/values as conditional rules: “format key + accompanying key/value conditions → meaning”; do not bind them into embedding vectors. | meaning_structure |
R3 |
| RQ-052 | Once an explanation has been established for a format, apply it to all values and columns of the same format within the data. | meaning_structure |
R3 |
| RQ-053 | Treat overlapping value ranges for state keys as normal. | value_roles · principle gates |
R2 · R3 |
| RQ-054 | Do not exclude cases where packed values within a column and data in which the column itself represents a value are mixed. | ingest.loader · meaning_structure · principle gates |
R1 (loader raw storage) · R3 (meaning_structure · principle gate 5) |
| RQ-055 | Generalize rather than optimizing for the current dataset. | Principle gates | R0 (gate 1) · R3 (gate 5) |
Meaning Discussion, Learning, and Evolution
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-056 | Once the connectivity structure is complete, discuss node meanings with the user — propose 2–3 likely meanings or reflect user input; even if meanings are provided for only some nodes, infer meanings of other nodes through subsequent learning. | A7 | R4 |
| RQ-057 | During discussion, present the estimated range/features and supporting evidence first so the user can verify them and provide feedback with minimal effort. | A7 | R4 |
| RQ-058 | Use both opinion-window input and selectable options (one proposed choice plus a confidence/accuracy strength from 5 to 1); interpret the strength as either “attempt an explanation based on this information” or “further verification required.” | A7 · conversation |
R4 (A7 strength-effect table) · R6 (conversation selection wait) |
| RQ-059 | If the same item is discussed across multiple turns, accumulate improvements; when an item's meaning changes, automatically update connected elements; continuously update the connectivity structure, node content, and edges so the user can easily verify them. | A7 · meaning_structure · connectivity · conversation (meaning-change cascade, §6 UR-23) |
R4 (A7 · connectivity update) · R6 (conversation invalidation display) |
| RQ-060 | Ask in the form: “The following was discovered in the data, but refinement is needed; select below and provide your opinion.” | A7 | R4 |
| RQ-061 | Ask again when the input has a completely different or contradictory meaning. | A7 (same-user conflict forces a choice, §6 UR-13) | R4 |
| RQ-062 | Immediately after opinion input, perform only deterministic checks within the time budget (PR-03); if they do not finish within the budget, leave only safeguards and move to the next question. |
A7 (§1-3 item 6) | R4 |
| RQ-063 | Automatically begin learning, improvement, and supplementation from the initial state or from domain-data registration. | A5 (domain-registration trigger) | R7 |
| RQ-064 | Learn, improve, and supplement incrementally according to user queries and feedback. | A5 · A4 · feedback |
R7 (A5 accumulated demand) · R11 (A4 · feedback) |
| RQ-065 | Use questions and feedback of every type — trivial, negative, positive, or complex — for learning, improvement, and supplementation (whether a learning signal is used is governed by the permission table — §5-5). | A5 · A4 · A8 · personalization · feedback |
R7 (A5) · R8 (personalization) · R11 (A4 · feedback) · R12 (A8) |
| RQ-066 | Provide personalized answers for each user. | personalization |
R8 |
| RQ-067 | Minimize user burden and automate most processing. | Principle gates | R0 (ui screen-count limit) · R4 (A7 question-count limit) · R12 (A8 presentation-count limit) |
| RQ-068 | Use the connectivity structure for agent learning, adding and updating meanings and structural relationships as learning progresses. | connectivity · A7 |
R3 (connectivity) · R4 (A7 reflection) |
| RQ-069 | Learn and adapt autonomously to all situations in which multiple conditions coexist, including questioner, question, and data type. | knowledge_policy |
R4 |
| RQ-070 | Prefer learning-based evolution where possible; the agent may determine the evolution rate; distinguish re-review from reset (content deletion). | knowledge_policy · domain_lifecycle |
R4 (re-review indication) · R9 (reset) · R11 (learning-rate parameter adjustment) |
| RQ-071 | Handle cases where the same question requires different decision criteria depending on context. | knowledge_policy · A0 |
R4 (context conditions) · R6 (A0 usage decision) |
| RQ-072 | Handle cases where the same term may have different calculation methods for different users. | derived_data · knowledge_policy |
R4 (application scope) · R5 (user-specific calculation rules) |
| RQ-073 | Separate knowledge confidence scores by question type and method. | knowledge_policy |
R4 |
| RQ-074 | Before final confirmation, the agent autonomously decides through learning; final confirmation is proposed by the agent and approved by a human. | knowledge_policy · human gate |
R4 |
| RQ-075 | Use approved knowledge whose score exceeds the threshold in operational answers similarly to confirmed knowledge; use lower-scoring knowledge for exploration and learning; incorporate both negative and positive feedback; display the grade of knowledge used in operational answers. | knowledge_policy · A0 · evidence_view (grade display) |
R4 (usage rules) · R6 (A0 grade display) · R10 (evidence-window display) |
| RQ-076 | Allow a person to temporarily release the restriction by clicking the “under review” badge. | knowledge_policy · ui |
R4 |
| RQ-077 | If answers to similar questions are repeatedly rejected, ask the user for an opinion. | quality_metrics · A7 |
R11 |
| RQ-078 | Harmonize user rejection and internal validation (critic) rejection. |
knowledge_policy · critic |
R4 |
| RQ-079 | Continuously improve the methods and paths used to find answers. | A4 · eval_lab |
R11 |
| RQ-080 | Show the basis for outlier judgments in answers, and learn/improve the outlier criteria through feedback and follow-up questions. | value_roles · A7 |
R4 (record outlier criteria) · R6 (A0 handoff) |
| RQ-081 | Before the user asks, the agent creates questions, shows the questions, results, and process, and receives feedback. | A8 | R12 |
| RQ-082 | Mature the system by repeatedly completing a full cycle of all stages — handled as repeated rounds rather than as a product feature. | Round repetition (§1-2) | R0–R12 (round repetition) |
Calculation and Data Processing
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-083 | Along with averages, identify flows and anomalies, and identify multidimensional flows plus first-derivative (direction and amount of change) and second-derivative flows. | algorithms |
R1 (one basic statistic) · R3 (basic list) |
| RQ-084 | The agent decides calculation methods, such as whether to differentiate continuously or relative to a period; do not predefine them. | A1 · algorithms |
R3 (algorithms.candidates) · R5 (A1 method hints) |
| RQ-085 | For direct questions that cannot be answered, explain why they are unsuitable; for indirect questions (such as change trends), transform extracted/processed data into the required form and answer; vary the analysis method according to the analysis target. | A0 · A1 | R5 (A1 calculation sequence) · R6 (A0 guidance) |
| RQ-086 | Consider multiple attributes multidimensionally; when criteria/term definitions are ambiguous or information is insufficient, ask the user and record the answer for comparison with existing records. | A1 · conversation |
R5 (A1) · R6 (follow-up-question record) |
| RQ-087 | Provide algorithms for basic statistics, flows, trends, variation, and direction; use algorithms suited to data characteristics and process the results again. | algorithms |
R3 (basic list) · R5 (multi-stage processing) |
| RQ-088 | Improve algorithms autonomously and implement code. | codegen · A4 |
R11 (A4 experiments) · R12 (codegen) |
| RQ-089 | Gather scattered data according to state/condition values, sort it according to rules, process it (statistics, FFT, calculus, KNN, linear regression, etc.), and use the result in the answer after processing the result at least twice more. | grouping · algorithms |
R1 (column-level collection) · R3 (algorithms list) · R5 (grouping completion · multi-stage processing) |
| RQ-090 | Adaptively handle cases where a requested result becomes source data again. | derived_data · grouping |
R5 |
| RQ-091 | If users predefine calculated data that cannot be obtained directly from the DB, calculate it and store it separately for retrieval at question time. | derived_data |
R5 |
| RQ-092 | Users can specify calculation rules and interval-boundary rules, including combinations of multiple conditions; do not create a structure that makes it difficult to add new calculation situations later. | derived_data |
R5 |
| RQ-093 | Provide rules through conversation (opinion input) in the UI window. | derived_data · A0 |
R5 (derived_data) · R6 (A0 conversational input) |
Question Answering and Evidence
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-094 | Preserve data extracted from a vague initial question so that later detailed questions can use both existing and additional data; use follow-up questions and abbreviation information to help the user ask appropriately. | conversation |
R6 |
| RQ-095 | When a question is ambiguous, ask additional questions to identify what the user wants. | A0 · A1 · ui (choice buttons) |
R5 (A1 ambiguity judgment) · R6 (A0 selection wait · choice buttons) |
| RQ-096 | Ask the user when the LLM cannot understand something. | A0 | R6 |
| RQ-097 | Place a related-data table below the answer, initially reduce the number of displayed records, allow more to be viewed by clicking, and reflect clicked/confirmed data in answer confidence. | evidence_view · knowledge_policy · ui (click confirmation) |
R1 (basic table) · R4 (record_confirmation) · R10 (evidence window · click confirmation) |
| RQ-098 | Explain how the result was derived and allow the user to provide feedback on the appropriateness of the result and process. | A0 · observability · feedback (feedback path, §6 UR-22) |
R1 (calculation sequence display) · R6 (feedback-target determination) · R10 (trace view) · R11 (feedback) |
| RQ-099 | Provide sufficient perspectives, data evidence, evidence that the data are correct, the meaning of the result, and relationships with other data. | A0 | R6 (A0 completion) · R10 (evidence assembly) |
| RQ-100 | Show evidence data in tables and graphs and show the before/after grouping of data used in calculations. | evidence_view |
R10 |
| RQ-101 | In reference-data display, show calculated data, surrounding data, and data fragmented or omitted during splitting; let the user decide through conversation whether to include them and reflect that decision. | evidence_view · A0 · query_slots · grouping · algorithms (exclusion record/inclusion specification, §6 UR-24·UR-25) · node exclusion/removal records (§6 UR-12) |
R1 (minimum exclusion record) · R3 (algorithms exclusion record) · R5 (forced-specification slots · node exclusion) · R6 (A0 recalculation) · R10 (evidence window · row inclusion specification) |
| RQ-102 | Do not put abbreviations into explanatory sentences; clicking an abbreviation in the data table displays its explanation in a pop-up. | guard · evidence_view |
R6 (guard allowlist) · R10 (abbreviation explanation) |
| RQ-103 | If an answer cannot be provided, state what is known and unknown, ask detailed questions about the unknowns, and investigate again using user feedback. | A0 · A5 | R6 (A0 guidance) · R7 (A5 re-investigation) |
| RQ-104 | If a question does not use learned data, request learnable data or a way to obtain it. | A0 | R6 |
| RQ-105 | Explain the need, objective, required time, required resources, performance, limitations, and improvement methods of the learning process. | A5 · A0 | R7 |
| RQ-106 | If a similar recent question exists and no new data are needed, reuse the previous answer process to prevent additional LLM calls. | conversation |
R6 |
User UI
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-107 | The UI used during development shall be the same as the actual user UI; do not create a separate development-only screen. | ui · principle gates (§1-2) |
R0–R12 (verify screens with ui in every round) |
| RQ-108 | Provide chat through a web browser; the port is a configuration constant. | ui · configuration constant |
R0 |
| RQ-109 | Provide a user-tool selector, conversation input, status display (stage-by-stage result list, scrolling, clearing), result explanation area, and result-data table. | ui |
R0 (skeleton) · R1 (chat and basic answer table) |
| RQ-110 | Display LLM token usage in the conversation window. | ui · llm_policy |
R8 |
| RQ-111 | Provide a question input field (distinguishing questions from opinions), additional-material attachment, answer window, learning-progress window, evidence-data window, and evidence-material window with show/hide selection. | ui · observability |
R0 (progress) · R1 (chat) · R3 (attachments) · R10 (evidence windows) |
| RQ-112 | After explaining multiple data types, asking a question or giving an opinion about one type shall retain the other data types. | display_optimizer · ui |
R10 |
| RQ-113 | Separate/integrate data by type (default), choose table (default) or graph, display a default number when there are many records and allow selection within the maximum range (PR-02), and allow selection of specific-condition data (first, maximum, minimum, last, and N records before/after). |
display_optimizer |
R10 |
| RQ-114 | Show an optimized display first, provide several selection options, follow display requests entered in the input field, learn user preferences, and reduce the size of large images before display. | display_optimizer |
R10 |
| RQ-115 | Provide graphs and adaptively optimize axis ranges, labels, and legends; allow table ranges and graph formats to be specified with a few clicks. | display_optimizer · evidence_view |
R10 |
| RQ-116 | Tool functions analyze the user's interests and current data and configure the optimal display. | display_optimizer · personalization |
R8 (personalization) · R10 (display_optimizer) |
| RQ-117 | The intro screen includes answers to the highest-priority interests and a clickable list of major interests. | display_optimizer · personalization · ui |
R10 |
| RQ-118 | Consolidate screens with the same function, and add only a list to the question screen for approval-pending items. | ui |
R0 (screen-count limit) · R4 (approval-pending list) · R10 (shell completion) |
| RQ-119 | Present data for human review in an easy-to-understand form. | evidence_view · ui |
R10 |
| RQ-120 | Configure the screen and agent behavior according to user permissions. | access · ui |
R0 (skeleton) · R8 (permission-table application) |
Progress Display
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-121 | Display agent/LLM work progress from 0–100% in real time (stage-based estimate plus heartbeat, clearly marked as an estimate), continue displaying it after completion, and update it at least once per minute even for slow operations (PR-01). |
observability · ui |
R0 |
Users, Domains, and Permissions
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-122 | Interpret multiple systems simultaneously as one deliverable. | domain_lifecycle · domain isolation |
R0 |
| RQ-123 | Assume access by two or more users, with each user asking questions according to their job role. Authenticate users through Google OAuth or ID/password; only registered/authorized accounts may connect. The initial server administrator account is defined in installation settings, and remaining accounts are registered by the server administrator. | access · ui |
R0 (authentication, account handling, initial server administrator) · R8 (account-registration screen) |
| RQ-124 | Separate the data types accessible to each user; the domain administrator assigns permitted types per user, and users ask only questions related to permitted types. | access |
R8 |
| RQ-125 | Whether there are multiple domains or multiple deliverables within one domain, each shall have an independent workbench; on login, each person's domain and permissions are determined. | access · domain_lifecycle |
R0 (workbench/domain-assignment skeleton) · R8 (permission determination completion) |
| RQ-126 | Permissions have two layers: server administrator and domain-level grades (domain administrator · view+learning · view-only). Investigation and approval are not separated. Operations by grade follow the permission table (§5-5). | access · ui (grade-based operation restrictions) |
R0 (permission-table format) · R8 (permission-table application) |
| RQ-127 | Maintain a separate DB for each domain and an integrated DB for managing multiple domains. | domain_lifecycle · store |
R0 |
| RQ-128 | Allocate costs by domain, with allocation determined by a human. | llm_policy |
R8 |
Personalization
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-129 | Extract the user's points of interest and instruction know-how, systematically organize conversation content, and use it as memory. | personalization · conversation |
R6 (conversation) · R8 (personalization) |
| RQ-130 | Start collecting know-how now and record user-specific know-how separately from integrated/shared know-how. | personalization |
R8 |
| RQ-131 | Record and update words/methods frequently used by each user and rank user characteristics and areas of interest. | personalization |
R8 |
| RQ-132 | Lower scores for old interests and add points for recent interests. | personalization |
R8 |
LLM Operation, Cost, and Execution Environment
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-133 | Run on a general-purpose PC using free APIs or open LLMs while handling large domain DBs (data-scale condition measured by PR-04). |
A6 · parallel · llm_policy |
R0 (parallel) · R3 (A6) · R8 (llm_policy) |
| RQ-134 | Use free APIs first and paid APIs only when blocked; control costs so they do not become excessive, and when paid use is essential, notify the user in advance and obtain consent. | llm_policy · llm_gateway |
R0 (llm_gateway fallback) · R8 (llm_policy) |
| RQ-135 | Optimize LLM calls. | llm_policy · conversation |
R6 (conversation reuse) · R8 (llm_policy accounting) |
| RQ-136 | Ensure the deliverable is not dependent on LLM model performance — values must not depend on the LLM, explanation/extraction quality must have a guaranteed lower bound through validation gates, and the backend must remain replaceable. | guard · A4 · llm_gateway |
R0 (llm_gateway backend replacement) · R1 (guard) · R11 (A4 backend experiments) |
| RQ-137 | During development, develop without cost burden — handled through backend configuration rather than a separate feature. | llm_gateway (§1-2) |
R0 |
| RQ-138 | Move the deliverable to another server and relearn from the beginning. | domain_lifecycle |
R9 |
External Search
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-139 | During learning, provide a place for external search (Google Search, Naver Search — open list) to improve the accuracy of explanatory/interpretive data. Execute without per-search user approval and apply an outbound-scope check to search queries. Define the interface only; no implementation round is required. | web_search slot (§11-2) |
Slot (no implementation round · interface follows R0 contract format and R8 outbound scope) |
Answer Quality and Feedback Incorporation
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-140 | Accurately incorporate user feedback into autonomous agent improvement, repeatedly determine whether the system has reached the level for the next stage, and allow users to intervene and provide judgments/feedback at any time. | feedback · quality_metrics · A4 |
R11 |
| RQ-141 | Retain answer accuracy/satisfaction data and backend data that identifies what was wrong and why. | quality_metrics · observability · ui (trace view and quality report) |
R0 (observability span) · R10 (trace view) · R11 (quality_metrics · quality report) |
| RQ-142 | Measure how quickly and accurately feedback is incorporated and improvements are achieved. | quality_metrics |
R11 |
| RQ-143 | When no numerical criterion exists, a human confirms passage. | quality_metrics · eval_lab · ui (human decision input) |
R11 |
3-3. Principles
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-144 | Do not limit the system to sample materials — entirely different data may be provided to the deliverable. | Principle gates 1 · 5 | R0 (gate 1) · R3 (gate 5) |
| RQ-145 | Assume throughout development that no explanatory documentation exists (code and interpretation materials are references only). | Principle gate 3 | R1 |
| RQ-146 | Solve general data problems rather than example data problems, and do not incorporate examples into the design. | Principle gates 1 · 5 | R0 (gate 1) · R3 (gate 5) |
| RQ-147 | Concepts/functions given as examples are examples only and are not primary elements. | Principle gates 1 · 5 | R0 (gate 1) · R3 (gate 5) |
| RQ-148 | No specific value from example data may appear anywhere in the deliverable. | Principle gate 1 | R0 |
| RQ-149 | Exclude prior investigation of sibling projects. | Outside development scope (§1-2) | Out of scope (no check) |
| RQ-150 | Maintain consistent inference of data meaning regardless of whether operations have stopped or are ongoing. | RQ-161 path | R3 (additional ingestion) · R5 (recalculation display) · R6 (reuse decision) · R7 (impact-knowledge investigation) · R11 (re-evaluation) |
| RQ-151 | Generalize rather than optimizing for the current data. | Principle gates 1 · 5 | R0 (gate 1) · R3 (gate 5) |
| RQ-152 | Humans make judgments; agents provide evidence and continuous improvement. | knowledge_policy.transition contract test · knowledge_policy.reapply_confirmations contract test · evidence_view |
R4 (transition) · R9 (reapply_confirmations) · R10 (evidence_view) |
| RQ-153 | Minimize user burden and automate most processing. | Principle gate 4 | R0 (ui screen-count limit) · R4 (A7 question-count limit) · R12 (A8 presentation-count limit) |
| RQ-154 | Use questions and feedback of any type for learning (learning-signal usage is governed by the permission table — §5-5). | feedback contract test |
R11 |
| RQ-155 | Do not depend on LLM model performance. | Principle gate 2 | R11 |
| RQ-156 | Use free APIs first; paid APIs require notice and consent. | llm_policy contract test |
R8 |
| RQ-157 | Incorporating new needs must not limit or omit the performance/functionality of existing agents. | Regression tests through previous rounds | R1–R12 (regression every round) |
| RQ-158 | Provide an independent agent workbench for each domain. | Domain-isolation invariant | R0 |
| RQ-159 | Prefer learning-based evolution where possible. | Integrated tests for A4 · A5 · A7 · feedback · knowledge_policy · codegen paths |
R4 (A7 · knowledge_policy) · R7 (A5) · R11 (A4 · feedback) · R12 (codegen) |
3-4. Additional Requirements
| ID | Requirement | Acceptance Module | Round |
|---|---|---|---|
| RQ-160 | Define, by domain, the types of data that may be sent to external APIs (LLM/external search), such as raw values, samples, and profiles; record consent and inspect the scope before each call. | llm_policy · llm_gateway (data-type display) · web_search slot (query inspection) |
R0 (llm_gateway data-type display) · R8 (llm_policy outbound-scope check and consent) |
| RQ-161 | Data addition/update upload — when new data are added during operation, remove duplicates during ingestion, reanalyze only the changed scope and update the connectivity structure, move affected knowledge into review, and mark affected precomputed data and answer reuse as invalid. | ingest.loader · A6 · A4 · A5 · derived_data · conversation |
R3 (loader incremental ingestion · A6 changed-scope reanalysis · data_updated) · R5 (derived_data recalculation indication) · R6 (conversation reuse decision) · R7 (A5 impact-knowledge investigation objective and review transition) · R11 (A4 re-evaluation) |
| RQ-162 | Non-functional target slots — provide places for baseline values for response time, concurrent users, and onboarding processing time (values are policy constants). | PR-29 · PR-19 · PR-07 (§10-1 non-functional layer) |
R3 (PR-07) · R6 (PR-29) · R8 (PR-19) |
| RQ-163 | Approval history — record who approved or rejected which knowledge and when. | knowledge_policy |
R4 |
| RQ-164 | Migration/relearning retention scope — when moving servers and relearning from the beginning, retain adopted algorithms, code, and integrated know-how; reset domain knowledge; preserve user-confirmed items and reapply them to nodes with the same structure. | domain_lifecycle · preservation of user-confirmed items (§6 UR-19) |
R9 |
반응형
'BilientSevices > BilientService' 카테고리의 다른 글
| Images for BMS(Bilient Monitoring System) (0) | 2026.09.26 |
|---|---|
| Two-Layer Multi-Agent & Package Foundation Design : Biligent#4 (0) | 2026.09.25 |
| Teminnology : Biligent#2 (0) | 2026.09.24 |
| Purpose and Scope : Biligent#1 (0) | 2026.09.24 |
| ☆[Biligent] Overview of Bilient Data Agent Platform : Development Stage (0) | 2026.09.23 |
반응형
250x250
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- arduino
- DYOV
- 혁신
- Decorator
- 혁신과허들
- 치매
- 빌리칠드
- 전압
- 아두이노
- 전류
- Video
- Innovations
- Hurdles
- ServantClock
- 티스토리챌린지
- 오블완
- BSC
- 빌리언트
- 절연형
- BiliChild
- 심심풀이치매방지기
- 둎
- 치매방지
- 허들
- 심심풀이
- bilient
- image
- 배프
- Innovation&Hurdles
- Innovations&Hurdles
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
글 보관함

