Sign In to Follow Application
View All Documents & Correspondence

Systems And Methods For Generating Thin Configurable Mobile Applications

Abstract: Systems and methods for generating thin configurable mobile applications are provided such that user can have access to rich functional and thick user interface of a main application on mobile devices with limited number of screens. The framework ensures that services and functions of the main application are re-used to generate User Interfaces (UIs) on mobile devices in runtime. User action on the mobile application from any source screen leads to a web service wrapper trying to find a matching record in pre-defined configuration templates and subsequently performing that action to render an appropriate UI serving the user request. URL externalization ensures that the same mobile application can connect with different hosted main applications.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
08 September 2015
Publication Number
10/2017
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
ip@legasis.in
Parent Application
Patent Number
Legal Status
Grant Date
2022-12-29
Renewal Date

Applicants

Tata Consultancy Services Limited
Nirmal Building, 9th floor, Nariman point, Mumbai 400021, Maharashtra, India

Inventors

1. DUBEY, Neeraj
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India
2. SRIVASTAVA, Mohit
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India
3. PAREEK, Aman
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India
4. SINGH, Rashpal
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India
5. KHANDELWAL, Nitin
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India
6. CHAUBEY, Pratyush
Tata Consultancy Services Limited, Skyview Corporate Park, Sector 74A, NH 8, Gurgaon - 122 004, Haryana, India

Specification

Claims:WE CLAIM:

1. A method to generate a thin configurable mobile application on a client corresponding to at least one main application residing on a server in a client server system, the method comprising:
(a) processing, input parameters corresponding to a user request pertaining to the at least one main application;
(b) checking, for a record matching the received user request in pre-defined configuration templates;
(c) identifying, an action to be performed based on the record matching the received user request; and
(d) rendering at runtime, at the client, at least one thin client User Interface (UI) corresponding to the input parameters and the identified action to be performed.

2. The method of claim 1, wherein the input parameters corresponding to the user request are received by the client.

3. The method of claim 1, wherein the input parameters comprise one or more combinations of user actions and pre-defined list screen names or detailed screen names operable to populate either list screens or detailed screens based on the user request.

4. The method of claim 1, wherein the step of identifying an action to be performed further comprises invoking data from at least one of a database and a service of the at least one main application, the data corresponding to the input parameters.

5. A server configured to generate a thin configurable mobile application on a client corresponding to at least one main application residing on the server,

the server comprising:
• one or more processors;
• a communication interface device;
• one or more internal data storage devices operatively coupled to the one or more processors for storing:
• a configuration repository configured to store pre-defined configuration templates comprising records corresponding to user requests pertaining to the at least one main application; and
• a web service wrapper configured to couple a UI rendering engine with the at least one main application for rendering at runtime, on the client, at least one thin client User Interface (UI) corresponding to input parameters and action to be performed based on the user requests with matching records in the pre-defined configuration templates.

6. The server of claim 5, wherein the UI rendering engine resides on the client to generate the thin configurable mobile application as a native mobile application.

7. The server of claim 5, wherein the UI rendering engine resides on the server to generate the thin configurable mobile application as a hybrid mobile application.

8. The server of claim 5, wherein Uniform Resource Locator (URL) of the at least one main application is externalized.

9. The server of claim 5, wherein the thin client UI comprises at least one of:
(i) at least one of dashboards and trends;
(ii) at least one of list screens or detailed screens; and
(iii) message indicating no configuration available.

10. The server of claim 9, wherein the dashboards are in the form of at least one of column and pie charts and the trends are in the form of line charts.
, Description:FORM 2

THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003

COMPLETE SPECIFICATION
(See Section 10 and Rule 13)

Title of invention:
SYSTEMS AND METHODS FOR GENERATING THIN CONFIGURABLE
MOBILE APPLICATIONS

Applicant
Tata Consultancy Services Limited
A company Incorporated in India under the Companies Act, 1956
Having address:
Nirmal Building, 9th floor,
Nariman point, Mumbai 400021,
Maharashtra, India

The following specification particularly describes the embodiments and the manner in which it is to be performed.

TECHNICAL FIELD
[0001] The embodiments herein generally relate to systems and methods for generating thin mobile applications, particularly, for generating thin configurable mobile applications.

BACKGROUND
[0002] Thin clients, typically have a primitive look and feel when compared to rich functional main applications unless rich graphical user interfaces are built-in making mobile applications hardware intensive. Maintaining thick clients is a challenge since it involves maintaining software and upgrades both at the server and client end. A user friendly user interface (UI) is preferred by users for ease of operations and mobile applications are the most preferred mode of operation today.

[0003] Development of an effective UI for mobile applications involves time, effort and resources, particularly to emulate the rich functionalities of the main applications. Currently web applications are heavy and rich in functionality. It is difficult to provide such rich functional and thick user interface application on mobile devices without building or developing heavy mobile applications. Building thick user interfaces on mobile applications means bigger size of mobile application and mobile users prefer to work on lighter applications.

SUMMARY
[0004] This summary is provided to introduce concepts related to generating thin configurable mobile applications on a client corresponding to at least one main application residing on a server in a client server system. In the context of the instant disclosure, the expression “main application” pertains to the main application and its associated database and/or services. This summary is neither intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the present disclosure.

[0005] Systems and methods of the present disclosure enable generic User Interfaces (UIs) or thin mobile applications using web service wrapper co-operating with at least one main application. A framework is provided that can generate light weight mobile applications that enable re-use of the rich functionality of the main application without redevelopment of the functionality for the mobile application. Systems and methods of the present disclosure ensure that services and functions of the main application are re-used to generate UIs on mobile devices in runtime.

[0006] In an aspect, there is provided a method to generate a thin configurable mobile application on a client corresponding to at least one main application residing on a server in a client server system, the method comprising: processing, input parameters corresponding to a user request pertaining to the at least one main application; checking, for a record matching the received user request in pre-defined configuration templates; identifying, an action to be performed based on the record matching the received user request; and rendering at runtime, at the client, at least one thin client User Interface (UI) corresponding to the input parameters and the identified action to be performed.

[0007] In an embodiment, the input parameters corresponding to the user request are received by the client.

[0008] In an embodiment, the input parameters comprise one or more combinations of user actions and pre-defined list screen names or detailed screen names operable to populate either list screens or detailed screens based on user request.

[0009] In an embodiment, the step of identifying an action to be performed further comprises invoking data from at least one of a database and a service of the at least one main application, the data corresponding to the input parameters.

[0010] In another aspect, there is provided a server configured to generate a thin configurable mobile application on a client corresponding to at least one main application residing on the server, the server comprising: one or more processors; a communication interface; one or more internal data storage devices operatively coupled to the one or more processors for storing: a configuration repository configured to store pre-defined configuration templates comprising records corresponding to user requests pertaining to the at least one main application; and a web service wrapper configured to couple a UI rendering engine with the at least one main application for rendering at runtime, on the client, at least one thin client User Interface (UI) corresponding to input parameters and action to be performed based on the user requests with matching records in the pre-defined configuration templates.

[0011] In an embodiment, the UI rendering engine resides on the client to generate the thin configurable mobile application as a native mobile application.

[0012] In an embodiment, the UI rendering engine resides on the server to generate the thin configurable mobile application as a hybrid mobile application.

[0013] In an embodiment, Uniform Resource Locator (URL) of the at least one main application is externalized.

[0014] In an embodiment, the thin client UI comprises at least one of : (i) at least one of dashboards and trends; (ii) at least one of list screens or detailed screens corresponding to the input parameters; and (iii) message indicating no configuration available in the event no record matching the received user request is found in the pre-defined configuration templates.

[0015] In an embodiment, the dashboards are in the form of at least one of column and pie charts and the trends are in the form of line charts.

[0016] In yet another aspect, there is provided a computer program product comprising a non-transitory computer readable medium having program instructions embodied therein to perform a method to generate a thin configurable mobile application on a client corresponding to at least one main application residing on a server in a client server system, the method comprising processing, input parameters corresponding to a user request pertaining to the at least one main application; receiving and checking, for a record matching the received user request in pre-defined configuration templates; identifying, an action to be performed if a record matching the received user request is identified; and rendering at runtime, at the client, at least one thin client User Interface (UI) corresponding to the input parameters and the identified action to be performed.

BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The embodiments herein will be better understood from the following detailed description with reference to the drawings, in which:

[0018] FIG. 1 illustrates an exemplary schematic diagram of a thin client network system in accordance with one or more embodiments of a system of the present disclosure;
[0019] FIG. 2A illustrates an exemplary block diagram of a framework representing a client server system in accordance with an embodiment of the present disclosure;
[0020] FIG. 2B and FIG. 2C illustrate exemplary schematic diagrams of client server systems with functional modules in accordance with different embodiments of the present disclosure;
[0021] FIG. 3 is an exemplary flow diagram illustrating a method to generate a thin configurable mobile application on a client corresponding to at least one main application residing in a client server system, in accordance with an embodiment of the present disclosure;
[0022] FIG. 4 is an exemplary flow chart detailing steps involved in the method of FIG. 3, in accordance with an embodiment of the present disclosure;
[0023] FIG. 5 is an exemplary thin client UI illustrating a list screen in accordance with an embodiment of the present disclosure;
[0024] FIG. 6A - 6C are exemplary thin client UI illustrating detailed screens in accordance with various embodiments of the present disclosure; and
[0025] FIG. 7A – 7D are exemplary thin client UI illustrating dashboards in accordance with various embodiments of the present disclosure.
[0026] It should be appreciated by those skilled in the art that any block diagram herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computing device or processor, whether or not such computing device or processor is explicitly shown.

DETAILED DESCRIPTION
[0027] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.

[0028] Referring now to the drawings, and more particularly to FIGS. 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and method.

[0029] FIG. 1 illustrates an exemplary schematic diagram of thin client network system 100 in accordance with one or more embodiments of a system of the present disclosure. In an embodiment, system 100 can reside on one or more computers and include one or more processors (not shown), communication interface or input/output (I/O) interface (not shown), and memory or one or more internal data storage devices (not shown) operatively coupled to the one or more processors. The one or more internal data storage devices may be interchangeably referred to as memory in the context of the present disclosure. The one or more processors can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the processor(s) is configured to fetch and execute computer-readable instructions stored in the memory.

[0030] In an embodiment, system 100 can be implemented on a client server system involving a variety of computing systems, such as a laptop computer, a desktop computer, a notebook, a workstation, a mainframe computer, a server, a network server, cloud, hand-held device and the like. Computing systems constituting Client 120 are in communication with computing systems constituting server 130 via any type of network 110. The I/O interface can include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like and can facilitate multiple communications within a wide variety of networks 110 and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. In an embodiment, the I/O interface can include one or more ports for connecting a number of devices to one another or to another server. The memory may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an embodiment, the various modules of system 100 can be stored in the memory.
[0031] FIG. 2A illustrates an exemplary block diagram of a framework representing a client server system 200A in accordance with an embodiment of the present disclosure. System 200A, in an embodiment, can be configured to generate a thin configurable mobile application on a client (120 of FIG. 1) corresponding to at least one main application 240 residing on at least one server (130 of FIG. 1) and can comprise User Interface (UI) rendering engine 206. UI rendering engine 206 can reside on either the client (120 of FIG. 1) or the server (130 of FIG. 1) and can be configured to render a thin client UI on the client based on pre-defined configuration templates In the context of the present disclosure, the expressions thin mobile application and thin client UI may be used interchangeably. System 200A can further comprise web service wrapper 216 residing on the server (130 of FIG. 1) and can be configured to couple UI rendering engine 206 at one end with main application 240 residing on the server (130 of FIG. 1). System 200A can also further comprise configuration repository 218 that can reside on the server (130 of FIG. 1) and be configured to store the pre-defined configuration templates.

[0032] In accordance with the present disclosure, exemplary configuration templates can include tables having exemplary content as provided herein below.
TABLE NAME CONTENTS
SCREEN NAVIGATION This template can hold details of source screen on mobile application and the target main application screen that has to be navigated to. For this navigation, information contained can include action performed, mode of the source and target screen (yiew, edit), type of the navigated screen like list screen, detailed screen, charts and dashboards. The navigation can be through a web service call or a direct query call.
SERVICE MAPPING This template can hold mapping information between the source screen and the target main application service that has to be invoked.
SERVICE SIGNATURE Once the target service that has to be invoked is identified this template can determine the signature of the target service and number of inputs and outputs.
SERVICE ATTRIBUTE MAPPING This template can determine the mapping between the source screen columns and the input attribute that goes into the web service. It can also contain mapping between the output from the web service to the eventual source screen where the output has to be rendered.
SCREEN NAVIGATION WORKITEM If navigation to a dashboard is requested, this template can determine the subsequent service that has to be invoked to get details from the main application.
DB QUERY TABLE If navigation through a query call is requested, this template can determine details for that query and the cap on the number of rows to be fetched.
CHART DETAILS If navigation to chart (through a query call or web service) is requested, this template can determine details of the chart like name and title and how data has to be fetched.

[0033] FIG. 2B and FIG. 2C illustrate exemplary schematic diagrams of client server systems 200B and 200C with functional modules in accordance with different embodiments of the present disclosure. Systems 200B and 200C can be configured to generate a thin configurable mobile application on client 120 corresponding to at least one main application residing on at least one server 130.

[0034] In an embodiment, client server system 200B includes client 120 in communication with server 130 via network 110. Exemplary functional modules of client 120 of system 200B can include User Interface (UI) rendering engine 206 configured to render a thin client UI implemented on client 120 based on pre-defined configuration templates stored in configuration repository 218 residing on server 130. Exemplary functional modules of server 130 of system 200B can include web service wrapper 216 that can be configured to couple the UI rendering engine 206 on client 120 at one end with at least one main application (not shown) residing on server 130 of system 200B. In an embodiment, server 130 of system 200B can include memory 210 configured to store instructions to be executed by processor 212 and client 120 can include memory 202 configured to store instructions to be executed by processor 204 to cause system 200B to behave in a manner as described in various embodiments hereinafter. Client server system 200B illustrates an embodiment wherein UI rendering engine 206 resides on client 120 and can generate the thin configurable mobile application as a native mobile application.

[0035] In an embodiment, client server system 200C includes client 120 in communication with server 130 via network 110. Exemplary functional modules of client 120 of system 200C can include browser 208 on client 120 for implementing a thin client UI based on pre-defined configuration templates, rendered by User Interface (UI) rendering engine 206 residing on server 130. The pre-defined configuration templates are stored in configuration repository 218 residing on server 130. Exemplary functional modules of server 130 of system 200C can further include web service wrapper 216 that can be configured to couple the UI rendering engine 206 at one end with at least one main application (not shown) residing on server 130 of system 200C. In an embodiment, server 130 of system 200C can include memory 210 configured to store instructions to be executed by processor 212 and client 120 can include memory 202 configured to store instructions to be executed by processor 204 to cause system 200C to behave in a manner as described in various embodiments hereinafter. Client server system 200C illustrates an embodiment wherein UI rendering engine 206 resides on server 130 and can generate the thin configurable mobile application as a hybrid mobile application on client 120.

[0036] FIG. 3 is an exemplary flow diagram 300 illustrating a method to generate a thin configurable mobile application on client 120 corresponding to at least one main application residing on a server in a client server system, in accordance with an embodiment of the present disclosure and FIG. 4 is an exemplary flow chart 400 detailing steps involved in the method of FIG. 3, in accordance with an embodiment of the present disclosure. The steps of method of flow diagram 300 will now be explained with reference to the exemplary functional modules of system 200B depicted in FIG. 2B.

[0037] At step 302, input parameters corresponding to a user request pertaining to the main application are processed at server 130. In an embodiment, the input parameters corresponding to the user request are received by client 120. In an embodiment, input parameters can include one or more combinations of user actions like login, view a list screen for an application such as trade, edit a detailed screen for an application such as authorizing a particular trade detail, and the like. In an embodiment, list screens and detailed screens operable to populate either further list screens or detailed screens based on user request are pre-defined.

[0038] At step 304, server 130 checks for a record matching the received user request in pre-defined configuration templates stored in configuration repository 218. In an embodiment, Web service wrapper 216 checks for records in configuration repository 218 for a matching record based on the user request. In the event that there is no record that matches the user request in configuration repository 218, path B as illustrated in FIG. 4 is initiated, wherein in an embodiment, client 120 is provided an output message indicating no configuration exists. Such an event generally can occur if an organization (content owner) provides a very limited access to a mobile user and navigation to a particular screen or folder is restricted or mode of operation like editing a particular folder is restricted. In an embodiment, input modes permissible for a mobile user such as view only or edit particular folder details only or authorize further modification, and the like are pre-defined.

[0039] In the event that a record matching the user request is found in configuration repository 218, at step 306, an action to be performed is identified by web service wrapper 216. Upon retrieval of an action to be performed, at step 308, web service wrapper 216 creates or instantiates the Objects and Methods using Java reflections to initiate one of paths A and C as illustrated to render at runtime, at client 120, at least one thin client User Interface (UI) corresponding to the input parameters and the identified action to be performed. In an embodiment, path C includes invoking data from database of the main application. For instance, path C can be initiated for an action wherein user request involves obtaining a trend chart such as trend of open trades in the last year, trade events created monthly, dashboard of unpaid events, and the like. Path C then retrieves the data from the database of the main application and renders appropriate UI on client 120 as dashboards in the form of column or pie charts and trends in the form of line charts. In an embodiment, path A includes invoking services of the main application. For instance, path A can be initiated for an action wherein user request involves obtaining a list of critical work items after login, authorize or view transaction from the work item list, and the like. In an exemplary embodiment, critical work items can include list of trades pending in a trade authorization module or a list of payments to be cleared in a payment authorization module, and the like, that a user may be authorized to conduct transaction for or merely view. Path A then involves web service wrapper 216 invoking services of the main application to fetch requested data and passing back corresponding attributes to client 120 for rendering appropriate UI.

[0040] In an exemplary embodiment, path C may invoke data corresponding to the table DB QUERY TABLE presented herein above as exemplary tables in the pre-defined configuration templates. In an embodiment, path A may invoke data corresponding to the tables SERVICE ATTRIBUTE MAPPING and SERVICE SIGNATURE. In an embodiment, data corresponding to the tables SCREEN NAVIGATION and SERVICE MAPPING may be invoked for either of the paths A, B and C. In an embodiment, data corresponding to the tables SCREEN NAVIGATION WORKITEM and CHART DETAILS may be invoked without invoking data corresponding to the table SERVICE MAPPING.

[0041] FIG. 5 is an exemplary thin client UI illustrating a list screen 500 including screen name 502 and data attributes and values 504, in accordance with an embodiment of the present disclosure, wherein for a main application dealing with trading, screen name 502 represents a work item list and authorization trade queues represent data attributes and values 504 in that particular screen. In another exemplary embodiment, a list screen for a railway booking application can include list screen name as “Travel from” having data attribute say “Source station” and value say “Mumbai”. List screens are provided with placeholders for columns and rows. List screens facilitate limited or restricted mobile application that is content sensitive and provides minimal yet sufficient information for mobile users as deemed necessary by the content owner.

[0042] FIG. 6A - 6C are exemplary thin client UI illustrating detailed screens 600 including screen name 602 and data attributes and values 604, in accordance with various embodiments of the present disclosure. Further possible navigations and / or actions can be initiated by a mobile user through detailed screens.

[0043] FIG. 7A – 7D are exemplary thin client UI illustrating dashboards in accordance with various embodiments of the present disclosure. FIG. 7A illustrates an illustrative list screen for dashboards in accordance with an embodiment. FIG. 7B – FIG. 7D illustrate pie chart, column chart and line charts respectively.

[0044] Content displayed on the list and detailed screens are fetched by web service wrapper 216 and the details are dynamically generated and rendered as a thin client UI in real time. Therefore, in accordance with the present disclosure, list screens and detailed screens are generic templates having identical look and feel for all user interactions. Screen names, possible navigation from screens, possible actions from screen, attributes and their data values are provided by web service wrapper 216, thus providing configurable screens based on the organization’s (content owner’s) need to expose on client computer. Rich functional main applications are leveraged to generate thin mobile applications without relying on heavy development. Controlled transfer of data between the thin mobile application and the main application helps manage traffic therebetween, the control being exercised in view of the pre-defined number of screens that maybe populated or and / or pre-defined actions for a given user from the available set of screens and / or actions, respectively in the main application.

[0045] In an embodiment of the present disclosure, Uniform Resource Locator (URL) of the at least one main application is externalized. Accordingly, systems and methods of the instant application enable the same thin client mobile application to connect to different hosted applications.

[0046] The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments of the invention. The scope of the subject matter embodiments defined here may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language.

[0047] It is, however to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the invention may be implemented on different hardware devices, e.g. using a plurality of CPUs.

[0048] The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various modules comprising the system of the present disclosure and described herein may be implemented in other modules or combinations of other modules. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The various modules described herein may be implemented as either software and/or hardware modules and may be stored in any type of non-transitory computer readable medium or other storage device. Some non-limiting examples of non-transitory computer-readable media include CDs, DVDs, BLU-RAY, flash memory, and hard disk drives.

[0049] Further, although process steps, method steps, techniques or the like may be described in a sequential order, such processes, methods and techniques may be configured to work in alternate orders. In other words, any sequence or order of steps that may be described does not necessarily indicate a requirement that the steps be performed in that order. The steps of processes described herein may be performed in any order practical. Further, some steps may be performed simultaneously.

[0050] The preceding description has been presented with reference to various embodiments. Persons having ordinary skill in the art and technology to which this application pertains will appreciate that alterations and changes in the described structures and methods of operation can be practiced without meaningfully departing from the principle, spirit and scope.

Documents

Application Documents

# Name Date
1 3449-MUM-2015-IntimationOfGrant29-12-2022.pdf 2022-12-29
1 Form 3 [08-09-2015(online)].pdf 2015-09-08
2 3449-MUM-2015-PatentCertificate29-12-2022.pdf 2022-12-29
2 Form 20 [08-09-2015(online)].pdf 2015-09-08
3 Drawing [08-09-2015(online)].pdf 2015-09-08
3 3449-MUM-2015-Annexure [07-12-2022(online)].pdf 2022-12-07
4 Description(Complete) [08-09-2015(online)].pdf 2015-09-08
4 3449-MUM-2015-Written submissions and relevant documents [14-09-2022(online)].pdf 2022-09-14
5 ABSTRACT1.jpg 2018-08-11
5 3449-MUM-2015-Correspondence to notify the Controller [18-08-2022(online)].pdf 2022-08-18
6 3449-MUM-2015-Power of Attorney-220316.pdf 2018-08-11
6 3449-MUM-2015-FORM-26 [18-08-2022(online)]-1.pdf 2022-08-18
7 3449-MUM-2015-FORM-26 [18-08-2022(online)].pdf 2022-08-18
7 3449-MUM-2015-Form 1-110915.pdf 2018-08-11
8 3449-MUM-2015-US(14)-HearingNotice-(HearingDate-08-09-2022).pdf 2022-08-12
8 3449-MUM-2015-Correspondence-220316.pdf 2018-08-11
9 3449-MUM-2015-CLAIMS [17-06-2020(online)].pdf 2020-06-17
9 3449-MUM-2015-Correspondence-110915.pdf 2018-08-11
10 3449-MUM-2015-COMPLETE SPECIFICATION [17-06-2020(online)].pdf 2020-06-17
10 3449-MUM-2015-FER.pdf 2019-12-17
11 3449-MUM-2015-FER_SER_REPLY [17-06-2020(online)].pdf 2020-06-17
11 3449-MUM-2015-OTHERS [17-06-2020(online)].pdf 2020-06-17
12 3449-MUM-2015-FER_SER_REPLY [17-06-2020(online)].pdf 2020-06-17
12 3449-MUM-2015-OTHERS [17-06-2020(online)].pdf 2020-06-17
13 3449-MUM-2015-COMPLETE SPECIFICATION [17-06-2020(online)].pdf 2020-06-17
13 3449-MUM-2015-FER.pdf 2019-12-17
14 3449-MUM-2015-CLAIMS [17-06-2020(online)].pdf 2020-06-17
14 3449-MUM-2015-Correspondence-110915.pdf 2018-08-11
15 3449-MUM-2015-Correspondence-220316.pdf 2018-08-11
15 3449-MUM-2015-US(14)-HearingNotice-(HearingDate-08-09-2022).pdf 2022-08-12
16 3449-MUM-2015-Form 1-110915.pdf 2018-08-11
16 3449-MUM-2015-FORM-26 [18-08-2022(online)].pdf 2022-08-18
17 3449-MUM-2015-FORM-26 [18-08-2022(online)]-1.pdf 2022-08-18
17 3449-MUM-2015-Power of Attorney-220316.pdf 2018-08-11
18 ABSTRACT1.jpg 2018-08-11
18 3449-MUM-2015-Correspondence to notify the Controller [18-08-2022(online)].pdf 2022-08-18
19 Description(Complete) [08-09-2015(online)].pdf 2015-09-08
19 3449-MUM-2015-Written submissions and relevant documents [14-09-2022(online)].pdf 2022-09-14
20 Drawing [08-09-2015(online)].pdf 2015-09-08
20 3449-MUM-2015-Annexure [07-12-2022(online)].pdf 2022-12-07
21 3449-MUM-2015-PatentCertificate29-12-2022.pdf 2022-12-29
22 Form 3 [08-09-2015(online)].pdf 2015-09-08
22 3449-MUM-2015-IntimationOfGrant29-12-2022.pdf 2022-12-29

Search Strategy

1 Search_Strategy_3449-MUM-2015_16-12-2019.pdf

ERegister / Renewals

3rd: 27 Mar 2023

From 08/09/2017 - To 08/09/2018

4th: 27 Mar 2023

From 08/09/2018 - To 08/09/2019

5th: 27 Mar 2023

From 08/09/2019 - To 08/09/2020

6th: 27 Mar 2023

From 08/09/2020 - To 08/09/2021

7th: 27 Mar 2023

From 08/09/2021 - To 08/09/2022

8th: 27 Mar 2023

From 08/09/2022 - To 08/09/2023

9th: 27 Mar 2023

From 08/09/2023 - To 08/09/2024

10th: 07 Sep 2024

From 08/09/2024 - To 08/09/2025

11th: 04 Sep 2025

From 08/09/2025 - To 08/09/2026