Patents by Inventor Suhail Dutta
Suhail Dutta 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: 9424001Abstract: A creation, editing, and display tool for complex diagrams may enable portions of the diagram to be updated without having to update the entire diagram. The tool may use a set of rules that define the positioning and layout of various elements and relationships between elements in the diagram. The update mechanism may enable the rules to be applied to a subset of the diagram and may not update some portions of the diagram, such as those elements outside the viewing area. In some embodiments, a background or low priority process may apply the rules to those portions not updated. The tool may be used for various diagrams, including sequence diagrams and other complex, highly restrained diagram types.Type: GrantFiled: September 11, 2012Date of Patent: August 23, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Suhail Dutta, Pedro Silva, John J. Jordan
-
Patent number: 9110763Abstract: A diagram having initial visual design elements can be displayed on a computer display. For example, the diagram may be a computer software architectural diagram. Changes can be made to the diagram to produce modified visual design elements. The changes can be tracked as they are made, to produce change tracking information. The change tracking information can be processed to automatically highlight at least a portion of the modified visual design elements in a display of the diagram. Processing the change tracking information can include filtering the change tracking information to provide different highlighting treatment to some of the modified visual design elements corresponding to information that is filtered out.Type: GrantFiled: December 29, 2009Date of Patent: August 18, 2015Assignee: Microsoft Technology Licensing LLCInventors: Suhail Dutta, Andrew J. Byrne
-
Patent number: 8954925Abstract: Disclosed herein is user augmented reverse engineering, where, in one embodiment, during the generation of a graphical representation of a codebase, database, binary and the like, users may be provided with an option to ‘focus’. For example, during the graphical generation of a large codebase, a user may select one or things to limit the extent of the graphical representation generation. In another embodiment, a graphical generation may encounter one or more pre-defined boundary conditions. Upon encountering a boundary condition, the generation of the graphical representation may determine that it is unable to complete the graphical generation within a pre-defined set of requirements without additional instructions. Thus, the graphical generation may complete and then prompt a user for solutions to any boundary conditions it has encountered, or the generation may pause at each boundary condition it encounters and prompt a user for a solution to the boundary condition.Type: GrantFiled: June 18, 2010Date of Patent: February 10, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Suhail Dutta, Tracey Trewin, Andrew Byrne
-
Patent number: 8726226Abstract: A tool supports management of engineering project changes using a current design diagram with links to implementation components, a proposed design diagram, and a work list of tasks for transforming the current design into the proposed design. Tasks recite intended changes such as add, remove, or refactor, with reference to implementation components to be changed, and tracking information. Work list tasks may be automatically generated based on design model differences correlated with project code, automatically generated based on tracked user design actions correlated with project code, and/or manually generated by users. Work lists may be exported. Users can mark a relationship for removal and view a corresponding updated work list. Users can trace impact of a work list on project context such as testing coverage, database structures, and user scenarios.Type: GrantFiled: June 5, 2009Date of Patent: May 13, 2014Assignee: Microsoft CorporationInventors: Mark Groves, Jens Jacobsen, Suhail Dutta, Tracey Glass Trewin
-
Patent number: 8677316Abstract: Architectural design intent for software is represented in some type of concrete form. A set of computable rules are inferred from the representation of the architectural design intent. The rules are applied to the codebase at various points in the development process including but not limited to when source code is checked into a project or when a build is run, or when a test run is performed. If the codebase being developed is not consistent with the architectural intent of the designer as captured, feedback concerning non-compliance is provided.Type: GrantFiled: May 12, 2010Date of Patent: March 18, 2014Assignee: Microsoft CorporationInventors: Suhail Dutta, David N Trowbridge, Bernard Tschirren, Arun M. Abraham
-
Patent number: 8578326Abstract: Local areas of a visualized modeling language diagram are viewable at different levels of detail without losing information such as model elements and their connectivity. Multiple elements are associated with a group element, which has a visual portion derived from the appearance of a group member element. Connectors between group member elements and non-member elements are suppressed in favor of replacement connectors between the group element and the non-member element(s). The integrity of incoming and outgoing connections to the group is maintained relative to the rest of the model. Ungrouping elements restores the elements to their original state. Grouping can be applied locally to one or more parts of the visual model.Type: GrantFiled: May 28, 2009Date of Patent: November 5, 2013Assignee: Microsoft CorporationInventors: Patrick S. Tseng, Durham Goode, John Joseph Jordan, Bernie Tschirren, Arun Abraham, Abhishek Shah, Andrew Jude Byrne, Suhail Dutta
-
Patent number: 8522217Abstract: Enhanced software architecture diagrams are derived by correlating runtime and static information, thereby allowing the diagrams to span runtime determination boundaries. Runtime determination boundaries are defined by decisions made at runtime, e.g., client-server boundaries, machine-machine boundaries, database-querying program boundaries, web service provider-consumer boundaries, factory caller-instance boundaries, interface call-implementing class boundaries, and reflection boundaries. Correlation may involve identifying instances of types, tracing an identifier injected into a communication channel, using a causality hook, and/or comparing messages leaving a caller with messages entering a callee, for example.Type: GrantFiled: April 20, 2010Date of Patent: August 27, 2013Assignee: Microsoft CorporationInventors: Suhail Dutta, Brian Crawford
-
Patent number: 8412744Abstract: The formulation of an architectural diagram of a software program having multiple components. A static model identifying at least some of the components and a relationship between the components is accessed by perhaps performing a static code analysis of the code of the software program. A dynamic analysis is also performed by executing the software program, and observing the execution to derive dynamic behaviors of the software program. These dynamic behaviors may perhaps be information that is not readily available based on a static code analysis of the computer program alone, such as parameter values exchanged, paths of execution, and additional components invoked. The architectural diagram is then formulated using the static model and the dynamic behaviors to generate a more complete representation of the computer program.Type: GrantFiled: June 23, 2010Date of Patent: April 2, 2013Assignee: Microsoft CorporationInventors: Suhail Dutta, Brian Robert Crawford, Elliott Ross Conant
-
Patent number: 8402013Abstract: Providing a website map to a user. A method includes gathering information about web pages in a website, including information related to web page relationships, controls, and executable code underlying one or more web pages in the website. A relationship map is created. The relationship map includes representations of relationships between the web pages, the controls and the executable code underlying one or more web pages in the website. The method further includes graphically displaying at least a portion of the relationship map in a graphical user interface at the computing system.Type: GrantFiled: June 25, 2010Date of Patent: March 19, 2013Assignee: Microsoft CorporationInventors: Suhail Dutta, Jing Fan, Arun Mathew Abraham, Allen Wayne Denver
-
Patent number: 8397210Abstract: The logical architecture of an existing or target application or software system is modeled in the form of one or more architecture diagrams. The existing and target diagrams may be compared. A diagram may be modified by associating physical artifacts from an architecture discovery system or by selecting artifacts identified via a query statement. Rules are associated with the diagrams and validation performed based on the rules and the physical artifacts associated with the diagrams. A report may be produced facilitating further modifications to evolve the architecture represented by the diagrams to the target architecture.Type: GrantFiled: June 3, 2008Date of Patent: March 12, 2013Assignee: Microsoft CorporationInventors: Suhail Dutta, David N. Trowbridge
-
Publication number: 20130007652Abstract: A creation, editing, and display tool for complex diagrams may enable portions of the diagram to be updated without having to update the entire diagram. The tool may use a set of rules that define the positioning and layout of various elements and relationships between elements in the diagram. The update mechanism may enable the rules to be applied to a subset of the diagram and may not update some portions of the diagram, such as those elements outside the viewing area. In some embodiments, a background or low priority process may apply the rules to those portions not updated. The tool may be used for various diagrams, including sequence diagrams and other complex, highly restrained diagram types.Type: ApplicationFiled: September 11, 2012Publication date: January 3, 2013Applicant: MICROSOFT CORPORATIONInventors: Suhail Dutta, Pedro Silva, John J. Jordan
-
Patent number: 8291331Abstract: A creation, editing, and display tool for complex diagrams may enable portions of the diagram to be updated without having to update the entire diagram. The tool may use a set of rules that define the positioning and layout of various elements and relationships between elements in the diagram. The update mechanism may enable the rules to be applied to a subset of the diagram and may not update some portions of the diagram, such as those elements outside the viewing area. In some embodiments, a background or low priority process may apply the rules to those portions not updated. The tool may be used for various diagrams, including sequence diagrams and other complex, highly restrained diagram types.Type: GrantFiled: June 27, 2008Date of Patent: October 16, 2012Assignee: Microsoft CorporationInventors: Suhail Dutta, Pedro Silva, John J Jordan
-
Patent number: 8176465Abstract: Various technologies and techniques are disclosed for providing pluggable model elements. A modeling application is provided that is operable to allow custom model elements to be loaded. Custom behavior can be associated with the custom model element types in a modular fashion that allows custom behaviors to be plugged in. The modeling application interacts with an artifact mapper to automatically synchronize a particular model in the modeling application with an underlying one or more artifacts represented by the particular model. Events are intercepted between model elements and underlying artifacts that the model elements represent. As events are intercepted, one or more appropriate provider plug-ins are called to perform one or more associated actions. A user who toggles between a modeling application and an artifact source application is provided with a seamless viewing experience because the model elements and underlying artifacts are kept up to date with each other.Type: GrantFiled: February 27, 2007Date of Patent: May 8, 2012Assignee: Microsoft CorporationInventors: Suhail Dutta, Bill Gibson, Patrick Cooney
-
Publication number: 20110321001Abstract: The formulation of an architectural diagram of a software program having multiple components. A static model identifying at least some of the components and a relationship between the components is accessed by perhaps performing a static code analysis of the code of the software program. A dynamic analysis is also performed by executing the software program, and observing the execution to derive dynamic behaviors of the software program. These dynamic behaviors may perhaps be information that is not readily available based on a static code analysis of the computer program alone, such as parameter values exchanged, paths of execution, and additional components invoked. The architectural diagram is then formulated using the static model and the dynamic behaviors to generate a more complete representation of the computer program.Type: ApplicationFiled: June 23, 2010Publication date: December 29, 2011Applicant: MICROSOFT CORPORATIONInventors: Suhail Dutta, Brian Robert Crawford, Elliott Ross Conant
-
Publication number: 20110320426Abstract: Providing a website map to a user. A method includes gathering information about web pages in a website, including information related to web page relationships, controls, and executable code underlying one or more web pages in the website. A relationship map is created. The relationship map includes representations of relationships between the web pages, the controls and the executable code underlying one or more web pages in the website. The method further includes graphically displaying at least a portion of the relationship map in a graphical user interface at the computing system.Type: ApplicationFiled: June 25, 2010Publication date: December 29, 2011Applicant: Microsoft CorporationInventors: Suhail Dutta, Jing Fan, Arun Mathew Abraham, Allen Wayne Denver
-
Publication number: 20110314445Abstract: Disclosed herein is user augmented reverse engineering, where, in one embodiment, during the generation of a graphical representation of a codebase, database, binary and the like, users may be provided with an option to ‘focus’. For example, during the graphical generation of a large codebase, a user may select one or things to limit the extent of the graphical representation generation. In another embodiment, a graphical generation may encounter one or more pre-defined boundary conditions. Upon encountering a boundary condition, the generation of the graphical representation may determine that it is unable to complete the graphical generation within a pre-defined set of requirements without additional instructions. Thus, the graphical generation may complete and then prompt a user for solutions to any boundary conditions it has encountered, or the generation may pause at each boundary condition it encounters and prompt a user for a solution to the boundary condition.Type: ApplicationFiled: June 18, 2010Publication date: December 22, 2011Applicant: Microsoft CorporationInventors: Suhail Dutta, Tracey Trewin, Andrew Byrne
-
Publication number: 20110283253Abstract: Architectural design intent for software is represented in some type of concrete form. A set of computable rules are inferred from the representation of the architectural design intent. The rules are applied to the codebase at various points in the development process including but not limited to when source code is checked into a project or when a build is run, or when a test run is performed. If the codebase being developed is not consistent with the architectural intent of the designer as captured, feedback concerning non-compliance is provided.Type: ApplicationFiled: May 12, 2010Publication date: November 17, 2011Applicant: MICROSOFT CORPORATIONInventors: Suhail Dutta, David N. Trowbridge, Bernard Tschirren, Arun M. Abraham
-
Publication number: 20110258611Abstract: Enhanced software architecture diagrams are derived by correlating runtime and static information, thereby allowing the diagrams to span runtime determination boundaries. Runtime determination boundaries are defined by decisions made at runtime, e.g., client-server boundaries, machine-machine boundaries, database-querying program boundaries, web service provider-consumer boundaries, factory caller-instance boundaries, interface call-implementing class boundaries, and reflection boundaries. Correlation may involve identifying instances of types, tracing an identifier injected into a communication channel, using a causality hook, and/or comparing messages leaving a caller with messages entering a callee, for example.Type: ApplicationFiled: April 20, 2010Publication date: October 20, 2011Applicant: Microsoft CorporationInventors: Suhail Dutta, Brian Crawford
-
Publication number: 20110161846Abstract: A diagram having initial visual design elements can be displayed on a computer display. For example, the diagram may be a computer software architectural diagram. Changes can be made to the diagram to produce modified visual design elements. The changes can be tracked as they are made, to produce change tracking information. The change tracking information can be processed to automatically highlight at least a portion of the modified visual design elements in a display of the diagram. Processing the change tracking information can include filtering the change tracking information to provide different highlighting treatment to some of the modified visual design elements corresponding to information that is filtered out.Type: ApplicationFiled: December 29, 2009Publication date: June 30, 2011Applicant: MICROSOFT CORPORATIONInventors: Suhail Dutta, Andrew J. Byrne
-
Publication number: 20100313179Abstract: A tool supports management of engineering project changes using a current design diagram with links to implementation components, a proposed design diagram, and a work list of tasks for transforming the current design into the proposed design. Tasks recite intended changes such as add, remove, or refactor, with reference to implementation components to be changed, and tracking information. Work list tasks may be automatically generated based on design model differences correlated with project code, automatically generated based on tracked user design actions correlated with project code, and/or manually generated by users. Work lists may be exported. Users can mark a relationship for removal and view a corresponding updated work list. Users can trace impact of a work list on project context such as testing coverage, database structures, and user scenarios.Type: ApplicationFiled: June 5, 2009Publication date: December 9, 2010Applicant: Microsoft CorporationInventors: Mark Groves, Jens Jacobsen, Suhail Dutta, Tracey Glass Trewin