Challenge Overview
The Development Support Team (DST) wants to implement pGraph to monitor server performance. The DST has completed development of the 1st iteration of code. The intent of this event is to continue with enhancement on the existing component.
There are 8 design + 8 presentation enhancements in scope, outlined below:
Design specific enhancements:
1a. Create an INTEGER type primary key on the SERVER, MY_SERVERS, and View_Server_Query tables. Currently, the primary key is a composite of columns (Server, Domain). This new INTEGER primary key should be generated as an identity column by DB2 in the SERVER table and also be used as the foreign key reference in MY_SERVERS and VIEW_SERVER_QUERY tables.
1b. The Server and Domain columns should remain, but should be used as a composite unique index for searching. Create a unique index for these columns on each of the 3 tables listed above.
2. On Select Other Parameters page,
- Pre-fill select date box, with latest date of NMON file availability for selected server
- If no file exists, leave blank
- Also when the calendar pops up, grey out the days for which NMON files are not available. Alternatively there should be some intuitive guidance to the user on what dates the NMON files are available, without providing a huge list. The design should also avoid the user trying different dates on trial and error basis.
New design is solicited to address these two items in particular. Design should also recommend a method to store NMON files and a location to store physical nmon files. Design should also suggest a way to load NMON file availability details and nmon files them selves into database or if nmon files are stored on a file system
3. When A particular date is selected based on calendar guidance on NMON file availability, application should find and launch pGraph applet automatically
4. When pgraph applet is launched, then it should load all *.gz files under the target location according to date and server selection.
For example if Server selected is cloud98.lexignton.ibm.com and date selected is ‘August 17th 2011’ then application should launch the applet and applet should load all files for that date. This should be based on how the nmon files are stored and corresponding metadata in the database.
5. When calendar guidance doesnot let the user select a date for a server, when NMON files are not available, then Launch pgraph’ page/button, should NOT be displayed.
6. When Calendar appears, calendar should NOT allow the user to select a date beyond the current day.
7. In file Launch_pGraph.php, line 854 is causing an error (it is currently commented out). Please fix this error, which is causing a ServiceException to be thrown.
8. On the Search Server screen, the “Server Name” input box is currently not invoking the AJAX look ahead for server name. Please fix this.
Presentation Layer Enhancements:
1. Convert the whole text in ‘DST Server Performance’ page into a Help Button across all other pages. Remove DST Server Performance Page
2. present current ‘Search Server form’ when clicked on DST Server Performance page
3. on Search Server page, the view ‘ Recently Viewed servers’ should present the list of server that were searched and viewed by the user in that session. These servers need not necessarily be in ‘My Servers’ list.
4. On Search results page,
- Hide the columns ‘Select, OS, Enterprise, Subclient id 1, and sub client id 2’
- Move Add My Servers column to extreme left and replace the text with + and – buttons, and text Add and remove should be displayed when mouse hovers over + or –
- ‘+ and –‘ buttons should perform actions to add to my servers and remove from my servers respectively
- Rename customer column header to ‘Project’
- Server name should be fully qualified domain name and remove underline
- NICE TO HAVE: Make each column in the search results table adjustable by width.
5. In Views ‘Recently viewed servers’ and ‘My Servers’, display one server info per row
6. In Recently Viewed servers’ list, provide an option to select number of servers, with default value of 5.
7. Remove text ‘Remove’;, next to ‘X’ button. Just display X button and when the mouse hovers over X button display text ‘Remove’
8. On Select Other Parameters page,
- Remove Underline on server name
- Keeps columns consistent with search results page
Final Submission Guidelines
- Development language: PHP 5.3.2 (cli) (built: Jun 4 2010 11:24:58), Javascript, Java1.4
- DB2 9.5.7
Your submission must include 1. source code (including any PHP, DB2 scripts, Javascript, etc), 2. updates to design documentation based on the scope of this event.
ATTENTION!!! Virtual Machines on the IBM Cloud Computing environment will be made available on a first come first serve basis.
These vm's already have the software stack and base code installation running. We highly encourage you to use a vm for your development and test work. Each vm is identical to the IBM internal test environment which will be used for Approval of the winning submission. To request a vm, please post to the forum with a URL to your public SSH key. You will be notified in the forum when your SSH key has been installed.