230358 SMS Campaign Managemnt CakePHP

In Progress Posted May 10, 2008 Paid on delivery
In Progress Paid on delivery

Scope of Work

Project synopsis: Constructing and implementing a SMS Marketing Campaign and Subscriber management backend interface

Business need: We need a stable, intuitive and flexible SMS Marketing Campaign management interface to be utilized by at least one full-time employer (for sales and execution of SMS Marketing campaigns). Our Clients needs to be able to create new Campaigns, generate subscriber lists based on segmentation as well as following the statistics of their Marketing campaigns.

The different backend subpages should be written out in the Tab-based menu, with the pages in a submenu in one of four sections (See [url removed, login to view] for example). The structure should be:

1. Create/Send Campaign

1. Scheduled Campaigns & Drafts

2. Create New [/ Edit] Campaign

1. Step 1 - Define General Campaign Info

2. Step 2 - Define Contents (SMS-Text)

3. Step 3 - Define Target Lists to use

4. Step 4 - Define Campaign execution date & time

2. Manage Clients

1. Manage Clients

2. Add New Client

3. Target Lists & Segments

1. List Target Lists (grouped by client)

2. [After clicked on a Target List] Manage Target List (with general info, tools to Import targets manually or by segment, statistics of currently included targets and ability for administrators to export the Target List to a CSV file)

3. Create New Target List

4. Manage Segments

5. Create New [/ Edit] Segment

4. Reports

1. Currently Available Reports

2. [After clicked on a Report] Campaign Delivery Report Graphs and Tables

The Client version of the backend should not include Client management and be restricted to the client's own reports etc.

The full administrative backend should only be available to our internal administrators. Except for Client management, this full version should also include a feature to inspect, edit and approve (lock) client-generated Campaigns (so that they can be prepared and executed). Subscriber lists should be available in cvs-format for download by administrators.

Current set-up:

The site is currently built in CakePHP 1.2 Beta using PHP 5.6.1 . The general MVC structure is already far developed. The current code, including a preview of how the functionality should resemble is readily available at [url removed, login to view] (Note: This draft is but inspirational and does not fully resemble how our system is meant to work. We will discuss the differences later on)

The work to be done is divided into 3 parts:

1. Subscriber segmentation and list management

2. Campaign management - connecting subscriber lists, campaign information and campaign-related statistics

3. Making the system representational for external clients

Details for Part 1:

Targets = Subscribers. Subscriber/Target lists are populated by specifying predefined Segments such as gender, age, residence etc. Segments are paired with one or more Conditions, specifying for example the city or state etc.

The user should be able to see an overview of all the segments that he/she has specified including statistics regarding how many females, males etc there is in every segment. To generate a Subscriber list for a send-out, the user will in an input field next to each segment specify how many subscribers that should be taken from each segment. For example: The user has specified three custom segments: Males in Stockholm, Corporate males+females in south of Sweden, Females in Gothenburg. Now the user wants to make a campaign send-out to 3000 of the first segment, 20000 of the 2nd and 2000 of the 3rd segment. The user specifies these limits and a subscriber list is generated in the background with these numbers.

Details for Part 3:

This mainly involves bugproofing and making the system look representable (slick design, easy to use) for end clients.

Location of Work

The programmer will be given account details to the server and develop everything online using our existing database. You will have close to daily contact with our lead developer that will answer important questions and supply additional information when needed.

Period of Performance

This project starts in May 2008 as soon as possible, and should not last more than 3-4 weeks at the most.

Deliverables Schedule

List of deliverables:

A.

Specification: Basic functionality (not fully designed) of:

* "1. Create/Send Campaign"

* "2. Manage Clients"

* The following parts of "3. Target Lists & Segments":

o "3.1 List Target Lists (grouped by client)"

o "3.2 Manage Target List" - With the possibility to

+ A. Import Targets to the Target List using Segments (which are predefined in the database)

+ B. Export the Target List to a file consisting of rows of mobile phone numbers.

o (No management of Segments)

* (No Reports)

B.

Specification: Functionality (not fully designed) of the remaining parts:

1. Create/Send Campaign

1. Scheduled Campaigns & Drafts

2. Create New [/ Edit] Campaign

1. Step 1 - Define General Campaign Info

2. Step 2 - Define Contents (SMS-Text)

3. Step 3 - Define Target Lists to use

4. Step 4 - Define Campaign execution date & time

2. Manage Clients

1. Manage Clients

2. Add New Client

3. Target Lists & Segments

1. List Target Lists (grouped by client)

2. [After clicked on a Target List] Manage Target List (with general info, tools to Import targets manually or by segment, statistics of currently included targets and ability for administrators to export the Target List to a CSV file)

3. Create New Target List

4. Manage Segments

5. Create New [/ Edit] Segment

4. Reports

1. Currently Available Reports

2. [After clicked on a Report] Campaign Delivery Report Graphs and Tables

C.

Name: Part 3 - Making the system representational for external clients

Specification: Implementation of client-aimed functionality, the slick design and general Quality Assurance.

Applicable Standards

It is important that the programmer strongly respects the MVC and DRI principles!

We expect that the delivered code is easily understandable and extendible in true CakePHP spirit.

Core CakePHP functionality should always be preferred before user-contributed extensions.

Subversion commits must be supplied with a clear executive summary of what the commit's changes reflects.

All in all - development should be performed with our business need in focus. We expect more or less independently performed quality work.

Acceptance Criteria

Your delivery is considered done when we have tried and examined the functionality to be working and meeting the Applicable Standards above. Payment is done through escrow.

We will only consider serious bidders that have read and understood the scope of this project including having inspected [url removed, login to view] !

Looking forward to work with you!

CSS Odd Jobs PHP

Project ID: #1976600

About the project

Remote project Active Jul 11, 2012