{"id":144847,"date":"2009-05-15T00:13:31","date_gmt":"2009-05-15T07:13:31","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/group\/software-analytics\/"},"modified":"2022-01-07T13:27:06","modified_gmt":"2022-01-07T21:27:06","slug":"software-analytics","status":"publish","type":"msr-group","link":"https:\/\/www.microsoft.com\/en-us\/research\/group\/software-analytics\/","title":{"rendered":"Software Analytics"},"content":{"rendered":"<section class=\"mb-3 moray-highlight\">\n\t<div class=\"card-img-overlay mx-lg-0\">\n\t\t<div class=\"card-background  has-background-catalina-blue card-background--full-bleed\">\n\t\t\t\t\t<\/div>\n\t\t<!-- Foreground -->\n\t\t<div class=\"card-foreground d-flex mt-md-n5 my-lg-5 px-g px-lg-0\">\n\t\t\t<!-- Container -->\n\t\t\t<div class=\"container d-flex mt-md-n5 my-lg-5 align-self-center\">\n\t\t\t\t<!-- Card wrapper -->\n\t\t\t\t<div class=\"w-100 w-lg-col-5\">\n\t\t\t\t\t<!-- Card -->\n\t\t\t\t\t<div class=\"card material-md-card py-5 px-md-5\">\n\t\t\t\t\t\t<div class=\"card-body \">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/lab\/microsoft-research-asia\/\" class=\"icon-link icon-link--reverse mb-2\" data-bi-cN=\"Return to Microsoft Research Lab - Asia\">\n\t\t\t\t\t\t\t\t\t<span class=\"c-glyph glyph-chevron-left\" aria-hidden=\"true\"><\/span>\n\t\t\t\t\t\t\t\t\tReturn to Microsoft Research Lab &#8211; Asia\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\n<h1 id=\"software-analytics\" class=\"h2\">Software Analytics<\/h1>\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/section>\n\n\n\n\n\n<p>A huge wealth of various data exists in software lifecycle, including source code, feature specifications, bug reports, test cases, execution traces\/logs, and real-world user feedback,&nbsp;etc. Data plays an essential role in modern software development,&nbsp;because hidden in the data is information about the quality of software and services as well as the dynamics of software development. With various analytical and computing technologies,&nbsp;such as pattern recognition, machine learning, data mining,&nbsp;information visualization and large-scale data computing & processing, software analytics is to enable software practitioners to perform effective and efficient data exploration and analysis in order to obtain insightful and actionable information for data-driven tasks in engineering software and services.<\/p>\n\n\n\n<p>The mission of&nbsp;the Software Analytics Group at MSR Asia is to advance the state of the art&nbsp;in the software analytics area; and&nbsp;utilize our technologies to help improve the quality of software and services as well as the development productivity for both Microsoft and&nbsp;software industry.<\/p>\n\n\n\n<div class=\"wp-block-image is-style-default\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"401\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2009\/11\/sa2-768x401-1.png\" alt=\"graphic showing the correlation between research topics and technology pillars\" class=\"wp-image-248936\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2009\/11\/sa2-768x401-1.png 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2009\/11\/sa2-768x401-1-300x157.png 300w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure><\/div>\n\n\n\n<h3 id=\"software-systems\">Software systems<\/h3>\n\n\n\n<p class=\"has-text-align-left\">Depending on scale and complexity, the spectrum of software systems can span from operating systems for devices to large networked systems that consist of thousands of servers. System quality such as reliability, performance and security, is the key to success of modern software systems. As the system scale and complexity greatly increase, larger amount of data, e.g., run-time traces and logs, is generated; and data has become a critical media to monitor, analyze, understand and improve system quality.<\/p>\n\n\n\n<p class=\"has-text-align-left\">Our group has on-going efforts in this challenging yet promising area. For example, we are mining huge operating system traces to help domain experts quickly identify performance issues. We are researching analysis techniques and developing easy-to-use tools to assist performance diagnosis for large scale networked systems.<\/p>\n\n\n\n<h3 id=\"software-users\">Software users&nbsp;<\/h3>\n\n\n\n<p class=\"has-text-align-left\">Users are (almost) always right because ultimately they pay for the software and services in various ways. Therefore, it is important to continuously create the best user experience. Usage data collected from the real world reveals how users interact with software and services. The data is incredibly valuable for software practitioners to better understand their customers and gain insights on how to improve user experience accordingly.<\/p>\n\n\n\n<p class=\"has-text-align-left\">Our group works on various usage data exploration and analysis projects. The goal is to provide advanced techniques to enable the acquisition of actionable information and driving informed decision for creating the best user experience.<\/p>\n\n\n\n<h3 id=\"development-process\">Development process<\/h3>\n\n\n\n<p class=\"has-text-align-left\">Software development has evolved from its traditional form to exhibit different characteristics. The process is more agile and engineers are more collaborative. Analytics on software development data provides a powerful mechanism that we can leverage in order to achieve higher development productivity.<\/p>\n\n\n\n<p class=\"has-text-align-left\">Our group is looking into interesting topics using the data-driven approach such as &#8220;how to find bad smells in source code&#8221;, &#8220;how to support efficient code review and test selection&#8221;, and\u00a0&#8220;how to measure and predict the health of development process&#8221;.<\/p>\n\n\n\n<h3 id=\"hiring\">Hiring<\/h3>\n\n\n\n<p class=\"has-text-align-left\">Here at Microsoft, there are rich data and real problems providing us great opportunities to do excellent research in software analytics. We welcome new members to our group as well as collaborators from both internally and externally.<\/p>\n\n\n\n<h3 id=\"presentations\">Presentations<\/h3>\n\n\n\t<div data-wp-context='{\"items\":[]}' data-wp-interactive=\"msr\/accordion\">\n\t\t\t\t\t<div class=\"clearfix\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"btn-group align-items-center mb-g float-sm-right\"\n\t\t\t\t\tdata-bi-aN=\"accordion-collapse-controls\"\n\t\t\t\t>\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"btn btn-link m-0\"\n\t\t\t\t\t\tdata-bi-cN=\"Expand all\"\n\t\t\t\t\t\tdata-wp-bind--aria-controls=\"state.ariaControls\"\n\t\t\t\t\t\tdata-wp-bind--aria-expanded=\"state.ariaExpanded\"\n\t\t\t\t\t\tdata-wp-bind--disabled=\"state.isAllExpanded\"\n\t\t\t\t\t\tdata-wp-class--inactive=\"state.isAllExpanded\"\n\t\t\t\t\t\tdata-wp-on--click=\"actions.onExpandAll\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t>\n\t\t\t\t\t\tExpand all\t\t\t\t\t<\/button>\n\t\t\t\t\t<span aria-hidden=\"true\"> | <\/span>\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"btn btn-link m-0\"\n\t\t\t\t\t\tdata-bi-cN=\"Collapse all\"\n\t\t\t\t\t\tdata-wp-bind--aria-controls=\"state.ariaControls\"\n\t\t\t\t\t\tdata-wp-bind--aria-expanded=\"state.ariaExpanded\"\n\t\t\t\t\t\tdata-wp-bind--disabled=\"state.isAllCollapsed\"\n\t\t\t\t\t\tdata-wp-class--inactive=\"state.isAllCollapsed\"\n\t\t\t\t\t\tdata-wp-on--click=\"actions.onCollapseAll\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t>\n\t\t\t\t\t\tCollapse all\t\t\t\t\t<\/button>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t<ul class=\"msr-accordion\">\n\t\t\t\t\t\t\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-2\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-2\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-1\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tSelected talks and presentations\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-1\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-2\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-US\/groups\/sa\/promise2015.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Software Analytics in Practice &#8211; Approaches and Experiences,<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> Keynote at the 11th International Conference on Predictive Models and Data Analytics in Software Engineering (PROMISE 2015), Beijing, China, October 21, 2015.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang and Tao Xie, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-US\/groups\/sa\/fse2014tutorial.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Software Analytics &#8211; Achievements and Challenges<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Tutorial at&nbsp;<em>the <\/em><em>22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE 2014)<\/em>, Hong Kong, China, November 2014.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/sa\/keynote_nasac_2013.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Software Analytics in Practice &#8211; Approaches and Experiences<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Keynote at <em>the 12th National Software Application Conference<\/em> (<a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/cs.tju.edu.cn\/nasac2013\/webs\/index.htm\" target=\"_blank\" rel=\"noopener noreferrer\">NASAC 2013<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>), Tianjin, China, November 9, 2013.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang and Tao Xie, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" title=\"\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/sa\/icse13seip-tut-techtransfer.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Pathways to Technology Transfer and Adoption: Achievements and Challenges<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, mini-tutorial at <em>the 35th International Conference on Software Engineering (<\/em><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/2013.icse-conferences.org\/\"><em>ICSE 2013<\/em><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><em>)<\/em>, <em>Software Engineering in Practice (SEIP)<\/em>, San Francisco, USA, May 23, 2013.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/sa\/ishcs2012web.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Data-Driven Performance Management in Practice for Online Services<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>,&nbsp;invited talk&nbsp;at <em>the second International Symposium on High Confidence Software<\/em> <em>(<\/em><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/sei.pku.edu.cn\/conference\/ishcs\/\" target=\"_blank\" rel=\"noopener noreferrer\"><em>ISHCS 2012<\/em><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><em>)<\/em>, Qingdao, Shandong, China, October 29, 2012.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/sa\/softwareanalyticsinpractice_approachesandexperiences_msr2012.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Software Analytics in Practice \u2013 Approaches and Experiences<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Keynote at <i>the 9th Working Conference on Mining Software Repositories (<\/i><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/2012.msrconf.org\/\"><i>MSR2012<\/i><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><i>)<\/i>, Zurich, Switzerland, June 2, 2012.<\/p><p dir=\"ltr\" style=\"text-align: left\" align=\"justify\">Dongmei Zhang and Tao Xie, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/research.microsoft.com\/en-us\/groups\/sa\/softwareanalyticsinpractice_minitutorial_icse2012.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Software Analytics in Practice<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, mini-tutorial at <i>the 34th International Conference on&nbsp;<\/i><i>Software Engineering (<\/i><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.ifi.uzh.ch\/icse2012\/\"><i>ICSE 2012<\/i><span class=\"sr-only\"> (opens in new tab)<\/span><\/a><i>)<\/i>, Zurich, Switzerland, June 6, 2012.<\/p><p style=\"text-align: left\" align=\"justify\">\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t<\/div>\n\t\n\n\n","protected":false},"excerpt":{"rendered":"<p>Our goal is to advance the state of the art\u00a0in the software analytics area; and\u00a0utilize our technologies to help improve the quality of software and services as well as the development productivity for both Microsoft and\u00a0software industry.<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr_group_start":"","footnotes":""},"research-area":[13560],"msr-group-type":[243694],"msr-locale":[268875],"msr-impact-theme":[],"class_list":["post-144847","msr-group","type-msr-group","status-publish","hentry","msr-research-area-programming-languages-software-engineering","msr-group-type-group","msr-locale-en_us"],"msr_group_start":"","msr_detailed_description":"","msr_further_details":"","msr_hero_images":[],"msr_research_lab":[199560],"related-researchers":[{"type":"user_nicename","display_name":"Bin Zhu","user_id":31240,"people_section":"Group 1","alias":"binzhu"},{"type":"user_nicename","display_name":"Dongmei Zhang","user_id":31665,"people_section":"Group 1","alias":"dongmeiz"},{"type":"user_nicename","display_name":"Haidong Zhang","user_id":31953,"people_section":"Group 1","alias":"haizhang"},{"type":"user_nicename","display_name":"Justin Ding","user_id":32435,"people_section":"Group 1","alias":"juding"},{"type":"user_nicename","display_name":"Qingwei Lin \u6797\u5e86\u7ef4","user_id":33318,"people_section":"Group 1","alias":"qlin"},{"type":"user_nicename","display_name":"Ray Huang","user_id":33358,"people_section":"Group 1","alias":"rayhuang"},{"type":"user_nicename","display_name":"Shi Han","user_id":33618,"people_section":"Group 1","alias":"shihan"},{"type":"user_nicename","display_name":"Song Ge","user_id":33692,"people_section":"Group 1","alias":"songge"},{"type":"user_nicename","display_name":"Zhitao Hou","user_id":35124,"people_section":"Group 1","alias":"zhith"},{"type":"user_nicename","display_name":"Xiao Lv","user_id":37122,"people_section":"Group 1","alias":"xilv"},{"type":"user_nicename","display_name":"Haoyu Dong","user_id":37128,"people_section":"Group 1","alias":"hadong"},{"type":"user_nicename","display_name":"Weiwei Cui","user_id":34808,"people_section":"Group 1","alias":"weiweicu"},{"type":"user_nicename","display_name":"Yun Wang","user_id":37827,"people_section":"Group 1","alias":"wangyun"},{"type":"user_nicename","display_name":"Yu Kang","user_id":39381,"people_section":"Group 1","alias":"kay"},{"type":"user_nicename","display_name":"Zeqi Lin","user_id":39751,"people_section":"Group 1","alias":"zelin"}],"related-publications":[603399,260406,263070,278832,361232,361235,361238,361244,361253,361298,510557,576597,577002,577983,588988,260400,661125,661770,682191,685254,701086,741232,746566,763465,767533,775402,864405,910077,925302,260268,163779,165710,166375,215151,249869,249875,249881,249887,249893,249899,249905,249911,260163,260235,163778,260274,260280,260286,260292,260310,260319,260334,260352,260358,260370,260382,260388,260394],"related-downloads":[],"related-videos":[],"related-projects":[],"related-events":[],"related-opportunities":[],"related-posts":[287567,418838,738559,896259],"tab-content":[],"msr_impact_theme":[],"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-group\/144847","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-group"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/msr-group"}],"version-history":[{"count":12,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-group\/144847\/revisions"}],"predecessor-version":[{"id":810082,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-group\/144847\/revisions\/810082"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=144847"}],"wp:term":[{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=144847"},{"taxonomy":"msr-group-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-group-type?post=144847"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=144847"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=144847"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}