Invented by Arshad Farooqi, Aftechmobile Inc (d/b/a Mobrise Inc), Aftechmobile Inc
The Aftechmobile Inc (d/b/a Mobrise Inc), Aftechmobile Inc invention works as followsA computer-implemented method and system to create a mobile app provides a mobile software development tool (MADS) as well as pre-coded components (PCSCs), encapsulated within a mobile applications creation interface (MACI). The MADS dynamically maps data that will be rendered in the mobile app with one or more sources of data and launches the MACI. The MADS creates or multiple composite software components (CSCs), by selecting from more than one software component and/or PCSCs. The MADS inserts one to several PCSCs or CSCs into the MACI. MADS generates one to several recommendations for the addition of one or more characteristic objects to the mobile app. The MADS creates a mobile application by using the inserted PCSCs and the created software components. It also generates recommendations, dynamically mapped data, and/or adaptively configured programming interfaces to facilitate backend integration between the mobile app with the user’s device.
Background for Application creation process
Consumers and businesses are using mobile devices like smart phones, tablets computing devices, personal assistants, handheld devices, etc. to perform various tasks related to personal, work, business, or enterprise. Mobile devices can be used for communication purposes, such as voice communications, messaging, and also for other functions, including accessing and displaying web pages, sending and receiving electronic mails and capturing and displaying photos, and playing music, videos, and other audio formats, and social networking. These functions are usually performed by software apps that are built into mobile devices or run on top operating systems.
Mobile device developers and competitors offer both hardware and mobile software. In some cases, they even combine the two. This has resulted in dissimilar and incompatible mobile devices and environments. Different operating systems have their own programming environments, as well as software development tools. Mobile applications that are compatible with different operating systems and mobile devices require different design techniques, programming languages, and separate software code or compilations for each operating system. It is therefore difficult for developers to create mobile apps that can be used on multiple mobile devices. Developers need to have a deep understanding of the mobile operating system platforms and specific programming languages in order to develop mobile apps for various mobile operating systems. It takes a lot of skills and knowledge to develop, deploy, and update mobile apps. Users who are not proficient in the programming languages or mobile operating systems cannot create and distribute mobile applications.
Conventional mobile platforms allow users to create mobile apps of a specific type that can’t be changed or configured. This limits the development and use of many features and functions available in mobile devices and their respective operating systems. These mobile applications only allow access to content and graphics from websites, as well as links to social profiles, videos, books, and other information. These platforms enable non-technical users with minimal technical knowledge to create generic business to consumer applications (B2C). Mobile applications that contain metadata (for example, an application type) are easier to create and supported by most mobile platforms. Pre-coded components are needed to connect to backend databases. This will allow non-technical users create different types of mobile apps without the need to code and unify similar or dissimilar software components from multiple data sources.
Conventional mobile development platforms do not allow access to more than one layer of data. They only allow web pages to be built on the fly, but they don’t support hierarchical layers, data interaction or business rules. This allows non-technical enterprise users to rapidly assemble software components in order to create mobile applications that are enterprise-grade. Furthermore, traditional mobile development platforms don’t allow backend integration with the mobile application or with non-technical backend databases.
Context and behavioral elements (e.g. user behavior, intent, etc.) can vary from one person to the next, so typical mobile app development platforms don’t provide tools or components that can be adapted based on these elements. Additionally, mobile app development platforms that do not support dynamic mapping are not able to establish a link between data rendered and multiple sources before creating a mobile application. Non-technical users might not know about the enhanced functions and features available in a mobile app to enhance the mobile application. It is necessary to provide recommendations to users for enhanced functions and features in mobile applications based upon a real-time analysis of similar mobile apps, such as those that are based on functionality, industry and/or category.
Machine to machine (M2M), applications, which use devices such as sensors, meters, etc. to capture events, such as temperature and inventory levels, then relay that information to a mobile app, via a wired, wireless or hybrid network. The captured event is then translated into meaningful information. M2M applications enable wireless and wired devices to communicate with each other. Mobile application development platforms are not designed to combine device data.
There is a long-standing need for a computer-implemented method and system that provides pre-coded software components that can perform multiple functions in the form a software package and enterprise level mobile apps that are connected to backend database. This interface allows for dynamic mapping of backend data sources and adding new fields on the fly. It also facilitates the development of M2M or sensor specific mobile applications that combine sensor data and business processes. The interface implements an application programming interface for backend integration of the mobile application with the device and with the backend databases. A computer-implemented method and system is needed that allows users to create mobile apps that contain hierarchical layers and adapt to the context and behavior of their user when they are deployed on mobile devices. A computer-implemented method and system is needed that allows non-technical users, including wearable devices, to create and deploy complex mobile apps for different devices.
This summary provides a simplified introduction to a few concepts that will be further described in the detailed description. This summary does not identify the key or essential inventive concepts in the claimed subject matter. It also is not meant to determine the claim’s scope.
The computer-implemented method and system described herein also includes multiple pre-coded components that can be executed by at least one processor. They are encapsulated within a mobile app creation interface. The term “pre-coded components” is used herein. Pre-written computer program code that is encapsulated in a package or model to perform predefined functions. Pre-coded software components include, for instance, smart widgets and micro widgets. Pre-coded software components can be adapted to mobile contexts and behavioral elements such as user preferences, habits, and other factors. Pre-coded components include hierarchical layers, interactive elements that allow interactions with the data and predetermined criteria. The term “interactive element” is used herein. Any interface component that is designed to collect data or feedback from users, transform them into visual entities, and enable real-time user interaction within the mobile app creation interface. Pre-coded software components may also include social networking components, which embed social features into business processes and/or follow-up action items in the mobile app. The term “mobile application user interface” is also used herein. A user interface simulator allows the user create a mobile application in communication with the mobile app development software. Pre-coded components can be used to generate additional software components using the mobile app development software and multiple data sources.
The mobile application development software dynamically maps data to be rendered in the app with one or more sources. The mobile application development software dynamically populates data sources in the mobile app creation interface. It allows mapping one or more data sources to pre-coded components that allow for the updating of pre-coded components or the creation of one or several distinct software components. Mobile application development software is able to access a variety of preconfigured interfaces and a list predefined interfaces via the network that allows for the launch of the mobile app creation interface. The mobile application development software displays pre-coded components that the user can choose from. Through the network, the mobile application development software gets an indication of each pre-coded component. Mobile application development software creates a number of composite software components from more than one software component selected from different source components and/or pre-coded components. The term “composite software part” is used herein. A software component that uses and combines data and presentations from multiple component sources and functions as a new component with a combination data, presentations and/or functionality. The mobile app development software inserts the pre-coded and created software components into the launched interface for mobile application creation.
The mobile app development software generates one to three recommendations for adding one or more characteristic objects to the mobile app based upon a real-time analysis and dynamic learning of selected data from similar mobile apps developed, for instance, based in part on functionality, industry, or a category. The term “characteristic objects” is used herein. The term “characteristic objects” can refer to additional features or functions that are similar to the created mobile application. They may also be integrated into the application. The mobile application development software updates the generated recommendations dynamically to add one or more characteristic objects to the mobile app based on the selection of one or several additional characteristic objects from the user device. Mobile application development software can also adaptably configure one or more APIs for backend integration with the device to allow for the operation of the mobile app on the device. For example, the adaptively-configured application programming interfaces allow for machine to machine convergence, back office integration, process to machine interaction, machine to machine interaction, gamification and augmented reality. These are used to establish communication and exchange data between the mobile application and the device.
The mobile app development software creates the application using the launched mobile app creation interface. It uses one or more pre-coded components and the created composite components. The generated recommendations, dynamically mapped data and the adaptively configured programming interfaces are some of the components. The mobile application platform can generate revenue by selling the mobile application created to enterprise app stores for a fee. During each stage of creating a mobile app, the mobile software allows for real-time data simulations. Mobile application development software allows the creation of mobile applications to be connected to backend databases over the network. This is used for the creation of enhanced mobile applications such as enterprise-grade mobile apps. Mobile application development software allows you to create multiple types of mobile apps, such as a native, web, and cross-platform type. The mobile application development software can be accessed directly from a website address to access web services and/or APIs. Another embodiment collects real-time usage data to track and categorize users of the created mobile app and to provide real time analytics to target advertisements, surveys, and other marketing activities such as cross selling and/or upselling, and to offer offerings to keep mobile customers, based on their mobile application usage and preferences.
The mobile app development software contains 102 pre-coded components. These include smart widgets and micro widgets. They can be executed by at least one processor, and are encapsulated within a mobile application creation interface. The term “pre-coded components” is used herein. Pre-written computer program code that is encapsulated in a predefined form, such as a software package, or a model, to perform predefined functions, such as a smart widget, micro widget, and so on. The term “mobile application user interface” is also used herein. The user interface simulator allows the user create the mobile app in communication with the mobile software development software. A mobile application user interface can be an online interface that is accessible over a network like the internet. Pre-coded components might contain features that can be adapted based on context or behavioral elements. These could include preferences and habits, as well as user preferences. Pre-coded components, such as smart widgets, may contain elements that can be adapted to the mobile native user’s behavioral mindset while the user accesses smart widgets via their device. A sales management mobile app may highlight accounts that need to be followed up on based on behavioral and contextual elements like the location of the sales representative and the date of the contract review.
The pre-coded components of software also include hierarchical layers, such as multiple pages and interactive elements, which allow interactions with the data. The term “interactive element” is used herein. Any interface component that is used to collect data or provide feedback from users, transform them into visual entities and enable user interaction within the mobile app creation interface. A business rule is an example of a predetermined criteria. A business rule, for example, states that only customers who have existing accounts or customers can create new opportunities. A pre-coded opportunity widget in the mobile app development software allows a user to search for and select existing customers before creating a new opportunity record. The mobile application development software will instruct the user to create new records if a customer is not already in the database. As reusable elements of the user interface, the mobile app development software displays pre-coded components. Pre-coded components such as smart widgets, are preassembled according to business process flow and other requirements. Pre-coded software components include multiple layers of pages, user interfaces (UIs), and business rules. These pages and/or the UIs can be used on mobile devices, unlike other app development platforms which only allow you to create web pages. A marketing widget, for example, contains relevant data fields on multiple pages as well as business rules. This allows a company to set business rules and allows each user to customize the mobile app to their liking.
The pre-coded components allow business process management, note capture, document capture, voice input, social collaboration, and voice recording. The pre-coded components also include social networking components, which embed social features into business processes within the mobile application. For example, a user might insert social networking components such as a?like?” or?follow?. A user may insert social networking components, such as a?like? button or a follow? To allow users to share an interest with others, a button or a?follow? in the mobile app. Imagine a situation where a marketing team is working with a prospect. They also maintain an account for the prospect. A user can follow? and/or ?like? The mobile app allows the prospect to access their account. Team members can also add comments and collaborate with other users. Social networking components integrate social sharing and business process management. They are embedded in the pre-sales cycle’s business process. Another embodiment includes pre-coded software components that include social networking components and follow up actions. One user can insert a social network component, such as a?like?? button. A button and a request for a follow-up action in the mobile app. When a user clicks the?like? button in the mobile application, for example, they are required to take a follow up action item. The user must click on the?like? button in the mobile app to perform any action related to social media items, such as buy a product or show intent to purchase a product. The pre-coded components can be used to generate additional software components using the mobile app development software and multiple data sources.
The mobile app development software dynamically maps103 the data that will be rendered in the application with one or multiple data sources. Data sources include other mobile apps and databases that can be accessed via APIs. The mobile application development software, for example, maps the data that will be rendered in the application by linking it with other data sources, remote data source, sensors, and backend data sources. The mobile application development software dynamically populates data sources in the mobile app creation interface. This allows for mapping one or more data sources to pre-coded components. A user can map one or more data source to a widget, or create a new widget using the dynamic populating of data sources in mobile application creation interface. A dynamic mapping of data, in one embodiment, allows the user to create a supplementary component to a mobile application. This could be a widget that connects to multiple data sources like backend data sources or remote data sources. The user can then populate only the data fields in the app that have been mapped by him. Imagine a scenario where a data source contains 10 data fields. A corresponding widget displays all 10 data fields in a mobile application. A user can choose to show only five data fields in the mobile application created by a company. This allows the user to map only those data fields. An embodiment requires that the user create data mappings and/or business guidelines before the creation of the mobile application.
The mobile app development software receives the following: 104 a selection from one of the preconfigured interfaces also known as?custom? user interfaces or one of the predefined user interfaces also known as ‘prebuilt? User interfaces are available from the device via the network to launch the mobile app creation interface. The user can choose to use a user-designed interface or the standard interface provided by mobile application development software in order to launch the mobile app creation interface. The mobile application development software will then allow the user to choose from one or more pre-coded components. Mobile application development software allows non-technical users in enterprises to quickly assemble smart widgets and create enterprise grade mobile apps. Based on your business process flow and requirements, the smart widget can be assembled. These pre-assembled widgets can be dragged and dropped into the mobile application creation software. They contain multiple layers of pages as well as business rules. The network gives the mobile application developer software 105 an indication of which pre-coded components each component is. The mobile application development software, for example, receives pre-coded components from the user device, such as a smart or micro widget.Click here to view the patent on Google Patents.