Key Information

Register
Submit
The challenge is finished.

Challenge Overview

1.0 - Challenge Overview

Welcome to the Helium Web App Backend Assembly challenge! In this challenge, you will need to build the backend for the new Helium web application based on the architecture design.  This contest will produce the full backend for the new web application.

1.1 - Project Overview

The client for this project runs a business where they fill and ship containers of liquid helium.  The current process of planning and scheduling container fills and shipments includes manual steps, such as adding data to Excel files.  For this project, the client is looking to create a web application that fits into their existing system and can be used to eliminate these manual steps and streamline the process of production planning for their liquid helium business.

The existing logistics planning system uses a combination of manual processes, including data from paper/excel spreadsheets and live data in the client’s existing production logistics system.  This current logistics system collects data from existing, client facing systems and orders entered via an order entry system.  All of this data will need to be consumed by the new web application.

On a weekly basis in the current process (or somewhat real-time when conditions change), logistics personnel will gather data from multiple different sources and make a draft schedule. If everything appears good with that draft schedule, they will create a “fill and ship” schedule to deliver to the client’s plants. This schedule tells the plant employees what container to fill, for which customer, and when to ship it. The plant employees are sent repeated schedules if there are any changes from unforeseen conditions.

The new web application will need to integrate with the existing systems and fill in the gaps where manual steps are currently involved.  The end product produced by the system will be the fill and ship schedule.

1.2 - Competition Task Overview

A complete list of deliverables can be found in the TopCoder Assembly competition Tutorial at: http://apps.topcoder.com/wiki/display/tc/Assembly+Competition+Tutorials

Note: Extensive implementation notes are provided at method documentation on UML Class Diagrams. Please follow them for implementation.

Note: Please read the whole Application Design Specification first. All the details not mentioned in this specification are provided in that document.

1.2.1    Model Classes
This assembly is responsible for implementing all model classes on class diagram "Model Class Diagram".

1.2.2    Exceptions
This assembly is responsible for implementing all exceptions on class diagram "Exceptions Class Diagram".

1.2.3    Backend Services
This assembly is responsible for implementing all services on class diagram "Backend Services Class Diagram".

IMPORTANT: For building classes to access the database, the client requires following a very standard way of dealing with the class. We've attached a sample class for the developers to work with. We have also attached a simple tool that can help you get started with a sample class. This tool will read the database table from a connection string and then create a class in the appropriate format. This is an incomplete class as it has no delete method as well as it is probably not feature complete, however, this format is the starting point used to complete the class. 

1.3 - Technology Overview

- Windows Server 2008 R2
- MS Office 2007
- MS SQL Server 2005
- IIS 7
- C# 3.5
- .NET Framework 3.5
- ASP.NET Web Form
- jQuery 1.11.1 http://jquery.com
- Open XML SDK 2.0 for Microsoft Office (already included in .NET 3.5)
- Microsoft Chart Controls for Microsoft .NET Framework 3.5 - http://www.microsoft.com/en-us/download/details.aspx?id=14422
- Infragistics Ultimate 2014 Vol. 1 - http://www.infragistics.com/

 

1.4 - Documentation Provided

Documentation and Applications that will be provided to registered members:

Document Name    Document Description                                
Application Design Specification    Architecture documentation attached
Class Diagrams    Architecture documentation attached
Sequence Diagrams    Architecture documentation attached
ERD    Architecture documentation attached
DivingGasCustomers.cs    A sample class that demonstrates the standard way that must be followed to build classes to access the database
TableToClassMaker.exe     A simple tool that can help you get started with a sample class. This tool will read the database table from a connection string and then create a class in the appropriate format. This is an incomplete class as it has no delete method as well as    it is probably not feature complete, however, this format is the starting point used to complete the class. 

 

1.4 - Testing

Please include unit tests to verify your application successfully meets the requirements of the project.  You should only provide functional tests for service classes - there is no need to test the entity and exception classes or no need to provide failure tests for service classes.



Final Submission Guidelines

- Completed code for the application backend (see architecture documentation and section 1.2 of this challenge spec above)
- A complete and detailed deployment documented explaining how to deploy the application including configuration information.
- Unit tests to verify your application successfully meets the requirements of the project.

A complete list of deliverables can be found in the TopCoder Assembly competition Tutorial at: http://apps.topcoder.com/wiki/display/tc/Assembly+Competition+Tutorials

ELIGIBLE EVENTS:

2015 topcoder Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30043958