EP3019955A1 - Method of optimization for an application - Google Patents

Method of optimization for an application

Info

Publication number
EP3019955A1
EP3019955A1 EP14744619.9A EP14744619A EP3019955A1 EP 3019955 A1 EP3019955 A1 EP 3019955A1 EP 14744619 A EP14744619 A EP 14744619A EP 3019955 A1 EP3019955 A1 EP 3019955A1
Authority
EP
European Patent Office
Prior art keywords
native application
modified
user
server
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP14744619.9A
Other languages
German (de)
English (en)
French (fr)
Inventor
Alasdair John Joseph BAILEY
Iurii SYNYCHENKO
Sergii OVCHARENKO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maxymiser Ltd
Original Assignee
Maxymiser Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maxymiser Ltd filed Critical Maxymiser Ltd
Publication of EP3019955A1 publication Critical patent/EP3019955A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0267Wireless devices

Definitions

  • the field of the invention relates to methods of optimization for a native application, to systems including a computing device on which such a native application is executable, to computing devices on which such a native application is executable, and to servers configured to communicate with computing devices on which such a native application is executable.
  • EP1352322(A2) and EP1352322B1 disclose time-optimized replacement of a software application, and in particular a method for replacing old software that is in use with new software, which permits the maximum availability of the software.
  • the method is subdivided into a preparation phase and an active phase.
  • the preparation phase takes place during the operation of the old software.
  • the active phase is merely characterized by the execution of a MOVE command.
  • FR2841014A1 and FR2841014(B1) disclose a method for optimizing a computer program that causes a transition between first and second predetermined states in response to an event occurring that belongs to a group of events, in which the method has the following steps: reading of a sub-group of events chosen from a group of events; modeling of a second decision graph using registers and equivalent to a first decision graph when the events of the event group do not belong do a self generating group; and generation of a software function for said transition modeling.
  • a device for optimizing a computer program is further disclosed.
  • a method of optimization for a native application whose software is written in a reflection-based programming language, the native application executable on a computing device including a display and a processor, the native application configured to display a user interface on the display of the computing device, the method including the steps of:
  • modified native application can be further modified without performing an installation of a new version of a native application.
  • modified native application can be further modified very quickly, because it is remotely configurable from a remote server.
  • modified native application can be further modified in response to factors determined at a remote server, because the modified native application is remotely configurable from the remote server.
  • the native application is readily modified to provide the modified native application.
  • a precise measurement of the response of users to a change in an application may be provided. There is a technical effect on a process outside the computing device, because the server can remotely configure the modified native application.
  • the computer operates in a new way, because an altered user interface is produced by the modified native application without installation of a new version of the native application.
  • the computer is a better computer because the modified native application may be further modified without its operation being interrupted in the way that is typically associated with installation of a new software version.
  • the method may be one wherein the generic code is the only code needed to be applied to source code of the native application to enable optimization of the modified native application.
  • An advantage is that modification of the native application is simply made.
  • the method may be one wherein the generic code enables many kinds of optimizations to be remotely configured in an optimization system's user interfaces, without changing the code within multiple versions and instances of the native application.
  • An advantage is that multiple versions and instances of the native application do not need to be modified.
  • the method may be one wherein modifying the structure and behavior of the modified native application at runtime includes modifying one or more of the values, meta-data, properties, images and functions of the modified native application.
  • the modified native application can be modified in many ways.
  • the method may be one wherein the computing device is a mobile device, a touch screen device, a smart phone, a video game console, a computer, a smart TV, a TV set-top-box, or a device connectable to the internet.
  • the method may be applied to many types of devices, including devices which are rarely updated, if ever.
  • the method may be one wherein the computing device is connectable to the internet over a wired or wireless wide area network (WAN) or over a mobile phone network to a server.
  • WAN wide area network
  • An advantage is that the method can be used for different types of connections.
  • the method may be one wherein optimization includes adapting visual experiences for each user on the fly in order to increase the probability of a user completing a desired action.
  • the method may be one wherein a desired action is a click or an order placement.
  • the method may be one wherein a reflection based programing language is a common reflection based programing language. An advantage is that such a language is easily used.
  • the method may be one wherein the method further includes collecting one or more attributes about the user/device for use in targeting, profiling or analyzing user behavior.
  • An advantage is that user-customized user interface output may be provided.
  • the method may be one wherein the collected attributes are one of more of: Connection type to the device (e.g. 2G, 3G, 4G, Wi-Fi); Device Type; application version; Operating System type and version; Location (e.g.
  • An advantage is that user-customized user interface output may be provided.
  • the method may be one further including the step of: including or excluding visitors /devices from a campaign using their attributes. An advantage is that improved focus on relevant users may be obtained.
  • the method may be one further including the step of: creating segmentation rules to target content to visitors /devices according to their attributes in combination with rules for other user segment information.
  • the method may be one wherein native application performance is optimized during a campaign as well as after the campaign.
  • alterable user interface content includes one or more of:
  • An advantage is that a wide range of user interface content may be altered.
  • the method may be one wherein the native application includes a library.
  • the method may be one wherein the library is static for all applications.
  • the method may be one wherein the library is configured to send requests to, and to receive responses from, a content generator.
  • the library may use the most recent configuration data.
  • library updating may be automated.
  • the method may be one wherein the library interacts with a native application cache that is included in the native application.
  • the method may be one wherein the native application cache is configured to receive content pushed from the external server.
  • the method may be one wherein the library makes a request to a content generator on native application start.
  • the method may be one wherein the library is arranged to make a request to a content generator, the request including a location and user attributes in parameters.
  • An advantage is improved customization.
  • the method may be one wherein the library includes one or more of the following modules:
  • Tracking module (actions tracking, sending results to the CG);
  • MVT module (implement alternative content visualization
  • the method may be one wherein the library can modify only specified objects and properties in code instructions.
  • a method according to any aspect of the first aspect of the invention to optimize a selectable button displayed on the display from among at least two alternatives for the selectable button.
  • An advantage is that a most appropriate button may be displayed.
  • a method according to any aspect of the first aspect of the invention to optimize a displayed product on the display from among at least two alternatives for the displayed product, based on a most recently used filter option.
  • An advantage is that a most appropriate product may be displayed.
  • a fourth aspect of the invention there is provided use of a method according to any aspect of the first aspect of the invention, to optimize a displayed food product on the display from among at least two alternatives for the displayed food product, based on a most recently viewed food category.
  • a fifth aspect of the invention there is provided use of a method according to any aspect of the first aspect of the invention, to optimize a displayed advertisement on the display from among at least two alternatives for the displayed advertisement, based on recorded click through rates for the displayed advertisements.
  • a system comprising a server, a computing device including a display and a processor, and a modified native application executable on the computing device, the modified native application software being written in a reflection-based programming language, the modified native application configured to display a user interface on the display of the computing device, a native application having been modified by applying generic code to the native application to produce a modified native application which is configured to communicate with the server which is external to the computing device, wherein the modified native application is remotely configurable by the server to examine and to modify the structure and behaviour of the modified native application at run time so as to be capable of altering one or more of: the data, functions or content of a user interface generated by the modified native application.
  • modified native application can be further modified without performing an installation of a new version of a native application.
  • modified native application can be further modified very quickly, because it is remotely configurable from the remote server.
  • modified native application can be further modified in response to factors determined at the remote server, because the modified native application is remotely configurable from the remote server.
  • a precise measurement of the response of users to a change in an application may be provided.
  • the system may be configured to perform a method according to any aspect of the first aspect of the invention.
  • the system may be one wherein the server is further configured to collect one or more attributes about the user/ device for use in targeting, profiling or analyzing user behavior.
  • the system may be one wherein the server is further configured to filter reports, including conversion and revenue reports, by attribute values.
  • the system may be one wherein the server is further configured to discover segments that may require a different experience to increase conversion rates based upon the attributes.
  • the system may be one wherein the server is configured to automatically detect higher performing content variants and then to arrange to serve those higher performing content variants to more future visitors.
  • the system may be one wherein the system includes the ability to switch a concluded campaign to a mode where winners only' are served, meaning that the native application supplier does not need to make an update to the code in order to apply winning variations of content or user experience.
  • the system may be one wherein the system includes a self-learning, predictive algorithm which drives each user to the best offer for that individual, automatically.
  • the system may be one wherein the system includes a segment discovery process to automate the analysis process to discover the user segments which require a different experience than the overall winner to increase performance against measures for that segment.
  • the system may be one wherein the system provides multivariate testing.
  • the system may be one wherein the server is configured to send segmentation rules to the native application.
  • the system may be one wherein the system is configured to track one or more of:
  • Action attribute and action value opportunities (e.g. to measure sales value in £/$/ € or other currency).
  • the system may be one wherein the system is configured to measure a response of users to a change in the application.
  • a seventh aspect of the invention there is provided use of the system of any aspect of the sixth aspect of the invention, wherein historical customer information, such as products held or a customer's propensity to buy a product, can be used to dynamic drive the best, personalized experience for each customer on native applications.
  • historical customer information such as products held or a customer's propensity to buy a product
  • a computing device including a display and a processor, the computing device including a modified native application whose software is written in a reflection-based programming language, the modified native application executable on the device, the modified native application configured to display a user interface on the display of the computing device, the modified native application having been modified by applying generic code to a native application to produce the modified native application which is configured to communicate with a server external to the computing device, wherein the modified native application is remotely configurable by the server to examine and to modify the structure and behaviour of the modified native application at run time so as to be capable of altering one or more of: the data, functions or content of a user interface generated by the modified native application.
  • a server configured to communicate with a computing device, the computing device including a display and a processor, the computing device including a modified native application whose software is written in a reflection-based programming language, the modified native application executable on the computing device, the modified native application configured to display a user interface on the display of the computing device, the modified native application having been modified by applying generic code to a native application to produce the modified native application which is configured to communicate with the server which is external to the computing device, wherein the server is arranged to remotely configure the modified native application to examine and to modify the structure and behaviour of the modified native application at run time so as to be capable of altering one or more of: the data, functions or content of a user interface generated by the modified native application.
  • a system comprising a server, a plurality of computing devices each including a display and a processor, and a modified native application executable on the plurality of computing devices, the modified native application software being written in a reflection-based programming language, the modified native application configured to display a user interface on the display of each of the plurality of computing devices, a native application having been modified by applying generic code to the native application to produce a modified native application which is configured to communicate with the server which is external to the plurality of computing devices, wherein the modified native application is remotely configurable by the server to examine and to modify the structure and behaviour of the modified native application at run time so as to be capable of altering one or more of: the data, functions or content of a user interface generated by the modified native application, wherein the server is arranged to configure a plurality of modified native applications on the plurality of computing devices in a plurality of different configurations and to record measurements of user actions on the plurality of computing devices in relation to the plurality of different configuration
  • Figure 1 shows how an example of how a test works inside an application.
  • Figure 2 shows an example of a creation of an optimization system, in table form.
  • FIGS 3 to 14 show examples of specifications.
  • Figure 15 shows an example of states which, once a campaign is setup, can be gone through starting from implementation through to live when it is published.
  • Figure 16 shows examples of attributes.
  • Maxymiser has created a new approach to optimize native software applications which exist on many types of internet connected devices ranging from smart phones to video game consoles, PCs, smart TVs and TV set-top-boxes.
  • optimization means adapting visual experiences for each user on the fly in order to increase the probability of a user completing a desired action, like a click or an order placement.
  • the invention relates to a method of optimization for native applications whose software is written in a reflection based programing language, for example any common reflection based programing language.
  • reflection is the ability of a computer program to examine and modify the structure and behavior (e.g. the values, meta-data, properties and functions) of the program at runtime.
  • the native application may run on a computer, a video game station, a smart phone or any other kind of device connected to internet, typically over a wired or wireless wide area network (WAN) or mobile phone network to a server.
  • WAN wide area network
  • the method of optimization for a native application may comprise the step of integrating a native application optimization system with a native application by applying generic code to the native application, that being the only code needed to be applied to the source code of the native application to enable the native application optimization system to optimize the native application by altering one or more of: the data, functions or content assets of a user interface (UI) in the native application.
  • UI user interface
  • the new system may include enhancements to Maxymiser's platform to optimize a native application. These enhancements may include the following features:
  • Tests can be configured to automatically detect higher performing content variants and then serve those to more future visitors. This means that overall app performance is optimized during the campaign as well as after it. This is known as Dynamic Optimization.
  • the system may include the ability to switch a concluded campaign to a mode where winners only' are served, meaning that the application owner does not need to make an update to the code in order to apply winning variations of content or user experience.
  • Making an update to app code is often a very large investment for an app developer since it is necessary to test the app, submit it for approval to the application distributor (e.g. Apple Appstore) and then distribute it which in the case of smart televisions can involve waiting a number of months until the next planned software update distribution, the timing of which is in the hands of the hardware manufacturer, not the application developer.
  • the application distributor e.g. Apple Appstore
  • Maxymiser's Full Managed Services provides support for native applications, including creative design, web development, report analysis and quality control across mobile devices. Testing with Native Applications is a development by Maxymiser. Since native application devices do not support Silverlight, the On Page Console is not provided for native application testing.
  • Testing for native applications may include:
  • a breadth of platform capability that can be applied to a native application, including recommendations based upon affinity patterns and a self-learning, predictive algorithm which drives each user to the best offer for that individual, automatically.
  • Segment discovery to automate the analysis process to discover the user segments which require a different experience than the overall winner to increase performance against agreed measures for that segment. This now also applies to segments that may be identified by native applications.
  • Action attribute and action value opportunities e.g. to measure sales value £/$/ € or other currency.
  • a mobile device can send requests to and receive responses from a content generator, which includes a content generation service.
  • the mobile device includes a mobile application.
  • the mobile application includes a library which is static for all applications.
  • the library is configured to send the requests to and to receive the responses from the content generator.
  • the library interacts with a mobile application cache that is included in the mobile application.
  • An external server with content assets eg. images
  • Figure 1 shows how an example of how a test works inside an application.
  • JSON JavaScript Object Notation
  • Segmentation Example a) 'mobile version' library makes a request to the CG on application start.
  • Tracking module (actions tracking, sending results to the CG).
  • MVT module (implement alternative content visualization).
  • Mobile smartphone adoption is increasing at a rapid rate. Significant investments are being made in mobile applications to keep up with the fast-moving market. Extending your reach to mobile devices is an opportunity, but it requires an optimized experience to truly be effective with such a small screen.
  • Maxymiser's mobile version has revolutionized mobile optimization— a must for any brand investing time and budget into mobile marketing.
  • the mobile version enables the marketer to effectively test and target content and create personalized experiences for mobile devices to increase conversion rates. Quickly optimize all of your mobile content including banner ads, data submission forms, site layout, promotions or any other content to drive the most relevant experiences for each individual user and increase revenue for your brand.
  • the mobile version's reporting and analytics gives you the insight into the experiences of mobile users, identifying the winning experience for each user segment and identifying new segments that require a different experience. You'll identify the right experience and measure the overall campaign effectiveness across web sites and mobile devices.
  • stage zero for creating a SDK specification a specification is created, with a project timeline and requirements gathering.
  • stage one for SDK developing and for UI adjustments, a library is created, MM UI modifications and web service developing occur, and interactions with an app store occur.
  • stage two for debugging MM UI & SDK integration is tested with a smartphone app, internal quality assurance and bug fixing occurs, usability testing occurs, improvements and change requests occur, and drafts of production process build-up are performed.
  • stage three beta testing occurs.
  • a test spec is created, integration within the beta app and test creation are performed, beta client testing is performed, improvements and change requests are generated based on beta feedback, and a production process build-up is finalized.
  • Figure 2 shows an example of a creation of an optimization system, in table form.
  • Example with iPhone SDK, or other smartphone SDK General iPhone SDK (or another smartphone SDK) functionality should allow easy library integration into customer's application. Integration instruction should occupy no more than 1 page. It should correspond to existing Maxymiser test campaign creation conception. It should allow production and sandbox modes. It should remember user personalization data (similar to the browser cookies). It should allow offline measurement.
  • Load images library Example There may be provided images loading functionality. There may be provided image caching (should load only changed images).
  • MMCore library Example There may be provided a set of methods and properties similarly to mmcore.js:
  • Element variant should contain set of properties and their values.
  • MAConsole (mobile administration console) should provide finding, viewing and selecting interface objects and properties. There may be provided exporting selected properties and values to Admin UI. MAConsole should be shown when user is in company IP and makes some specific touches, or when debug mode set in application.
  • MM CG web service Example
  • a primary action is "Order", which tracks an order placed through the application.
  • “Clicks” tracks clicks on a 'customize' button. An example is shown in Figure 3. In test variants, different button styles and colours are tested for the 'customize' button. An example is shown in Figure 4.
  • a primary action is "Order”, which tracks an order placed through the application.
  • “Add to Cart” tracks whether a customized pizza has been added to a user's cart. An example is shown in Figure 5.
  • a primary action is "Purchase", which tracks an order placed through the application.
  • the 'Value' captures the value in GBP of the order.
  • "ProdViews” tracks views of a product page within the application. An example is shown in Figure 6.
  • Variants may be by title, by price or by release, for example. Examples are shown in Figure 7.
  • a primary action is "FoodViews", which tracks views of one of the application food packages.
  • FoodViews which tracks views of one of the application food packages.
  • both food category pages and food detail pages should be tracked. Examples are shown in Figure 8.
  • the left hand side of Figure 8 shows an example of a food category page.
  • the right hand side of Figure 8 shows an example of a food detail page.
  • FoodPreference Possible values are: cakes, breakfast, lunch, muffins, salads, sandwiches, yoghurt or blank. Examples are shown in Figure 9.
  • a primary action is "RadioPlay", which tracks if the user listened to a radio station. Attributes track the number of minutes of radio listened to, which may grouped into the following possible values: 0-30, 30-60, >60.
  • “BannerClicks” tracks clicks on an external banner at the top of the application page.
  • Figure 10 In an example, three banner variants are included in a test. The three banner variants may be 'no advert', 'one advert' and 'two adverts'. An example is shown in Figure 11.
  • a primary action is "BookClicks", which tracks the clicks on a T3ook' button.
  • the 'Value' captures the cost of the booking. Attributes tracks the agent of the journey booked, eg. Opodo.
  • “BookingComplete” tracks completed bookings through the web-in app site.
  • “Search” tracks searches performed in the application — a view of the search results page. Examples are shown in Figure 12.
  • a primary action is "Purchase", which tracks the completed purchases made through the application.
  • the 'Value' captures the value of the purchase. Attributes tracks the city that the deal was purchased for. An example is shown in Figure 13.
  • a test page may be any of category browsing pages.
  • a test element may be a buy colour test element.
  • a test element may be a button test element.
  • a test element may be an image test element.
  • a test element may be a layout test element. An example is shown in Figure 14.
  • the intended audience is the administrators who regularly set up Sites for clients.
  • the name of the site should be set according to this pattern:
  • Preview URL is not used and can be populated with any URL to pass validation.
  • This implementation guide provides steps for integrating the Maxymiser Mobile Application Testing solution 'MMTApp'. It describes how an A/B testing campaign can be implemented and run within native mobile applications developed for a smartphone operating system eg. iOS. This guide assumes that you are familiar with creating apps for a smartphone operating system eg. iOS.
  • MMTApp.h Insert '#import "MMTApp.h"' directive to the top of the working files in your project.
  • the MMTApp is an entry point to the API.
  • api [MMTApp apiForSite:@"myapp”];
  • the first argument is a block that we will invoke once experiences are fetched. It is safe to update UI inside this block as it will be invoked on the main thread.
  • Variants of the user experience for the View element use the format shown in the following example.
  • the Variant Content is Empty.
  • the Variant Content is Empty.
  • Variants of the user experience for the View element would use the format shown in the following example.
  • the Variant Content is whiteColor.
  • the Variant Content is greenColor.
  • the Variant Content is blueColor. - (void)viewWillAppear:(T300L)animated ⁇
  • connection to Maxymiser If the connection to Maxymiser is not available, action will be cached and sent once connection resumes. 3.6 QC & go-live
  • the Maxymiser UI supports two environments: Sandbox and Production.
  • Sandbox is a development test environment where campaigns are created and configured. All testing on your application should be carried out in Sandbox. Sandbox traffic is served from pre-defined Company IPs.
  • Production is the environment used to serve production (live user) traffic.
  • the MMTApp allows the environment to be switched as follows:
  • the winning variant can be weighted to 100 in the Maxymiser UI prior to republishing the campaign — this ensures that only the winning variant is displayed to users. It is recommended that the campaign is switched to the 'Not Collecting Data' state once the campaign has ended so that the performance data is frozen for future reference.
  • the campaign-specific code should be removed from the App when the winning user experience variant has been coded to the App codebase (e.g. at the next release).
  • SDK top-level class Provides facilities to create API for a Site and contains methods for
  • API object linked with a given Site
  • Wi- Fi network Specifies whether new experiences can be fetched only when user is connected to a Wi- Fi network. By default any available network will be used.
  • Integer value of the action This can be used for the tracking of various parameters such as amount and sum.
  • the action attribute This can be used for the tracking of various additional information related with the action.
  • Integer value of the action This can be used for the tracking of various parameters such as amount and sum.
  • the action attribute This can be used for the tracking of various additional information related with the action.
  • Protocol to be used to retrieve generated variants for the fetched experiences.
  • the name of the generated variant for the element in the campaign Returns nil for the following cases: the campaign is not started, the campaign is finished, the campaign is paused or the site is disabled. In any of these situations a process to render default content should be put in place.
  • the campaign is not started, the campaign is finished, the campaign is paused or the site is disabled. In any of these situations a process to render default content should be put in place.
  • Protocol to be used for logging messages from the SDK can be provided to the MMTApp class.
  • Maxymiser Mobile Library has the following system limitations:
  • Maxymiser can assist with campaign QC processes.
  • An Element cannot contain more than 10 variants.
  • the UI for Mobile App testing has been re-purposed from web site testing so there are certain parts and terminology that still apply to web site testing.
  • the Maxymiser UI uses the terminology (web) Site, this can be read as App name in mobile app testing
  • Maxymiser UI refers to a 'Page' this can be thought of as a container for Experiences and Actions.
  • the core attributes which are captured in App campaigns differ from those which are captured in web campaigns as described below.
  • Attributes that are not listed below may still be seen in the reporting user interface and may contain either 'null' or meaningless values. These should be disregarded and not used for analysis.
  • the Attribute 'OS' which is the Operating System type and version.
  • A/B Testing A method of testing changes in a single area of an app. App visitors are randomly shown content "A" or "B". The response to the content is analyzed to see if the difference between them is significant. A/B Testing is not limited to just two variants and is commonly used as shorthand for A/B/ C/D . . . [n] testing. Action: A conversion event performed by the visitor, for example purchase or click- through.
  • Campaign -level Settings Core configurations that apply to individual campaigns.
  • CG Content Generator
  • Maxymiser A core component of the Maxymiser system: it is the engine that executes main operations during App testing.
  • the Content Generator serves Variants and tracks all selected Actions and Personalization Criteria.
  • Content Variant The alternative content created in the Maxymiser UI and served to visitors during the testing process.
  • Each Element has at least two variants (one of which is designated as the Control Variant) .
  • Maxymiser test reporting compares current (default/control) content with the content varied in the campaign.
  • Element An identifiable part of an app, such as a landing page image, the size of a banner, or the copy of a call-to-action button that is to be tested.
  • An experience is composed of a specific set of variants over one or more pages.
  • a possible experience is a welcome page without an image, medium size banner, and call-to-action button saying 'View Our Best Offers'.
  • Live Refers to a campaign configuration that is currently running on an App.
  • Maxymiser UI A designated workspace where business users can work collaboratively to use Maxymiser's optimization solutions.
  • Publish Center The area of the Maxymiser UI where campaign content is transferred to the live web site.
  • Ready for Publish A feature used to inform the Publisher that a campaign configuration is complete and the campaign is ready to be made public.
  • Sandbox The test environment where campaigns are created and configured.
  • Variant (Content Variant): A Variant of an Element is a possible configuration of that particular Element. There are at least two variants for every Element: a Default (or 'control') and at least one Challenger variant.
  • Variant Weight A value used to determine the proportion of traffic that is served a Content Variant. Let's say we have two Content Variants “A” and “B”. “A” has a weight of 10 and “B” has a weight of 30. In this case “A” gets 25% of the Campaign traffic, “B” gets 75%.
  • Visitor A user who enters a campaign (and is tracked via a first-party cookie) and views content.
  • Visitor Attribute A characteristic that identifies a web site or app visitor, such as their geographical location, activity on a site, operating system and personalization criteria, for example gender.
  • the MMTApp library provides a debug logging mechanism based on standard NSLog output. All requests such as query construction, sending requests and response parsing are reflected by NSLog messages. It is therefore possible to see this log of library behavior in the Output window in Xcode and monitor it for errors. Generated log messages are prefixed with "MMTApp:"
  • a campaign may have been configured or programmed incorrectly leading to unexpected behavior of the application. Once the campaign is paused or finished, our API will return nil values.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • User Interface Of Digital Computer (AREA)
EP14744619.9A 2013-07-09 2014-07-09 Method of optimization for an application Withdrawn EP3019955A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB1312280.9A GB201312280D0 (en) 2013-07-09 2013-07-09 Native app
PCT/GB2014/052088 WO2015004452A1 (en) 2013-07-09 2014-07-09 Method of optimization for an application

Publications (1)

Publication Number Publication Date
EP3019955A1 true EP3019955A1 (en) 2016-05-18

Family

ID=49033535

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14744619.9A Withdrawn EP3019955A1 (en) 2013-07-09 2014-07-09 Method of optimization for an application

Country Status (5)

Country Link
EP (1) EP3019955A1 (zh)
JP (2) JP2016528608A (zh)
CN (1) CN105683912B (zh)
GB (2) GB201312280D0 (zh)
WO (1) WO2015004452A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032629A (zh) * 2018-06-28 2018-12-18 北京达佳互联信息技术有限公司 一种代码更新方法及装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105561579A (zh) * 2015-12-25 2016-05-11 北京奇虎科技有限公司 游戏素材展现方法及装置
EP3473035B1 (en) * 2016-07-13 2021-04-07 Huawei Technologies Co., Ltd. Application resilience system and method thereof for applications deployed on a cloud platform
US10735449B2 (en) 2017-07-11 2020-08-04 Viaforensics, Llc Methods and apparatuses for improved mobile app security testing via bridged native and web user interface interaction
CN108491370B (zh) * 2018-03-26 2021-11-26 成都睿码科技有限责任公司 使用元数据结构和数据驱动的方式产生内容的系统与方法
CN109754511B (zh) * 2019-01-14 2021-05-14 深圳前海微众银行股份有限公司 购物车设备固件更新方法、系统、平台、网关及存储介质
TR201907957A2 (tr) * 2019-05-24 2020-12-21 D Market Elektronik Hizmetler Ve Ticaret Anonim Sirketi A/b test yapilmasina i̇li̇şki̇n bi̇r si̇stem ve yöntem
US20220156760A1 (en) * 2020-11-16 2022-05-19 Salesforce.Com, Inc. Configuring choice components of an application or web page using a database system
CN113568634B (zh) * 2021-06-28 2022-05-17 荣耀终端有限公司 应用优化的处理方法及处理装置
CN113672228A (zh) * 2021-09-17 2021-11-19 灵犀科技有限公司 一种基于组件和数据资产交易的可视化开发方法及系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1237078A1 (de) 2001-01-19 2002-09-04 Siemens Aktiengesellschaft Durchführung eines zeitoptimierten Austausches einer Software-Applikation
FR2841014B1 (fr) 2002-06-18 2005-02-11 Canon Kk Procede et dispositif d'optimisation d'un programme informatique
US7155706B2 (en) * 2003-10-24 2006-12-26 Microsoft Corporation Administrative tool environment
US7444327B2 (en) * 2004-01-09 2008-10-28 Microsoft Corporation System and method for automated optimization of search result relevance
CN1835507A (zh) * 2005-03-17 2006-09-20 国际商业机器公司 用于用户与web浏览器交互的服务器端处理的方法与系统
US20070027760A1 (en) * 2005-07-29 2007-02-01 Collins Robert J System and method for creating and providing a user interface for displaying advertiser defined groups of advertisement campaign information
US20070174490A1 (en) * 2006-01-25 2007-07-26 Greystripe Inc. System and methods for managing content in pre-existing mobile applications
US20080134045A1 (en) * 2006-07-13 2008-06-05 Neustar, Inc. System and method for adaptively and dynamically configuring a graphical user interface of a mobile communication device
WO2008020443A1 (en) * 2006-08-14 2008-02-21 Inner-Active Ltd. System and method for real time delivery of interactive advertising messages into mobile applications
US8275419B2 (en) * 2007-11-14 2012-09-25 Yahoo! Inc. Advertisements on mobile devices using integrations with mobile applications
US9063765B2 (en) * 2008-04-28 2015-06-23 Kaazing Corporation System and methods for distributed execution of computer executable programs utilizing asymmetric translation
US20100037204A1 (en) * 2008-08-07 2010-02-11 Google Inc. Content Distribution for Mobile Device
US20100153866A1 (en) * 2008-12-11 2010-06-17 Accenture Global Services Gmbh Method and system for modifying the execution of a native application running on a portable electronic device
GB0909695D0 (en) * 2009-06-05 2009-07-22 Maxymiser Ltd On page console
JP2011215758A (ja) * 2010-03-31 2011-10-27 Kyocera Mita Corp 情報処理装置および情報処理プログラム
WO2012115981A1 (en) * 2011-02-22 2012-08-30 Tealeaf Technology, Inc. On-page manipulation and real-time replacement of content

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None *
See also references of WO2015004452A1 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032629A (zh) * 2018-06-28 2018-12-18 北京达佳互联信息技术有限公司 一种代码更新方法及装置

Also Published As

Publication number Publication date
CN105683912B (zh) 2019-08-27
WO2015004452A1 (en) 2015-01-15
GB2518936A (en) 2015-04-08
CN105683912A (zh) 2016-06-15
JP2016528608A (ja) 2016-09-15
GB201412190D0 (en) 2014-08-20
JP6865252B2 (ja) 2021-04-28
GB201312280D0 (en) 2013-08-21
JP2019215895A (ja) 2019-12-19

Similar Documents

Publication Publication Date Title
JP6865252B2 (ja) アプリケーションのための最適化の方法、システムおよびプログラム
US20210200943A1 (en) Website improvements based on native data from website building system
RU2468419C2 (ru) Устройство и способы для управления памятью, связанной с виджетами
US20150135160A1 (en) System and method for providing an application development and distribution social platform
US8924942B1 (en) Identifying user interface improvements from observed user behavior
JP5865589B2 (ja) 情報処理装置、情報処理方法、情報処理システム、およびプログラム
US20190384616A1 (en) Method for displaying and changing mobile commerce elements within native application instantly without code build
CN105190665A (zh) 移动创意管理系统
US11893076B2 (en) Systems and methods for managing an online user experience
MX2011009123A (es) Metodo para visualizar anuncios programados individualmente, dirigidos, fuera de linea en cualquier pantalla de escritorio.
Clinch et al. Designing application stores for public display networks
US8892727B2 (en) Funnel analysis of the adoption of an application
CN111164950A (zh) 用于用户分段即服务的方法和系统
WO2013074713A1 (en) Systems and methods for user configurable recommendation systems
US20110161325A1 (en) System, method and computer-readable storage medium for generation and remote content management of compiled files
US10290029B2 (en) Engine, system and method of providing application and analytic services across diverse operating platforms
US20140108494A1 (en) System and method for enabling online surveys using a client survey application
Lindskow Exploring digital news publishing business models: A production network approach
Truong Optimizing mobile in-app advertising effectiveness using app publishers-controlled factors
WO2020070725A1 (en) A computer implemented platform for advertisement campaigns and method thereof
Capilla et al. Addressing usability requirements in mobile software development
Tiet The planning and implementation process of programmatic advertising campaigns in emerging markets.
US20240152938A1 (en) Mobile Application Data Collection and Reward Method and System
Rieger et al. Towards the definitive evaluation framework for cross-platform app
Ho Ngoc Single Page Web Application with Restful API and AngularJS: Best Practices with Verto Monitor

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20160108

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20170913

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20171012