Challenge Overview
Project Overview
The entire system is a tool suite that
- Collects data as answers to questions (grouped into surveys),
- Evaluates metrics for respondents based on submitted data/answers,
- Categorizes respondents into peer groups based on submitted data or computed metric values,
- Computes statistical data and
- Generates various reports (in MS Excel and PowerPoint).
The main component is a Visual Basic 6 application that controls the data processing and reporting part. It also provides direct data import from MS Excel files into DB2.
The scope of this project is to re-implement this data processing and reporting (DPR) component using Java based technologies.
This assembly will fix some bugs found during testing.
Competition Task Overview
This round of fixes focus on bulk configuration import issues and some general issues. The red ones are of high priority, yellow ones of medium priority and the rest of low priority.
Bulk Configuration Import - Measures
- Invalid mapping for number type. Correct (SRS 3.32.13.2): Percentage -- 1, Currency2 -- 2 , Number -- 3.
- Invalid mapping Normalization -- category id. Correct (SRS 3.32.13.2): Revenue: -- R, Cost --: C,
Neutral:-- N - Invalid mapping Location of denomination -- DENOMINATION_DIFFERENCE_POS. Correct (SRS 3.32.13.2): No denomination: 0, Denomination in Denominator: -1, Denomination in Numerator:
- REPORTING_OUTCOMES_TO_QUESTION does not get populated. For each question referred into the formula or prevalidation rule, there has to be an entry in the REPORTING_OUTCOMES_TO_QUESTION table.
- REPORTING_OUTCOME_RULES.FORMULA_READ is converted to a decimal number when it contains only a question ID. For example, FORMULA is #21967# , English description of formula (in Excel) is 21967, FORMULA_READ is 21967.0, even though it is VARCHAR. Correct it should preserve the exact content of the Excel file.
Bulk Configuration Import - Business Drivers
- Always set Is_Null_Value_Allowed to false (0) although it is not specified by the user (BRS 187).
- BD_CATEGORY_RULES.FORMULAs converted to a decimal number for type 1 and 2 business drivers. For example “1” in the Excel file is recorder in the database as “1.0”. Expected database values to match exactly the Excel input as these are text values.
- REPORTING_OUTCOMES_TO_QUESTION does not get populated. For each question referred into the reporting outcome formula or bd category formula or prevalidation rule, there has to be an entry in the REPORTING_OUTCOMES_TO_QUESTION table.
- Invalid critical mass has been imported: 3.14. Critical mass is a positive integer in the database. Expected behavior was to flag an error for each value that is not a positive integer.
Bulk Configuration Import - Survey Questions
- Question type ID allows for null value and it should not. For a new question (* in column E) remove the content of column F. Import succeeds, but expectation is to flag this as an error.
General
- Debug log file does not contain enough information. Please refer to the sample debug file generated with the current system. Also, information contained is not entirely useful: for instance the full path class names or complete stack trace.
- Transaction history does not auto-refresh (every 30 seconds).
- C:\fakepath\EDI02.xls Why “fakepath” gets displayed for a file selected for import?
- The little help button does not work.
- REPORTING_OUTCOMES.CREATE_DATE and LAST_UPDATE shall default to CURRENT DATE for all imports.
- Make sure for all imports that the validation activity does not stop at the first encountered error. Instead, the whole content must be analyzed in order to detect all possible errors. Respondent data import does not validate the entire content and shall be fixed (already discussed), but bulk configuration imports might be doing a full content validation (it was not clear from my tests). Please verify!!
- When incorrect file is imported, the Validation Error message is not displayed before the Processing message (ARS Sections 2.3.1.4 to 2.3.1.6)
- Stale "In progress transaction" does not timeout
- Displays (false) error message when importing xlsx file, but later shows "Scheduled" then "In progress" status in Transaction history
- Transaction history displays only a maximum of 10 rows; with no paging for the excess rows (new prototype provided in forum)
- Implement the progress indciator for synchronous processing and make the progress bar reusable by other parts of the application / other applications (make sure you clearly document how to use this in other pages).
Make sure the unit tests are still valid after this contest.
Technology Overview
The working environment requirement details for this application are outlined in the architecture. An overview of the environment requirements are listed below:
- SUSE Linux Enterprise Server 10
- WebSphere Application Server 8
- DB2 9.5
- Java 1.6
- J2EE 1.6
- EJB 3.1
- JDBC 4.0
- Spring 3.1
- Struts 2.2.3
- jQuery 1.7.2
Documentation Provided
Documents can be downloaded in contest forum.
Final Submission Guidelines
Submission Deliverables
A complete list of deliverables can be viewed in the TopCoder Assembly competition Tutorial at: http://apps.topcoder.com/wiki/display/tc/Assembly+Competition+Tutorial
Final Submission
For each member, the final submission should be uploaded to the Online Review Tool.