CS481 
HummingBird Requirements

 
Number Priority Functional Requirement Code Tests
1 1 Must provide user access to program *.cgi, *.html
1.1 1 Allow user to enter filters, trusts, and peer group configuration. 7.1.3, 
7.1.9 - 7.1.14
3.1 -3.8, 3.9.3 
3.10 - 3.13, 
3.15.5 - 3.16.5, 
3.17 
1.2 1 Allow user to specify subordinate and manager relationships 7.1.1 - 7.1.2 3.21
 
Number Priority Functional Requirement Code Tests
2 1 Hummers must be able to cooperate with other Hummers
2.1 1 Cooperating Hummers (Peers) must be organized as a group 7.1.14 3.18.1.1 - 3.18.1.2
2.1.1 1 Peer groups must be managed by one of the peer group members 7.1.12 3.18.2.1 - 3.18.2.2
2.1.2 1 Peer group management must allow for adding group members 7.1.13.6 3.18.3
2.1.3 1 Peer group management must allow for removing group members 7.1.13.6 3.19
2.1.4 1 Peer group management must allow for create new peer groups 7.1.14 3.18
2.1.5 1 Peer group may be arbitrarily large. 7.1.13.6 3.18.3
2.2 1 Peers must be able to share information with some trust, and integrity level 7.1.11.3 - 
7.1.11.8
3.10
2.3 2 Peers must have access to information archives on other Peers N/A N/A
2.3.1 2 Peers must provide limited access to log DB for other Peers N/A N/A
2.3.2 1 Peers must be able to access announcements to the peer group 7.1.11.3 - 
7.1.11.8
3.22.3
2.4 1 Peers must be able to request action from others 7.1.11.3 -
7.1.11.8
3.22.3
2.4.1 1 An action must be new data collection N/A N/A
2.4.2 1 An action must be stop data collection N/A N/A
2.4.3 1 Action results can be sent to the whole peer group N/A N/A
2.4.4 1 Action results can be sent to the requester only N/A N/A
2.4.5 1 An action must be new filter N/A N/A
2.4.6 1 An action must be to remove a filter N/A N/A
2.5 1 Peer group members must be top level moderators of their tree N/A N/A
2.6 2 Information collected from Peers will be validated 7.1.11.3 - 
7.1.11.5
3.18 - 3.22
2.7 2 Remote connections should be authenticated 7.1.13.6 3.10
2.8 1 Peers decide locally which requests they honor 7.1.11.3 -
7.1.11.8
3.22.3
2.9 1 Data from Peers must be assigned a integrity level locally 7.1.13.6 3.10
2.10 1 Data from Peers must be assigned a trust level locally 7.1.13.6 3.10
2.11 3 Data must be sanitized and reduced before sending to Peers N/A N/A
2.11.1 3 A Hummer must have the ability to replace sensitive strings in data N/A N/A
2.11.2 3 A Hummer must have the ability to remove sensitive data N/A N/A
2.11.3 3 A Hummer must have the ability to calculate stats on its data N/A N/A
 
Number Priority Functional Requirement Code Tests
3 1 Managers must manage their tree of Subordinates 7.1.13 3
3.1 1 Managers must provide instruction for data collection 7.1.13 3.1
3.2 1 Manager will instruct subs. which tools to run 7.1.13 3.1
3.3 1 Manager will instruct subs what data to filter 7.1.13.6 3.1 - 3.5, 
3.13, 
3.17
3.4 1 Managers must provide instruction for data flow 7.1.13 3.1 - 3.5, 
3.13, 
3.17
3.5 1 Managers will instruct subs what data to forward up 7.1.13.6 3.17.10
3.6 1 Managers do not need to trust subordinates 7.1.13.6
3.7 1 Managers must modify, add, and delete data collection activity of its subordinates 7.1.13.6 3.1 - 3.5, 
3.13, 
3.17
 
Number Priority Functional Requirement Code Tests
4 1 Subordinates must follow their managers instruction
4.1 1 Subs. receive data collection directives from managers 7.1.14 3.1 - 3.5, 
3.13, 
3.17
4.2 1 Subs may be managers of others. 7.1.13 3.20
4.3 1 Subs fully trust their moderators 7.1.13 3.1 - 3.5, 
3.13, 
3.17
 
Number Priority Functional Requirement Code Tests
5 2 Top level Managers must be able to configure their hierarchy
5.1 3 Managers should be able to define the topology of their tree 7.1.14 3.20
5.2 3 Managers should be able to visualize the topology of their tree 7.1.14 3.20
5.3 2 Managers should be able to define the information flow of their tree 7.1.14 3.20
5.4 2 Managers should be able to define data that is collected on their tree 7.1.14 3.20
5.5 3 Hosts not yet configured should be able to be configured remotely 7.1.14 3.20
 
Number Priority Functional Requirement Code Tests
6 4 The visualization system should be user configurable N/A N/A
6.1 4 Users should be able to select which data they wish to plot N/A N/A
6.2 4 The amount of time/data the users sees should be adjustable N/A N/A
6.3 4 Peers should have limited access to the visualizations N/A N/A
 
Number Priority Functional Requirement Code Tests
7 3 A Hummer should have facilities to alert and analyze data N/A N/A
7.1 3 Alert messages should be able to be sent to pagers. N/A N/A
7.2 3 Data Reports should be able to be extracted from the DB. N/A N/A
7.3 3 Data Reports should be available to Peers. N/A N/A
 
Number Priority Functional Requirement Code Tests
8 3 The HummingBird build system should be easy N/A N/A
8.1 4 Use Lite clients on un-configured machines. N/A N/A
8.2 4 Reduce the amount of large libraries required for compilation N/A N/A
8.3 4 Nightly build and release system see web page
8.4 1 Automated Regression Testing in build scripts /hum/teama/