IP Library › Granted Patent US 12,327,111
Granted Patent B2
US 12,327,111 · App. 18/551,486 · Granted Jun 10, 2025

Software microservice generation

Inventors: Adam Ziolkowski (London, GB); Alistair McCormick (London, GB); Emmanuel Ferreyra Olivares (London, GB); Johannes Noppen (London, GB)
Assignee: British Telecommunications Public Limited Company
G06F8/72
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 12,327,111
App. No.
18/551,486
Filed
Sep 20, 2023
Granted
Jun 10, 2025
Kind
B2
Art Unit
2191
USPC
717/120
Abstract

A computer implemented method of generating a software service for providing required software functionality can include accessing a software component having functionality including and exceeding the required functionality; defining verification test for verifying that the software component includes the required functionality; applying a genetic algorithm to the software component to iteratively adapt the software component over a plurality of generations, wherein each generation of the software component is adapted by removal of one or more portions of the software component of a preceding generation, wherein the adaptation for a generation is selected from a set of candidate adaptations based on a determination of a fitness of the component so adapted, the fitness being determined by the verification test, wherein the iteration of the genetic algorithm ceases in response to a stopping condition such that, on cessation, the latest generation of the software component constitutes the software service.

Claims (11)

1. A computer implemented method of generating a software service for providing required software functionality comprising:

accessing a software component having functionality including and exceeding the required software functionality;

defining a verification test for verifying that the software component includes the required software functionality; and

applying a genetic algorithm to the software component to iteratively adapt the software component over a plurality of generations, wherein each generation of the software component is adapted by removal of one or more portions of the software component of a preceding generation, wherein the adaptation for a generation is selected from a set of candidate adaptations based on a determination of a fitness of the software component so adapted, the fitness being determined by the verification test,

wherein the iterative adaptation of the genetic algorithm ceases in response to a stopping condition such that, on cessation, a latest generation of the software component constitutes the software service.

2. The method of claim 1 , wherein the stopping condition includes one or more of: a predetermined number of iterations; a predetermined threshold reduction of a size of the software component over all generations; a predetermined threshold size of the latest generation of the software component; or a predetermined threshold measure of fitness determined by the verification test.

3. The method of claim 1 , wherein the software service is constituted as a software container including the latest generation of the software component.

4. The method of claim 1 , wherein at least a subset of the set of candidate adaptations is generated randomly.

5. The method of claim 1 , wherein the one or more portions of the software component removed by the genetic algorithm include one or more of: a line of code; a function; a subroutine; a class; a procedure; a file; a method; a library; or a code construct.

6. A computer system comprising a processor and memory storing computer program code for performing the method of claim 1 .

7. A non-transitory computer-readable storage medium comprising computer program code to, when loaded into a computer system and executed thereon, cause the computer system to perform the method as claimed in claim 1 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2025
From: ZIOLKOWSKI, ADAM; MCCORMICK, ALISTAIR; FERREYRA OLIVARES, EMMANUEL; NOPPEN, JOHANNES
To: BRITISH TELECOMMUNICATIONS PUBLIC LIMITED COMPANY
Reel/Frame 070296/0126 →
Priority Claims (1)
GB 2103916 · Mar 22, 2021 · national
Continuity (1)
Related Publication 20240176615A1 · May 30, 2024
References Cited (36)
US 8607190B2 · Coldicott et al. · 2013 [cited by applicant]
US 8676853B2 · Kasravi et al. · 2014 [cited by applicant]
US 10628152B2 · Chandramouli et al. · 2020 [cited by applicant]
US 10756982B2 · Bai · 2020 [cited by applicant]
US 10782936B1 · Davis et al. · 2020 [cited by applicant]
US 10810502B2 · Pillai et al. · 2020 [cited by applicant]
US 20140358831A1 · Adams et al. · 2014 [cited by applicant]
US 20170220323A1 · Dsouza · 2017 [cited by applicant]
US 20190122119A1 · Husain · 2019 [cited by applicant]
US 20190180187A1 · Rawal et al. · 2019 [cited by applicant]
US 20200065712A1 · Wang et al. · 2020 [cited by applicant]
US 20200293295A1 · Gao et al. · 2020 [cited by applicant]
US 20210029001A1 · Sen et al. · 2021 [cited by applicant]
CN 106775915A · 2017 [cited by examiner]
CN 108279926A · 2018 [cited by applicant]
CN 109933309A · 2019 [cited by applicant]
CN 111857691A · 2020 [cited by applicant]
JP 2007304685A · 2007 [cited by examiner]
KR 20190048895A · 2019 [cited by applicant]
Yuen et al., “A Genetic Algorithm That Adaptively Mutates and Never Revisits” (Year: 2009). [cited by examiner]
Mathew, “Genetic Algorithm” (Year: 2012). [cited by examiner]
“Data and AI Reference Architecture”, available from https://ibm-cloud-architecture.github.io/refarch-data-ai-analytics/, Mar. 18, 2021, 6 pages. [cited by applicant]
“International Search Report and Written Opinion received for PCT Patent Application No. PCT/EP2022/056219, mailed on Jun. 24, 2022”. [cited by applicant]
“International Search Report and Written Opinion received for PCT Patent Application No. PCT/EP2022/056230, mailed on Jun. 24, 2022”. [cited by applicant]
“Office Action received for Great Britan Patent Application No. 2103916.9 mailed on Mar. 14, 2023”. [cited by applicant]
“Office Action received for Great Britian Patent Application No. 2103917.7, mailed on Sep. 22, 2021”. [cited by applicant]
“Search Report received for Great Britain Patent Application No. 2103916.9, mailed on Aug. 12, 2021”. [cited by applicant]
Bakirtzis , et al., “Chapter 19—Genetic Algorithms” , Advanced Solutions in Power Systems: HVDC, FACTS, and Artificial Intelligence: HVDC, Facts, and Artificial Intelligence , 2016 , pp. 845-902. [cited by applicant]
Brandon , et al., “Graph-based Root Cause Analysis for Service-Oriented and Microservice Architectures” , Journal of Systems and Software, vol. 159, 110432 , 2020 , 27 pages. [cited by applicant]
Carvalho , et al. , “On the Performance and Adoption of Search-Based Microservice Identification with to Microservices” , IEEE International Conference on Software Maintenance and Evolution (ICSME), DOI 10.1109/ICSME469… [cited by applicant]
Cooper , et al., “Optimizing for Reduced Code Space Using Genetic Algorithms” , ACM SIGPLAN Notices, vol. 34, No. 7, DOI: 10.1145/314403.314414 , May 1999 , pp. 1-9. [cited by applicant]
He , et al., “AutoML: A Survey of the State-of-the-Art”, Knowledge-Based Systems 212 (2021) 106622, available from https://doi.org/10.1016/j.knosys.2020.106622, Jun. 21, 2021 , 33 pages. [cited by applicant]
Schatsky , et al., “AI is Helping to Make Better Software” , Deloitte, available from https://www2.deloitte.com/us/en/insights/focus/signals-for-strategists/ai-assisted-software-development.html , Jan. 22, 2020, 6 pages. [cited by applicant]
Subedha , et al., “Optimization of Component Extraction for Reusable Software Components in Context Level—A Systematic Approach” , ICMOC, Procedia Engineering, vol. 38, https://doi.org/10.1016/j.proeng.2012.06.070 , 201… [cited by applicant]
Wikipedia , “Autonomic computing”, available from https://en.wikipedia.org/wiki/Autonomic_computing, Mar. 18, 2021, 7 pages. [cited by applicant]
Yasin , et al., “Code Smell Detection and Refactoring Using Automated Genetic Algorithm Approach” , International Research Journal of Information Technology, vol. 1, No. 1 , 2019 , pp. 1-7. [cited by applicant]