Challenge Overview
Project Overview
The client for this project is looking to expand its automotive brand. Their current automotive digital strategy lacks an industry-specific marketing brand/platform, resulting in low viewership of digital content and low quality/quantity of contacts in the database.
The goal of the DRIVEN project is to introduce a sustainable automotive-specific application that aggregates content across the firm, digitally delivers that content to stakeholders worldwide, and can evolve with advancements in mobile technology and digital communications.
This project is expected to produce a mobile app supporting iPad and Android, with strong backend service support.
Key Requirements:
The wireframe of the app has been provided as the input to the challenge. The key features that the app should have include:
- Interactive capabilities for use (i.e. View article content, download PDFs, watch videos, license podcast, share all of the above via social media, etc.)
- Real-time updates
- Intelligent search with auto suggestions and tag links
- Social media sharing – linked to LinkedIn, Twitter, Facebook, & Google+
- Social Login via LinkedIn
- Customized user preferences
- Filtering capabilities
- The client needs the ability to tag and categorize the content, the tags and categories will match a predefined topics list the client has. The tags / categories users have viewed need to be track and have audit trail.
- Categories are going to align 100% with issues architecture (set of topics the firm has defined)
- Content needs the ability to be tagged to these pre-defined tags / categories.
- Need audit trail so analytics solution can track what articles / content tags / categories users have viewed
- Configurable polling (on / off and custom questions for different user groups)
- User analysis - The client wants the ability to provide leadership insights on the makeup of our audience, topics being explored, metrics specific to a campaign, etc. Regarding Demand and Lead Gen, they want to capture data that empowers the Marketing team to go to their sales team and inform them when priority targets' interests create a lead and follow-up opportunity. For example, C-level Executive representing Company A viewed our PoV on Topic X – thereby identifying a follow-up lead/opportunity - this needs to track user's behavior on the application. So we need to track which user views which content, which user performs which action, etc. The client also wants to understand the ability to track unique visits and how tracking is performed when one is and is not logged in.
- Push notifications. Ideally, notifications can be customized. So, rather than a push notification to all users when new content is loaded, it can be sent to executives whose profiles relate to the Category to which the content is tagged. So, we could tag content as "Operational Growth," and anyone whose Category filter includes Operational Growth would get a notification when new content tagged with Operational Growth is added.
CRM / Marketing system integration / data export abilities
- As the user analysis requirement says, the app/service need to track data (user, contents, tags / categories etc.), the system also needs to ability to export these data tracked so it can be fed into an external CRM / Marketing analytics system.
Targeted Devices:
The targeted devices are:
1) iPad
2) Kindle Fire (Android)
Competition Task Overview
For this challenge, you are expected to break down the requirements, define the detailed architecture for the whole system, by clearly answering the following questions, but not limited to:
- What technology will be used for mobile app, how will the data be stored in mobile app and sync with backend. Please note that client prefers to use HTML5 to the build the universal app works on all the required platform, so please consider to use this approach. PhoneGap is a good framework to achieve that.
- How will the mobile app communicate with the backend service ? We want to define a custom API layer which the mobile app communicates with. The custom API layer should links to a CMS. Client will use the CMS for publishing / editing / managing the content. CMS is the key component in the backend, the client has success with Magnolia CMS with Jackrabbit (a JCR implementation), so please use it unless there is a strong reason to choose another one (in the case, please document the reason). The Magnolia stores the content in the JCR, the custom REST/JSON API calls the same JCR to read / add / update the data. Also SharePoint 2013 has also been discussed by client, what is the pros / cons of using it should be think about.
- The design of the customer API layer.
- The backend data model
- How will the data be stored and managed in the backend service.
- How will user identifiable data be protected (e.g., email address, etc)?
Please note that the deliverables produced by this architecture will be used directly into the development phase (assembly, prototype, code challenges), please make sure the details are enough for the following challenges.
Challenge Inputs
The following challenge inputs will be provided in the challenge forum:
- Requirements questionnaire
- Wireframes
Final Submission Guidelines
Submission Deliverables
- Application Design Specification (ADS) written in an MS Word compatible document.
- Class and sequence diagrams authored using the TopCoder UML tool.
- Detailed Downstream competitions specifications (Assemblies, Code challenges, etc)
- Consolidated Game Plan, which gives an agile approach to carry out the development.
- Data Model for backend data management (such as an Entity Relationship Diagram).
- API specification for the custom API layer.
Submission Guidelines
For each member, the final submission should be uploaded to the Online Review Tool.