Register
Submit a solution
The challenge is finished.

Challenge Overview

Project Overview

Apollo Project Assessment Questionnaire (PAQ) form based application to help the Apollo IT service to classify whether a project is LITE, Small, Large or Complex and therefore be in a position to effectively resource projects, assign the right technological partners, identify suitable vendors and identify risks. It does this through a questionnaire backed by a rules engine to assign a score to the project.

Task Overview

For this challenge, we need to define the architecture of the backend REST API, including the security, and provide implementation details for downstream assemblies.

Project Requirements

Detailed documentation about what the final product will be can be found in the accompanying documents.

Challenge Requirements

For this challenge, the requirements for implementation are the backend services.  The UI and client-side Javascript are OUT OF SCOPE.

The final web application will access the data directly through these new services. 

This architecture must formally define:

1) The REST endpoints that will be created, with the operations to support the "Business and Functional Processes" listed in section 2 of the community proposal.  note that we are targeting IIS and IBM Websphere
2) The data format of the return data from the REST server to the clients
3) The database schema, targeting SQL Server 2014

Security

Security is a big part of the project, so please ensure that your architecture takes into account the Security Considerations listed in the community proposal.  There are no formal requirements listed for how we implement logging, auditing, and monitoring, so please make a clear recommendation for these, using best practices and 3rd party libraries that make sense.
 
In addition, please make sure to read, understand, and implement the data validation requirements.  All sorts of security auditing will happen to ensure these requirements are met, so it's better to make sure we are fully compliant now rather than running into trouble later.
 

Submission Deliverables

  • Application Design Specification
  • TCUML containing interface / class diagrams, assembly diagrams, sequence diagrams etc..
  • Interfaces and classes in the TCUML must be well documented
  • Assembly Specifications (with enough implementation details).
  • Documentation for endpoints of all REST services
  • ERD


Final Submission Guidelines

For each member, the final submission should be uploaded via the challenge detail page on topcoder.com.

ELIGIBLE EVENTS:

2016 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30051724