Free Essay

Try to Upload

In:

Submitted By kishmieja
Words 2970
Pages 12
The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

Experiences in Building Python Automation Framework for Verification and Data Collections

Juki Wirawan Tantra jw.tantra@gmail.com Abstract

This paper describes our experiences in building a Python automation framework.
Specifically, the automation framework is used to support verification and data collection scripts. The scripts control various test equipments in addition to the device under test
(DUT) to characterize a specific performance with a specific configuration or to evaluate the correctness of the behaviour of the DUT. The specific focus on this paper is on documenting our experiences in building an automation framework using Python: on the purposes, goals and the benefits, rather than on a tutorial of how to build such a framework.

1.

Introduction

I work in a growing IC design company that focuses on wireless solutions. The project described in this paper was developed when we were developing the fifth generation of our product. We were facing huge challenges for this project: our product's feature sets have grown so much that manual verification of the features require more than 2 months (and this would involve most of the engineering team doing manual tests).
Recent economic situation prohibited any further investment, both for manpowers and tools.
However, the project needs to be completed on time, or we would risked losing a significant potential business. We basically faces a risk of taping out our Application Specific
Integrated Circuit (ASIC) with potential major defects due to untested features1.
Understanding this risk, we did an evaluation on how much can we gain by automating a number of crucial test cases. It was obvious that the benefits were significant: we would have
16 more hours each working day2 and two extra days on weekends to run tests and data collections---an extra of 128 hours a week to execute tests. The extra hours are more than the actual employee's working hours in one week. Our existing software was developed with

1 Following the common inclinations to cut verification time when development time is tight. Not advisable, not recommended, and not suggested...
2 Assuming 8 working hours per day. Disclaimer: assumptions might reflect real-life poorly.

-1-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

C/C++ (not surprisingly); this basically limits what we can achieve in such a short time period. Here Python comes to the rescue.
This paper focuses on documenting the experiences that we have on developing an automation framework with Python. The contents of this paper focus more on how the project was developed and brought to a fruitful end, rather than providing a tutorial on how to build the automation framework.

2.

Purpose and Goals of Our Automation Project

With this automation project, we are heavily constrained by time and resources. We knew early on that we need something that other engineers can pick up very quickly, so that more people can contribute to the progress of the automation project by various means. We have at that time few hundreds test cases that need to be executed across a (not insignificant) number of configurations. We argued that if anyone (with minimum explanations) can use the framework and start automating the test cases, we would have better progress due to more contributions. The ultimate goal of our automation project was quite simple: reduce the verification time and potential defects by automating as many test cases as possible. To achieve this, we realized that we needed to develop an easy-to-use framework so that many people can contribute in the development of the scripts.
What did we consider as the goals of the automation project? We put several items of priority as the project goals:
a) Easy-to-use framework based on Python that many engineers can start using immediately. b) Reduce the required test time by automating all test cases.
c) Extensibility of the framework to support various use: scheduled run, control of various equipment, and remote control/execution of the script.
At the end, what matters most will be whether we can achieve a significant time saving and verification coverage through this project.

3.

Why Python?

To us, Python was an obvious choice due to several reasons:

-2-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

3.1.
No compilation necessary
No compilation means that we can use source code repository system such as CVS or SVN to store our test scripts, ready to run any time. We will not have problem identifying whether the script that we run is the latest and the greatest. No one likes to manage the compilation and the repository for hundreds of small executable. And having one big executable will hinder our development as there is a need for someone to glue the small pieces together, and to enforce safety and quality rules.
No compilation also means that we can set up development and test machines equally and easily. This doesn't sound like a significant advantage, but to us, this is of great importance.
We can set a PC up just by executing several installers; and that machine is ready for rapid debug-fix cycles often necessary. And note also that test equipments are usually attached to specific PCs due to difficulties in moving them around.
3.2.
Python is easy to read and is very flexible
We need to get as many people as possible to start writing test scripts. Easy to read means that it is easy to learn from examples and existing scripts. From this project, we learnt that once the momentum started, the scripts were adding up pretty fast.
Python is also very flexible, not limiting anyone to specific programming paradigm, e.g. object oriented. Frankly speaking, object oriented paradigm is not easy to pick-up by nonprogrammer; and forcing object oriented paradigm on test scripting, where most of the operations consist of a) do this, b) and do this after, is just plain silly.
3.3.
Python is mature with much supports behind it
We need to have something ready fast. Python with so many libraries built for it really helps.
For example, to interface with test equipments, we need to use VXIplug&play I/O software language (VISA) protocol [6]; conveniently, there is PyVISA [4] ready for our use.

4.

Automation Project: Description and Challenges

In our automation project, we built an infrastructure to make it easy to script test and data collections. We need to work with various test equipments, for the purpose of various measurements and verification. We also need to perform various controls on our Device
Under Test (DUT).
Thus our automation project deals with three main components:
1. Equipments control using PyVISA.
2. Connectivity to the existing C++ software to control the DUT.
3. How to make scripting easy.

-3-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

Our automation project produced an infrastructure that glues these three components. And
Python is the main ingredient to each of these three components, and also is the glue that brings the three components together.
4.1.
Equipment control using PyVISA
VISA [6] is the interfacing protocol adopted by most of the test equipment vendors. Using
VISA protocol, communicating and controlling various test equipment become much simpler as we need not deal with the lower layer protocol. With VISA, we can focus on the control and the results processing.
PyVISA [4], written by Torsten Bronger, provides the necessary interfacing of VISA driver with Python. Thanks to Torsten Bronger, when we want to write a data collection script in
Python, we just need to install a VISA driver3 and PyVISA. After we connect the equipment
(through one of the many supported VISA interfaces: GPIB, USB, LAN, etc.), we can immediately take control of the equipment using Python.
In our project, we need to develop a higher layer abstraction for each test equipment that we use so that it is easy to use even for non-software programmers. The following snippet shows a minimized example of the wrapper for Agilent mixed-signal oscilloscope (MSO), and how to use it in Python. class AgilentScope(VisaDevice):
LARGE_TIME_OUT = 50
NORMAL_TIME_OUT = 10 def read_setup(self):
"""
Read the MSO setup and return it as a string.
"""
self.set_timeout(AgilentScopeConnector.NORMAL_TIME_OUT) setup = self.ask_raw(":SYSTEM:SETUP?") setup = self.strip_term_chars(setup) return setup def write_setup(self, setup_settings):
"""
Write the previously saved MSO setup.
"""
self.set_timeout(AgilentScopeConnector.NORMAL_TIME_OUT) self.write(":SYSTEM:SETUP %s" % (setup_settings,)) def __read_image(self, setting): self.set_timeout(AgilentScopeConnector.LARGE_TIME_OUT) img = self.ask(":DISPLAY:DATA? %s, SCREEN, COLOR" % (setting,)) self.set_timeout(AgilentScopeConnector.NORMAL_TIME_OUT) 3 VISA drivers are provided by many of the test equipment vendors. Agilent and NI are two of the vendors providing VISA drivers and tools for free download [1], [2].

-4-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

return img[10:] def read_bmp_image(self):
"""
PNG is faster.
"""
return self.__read_image("BMP8bit") def read_png_image(self): return self.__read_image("PNG") def enable_persistence(self): self.write (":DISPlay:PERSistence INFinite") def disable_persistence(self): self.write (":DISPlay:PERSistence MINimum")

And example of how to use the above class: scope = AgilentScope()
#settings_variable is loaded from a file scope.write_setup(settings_variable) image1 = scope.read_png_image() scope.enable_persistence() image2 = scope.read_png_image()

In the above example, I load the scope configuration from a file (previously made by the read_setup). After that, I read out the MSO's display image two times. The first is with default setting (with persistence off), and the second one is with persistence on. This is a very simple example of what you can do with PyVISA controlling a test equipment. We can do quite complex computation here. We can basically read out all the measurement data from the scope, and process them point-by-point in Python, or we can use the MSO's functions, e.g., to measure delay/distance between two edges. An example of the saved image is in the following figure.

Figure 1: Image of sine-wave audio captured using Agilent MSO.
-5-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

It looks easy; in real-life it couldn't be easier. We have our test engineers, without real programming background, starting to write data collection and test scripts with very little explanations. What they need is only a decent easy-to-use text editor (Notepad++ [3] comes to mind).
At this point of time, we have built abstractions for a number of test equipments: mixedsignal oscilloscope (MSO), spectrum analyser, signal generator, digital multimeter, and DC power supply. I think that you can pretty much imagine what we can do with all these equipment controls. Add ease of scripting, and we have a very usable platform, capable to fulfil all your test and data collection dreams.
4.2.
Connectivity to the existing software
Other than controlling the test equipments, we also need to control the DUT. Our existing software is implemented in C++. We need a simple mean to control the C++ software from
Python.
We decided to use socket for the communication between the C++ software and the Python automation framework. This socket will be used to pass commands and information, supporting the required capabilities of controlling multiple DUTs from one script.
In the Python implementation itself, I decided to use the basic socket library rather than the very useful Twisted framework [5]. We have two reasons for this decision:
1. One less installation to care about.
2. Event driven programming is harder to pick up by developers used to procedural programming. In the hindsight, these reasons do not really matters in our project. One less installer does not matter much. And the implementation of our communication protocol's lower layer (i.e., socket) was so short (less than 200 lines of code) written in Python that it wouldn't matter whether we use socket or Twisted in our project.
4.3.
How to make scripting easy?
We knew early on that the scripting must be easy for this project to be successful. So the real question was how easy can scripting in Python be?
In the early stage, the basic necessity was to control DUT(s), test equipment(s), and to save results to a file. We developed a number of higher layer abstractions to make these tasks

-6-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

easy to script. The end result is a highly abstracted operations such as in the following snippet. dut1 = Dut(0) dut2 = Dut(1) scope = AgilentScope() scope.write_setup(settings) dut1.write_register(REGISTER_NAME, dut2.write_register(REGISTER_NAME, image1 = scope.read_png_image() dut1.write_register(REGISTER_NAME, dut2.write_register(REGISTER_NAME, image2 = scope.read_png_image()

value1) value1) value2) value2) The above shows a simple capture of the MSO display after each change to the DUTs. This example was written just to show the basic operations possible with several lines of code.
There are several imports, logging and debugging facilities provided in the framework. In most use cases, the script developer copies from one of the existing templates (which include the main, imports, and output file functionalities), and modifies the content accordingly.
From my experience, this facilities are good enough for most people to start working with.
Many of the easier scripts can be done by anyone. And the more difficult scripts are developed with assistance from the software developers. Some of you might wonder why not just have the software developers write the scripts. The burden on the developments of test scripts are not only on the scripting itself, but with all the set ups, testing, equipment controls, and the understanding of the actual system behaviour. And the domains that need to be covered are much wider than just actual software behaviour. Thus, it's either that the respective engineer writes a specification for the software developer, or write the scripts directly themselves with some assistance from the software developer. I believe that the second approach requires much less time in some environments (such as ours), as it cuts down misunderstanding on the specification or the expected behaviour and the requirements of a more rigid procedure for test case development.

5.

Automation Project: Results and Experiences

At the time this paper is written, I am happy to say that the automation framework is extensively used for various uses in the whole of our engineering department. The time saved is just too significant to ignore. I admit that at the beginning many if not most of the engineers are sceptical of how the automation framework can help their work. However, after witnessing how efficient or how much faster that many things can be done using the framework, many people just started to use. And they started to expect more and more measurements or evaluations to be automated.
Just to give a rough idea on the time spent to develop the automation framework that we have. The basic framework supporting DUT controls and some basic libraries to make it

-7-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

easy to develop scripts took less than 2 weeks of one engineer. (Actually, it was quite usable after the first week). The development time for the equipment supports varies depending on the complexities and the number of operations required. However, most of the equipments require less than three days to develop for, including example scripts and testing with the equipments themselves.
In my opinion, the 2 weeks required to build the basic framework is a time well spent.
Having the basic framework up, the rests build up pretty fast with more people working on them. The time saved from having this automation framework is substantial. Just to give an example, the current measurements using digital multimeter take one engineer 1 week just to collect all the data with the numerous possible configurations. With the automation framework, the same measurements took 24 hours (1 day and 1 night---another benefit of having the automation framework).
The following table illustrates the difference in efficiency with some examples (assuming 8 working hours/day). Note the differences in the measurement units. Automated test can be executed at night time and weekends.
Test Case

Manual

Automated

Audio defect test

5 man days

40 hours (< 2 days)

Power consumption measurement

3 man days

24 hours (1 day)

Modem sensitivity test

5 man days

40 hours (< 2 days)

Interference robustness test

5 man days

40 hours (< 2 days)

The automation framework also opens up a number of new possibilities. Some measurements that in the past were thought of to be too time-consuming and too tedious to do are now easily done with some (arguably more complex) scripts. However, the benefits of this cannot be measured easily; one can argue that by having these new possibilities, we actually open up more opportunities for better design and engineering.
Fairly speaking, all of the capabilities of the automation framework described in this paper can be implemented with other tools: C, C++, Visual Basic, .NET, etc. However, Python offers a mixture of advantages that are crucial for this automation framework purpose: ease of use, lightweight, doesn't require compilation, and free to use. The readability of a Python script makes it easy for any engineer to learn by examples. I believe Python will play a key role in this field not far in the future. And I would heartily recommend Python for similar use in your organization.

-8-

The Python Papers Monograph 2:17
Proceedings of PyCon Asia-Pacific 2010

6.

References

[1] Agilent VISA. Download from Agilent website (Agilent IO Libraries Suite).
[2] NI VISA. Download from http://www.ni.com/visa/
[3] Notepad++. Download from http://notepad-plus.sourceforge.net/uk/site.htm
[4] PyVISA. Download from http://pyvisa.sourceforge.net/
[5] Twisted networking framework. http://twistedmatrix.com/
[6] VISA Specifications. Download from http://www.ivifoundation.org/Downloads/Specifications.htm -9-

Similar Documents

Premium Essay

College Admissions Essay: Human Development And Self Identity

...I quickly began piecing together a performance that would ensure my acceptance into this elite group of middle school prodigies. With a keyboard and an old guitar at my house, I decided to teach myself how to play different songs and upload them onto the music sharing app, SoundCloud. To this day, I am still haunted and reminded by my peers of my horrendous uploads on @regannemurphysings. Do not try to research them, I have already taken appropriate measures for their permanent demise from the Internet. Back at middle school, music was my calling and my singular goal for the future. October twenty-fourth was like waiting for Christmas, and I had nearly perfected the song for my audition, which included a routine utilizing a cup for instrumental effect. When the day finally arrived, I could barely sit still in class, nervously waiting for the clock to strike two. Racing through various vocal warm-ups that I had watched on television in the girl’s bathroom, I quickly downed the remaining tea as a final preparation. Confidently walking into the chorus room...

Words: 620 - Pages: 3

Premium Essay

Nt1310 Unit 3 Assignment 1 Value Chain Analysis

...- Pick the Master Secret Key from DB - Generate Attribute Based Key (ABK) using MSK and Department & Designation of the user - Encrypt the ABK with DNA algorithm - Email the key to the user - Generate the Pseudonym Key from ABK using Hashing Technique(MD5) - Copy Pseudonym Key to lightweight security device & Send to respective user User Details (View, Delete) File Upload - File Selection - Encrypting using Private Key - Fetch Cloud Storage Configuration Details - Transfer the Encrypted file to cloud Storage Uploaded File Details (View, Delete) File Access Control Setting File Access Control Details (View, Delete) Transaction Details Change Password 5.1.3 Data Consumer Data Consumers are the data access users, suppose Trustee is a college...

Words: 1413 - Pages: 6

Premium Essay

Process Essay

...video and what not to. Also note that not all editing software are the same, but if I had to recommend one it would be Sony Vegas. Along with getting an editing software you also need a microphone with it you can record your voice and synchronize it with the video, and make it look like as you’re talking over it. That alone brings more entertainment to your video and attracts audience because they want to hear what you talk about, and your opinions on anything. Also before I forget it is very important that you feel confidence on yourself and on your voice that way you never feel awkward when talking on a microphone. Another important thing never take criticisms too serious they’re will be people that say bad thing about your videos, but try to look at it in a positive way, a way to improve your skills on making the videos you...

Words: 545 - Pages: 3

Premium Essay

The Technologies of Google

...The Technologies of Google For this case study I will go over five technologies by the mega search giant that is Google. I will cover the Android OS, Maps, Glass, Chrome OS and YouTube. Android OS The Android OS is Google’s premier and vast reaching technology. What started out as a more or less a BlackBerry clone from a search engine company turned into the most popular OS in the world from one of the biggest titans in the tech industry. It is have reach a chart topper as the most popular OS in some of recent devices out there today. As of 2013 study Android devices have out sold more than other including Windows, iOS, and Mac OS X devices combined. Android's source code is released by Google under open source licenses which is popular with technology companies which require a low-cost, customizable operating system and is ready-made for high-tech devices. The rest of the industry by comparison is behind the power curve for example Microsoft updates its desktop OS every three to five years and Apple is no better as they update on a yearly cycle for OS X and iOS which has one major design revision in seven or so years. The Android is a lite mobile operating system that is based on the Linux kernel and. The operating system user interface is based on direct input manipulation, Android is designed primarily for touchscreen mobile devices such as smartphones and tablet computers, The OS uses touch inputs that loosely correspond to real-world actions, like swiping, tapping, pinching...

Words: 2663 - Pages: 11

Free Essay

All About Me

...paper. I've noticed that in an online course, this is often left out. Also, put your name in the file when you save it. For example, "Silver, K M1A1.docx" would be a good naming convention for your file. 2.) Please double-space all assignments. 3.) When doing a discussion board, post the text of your discussion in the field indicated. Do not upload an attachment. 4.) When doing an assignment, please upload an attachment in .doc or .docx format. Do not copy and paste it into the field. This assists me greatly in giving you feedback on your work. 5.) NO TEXT SPEAK! In a college-level course, you are expected to write full words and sentences. I've said this before but I'll say it again, grammar and punctuation count. And for goodness sake, capitalize "I." :) 6.) When writing to me via My Messages, please practice proper writing techniques. I expect a greeting like "Hi Kerianne-" a few sentences with what you would like from me (or a joke...I love jokes!), and a closing like "Best, John" 7.) If, for some reason, you aren't able to complete your assignments for a week, let me know IN ADVANCE. I will try to be as accommodating as possible and I think I'm pretty reasonable. But if you come to me after the assignment was due, I tend to be less flexible. Just be upfront with me! 8.) Check your MyMessages and Announcements EVERY TIME YOU LOG IN! I hope you are all enjoying getting to know each other in the introductions post! I'm looking forward...

Words: 291 - Pages: 2

Premium Essay

Go Pro International

...GoPro can connect the power of video to promote its product through social networking. Since social networking has become such a necessity in today’s society, GoPro can take advantage of this by promoting its products to be used with Facebook, Instagram, and Twitter. There is no option to upload and publish directly to sites like YouTube, Facebook, Instagram, etc, but you can export video files from GoPro Studio and then upload them to the site of your choosing. By connecting the product directly to social networks would be a great way to promote it. The whole world is constantly taking pictures and uploading them to social media websites to share with others all around the world, if GoPro used the power of video to promote through these networks they would basically do their marketing all online. Typically if consumers see other peers using certain products or services they themselves want to try it out. GoPro could possibly even become a new type of mobile device since staying connected with the rest of the world constantly is what consumers want. GoPro needs to continue to stay creative and difference with their product because just as technology innovates daily, consumers are just as ready to try the next creation. Does GoPro have social responsibility for how end users use their equipment? Corporate social responsibility is defined as a business outlook that recognizes responsibilities to stakeholders beyond shareholders, including suppliers, customers, and employees. Social...

Words: 658 - Pages: 3

Free Essay

Computers

...Programming Assignment 1 (Submit by Sunday of Week 6) Preliminary Steps 1. Invoke Visual Basic by following the directions in section 2.2, pp. 20– 23. 2. Perform the text box, button, label, and list box walkthroughs, pp. 23– 30. 3. Perform the event procedure walkthrough, pp. 38–43. Programming Exercises Do the following exercises from An Introduction to Programming Using Visual Basic 2010. a. Exercise no. 70, p. 67 b. Exercise no. 40, p. 82 To submit your assignment, first create a ZIP file of the application folder for each exercise (see “Appendix: A Note on Submitting Programming Assignments” at the end of the syllabus). Then upload and submit both ZIP files (compressed folders) to the assignment link provided in the Assignments area of the course Web site. S-18 ASSIGNMENT MODULE 5 Learning Objectives After successfully completing this assignment, you should be able to:  Write programs in Visual Basic 2010 while being guided by the six steps of the program development cycle: analyze the problem, design a solution, choose the interface, write code, test and debug your solution, and document your code.  Incorporate input and output methods, including reading data from sequential files, obtaining user input to input boxes, and displaying boxes, and displaying messages in message boxes. Study Assignment Assigned Reading  Read chapter 3, section 3.3, in An Introduction to Programming Using Visual Basic 2010, 8th ed., by Schneider.  Read the...

Words: 660 - Pages: 3

Premium Essay

A Competitor Firm Has Outsourced Its Production Abroad. You Could Do the Same. You Are the Major Employer in the Town Where You Are Located. You Have to Decide Whether Also to Outsource Your Production

...Good Business Bad Business and Sustainability The coursework is to complete a discussion of an organisation, policy, or product and evaluate the ways in which the object could be regarded as ‘good’, and ‘bad’. You may choose a specific case to evaluate; or build a hypothetical case using suitable real world examples. A competitor firm has outsourced its production abroad. You could do the same. You are the major employer in the town where you are located. You have to decide whether also to outsource your production. Introduction The industry that my firm operates within is the winter clothing industry. The company supplies clothing to multiple clothing retailers across the U.K and selected areas of Europe mostly around the French and Swiss Alps. The company’s factory is based in Brackley and employs 2500 local employees. Our company has a strong ethical and moral feel and image due to a strong involvement in charity fund raising and organising events for under privileged children to get involved in sports and activities they wouldn’t usually have the opportunity to do. We are seen locally as an incremental part of the local infrastructure and through feedback sheets its apparent that on the whole our employees are happy and our staff turnover and productivity reflects this. The main issue we have recently encountered is that in October 2011 the minimum wage went up 15p to £6.08 an hour therefore increasing the cost of labour and due to the rise in oil prices to...

Words: 2065 - Pages: 9

Premium Essay

Fiannce

...have started working on the assignment you should make backups. It pays to rename different versions of your work. A simple way to do this is to use the Save as file instruction and add a number or letter to the end of the file name. (This allows you to go back to an earlier version.) However, when you upload the file, make sure that the file you upload follows the naming convention outlined below. Submission of the Assignment (Uploading your file to Stream) To access the submission points you must have completed the Honesty Declaration Quiz. The submission point for Assignment 1 is under “Activities which are Assessed” Use the following naming convention for the files that you are submitting: use your Last Name Student ID number as the name of the file [Do not change the file extension or you (and the marker) will not be able to use the file]. For example, if your Last Name is Smith and your Student ID number is 88888888, your file will be smith88888888.doc. a. In the “Activities which are Assessed’ section on Stream click on “Assignment 1 Submission Point”. b. A box with Submission Draft and no files uploaded yet will appear with Upload a file at the bottom of the page. Click on...

Words: 1977 - Pages: 8

Premium Essay

Fshn Brochure

...foods such as processed meats, pizza, burgers, fried foods cakes, etc. * Read labels and check for added salt, avoid these foods and drinks * Avoid drinks and food with added sugars such as soft drinks, cordials and energy drinks 3. Store your food and make sure you prepare and store it in a safe environment. * Ensure that food is stored correctly in the fridge, with meat secure * Make sure all meat is kept refrigerated, and keep checking use by dates * Ensure that cross contamination does not occur, salmonella can be present in raw chicken Physical: 1. Keep active, small amounts of physical activity are better than none (2) * 150 to 300 minutes of moderate intensity physical activity each week. * Try to do some physical activity most days if not every day each week * Helps...

Words: 789 - Pages: 4

Premium Essay

Omni Chanelling

...Omni Channel Report for French Connection * * * * * * Contents page 2. introduction and situation analysis 3. the 3 c’s 5. the 4 p’s 6. push and pull strategy and e-marketing channels, vehicles and platforms 7. the 4 S’s of the web marketing mix 8. objectives and strategies and ecommerce model 9. market research 12. developed ideas and conclusion 13. references and appendices * Introduction Through element one of this report, there will be research, exploration and evaluation into French Connections current multi-channel strategy. It will show the commercial benefits of an onmichannel marketing plan and how it can make French Connection a more commercialized business with greater commercial benefits. It will also look into French Connections multi-channel objectives and strategies and identify the means, mode and opportunities to develop an Omni-channel strategy. French Connections Situation Analysis * The 3 C’s Customer Profile Charlotte McCormack is 25 and studied teaching at Bath Spa University. She works at a primary school in Cardiff. She lives with her long term boyfriend, Daniel, who works as a sports psychologist. She prefers to go into store rather than shopping online. She likes casual clean style pieces that are easy to wear but extremely stylish. She always makes time to work out. She has a healthy eating, organic lifestyle and likes to make juices for...

Words: 1428 - Pages: 6

Premium Essay

Privacy vs. Publicity

...them fully yelling at the other. After a minute or so, you then notice someone else at a different table with their phone out, video recording the whole fiasco at the table with the young couple. They seem to be enjoying the moment with their group of friends at the table, and your over hear the person with the video mention they plan to upload it straight to Facebook. You realize it's not your business, but you start to wonder: is that really right of that group of people to make a situation like that public? The borderline of privacy and publicity seems to be unsteady with this new, rising age of electronics and technology. Science has taken the human race on an unimaginable journey through time and space. We can fly around the world in less than a day. And yet, this feat used to take months. The same could be said for the way we communicate with one another. Years ago, the most anxious part of the our day was to run out to the mailbox and see if the postal man had brought you a letter of response, be it family or friend. Now days, you can simply take a picture of a family event and upload it to Facebook, Twitter, or any other social networking site for that matter. You can even email it. Social media has not only transformed how we make contact with one another, but also how we view others and the lives they live. It has become a way of life, and the same could be said for cellphones. Nearly 80% of our world population...

Words: 1046 - Pages: 5

Premium Essay

Stereotypes Involved In Music

...Because everyone around me was telling me how I should not have anything to do with music because I was so bad at it, I begin to feel the same way about myself. But after I encountered my favorite band and singer, my love for music grew, and I decided to cover my own favorite songs in my freshman year of high school. When I took initiative to do covering, I wrote my own translyrics (translation of lyrics from another language that one can actually sing with the original melody), learned how to mix, and made a little lyrics video that accompanied the song. When I finally uploaded my cover online, all of the comments I got were something along the lines of “why would anyone upload cover if sound so horrible” and “this is horrible to a point that is funny...

Words: 480 - Pages: 2

Premium Essay

Health Care System in the U.S. and Changes by Obama

...| Health care system in the U.S. and changes by Obama | | Semir Golic30.11.2010 | Table of Contents: 1. Introduction 3 2. The History of health care in the USA 4 3. The Health Care System 5 4.1 How health insurance works 4.2 Different insurance programs 4.3 Problems 3.3.1 Financial & bureaucratic problems 3.3.2 Conflict with the American Dream 4. Changes of Obama 9 5.4 Reform of the system 5.5 Problems 5. Evaluation 11 6. Bibliography 13 1. Introduction As in we know the United States strive in most categories to be the number one of the nations, be it military power, or be it technological innovation as much as economic power. Usually they tend to have success in this aspiration and so we would assume that their health care system counts to the most modern and best working innovations on the world. As it is confirmed and proven by many different organizations we know different. “Seven years ago, the World Health Organization made the first major effort to rank the health systems of 191 nations. France and Italy took the top two spots; the United States was a dismal 37th. More recently, the highly regarded Commonwealth Fund has pioneered in comparing the United States with other advanced nations through surveys of patients and doctors and analysis of other data. Its latest report, issued in May, ranked the United States last...

Words: 3305 - Pages: 14

Free Essay

Dropboz 101

...Introduction   Chapter 2- The Importance of Dropbox   Chapter 3 – Getting Started Chapter 4 – Discovering the Installed Dropbox Client on Your Computer Chapter 5 – Exploring Your Dropbox Web Interface   Chapter 6: Dropbox on Your Mobile Device   Chapter 7: Sharing and Sending Files on Your Dropbox   Chapter 8: Get More Free Space Chapter 1: IntroductionGo from beginner to pro with this time saving guide. Whether you are new to Dropbox or looking for some valuable hacks, this jump start guide will allow you to look effortless in front of coworkers and friends. In this piece you will get the bare bones basics of Dropbox with additional protips at the end of each chapter. Once you get the bare essentials down, read further and try out some of the pro tips in the end of the sections. The guide illustrates the ins and outs of backing up important data, how to utilize third party software with Dropbox and much much more. Don’t scour the internet looking for these invaluable tips, they are all right here! What is Dropbox?What is Dropbox? Co-founder Drew Houston calls Dropbox the ‘fabric that connects’ all devices. Instead of keeping track of a USB stick, with limited data storage and the ability to become corrupted over time, Dropbox is a safe and secure way to share and edit files with numerous people. Instead of trying to gather all your data manually, Dropbox is the app that allows your data to follow you everywhere. Since it was founded in 2006, the company has grown...

Words: 7401 - Pages: 30