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 == [[Image:9ticks_SystemArchitecture_v01.png|thumb|System Architecture]] * 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 === 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 visualize each source from several perspectives. || e.g.: textual, bar chart, pie chart, ... || 1 || Draft |- | REQ_0005 || User shall visualize sources in comparison mode. || e.g.: overlap two stock quotes || 1 || Draft |- | REQ_0006 || User shall define how to be alerted of events. || || 1 || Draft |- | REQ_0007 || User shall visualize the history of any source. || || 1 || Draft |- | REQ_0008 || User shall perform queries over the gathered data. || || 1 || Draft |- | REQ_0009 || Queries, visualizations and filters shall be stored for future re-utilization by any user. || || 1 || Draft |} === Sources === {| class="TablePager" border="1" width="100%" |- ! Code !! width="50%" | Requirement !! width="40%" | Comment !! Priority !! align="center" | Status |- | REQ_0101 || A data source API should be built. || Every source, predefined or custom, must use this API. || 1 || Draft |- | REQ_0102 || Data source API specifications TBD || || 1 || Draft |- | REQ_0102 || Each source shall have associated tags. || || 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
3.138.106.225
Talk for this IP
Log in
Navigation
Main Page
Benchmarks
Tools
Publications
People
Search
Toolbox
What links here
Related changes
Special pages