emvi an email viewer, email content management systemcpi/old/410/yellos13/files/lab1/cs_411…  ·...

35
CS 410 Team Orange, Spring 2013 Submitted By: Tamara Jones May 9, 2013, Version 1 EmVi | email: [email protected], twitter: @TeamEmVi EmVi An Email Viewer, Email Content Management System Version 1

Upload: lamtuyen

Post on 27-Apr-2018

215 views

Category:

Documents


1 download

TRANSCRIPT

Version 1

EmVi An Email Viewer, Email Content Management SystemCS 410 Team Orange, Spring 2013 Submitted By: Tamara Jones

May 9, 2013, Version 1EmVi | email: [email protected], twitter: @TeamEmVi

0

Table of Contents 1. Introduction 2

2. Product Description 3

2.1 Key Product Features/ Capabilities…………………………………………………………………………...3

2.2 Major Components (Hardware/Software)………………………………………………………………...5

3. Identification of Case Study...................................................................................................................................7

4. Product Prototype Description……………………………………………………………….........................9

4.1 Prototype Architecture (Hardware/Software)……………………………………………………………….12

4.2 Prototype Features/Capabilities…………………………………………………...13

4.3 Prototype Developmental Changes………………………………………………………………………..……18

Glossary……………………………………………………………………………………...19 References……………………………………………………………………………………22

List of Figures……………………………………………………………………………….23 List of Tables………………………………………………………………………………...24

Version 1

1. Introduction

In the age of social media, where texting, instant messaging, tweeting, blogging, etc… is

prevalent one might ask, why email marketing? Email marketing is a form of direct marketing

that uses the same approach as telemarketing and postal mail and has proven to be just as

successful as these methods. Specifically, email marketing is usually done by a company to

directly promote a product or service, and provide notification to consumers through the use of

email. Furthermore, email marketing has proved to be important with the abundance of email

accounts worldwide which is continuing to increase. “The number of active email users is 2.2

billion worldwide with an average number of email clients used per consumer is 2.01” (Radicati

Group). In addition, studies have shown that at least 31% of consumers check their email often,

in excess of four times daily (Merkle). Yet another reason email marketing is substantial is that

companies are seeing a 4000% Return on Investment (ROI) as well as companies are seeing the

need to increase their email marketing campaign budgets due to the fact over 1.3 billion was

spent on email marketing in 2012 and is steadily increasing (SOS Emarketing, Radicati Group).

Due to the fact that email marketing is lucrative for many companies, myself and other group

members of the CS 410 Orange Team conducted various research on companies who provide

these services. Throughout our research we found that many organizations are able to render

email marketing campaigns well and have created a niche. However, it also apparent that the

process of creating email content is time consuming and complicated. With this being said,

myself and other group members of the CS 410 Team Orange have set out to streamline this

process by offering an Email Content Management System that allows for integration or can

stand alone, centralizes development, and allows end-to-end testing to be done independently.

Version 1

2

EmVi, or Email Viewer is the global solution that will provide email marketing content

management, testing, and campaign distribution.

2. Product Description

EmVi can be integrated with the Application Programing Interfaces (APIs) of other

companies or used as stand-alone system. Moreover, users of the tool will have the ability to

upload campaign content rapidly as well as view images across different email clients/web

browsers. In short, EmVi allows the tasks associated with email campaign marketing to remain

in house, lessens the amount of campaign errors, decreases time delays, and reduces costs

associated with campaign development. The overall goals and objectives of this tool include

streamlining email testing to enable rapid iterations on designs as well as automating various

functions. Tool EmVi will provide automation for version control, the approval process, the

uploading of content, the distribution of test emails, and the generation of preview images.

2.1 Key Product Features/Capabilities

Some of the features and capabilities that EmVi will possess include content

management, uploading to the Content Distribution Network (CDN), an approval system, email

previewing, and finally an overall streamlining of this process. EmVi, like many other

companies will be able to provide the ability to store and edit plain text Hypertext Markup

Language (HTML) as well as users will be able to search within a campaign based on certain

criterion. Next, our tool will grant a user the ability to upload images to the CDN and replace

image Uniform Resource Locators (URLs) in HTML. Figure 1 below shows examples of email

marketing campaigns/sample content that can be uploaded into EmVi.

Version 1

3

Figure 1.

Yet another important feature of our tool is that of an approval system, which can be customized

and includes multiple stages of approval. Figure 2 below demonstrates a User Interface (UI) for

an approver.

Figure 2.

Version 1

4

Another valuable capability of tool EmVi will be email previewing which will provide images of

email campaigns rendered in different email clients. Figure 3 below shows an example of an

email marketing campaign being shown in two different email clients.

Figure 3.

Rendering in Microsoft Outlook Rendering in Lotus Notes

Overall, tool EmVi will streamline the uploading and testing process so that it is done within our

tool so that users can perform thorough testing.

2.2 Major Components (Hardware/Software)

While there are many companies that offer email management content systems, tool

EmVi’s main goal is to demonstrate a real world product that is distinct from it’s competition

offering many functions not offered altogether. CS 410 Team Orange’s Email Viewer will

consist of many components. Figure 4 below demonstrates the Real World Product Major

Functional Component Diagram (RWP MFCD) of EmVi.

(Intentionally Left Blank)

Version 1

5

Figure 4.

EmVi will be considered stand-alone as well as integrative. This tool will be ran on a virtual

server provided by Old Dominion University (ODU) with Linux as its operating system. In

addition, CS 410 Team Orange has its own virtual server that we will do testing on as well.

Specifically, CS 410 Team Orange will configure a web server and Simple Mail Transfer

Protocol (SMTP) server. Also, as far as EmVi being stand-alone, our goal is for our tool to be

able to be downloaded on a consumer’s personal laptop or desktop. The next step for tool EmVi,

via API is to interface with third party software of a CDN, either Microsoft Azure or Amazon

and test rendering companies; Litmus, etc... These companies are leaders at the services and

functionalities they provide, so it only made sense for CS 410 Team Orange to align as well as

interface with these companies’ existing offerings. However, tool EmVi intends to offer features

and capabilities that these organizations don’t offer together. The database engine that will be

utilized is Structured Query Language (SQL). CS 410 Team Orange found this to be the best

option for our database needs. In particular, our database will hold the information for the users

Version 1

6

of the tool (i.e. user name, email address, etc…), the various roles (i.e. administrator, contributor,

approver, and system administrator), and information for images that are uploaded. Lastly, all

information associated with email marketing campaigns will be available in the database as well.

For instance, the database will contain all campaign information, campaign owners, the email

address of a certain campaign, the status of a campaign, and the campaign version. The final

software that CS 410 Team Orange will work with is that of the Play Framework. It is a web

application framework that is open source and is written in Java. CS 410 Team Orange came to

a decision to use this based on the fact most of the group is familiar with Java as well as the Play

Framework allows for a lot of features to help with the design of a more modern website. Also,

CS 410 Team Orange will be utilizing Git which is a Source Code Management (SCM) system

that assists with version control. Finally, the web server software will be configured to allow for

an access control system for the various user roles. Then the web server software will interface

with a public API which is needed for EmVi. Also, the web server software will be used to

implement the webpage logic as well as have to be configured to interact with the database and

email SMTP interfaces.

3. Identification of Case Study

Keith Walsh our fellow classmate is the basis of CS 410 Team Orange’s project. He

currently works for Microsoft as a development lead for email marketing campaigns where his

internal clients include Bing, MSN, and Hotmail. Keith expressed that his current workflow for

content management requires a lot of coordination and manual effort. Due to Keith’s experience,

he has advised that individuals who create and manage email marketing campaigns would like

self-service tools that allow them to view campaigns across various email clients/web browsers

Version 1

7

as well as have a more convenient process for the uploading of images. Due to these issues, tool

EmVi will be created for users of email content management systems to help resolve these

problems. Currently, the process for creating email content and performing testing is timely and

complicated. Figure 5 below illustrates the current process flow for creating email content.

Figure 5.

However, our Email Viewer will set out to alleviate the complexity of the testing process to

allow for quick redundancy on designs as well as the automation of functions such as version

control, the uploading of content, the approval process, the distribution of test emails, and the

generation of preview images. Figure 6 below demonstrates the proposed process once tool

EmVi is created.

(Intentionally Left Blank)

Version 1

8

Figure 6.

Keith Walsh chiefly being the inspiration for the creation of tool EmVi, CS 410 Team Orange

felt it necessary that we enlist a faculty mentor as well as some domain experts. In particular, we

enlisted the help of faculty mentor Steven Zeil, Associate Professor, ODU. Our domain experts

include Sara Johnson, President, A Touch of Tech, Dana Rambo, Program Manager, Microsoft,

and Ryan Ward, Network Administrator, SimIS. All persons we have recruited are currently

working in fields where they work with email marketing or as in the case of our faculty mentor

are able to act as our technical expert/liaison. The knowledge and experience our experts have

provided has helped gravely in our goal of bringing EmVi to fruition.

4. Product Prototype Description

With the time allotted, implementing a full real world solution will be challenging;

however, my group, CS 410 Team Orange has identified that our competition are actually the

Version 1

9

respectable companies whose functionalities we will interface with. These companies mainly

focus on content distribution, content management, and testing. EmVi is unique in that it will

provide all these functions in one tool as well as a few additional features. Table 1 below

displays our competition matrix as well as identifies tool EmVi. Table 2 showcases the RWP

versus the Prototype and what will actually be within EmVi’s scope.

Table 1.

(Intentionally Left Blank)

Version 1

100

Table 2.

Basically, EmVi is an email content management system that will interface with the APIs of

creditable companies as well as will streamline the testing and development process. EmVi

intends to render email testing in this integrative and stand-alone tool. To sum up EmVi, it will

reduce errors, reduce costs, and decrease time delays. Coupled with this, EmVi sets to

accomplish the display of a Graphical User Interface (GUI) with various user role interfaces,

display the functionality of login page, and provide the capability of a user to receive a

registration email. The Email Viewer will also provide the capability of a database that will

automate access control and version control. In addition, EmVi will automate the distribution of

Version 1

111

test emails and will allow the viewing of rendered email marketing campaigns within the tool.

All in all, EmVi will be customizable for the user.

4.1 Prototype Architecture (Hardware/Software)

Both the prototype and real world solution have similar major functional components.

The hardware will consist of the configuration of a virtual machine provided by ODU with a

Linux operating system. Also, a web server and SMTP server is needed as well as EmVi will be

customizable allowing a user to download the tool to their personal laptop or desktop. The third-

party and web server software are still required. As far as the third-party software, EmVi will

continue to interface with CDNs such as Azure or Amazon and test renderers such as Litmus via

their APIs. SQL is the database engine necessary to hold all information related to users and

images that are uploaded. Importantly, the database will hold everything related to the various

user roles as well as all things related to campaigns. The Play Framework will still be relevant in

that it is how tool EmVi will ensure it produces a modern website using the Java language. To

help with version control, Git software will also be used. As far as the web server software,

configurations will be done to allow for an access control system for the different user roles as

well as for the database and email SMTP interface. Also the web server software has to interface

with EmVi’s public API. Lastly, web server software is needed to implement the webpage logic.

Figure 7 below highlights the Prototype MFCD.

(Intentionally Left Blank)

Version 1

122

Figure 7.

4.2 Prototype Features/Capabilities

The main features of the prototype for tool EmVi will be within our scope and are

outlined accordingly. EmVi will include authentication for user access, storage for files and

images, a workflow for email campaigns as far as how they move along in the approval process,

and an email send to list which will have a predefined list managed by an administrator.

Also, EmVi will have the ability to parse, interpret, and unpack files. Figure 8 below provides

another example of our MFCD. Next, the Email Viewer will exhibit the various user role

interfaces which include the Creator (Contributor), Administrator (Admin), and the Approver.

Figure 9 displays the Admin User Interface (UI), Figure 10 illustrates the Creator (Contributor)

UI, and Figure 11 demonstrates the Approver UI.

Version 1

133

Figure 8.

Figure 9.

Version 1

144

Figure 10.

Figure 11.

Version 1

155

Another, capability of this tool is that it will be able to generate a registration email and display

the user login page. Figure 11 shows an example of the registration email that is received to a

user. Figure 12 displays the user login page.

Figure 12.

(Intentionally Left Blank)

Version 1

166

Figure 13.

Yet another capability that will be within our scope is that of email previewing which will

include the viewing of rendered campaigns and the testing of email campaigns. The next step for

this tool is to have the ability to complete extensive testing. Rendering of campaigns across

different email clients to find inconsistencies and errors is essential. Also, testing will be done to

ensure EmVi interfaces with other APIs properly. The collection of analytics will be performed

as well. Various tests also need to be done to ensure that the UIs and GUIs are functioning

properly. Yet another testing mechanism is implementing a proxy which helps to define the

minimum requirements necessary for the APIs as well as this provides protection against future

changes (version control). In turn, risk mitigation is also another component in which my group

CS 410 Team Orange will address and is imperative for this prototype. For example, my team

will create algorithms with multiple levels of testing that will improve the processing time of

data. In addition, a manual interface for version control and a simple test email to allow users to

Version 1

177

manually check campaigns will be provided. Even though EmVi is open source, there will be

associated costs when interfacing with the APIs of other companies, however users will be

advised of this upfront. Overall, a critical component for this prototype is that access control is

implemented well.

4.3 Prototype Development Challenges

The risks and/or challenges associated with developing EmVi include experiencing

program latency and scaling. Also, this tool could be faced with problematic version control as

well as problems rendering test emails. Security risks can become evident overall as well as the

security of email campaigns. Yet another challenge will be how to deal with system

maintenance. At the same time the associated costs for the users can become a possible deterrent

as well. In general being able to develop integral and creative aspects of the tool can be

challenging as well. The task of integration between EmVi’s API and the deployment company

Exact Target and the Content Management System (CMS), Drupal can be a huge undertaking

which is not necessarily in our scope at this time. Also, interfacing with editing tools (i.e.

Dreamweaver and Photoshop) for image uploads can be difficult as well. In conclusion, the two

key components of interfacing with the CDN and rendering of the test emails may become a bit

of challenge once implementation stages are begun.

(Intentionally Left Blank)

Version 1

188

Glossary of Terms

Access Control- security features that control who can access resources in the operating system, selective restriction.

Administrator (Admin) - has the ability to create and remove new contributors as well as restrict their access.

Analytics- is the process of transforming data into meaningful patterns to help in the decision making process.

API-Application Programming Interface

Approval Chain- the series of steps necessary for an email to be authorized and distributed.

Approval Tracking- is specific to a workflow, the workflow action to perform when a user sets an approval type.

Authentication- the process of identifying an individual, usually based on a username and password.

Azure- a Content Distribution Network (CDN), a Microsoft product that allows you to build, deploy, and manage applications globally.

Campaign Filter- allows campaigns to display based on criteria that are chosen by the user. 

Campaign Search- searching for the content of a campaign (content  browsing). 

Content Distribution Network (CDN) - or delivery network is a large system of servers that allows for faster and more efficient delivery of content to end-users. 

Contributor- has the ability to read, write, and edit content. 

Customize-changing or altering to fit current needs.

Database-a collection of information organized in a manner which allows for efficient retrieval.

Dynamic messaging- the use of variable content to fill particular sections of an email message. Some examples are using first name personalization or product name insertions within the body of a message.

Drupal- a Content Management System (CMS) that allows for easy organization, management, and publishing of content, with an endless variety of customization.

Version 1

199

Glossary of Terms

ECMS- Email Content Management System

Email Campaign- a single instance of an email sent to a list of email addresses. Campaigns may include multiple sends and multiple messages.

Email Client-a computer program used to access and manage a user’s email.

Email header- the data that appears in the header of an email message, usually consisting of to and from email addresses, email subject and IP-level tracking information.

Email Marketing- usually done by a company to directly market a commercial message for promotional or notification purposes to a group of consumers through the use of email.

Email Message- a single email received to an email address within a campaign. A message contains a multipart, alternative message which includes an HTML and text file.

ESP- Email Service Provider

Exact Target- a provider of data driven marketing solutions for email content creation, list management, etc. This company is capable of integration with CDNs.

HTML Email- a subset of HTML that is not well defined and can sometimes have differing results depending on the email client in which it is viewed in. Some email clients do not support HTML Email at all.

Integrative-combining or unifying.

Litmus- a company that allows for the rendering and testing of email across various email clients. Also, email analytics, spam filter tests, and page tests can be performed.

Metadata- is descriptive data about campaigns and images that can be used to search for content.

Multipart, Alternative- an email that includes both an HTML and text version. The email client determines which version to display.

Open Source-is computer software made available publicly and free of charge.

Outsourcing-the contracting of internal business processes to a third party organization.

Permissions-or rights, are characteristics given by users or network administrators that prevent or allow access to files on a computer network.

Version 1

20

Glossary of Terms

RACI Chart-Responsible, Accountable, Consulted, Informed. This chart displays the various roles and responsibilities required in completing tasks for a project or business process.

Simple Mail Transfer Protocol (SMTP) - an internet protocol for sending and receiving email messages.

Version Control- a system to record changes that are made to a campaign.  This grants the ability to restore the campaign to a previous version if necessary.

Web Application- is an application that is accessed over the internet usually through a web browser.  This allows the application to be used on multiple platforms.

Web Server-the hardware or software that helps deliver web content and can be accessed through the internet.

Workflow- a series of connected steps to complete a process.

Version 1

21

References

"2011 Marketing Sherpa Email Marketing Benchmark Report." MarketingSherpa.com. MarketingSherpa LLC, 07 Dec. 2010. Web. 04 May 2013. <http://www.marketingsherpa.com/2011EmailBMR_ExecSummary_Final_101110.pdf >.

Campaigner - Email Marketing Made Easy. J2 Global, 2013. Web. 04 May 2013. <http://www.campaigner.com/>.

Drupal – Open Source CMS. Dries Buytaert, 2013. Web. 08 May 2013. <http://www.drupal.com/>.

"Email Market, 2012-2016." Radicati.com. The Radicati Group, Inc., 22 Oct. 2012. Web. 04 May 2013. <http://www.radicati.com/?p=8963 >.

Email On Acid - Email Testing and Email Preview. Email on Acid, 2013. Web. 04 May 2013. <http://www.emailonacid.com/>.

Email Reach - Email Delivery and Spam Filter Testing. EmailReach.com, 2013. Web. 08 May 2013. <http://www.emailreach.com/>.

Exact Target – Email Marketing and Cross Channel Marketing. Exact Target, Inc., 2013. Web. 08 May 2013. <http://www.exacttarget.com/>.

Litmus - Email Testing and Email Marketing Analytics. Salted Services, 2013. Web. 08 May 2013. <http://www.litmus.com/>.

"View from the Digital Inbox 2011." Merkle.com. Merkle Inc., 14 Jul. 2011. Web. 04 May 2013. <http://www.jonrognerud.com/docs/Merkle_Digital_Inbox_2011.pdf >.

Schwartz, David. "ROI Comparison Across Media Channels - Email Winds by a Landslide." SOSEmarketing.com. SOS Emarketing, 15 Nov. 2011. Web. 04 May 2013. <http://www.sosemarketing.com/2011/11/15/roi-comparison-across-media-channels-email-marketing-wins-by-a-landslide/>.

Version 1

22

List of Figures

Figure 1. Email Marketing Campaigns/Sample Content (pg. 4)

Figure 2. User Interface (UI) for an Approver (pg. 4)

Figure 3. Example of an Email Campaign Rendered in Two Different Email Clients (pg. 5)

Figure 4. Real World Product Major Functional Component Diagram (RWP MFCD) (pg. 6)

Figure 5. Current Process Flow (pg. 8) .

Figure 6. Proposed Process Flow (pg. 9)

Figure 7. Prototype MFCD (pg. 13)

Figure 8. Additional MFCD (pg. 14)

Figure 9. Admin User Interface (UI) (pg. 14)

Figure 10. Contributor (Creator) User Interface (UI) (pg. 15)

Figure 11. Approver User Interface (UI) (pg. 15)

Figure 12. Example of Registration Email (pg. 16)

Figure 13. User Login Page (pg. 17)

Version 1

23

List of Tables

Table 1. Competition Matrix (pg. 10)

Table 2. RWP vs. Prototype (pg. 11)

Version 1

24