Patents by Inventor STEPHEN SICILIANO

STEPHEN SICILIANO has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11314485
    Abstract: Methods, systems, apparatuses, and computer program products are described herein that generate and assist in managing templates (pre-generated user-customizable automated workflows) that can be used to easily and efficiently develop automated workflows in an automated workflow development system. A plurality of workflows steps in a library of workflow steps is determined. One or more workflow templates are automatically generated. Each automatically generated workflow template includes a combination of at least two of the workflow steps in the library. The one or more workflow templates are stored in a library of templates. Furthermore, one or more workflow steps compatible with a workflow step may be determined. The determined one or more workflow steps may be displayed in association with the first workflow step for selection.
    Type: Grant
    Filed: January 27, 2017
    Date of Patent: April 26, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Prabir Shrestha, Kartik Rao Polepalli, Ashwin Sathya Raghunathan, Stephen Siciliano, Anjli Chaudhry, Charles Lamanna, Merwan Vishnu Hade, Sunay Vaishnav
  • Patent number: 11256743
    Abstract: Methods, systems, apparatuses, and computer program products are provided for intermixing expressions with other types of data in input controls. A system includes a processor and a memory that stores program code configured to be executed by the processor. The program code comprises a step configuration interface configured to receive, via a same input control, an expression as a first segment and a different type of data from an expression as a second segment. The program code further comprises a logic generator configured to generate a serialized representation that includes a serialized version of the first segment and a serialized version of the second segment.
    Type: Grant
    Filed: January 11, 2018
    Date of Patent: February 22, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Stephen Siciliano, Charles W. Lamanna, You Tang, Nitish Kumar Meena, Jeffrey S. Hollan, Balasubramanian Shyamsundar, Priti Sambandam
  • Patent number: 11210068
    Abstract: Methods, systems, apparatuses, and computer program products are described herein that generate and assist in managing templates (pre-generated user-customizable automated workflows) that can be used to easily and efficiently develop automated workflows in an automated workflow development system. An automated workflow template for publication that includes parameters is received. At least a portion of the parameters included in the automated workflow template are automatically anonymized to generate an anonymized automated workflow template. The anonymized automated workflow template is published.
    Type: Grant
    Filed: January 27, 2017
    Date of Patent: December 28, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Prabir Shrestha, Kartik Rao Polepalli, Ashwin Sathya Raghunathan, Stephen Siciliano, Anjli Chaudhry, Charles Lamanna, Merwan Vishnu Hade, Sunay Vaishnav
  • Patent number: 10956128
    Abstract: A workflow development system is described herein that embeds a workflow designer user interface of a workflow development application into a user interface of another software application, so that the workflow designer user interface can be used to generate workflows that reference and/or interact with the other software application. In some aspects, the workflow development application obtains information indicative of a context of a user within the other software application and recommends workflow templates or workflow steps for selection by a user based on the obtained information. The workflow development application may also pre-populate certain parameters of certain workflow steps based on the obtained information.
    Type: Grant
    Filed: May 21, 2019
    Date of Patent: March 23, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Anjli Chaudhry, Stephen Siciliano, Ashwin Sathya Raghunathan, Kartik Rao Polepalli, Merwan Vishnu Hade, Prabir K. Shrestha, Sunay Vaishnav, Charles Lamanna
  • Patent number: 10943191
    Abstract: Embodiments of facilitating creation of cloud computing applications are disclosed therein. In one embodiment, a method includes receiving user input of a plurality of workflow items as a sequence of graphical objects on a graphical user interface. The workflow items individually are related to one or more cloud computing services. The method also includes determining an execution sequence of the plurality of workflow items based on data dependencies individually between pairs of the workflow items, the determined execution sequence being different than the sequence of the graphical objects. The determined execution sequence includes executing pairs of the workflow items without data dependencies therebetween generally in parallel and sequentially executing other pairs of the workflow items with data dependencies therebetween in accordance with the data dependencies.
    Type: Grant
    Filed: August 15, 2019
    Date of Patent: March 9, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ilya Grebnov, Charles Lamanna, Stephen Siciliano, Balasubramanian Shyamsundar, Prabir Shrestha, Kevin Lam
  • Patent number: 10846204
    Abstract: Methods, systems, apparatuses, and computer program products are provided for remedying design time and runtime workflow errors. During design time of a workflow, an input parameter provided via the user interface may be validated to determine if the parameter is invalid. Based on the determination, a replacement parameter may be obtained and provided to the user interface control of the workflow user interface to replace the invalid workflow parameter during development of the workflow. During runtime of a workflow, a workflow engine may generate failure information where workflow logic fails to execute successfully. The failure information generated in response to a runtime failure is received by a remediation system and may be analyzed to identify a probable cause of the runtime failure. Remediation instructions to remediate the runtime failure may be determined and transmitted to a contact address associated with the workflow, enabling the workflow to be repaired.
    Type: Grant
    Filed: May 24, 2018
    Date of Patent: November 24, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sunay Vaishnav, Anjli Chaudhry, Prabir K. Shrestha, FNU Anubhav, Khetthai Laksanakorn, Stephen Siciliano
  • Patent number: 10606667
    Abstract: Computational tasks are mapped with computational locations in a distributed system such as a cloud computing environment. Mapping does not rely on workload estimates. Instead, tasks whose prerequisite tasks or other preconditions are determined to be mutually exclusive are co-located, while other tasks are mapped to different locations than one another. Locations are servers, processor cores, virtual machines, applications, or computational processes, for example. Mutual exclusivity may be determined by detecting that preconditions require different values of a shared variable in order to be satisfied, for example, or determining that preconditions correspond to different branches of a conditional programming statement. A satisfiability engine may also provide a satisfiability determination. Co-located tasks may also be batched, for improved execution performance.
    Type: Grant
    Filed: October 2, 2017
    Date of Patent: March 31, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ilya Grebnov, Stephen Siciliano, Charles Lamanna
  • Publication number: 20200050981
    Abstract: Embodiments of facilitating creation of cloud computing applications are disclosed therein. In one embodiment, a method includes receiving user input of a plurality of workflow items as a sequence of graphical objects on a graphical user interface. The workflow items individually are related to one or more cloud computing services. The method also includes determining an execution sequence of the plurality of workflow items based on data dependencies individually between pairs of the workflow items, the determined execution sequence being different than the sequence of the graphical objects. The determined execution sequence includes executing pairs of the workflow items without data dependencies therebetween generally in parallel and sequentially executing other pairs of the workflow items with data dependencies therebetween in accordance with the data dependencies.
    Type: Application
    Filed: August 15, 2019
    Publication date: February 13, 2020
    Inventors: Ilya Grebnov, Charles Lamanna, Stephen Siciliano, Balasubramanian Shyamsundar, Prabir Shrestha, Kevin Lam
  • Patent number: 10514824
    Abstract: Techniques are described herein that are capable of providing a pivot-based tile gallery with an adapted tile (e.g., in an application, such as a web application in a browser). A pivot is code that enables selection of a subset of tiles from multiple subsets of tiles. A pivot element is an interface element that represents a pivot. For instance, selection of the subset of tiles via the pivot may cause a user interface (UI) representation of the tile gallery to include UI representations of the tiles in the selected subset (e.g., and not UI representations of the tiles that are not included in the selected subset). An adapted tile is a tile that includes a wrapper and a second tile. The wrapper wraps the second tile. For instance, the wrapper may enable the adapted tile to use the second tile to implement functionality of an aspect of a resource.
    Type: Grant
    Filed: December 2, 2015
    Date of Patent: December 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jesse D. Francisco, Leon E. Welicki, Mo Wang, Joshua Prentice Keckley, Adam M. Abdelhamed, Brad M. Olenick, Stephen Siciliano, William J. Staples, Jonathan Harris, Karandeep Singh Anand, Christopher Scrosati, Angela Moulden
  • Publication number: 20190369970
    Abstract: Methods, systems, apparatuses, and computer program products are provided for developing workflows. An input control may be rendered in association with the rendered representation of a workflow step corresponding to an input parameter. A developer is enabled to interact with the input control to select a parameter value for the input parameter. A workflow is enabled to be developed that includes a push notification workflow step configured to issue a push notification when encountered in the work flow and to wait for a response before enabling the workflow to continue. A workflow saved in a user folder is enabled to be selected for insertion into further workflows. A subscription workflow step may be selected for inclusion in a second workflow that is configured to wait for output information from a subscribed-to workflow before enabling the second workflow to continue.
    Type: Application
    Filed: August 13, 2019
    Publication date: December 5, 2019
    Inventors: Kevin Lam, Balasubramanian Shyamsundar, Joon Y. Chung, Stephen Siciliano, Charles Lamanna, Ilya V. Grebnov, Priti Sambandam, Himanshu Agrawal, Prabir K. Shrestha
  • Publication number: 20190324893
    Abstract: Methods, systems, apparatuses, and computer program products are provided for remedying design time and runtime workflow errors. During design time of a workflow, an input parameter provided via the user interface may be validated to determine if the parameter is invalid. Based on the determination, a replacement parameter may be obtained and provided to the user interface control of the workflow user interface to replace the invalid workflow parameter during development of the workflow. During runtime of a workflow, a workflow engine may generate failure information where workflow logic fails to execute successfully. The failure information generated in response to a runtime failure is received by a remediation system and may be analyzed to identify a probable cause of the runtime failure. Remediation instructions to remediate the runtime failure may be determined and transmitted to a contact address associated with the workflow, enabling the workflow to be repaired.
    Type: Application
    Filed: May 24, 2018
    Publication date: October 24, 2019
    Inventors: Sunay Vaishnav, Anjli Chaudhry, Prabir K. Shrestha, FNU Anubhav, Khetthai Laksanakorn, Stephen Siciliano
  • Patent number: 10430735
    Abstract: Embodiments of facilitating creation of cloud computing applications are disclosed therein. In one embodiment, a method includes receiving user input of a plurality of workflow items as a sequence of graphical objects on a graphical user interface. The workflow items individually are related to one or more cloud computing services. The method also includes determining an execution sequence of the plurality of workflow items based on data dependencies individually between pairs of the workflow items, the determined execution sequence being different than the sequence of the graphical objects. The determined execution sequence includes executing pairs of the workflow items without data dependencies therebetween generally in parallel and sequentially executing other pairs of the workflow items with data dependencies therebetween in accordance with the data dependencies.
    Type: Grant
    Filed: November 24, 2017
    Date of Patent: October 1, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ilya Grebnov, Charles Lamanna, Stephen Siciliano, Balasubramanian Shyamsundar, Prabir Shrestha, Kevin Lam
  • Patent number: 10423393
    Abstract: Methods, systems, apparatuses, and computer program products are provided for developing workflows. An input control may be rendered in association with the rendered representation of a workflow step corresponding to an input parameter. A developer is enabled to interact with the input control to select a parameter value for the input parameter. A workflow is enabled to be developed that includes a push notification workflow step configured to issue a push notification when encountered in the work flow and to wait for a response before enabling the workflow to continue. A workflow saved in a user folder is enabled to be selected for insertion into further workflows. A subscription workflow step may be selected for inclusion in a second workflow that is configured to wait for output information from a subscribed-to workflow before enabling the second workflow to continue.
    Type: Grant
    Filed: September 23, 2016
    Date of Patent: September 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Kevin Lam, Balasubramanian Shyamsundar, Joon Y. Chung, Stephen Siciliano, Charles Lamanna, Ilya V. Grebnov, Priti Sambandam, Himanshu Agrawal, Prabir K. Shrestha
  • Publication number: 20190272154
    Abstract: A workflow development system is described herein that embeds a workflow designer user interface of a workflow development application into a user interface of another software application, so that the workflow designer user interface can be used to generate workflows that reference and/or interact with the other software application. In some aspects, the workflow development application obtains information indicative of a context of a user within the other software application and recommends workflow templates or workflow steps for selection by a user based on the obtained information. The workflow development application may also pre-populate certain parameters of certain workflow steps based on the obtained information.
    Type: Application
    Filed: May 21, 2019
    Publication date: September 5, 2019
    Inventors: Anjli Chaudhry, Stephen Siciliano, Ashwin Sathya Raghunathan, Kartik Rao Polepalli, Merwan Vishnu Hade, Prabir K. Shrestha, Sunay Vaishnav, Charles Lamanna
  • Patent number: 10353560
    Abstract: Methods, systems, apparatuses, and computer program products are provided for developing, debugging, and growing workflows. Embodiments enable the developer to test the workflow in place in a workflow designer that displays input/output parameter values for each workflow step during the test run. The developer is enabled to toggle the workflow step(s) between a development mode, where the developer may edit input parameter values, and a test mode, where the developer is displayed (but cannot edit) the input parameter values and is displayed the output parameter values at each workflow step. A record of workflow runs of a workflow is also maintained. The developer is also enabled to transition a workflow from being a business application to a robust software application having additional functionality. The workflow logic generated is transported between a visual workflow designer and a full-blown code editor.
    Type: Grant
    Filed: November 22, 2016
    Date of Patent: July 16, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Balasubramanian Shyamsundar, Daniel Joseph Kappes, Jesse D. Francisco, Joon Y. Chung, Stephen Siciliano, Merwan Vishnu Hade, Nitish Kumar Meena, Himanshu Agrawal
  • Patent number: 10331416
    Abstract: A workflow development system is described herein that embeds a workflow designer user interface of a workflow development application into a user interface of another software application, so that the workflow designer user interface can be used to generate workflows that reference and/or interact with the other software application. In some aspects, the workflow development application obtains information indicative of a context of a user within the other software application and recommends workflow templates or workflow steps for selection by a user based on the obtained information. The workflow development application may also pre-populate certain parameters of certain workflow steps based on the obtained information.
    Type: Grant
    Filed: January 17, 2017
    Date of Patent: June 25, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Anjli Chaudhry, Stephen Siciliano, Ashwin Sathya Raghunathan, Kartik Rao Polepalli, Merwan Vishnu Hade, Prabir K. Shrestha, Sunay Vaishnav, Charles Lamanna
  • Publication number: 20180285476
    Abstract: Methods, systems, apparatuses, and computer program products are provided for intermixing expressions with other types of data in input controls. A system includes a processor and a memory that stores program code configured to be executed by the processor. The program code comprises a step configuration interface configured to receive, via a same input control, an expression as a first segment and a different type of data from an expression as a second segment. The program code further comprises a logic generator configured to generate a serialized representation that includes a serialized version of the first segment and a serialized version of the second segment.
    Type: Application
    Filed: January 11, 2018
    Publication date: October 4, 2018
    Inventors: Stephen Siciliano, Charles W. Lamanna, You Tang, Nitish Kumar Meena, Jeffrey S. Hollan, Balasubramanian Shyamsundar, Priti Sambandam
  • Publication number: 20180101364
    Abstract: Embodiments of facilitating creation of cloud computing applications are disclosed therein. In one embodiment, a method includes receiving user input of a plurality of workflow items as a sequence of graphical objects on a graphical user interface. The workflow items individually are related to one or more cloud computing services. The method also includes determining an execution sequence of the plurality of workflow items based on data dependencies individually between pairs of the workflow items, the determined execution sequence being different than the sequence of the graphical objects. The determined execution sequence includes executing pairs of the workflow items without data dependencies therebetween generally in parallel and sequentially executing other pairs of the workflow items with data dependencies therebetween in accordance with the data dependencies.
    Type: Application
    Filed: November 24, 2017
    Publication date: April 12, 2018
    Inventors: Ilya Grebnov, Charles Lamanna, Stephen Siciliano, Balasubramanian Shyamsundar, Prabir Shrestha, Kevin Lam
  • Publication number: 20180024870
    Abstract: Computational tasks are mapped with computational locations in a distributed system such as a cloud computing environment. Mapping does not rely on workload estimates. Instead, tasks whose prerequisite tasks or other preconditions are determined to be mutually exclusive are co-located, while other tasks are mapped to different locations than one another. Locations are servers, processor cores, virtual machines, applications, or computational processes, for example. Mutual exclusivity may be determined by detecting that preconditions require different values of a shared variable in order to be satisfied, for example, or determining that preconditions correspond to different branches of a conditional programming statement. A satisfiability engine may also provide a satisfiability determination. Co-located tasks may also be batched, for improved execution performance.
    Type: Application
    Filed: October 2, 2017
    Publication date: January 25, 2018
    Inventors: Ilya GREBNOV, Stephen SICILIANO, Charles LAMANNA
  • Publication number: 20180004767
    Abstract: Embodiments are directed to connectors that use a common contract to expose data sources to applications. The common contract provides access to a plurality of different dataset types without requiring the applications to know the specific dataset type used by the data sources.
    Type: Application
    Filed: June 30, 2016
    Publication date: January 4, 2018
    Applicant: Microsoft Technology Licensing, LLC.
    Inventors: Charles Lamanna, Sameer Chabungbam, Vinay Singh, Henrik Frystyk Nielsen, Steven Paul Goss, Jeffrey Scott Hollan, Stephen Siciliano