View source
From BiCEP
for
9ticks:Software Requirements
Jump to:
navigation
,
search
== Requirements Overview == * Retrieve, interpret and store data source events * Web and mobile-based frontends * Predefined and custom data sources * Visualizations * Queries * Alerts * History * Tags == List of Requirements == * The distinction between user, functional and non-functional requirements is ignored * The requirements are sorted by logical groups * Each requirement has been assigned with the following properties: ** '''Code''' — REQ_[0-9]{4} ** '''Requirement''' ** '''Comment''' ** '''Priority''' — from 1 to 5 (1 as highest) ** '''Status''' — Draft, Approved, In Progress, Testing, Finished * To see an '''unsorted list of requirement''' folow '''[[9ticks:Unsorted_List_of_Requirement|this]]''' link. === Generic === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! Status |- | REQ_0001 || User shall access the system through a web browser. || || 1 || Draft |- | REQ_0002 || User shall access the system through a mobile device. || || 1 || Draft |- | REQ_0003 || User shall subscribe sources. || || 1 || Draft |- | REQ_0004 || User shall tag sources. || || 1 || Draft |- | REQ_0005 || User shall visualize each source from several perspectives. || e.g.: textual, bar chart, pie chart, ... || 1 || Draft |- | REQ_0006 || User shall visualize sources in comparison mode. || e.g.: overlap two stock quotes || 1 || Draft |- | REQ_0007 || User shall define when and how be alerted of events. || || 1 || Draft |- | REQ_0008 || User shall visualize the history of any source. || || 1 || Draft |- | REQ_0009 || User shall perform queries over the gathered data. || || 1 || Draft |- | REQ_0010 || Queries, visualizations and filters shall be stored for future re-utilization by any user. || || 1 || Draft |- | REQ_0011 || User shall perform all operations in real-time. || Minimum delays. || 1 || Draft |} === Sources === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! align="center" | Status |- | REQ_0101 || There shall exist a data source API. Details are TBD. || Every source, predefined or custom, must use this API. || 1 || Draft |} === Predefined Sources === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! align="center" | Status |- | REQ_0201 || A predefined Stock source shall be subscribed. || Market and quote must be provided. || 1 || Draft |- | REQ_0202 || A predefined Weather source shall be subscribed. || Location must be provided (defaulting to the IP physical location). || 1 || Draft |- | REQ_0203 || A predefined Sports source shall be subscribed. || A specific match (source is only that match) or generic team (all team matches) must be provided. || 1 || Draft |- | REQ_0204 || A predefined Flight source shall be subscribed. || Flight number and flight date must be provided. || 1 || Draft |- | REQ_0205 || A predefined Traffic source shall be subscribed. || Route must be provided. || 1 || Draft |- | REQ_0206 || A predefined RSS Feed source shall be subscribed. || RSS URL must be provided. || 1 || Draft |- | REQ_0207 || A predefined eBay item source shall be subscribed. || Item ID must be provided. || 1 || Draft |} === Custom Sources === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! Status |- | REQ_0301 || User shall use a browser extension to select some peaces of information he wants to monitor. || || 1 || Draft |- | REQ_0302 || The information selected with the browser extension shall be automatically typed. || May be overridden by the user. || 1 || Draft |- | REQ_0303 || System shall recognize basic data types. || e.g.: integer, decimal, percentage, time, date, string, ... || 1 || Draft |- | REQ_0304 || System shall connect similar / equivalent data types. || e.g.: Celsius, Fahrenheit, Kelvin, ... ; Meter, Mile, Yard, Foot, ... ; Euro, U.S. Dollar, Pound, Swiss franc, ... || 1 || Draft |- | REQ_0305 || Any single HTML item shall be selected. || e.g.: a table cell or an anchor. || 1 || Draft |- | REQ_0306 || Every repetitive HTML item shall be selected. || e.g.: all main titles || 1 || Draft |- | REQ_0307 || An HTML table shall be selected. || || 1 || Draft |- | REQ_0308 || Parts of an HTML table shall be selected. || e.g.: a row whose cell at nth column has the value X || 1 || Draft |- | REQ_0309 || All items inside a bounded polygon shall be selected. || || 1 || Draft |} === Event Processing === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! Status |- | REQ_0401 || Each user alert rules shall be processed on-the-fly. || Use a CEP engine, Esper maybe. || 1 || Draft |- | REQ_0402 || User shall be notified of an alert as soon as possible. || || 1 || Draft |} === Crawler === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! Status |- | REQ_0501 || Each source must be polled for updates every "refresh rate"-times. || Based on each source's refresh rate. || 1 || Draft |- | REQ_0502 || The solution shall have good performance and be scalable. || || 1 || Draft |- | REQ_0503 || The solution shall handle stress peaks. || Many sources, many events and many users | || 1 || Draft |} === Data Store === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! Status |- | REQ_0601 || An aggregation engine shall be in place. || Summarize older data. || 1 || Draft |- | REQ_0602 || A fault tolerant mechanism must be in place. || Replicate data. || 1 || Draft |- | REQ_0602 || A fault tolerant mechanism must be in place. || Replicate data. || 1 || Draft |- | REQ_0602 || A locking service must be in place. || Low level concurrency prevention. || 1 || Draft |- | REQ_0602 || The solution shall have good performance and be scalable. || || 1 || Draft |- | REQ_0602 || The solution shall handle stress peaks. || Many Sources, Many Events and Many users | || 1 || Draft |} == Requirement Traceability Matrix == Not needed, yet.
Return to
9ticks:Software Requirements
.
Views
Page
Discussion
View source
History
Personal tools
Log in
Navigation
Main Page
Benchmarks
Tools
Publications
People
Search
Toolbox
What links here
Related changes
Special pages