IP Library Granted Patent US 7,698,702
Granted Patent B2
US 7,698,702 · App. 11/218,432 · Granted Apr 13, 2010

System and method for implementing data-compatibility-based version scheme

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,698,702
App. No.
11/218,432
Granted
Apr 13, 2010
Kind
B2
Abstract

A versioning schema enforced by the application development environment enables the runtime environment of a terminal device to evaluate a software update to identify potential compatibility issues and control installation of the update. The versioning schema includes a respective field for each one of a plurality of aspects of the application and defines an initial value of each field when an initial application load is released. For each successive software update affecting the application, the method involves identifying each aspect of the application affected by the software update and incrementing a value of the respective field of each identified aspect. The version number can be in the form D.M.F where D, M and F are incremented in response to changes in the application relating to data components, message components and features.

Claims (29)

1. A method of enabling updates to a software application, the method comprising:

defining a single version number for said software application, said single version number comprising the form “A.B”, wherein each of “A” and “B” is a field representing a respective one of a plurality of aspects of the application;

defining an initial numerical value of each of said fields “A” and “B” when an initial application load is released; and

for each successive software update affecting the application:

identifying each aspect of said plurality of aspects of the application affected by the software update, said identifying resulting in at least one identified aspect; and

for each said identified aspect, incrementing the numerical value of the respective field of said single version number independently of any incrementing of the numerical value of any other field of said single version number.

2. The method as claimed in claim 1 , wherein the version number comprises at least one “Data” field corresponding to data components of the application, and wherein said incrementing increments the numerical value of the “Data” field if the software update modifies any existing data components of the application.

3. The method as claimed in claim 1 , wherein the version number comprises at least one “Messages” field corresponding to messages used by the application, and wherein said incrementing increments the numerical value of the “Messages” field if the software update modifies any existing messages used by the application.

4. The method as claimed in claim 1 , wherein the version number comprises at least one “Features” field corresponding to functional features of the application, and wherein said incrementing increments the numerical value of the “Features” field if the software update adds any one or more of new data components, new messages, and new application logic to the application.

5. The method of claim 1 wherein said incrementing comprises, for a single one of said successive software updates, incrementing each field of said plurality of fields of said version number.

6. A method of enabling software updates to a software application, the method comprising:

defining a single version number for said software application,

said single version number comprising the form “D.M.F”, wherein “D” is a data field corresponding to data components of the application, “M” is a messages field corresponding to messages used by the application, and “F” is a features field corresponding to functional features of said application;

defining an initial numerical value of each of said fields “D”, “M” and “F” when an initial application load is released; and

for each successive software update affecting said application:

identifying each one of said data components, said messages and said functional features of said application affected by the software update, said identifying resulting in at least one identified aspect; and

for each said identified aspect, incrementing the value of the respective field of said single version number independently of any incrementing of the numerical value of any other field of said single version number.

7. A system for enabling controlled distribution of software updates affecting a software application installed on a plurality of terminal devices of a wireless network, the system comprising a computing device operable to:

define a single version number for said software application, said single version number comprising the form “A.B”, wherein each of “A” and “B” is a field representing a respective one of a plurality of aspects of the application;

define an initial numerical value of each of said fields “A” and “B” when an initial application load is released; and

for each successive software update affecting the application:

identify each aspect of said plurality of aspects of the application affected by the software update, said identifying resulting in at least one identified aspect; and

for each said identified aspect, increment the numerical value of the respective field of said single version number independently of any incrementing of the numerical value of any other field of said single version number.

8. A system for enabling controlled distribution of software updates affecting a software application installed on a plurality of terminal devices of a wireless network, the system comprising a computing device operable to:

define a single version number for said software application, said single version number comprising the form “D.M.F”, wherein “D” is a data field corresponding to data components of the application, “M” is a messages field corresponding to messages used by the application, and “F” is a features field corresponding to functional features of said application;

define an initial numerical value of each of said fields “D”, “M” and “F” when an initial application load is released; and

for each successive software update affecting said application:

identify each one of said data components, said messages and said functional features of said application affected by the software update, said identifying resulting in at least one identified aspect; and

for each said identified aspect, increment the value of the respective field of said single version number independently of any incrementing of the numerical value of any other field of said single version number.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Nov 6, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034179/0923 →