Change search
Link to record
Permanent link

Direct link
BETA
Usman, Muhammad
Publications (10 of 15) Show all publications
Ali, N. b. & Usman, M. (2019). A critical appraisal tool for systematic literature reviews in software engineering. Information and Software Technology, 112, 48-50
Open this publication in new window or tab >>A critical appraisal tool for systematic literature reviews in software engineering
2019 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 112, p. 48-50Article, review/survey (Refereed) Published
Abstract [en]

Context: Methodological research on systematic literature reviews (SLRs)in Software Engineering (SE)has so far focused on developing and evaluating guidelines for conducting systematic reviews. However, the support for quality assessment of completed SLRs has not received the same level of attention. Objective: To raise awareness of the need for a critical appraisal tool (CAT)for assessing the quality of SLRs in SE. To initiate a community-based effort towards the development of such a tool. Method: We reviewed the literature on the quality assessment of SLRs to identify the frequently used CATs in SE and other fields. Results: We identified that the CATs currently used is SE were borrowed from medicine, but have not kept pace with substantial advancements in the field of medicine. Conclusion: In this paper, we have argued the need for a CAT for quality appraisal of SLRs in SE. We have also identified a tool that has the potential for application in SE. Furthermore, we have presented our approach for adapting this state-of-the-art CAT for assessing SLRs in SE. © 2019 The Authors

Place, publisher, year, edition, pages
Elsevier B.V., 2019
Keywords
AMSTAR, Critical appraisal tools, Quality assessment, Software engineering, Systematic literature reviews, Community-based, Methodological research, Quality appraisals, State of the art, Systematic literature review, Systematic Review, Quality management
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-17898 (URN)10.1016/j.infsof.2019.04.006 (DOI)000469899100004 ()2-s2.0-85064816057 (Scopus ID)
Note

open access

Available from: 2019-05-21 Created: 2019-05-21 Last updated: 2019-06-20Bibliographically approved
Usman, M. & Minhas, N. M. (2019). Use of personality tests in empirical software engineering studies: A review of ethical issues. In: PROCEEDINGS OF EASE 2019 - EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING: . Paper presented at 23rd Evaluation and Assessment in Software Engineering Conference, EASE; Copenhagen, 14 April 2019 through 17 April 2019 (pp. 237-242). Association for Computing Machinery
Open this publication in new window or tab >>Use of personality tests in empirical software engineering studies: A review of ethical issues
2019 (English)In: PROCEEDINGS OF EASE 2019 - EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING, Association for Computing Machinery , 2019, p. 237-242Conference paper, Published paper (Refereed)
Abstract [en]

There has been a lot of research on personality and its impact on software engineering practice. These studies use different psychological tests to identify personality types of software practitioners. The administration of these tests requires expertise. As the humans are involved, other ethical issues, such as consent, also become important. In this study, we evaluated a small sample of 15 studies that used a psychological test Myers-Briggs Type Indicator (MBTI) in a software engineering context with respect to different ethical issues related to informed consent, qualification of the test administrators and the use of appropriate tests. The results show that most of the studies in our sample seriously lack with respect to various ethical issues. © 2019 Association for Computing Machinery.

Place, publisher, year, edition, pages
Association for Computing Machinery, 2019
Keywords
Empirical software engineering, Ethical issues, Personality tests, Philosophical aspects, Testing, Myers-Briggs Type Indicators, Personality types, Psychological tests, Software engineering practices, Software practitioners, Software testing
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-17894 (URN)10.1145/3319008.3319032 (DOI)000493383400023 ()2-s2.0-85064733070 (Scopus ID)9781450371452 (ISBN)
Conference
23rd Evaluation and Assessment in Software Engineering Conference, EASE; Copenhagen, 14 April 2019 through 17 April 2019
Available from: 2019-05-21 Created: 2019-05-21 Last updated: 2019-11-14Bibliographically approved
Usman, M., Petersen, K., Börstler, J. & Neto, P. (2018). Developing and Using Checklists to Improve Software Effort Estimation: a Multi-Case Study. Journal of Systems and Software, 146, 286-309
Open this publication in new window or tab >>Developing and Using Checklists to Improve Software Effort Estimation: a Multi-Case Study
2018 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 146, p. 286-309Article in journal (Refereed) Published
Abstract [en]

Expert judgment based effort estimation techniques are widely used for estimating software effort. In the absence of process support, experts may overlook important factors during estimation, leading to inconsistent estimates. This might cause underestimation, which is a common problem in software projects. This multi-case study aims to improve expert estimation of software development effort. Our goal is two-fold: 1) to propose a process to develop and evolve estimation checklists for agile teams, and 2) to evaluate the usefulness of the checklists in improving expert estimation processes. The use of checklists improved the accuracy of the estimates in two case companies. In particular, the underestimation bias was reduced to a large extent. For the third case, we could not perform a similar analysis, due to the unavailability of historical data. However, when checklist was used in two sprints, the estimates were quite accurate (median Balanced Relative Error (BRE) bias of -0.05 ). The study participants from the case companies observed several benefits of using the checklists during estimation, such as increased confidence in estimates, improved consistency due to help in recalling relevant factors, more objectivity in the process, improved understanding of the tasks being estimated, and reduced chances of missing tasks.

Place, publisher, year, edition, pages
Elsevier, 2018
Keywords
Effort estimation, checklist, agile software development
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15871 (URN)10.1016/j.jss.2018.09.054 (DOI)000451488900019 ()
Available from: 2018-02-08 Created: 2018-02-08 Last updated: 2018-12-13Bibliographically approved
Usman, M., Britto, R., Damm, L.-O. & Börstler, J. (2018). Effort Estimation in Large-Scale Software Development: An Industrial Case Study. Information and Software Technology, 99, 21-40
Open this publication in new window or tab >>Effort Estimation in Large-Scale Software Development: An Industrial Case Study
2018 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 99, p. 21-40Article in journal (Refereed) Published
Abstract [en]

Context: Software projects frequently incur schedule and budget overruns. Planning and estimation are particularlychallenging in large and globally distributed projects. While software engineering researchers have beeninvestigating effort estimation for many years to help practitioners to improve their estimation processes, there is littleresearch about effort estimation in large-scale distributed agile projects.Objective: The main objective of this paper is three-fold: i) to identify how effort estimation is carried out in largescaledistributed agile projects; ii) to analyze the accuracy of the effort estimation processes in large-scale distributedagile projects; and iii) to identify the factors that impact the accuracy of effort estimates in large-scale distributed agileprojects.Method: We performed an exploratory longitudinal case study. The data collection was operationalized througharchival research and semi-structured interviews.Results: The main findings of this study are: 1) underestimation is the dominant trend in the studied case, 2) reestimationat the analysis stage improves the accuracy of the effort estimates, 3) requirements with large size/scopeincur larger effort overruns, 4) immature teams incur larger effort overruns, 5) requirements developed in multi-sitesettings incur larger effort overruns as compared to requirements developed in a collocated setting, and 6) requirementspriorities impact the accuracy of the effort estimates.Conclusion: Effort estimation is carried out at quotation and analysis stages in the studied case. It is a challengingtask involving coordination amongst many different stakeholders. Furthermore, lack of details and changes in requirements,immaturity of the newly on-boarded teams and the challenges associated with the large-scale add complexitiesin the effort estimation process.

Place, publisher, year, edition, pages
Elsevier, 2018
Keywords
ffort estimation; Large-scale software development; Global and agile software development
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15193 (URN)10.1016/j.infsof.2018.02.009 (DOI)000432767900003 ()
Funder
Knowledge Foundation
Available from: 2017-09-22 Created: 2017-09-22 Last updated: 2018-06-07Bibliographically approved
Ambreen, T., Ikram, N., Usman, M. & Niazi, M. (2018). Empirical research in requirements engineering: trends and opportunities. Requirements Engineering, 23(1), 63-95
Open this publication in new window or tab >>Empirical research in requirements engineering: trends and opportunities
2018 (English)In: Requirements Engineering, ISSN 0947-3602, E-ISSN 1432-010X, Vol. 23, no 1, p. 63-95Article in journal (Refereed) Published
Abstract [en]

Requirements engineering (RE) being a foundation of software development has gained a great recognition in the recent era of prevailing software industry. A number of journals and conferences have published a great amount of RE research in terms of various tools, techniques, methods, and frameworks, with a variety of processes applicable in different software development domains. The plethora of empirical RE research needs to be synthesized to identify trends and future research directions. To represent a state-of-the-art of requirements engineering, along with various trends and opportunities of empirical RE research, we conducted a systematic mapping study to synthesize the empirical work done in RE. We used four major databases IEEE, ScienceDirect, SpringerLink and ACM and Identified 270 primary studies till the year 2012. An analysis of the data extracted from primary studies shows that the empirical research work in RE is on the increase since the year 2000. The requirements elicitation with 22 % of the total studies, requirements analysis with 19 % and RE process with 17 % are the major focus areas of empirical RE research. Non-functional requirements were found to be the most researched emerging area. The empirical work in the sub-area of requirements validation and verification is little and has a decreasing trend. The majority of the studies (50 %) used a case study research method followed by experiments (28 %), whereas the experience reports are few (6 %). A common trend in almost all RE sub-areas is about proposing new interventions. The leading intervention types are guidelines, techniques and processes. The interest in RE empirical research is on the rise as whole. However, requirements validation and verification area, despite its recognized importance, lacks empirical research at present. Furthermore, requirements evolution and privacy requirements also have little empirical research. These RE sub-areas need the attention of researchers for more empirical research. At present, the focus of empirical RE research is more about proposing new interventions. In future, there is a need to replicate existing studies as well to evaluate the RE interventions in more real contexts and scenarios. The practitioners’ involvement in RE empirical research needs to be increased so that they share their experiences of using different RE interventions and also inform us about the current requirements-related challenges and issues that they face in their work. © 2016 Springer-Verlag London

Place, publisher, year, edition, pages
Springer London, 2018
Keywords
Computer supported cooperative work; Mapping; Requirements engineering; Software design; Software engineering, Evidence Based Software Engineering; Future research directions; Mapping studies; Non-functional requirements; Requirements elicitation; Requirements validation; Systematic mapping studies; Systematic Review, Engineering research
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-12981 (URN)10.1007/s00766-016-0258-2 (DOI)000425287700003 ()2-s2.0-84979998441 (Scopus ID)
Available from: 2016-08-31 Created: 2016-08-31 Last updated: 2019-01-16Bibliographically approved
Ali, N. b. & Usman, M. (2018). Reliability of search in systematic reviews: Towards a quality assessment framework for the automated-search strategy. Information and Software Technology, 99, 133-147
Open this publication in new window or tab >>Reliability of search in systematic reviews: Towards a quality assessment framework for the automated-search strategy
2018 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, ISSN 0950-5849, Vol. 99, p. 133-147Article in journal (Refereed) Published
Abstract [en]

Context: The trust in systematic literature reviews (SLRs) to provide credible recommendations is critical for establishing evidence-based software engineering (EBSE) practice. The reliability of SLR as a method is not a given and largely depends on the rigor of the attempt to identify, appraise and aggregate evidence. Previous research, by comparing SLRs on the same topic, has identified search as one of the reasons for discrepancies in the included primary studies. This affects the reliability of an SLR, as the papers identified and included in it are likely to influence its conclusions. Objective: We aim to propose a comprehensive evaluation checklist to assess the reliability of an automated-search strategy used in an SLR. Method: Using a literature review, we identified guidelines for designing and reporting automated-search as a primary search strategy. Using the aggregated design, reporting and evaluation guidelines, we formulated a comprehensive evaluation checklist. The value of this checklist was demonstrated by assessing the reliability of search in 27 recent SLRs. Results: Using the proposed evaluation checklist, several additional issues (not captured by the current evaluation checklist) related to the reliability of search in recent SLRs were identified. These issues severely limit the coverage of literature by the search and also the possibility to replicate it. Conclusion: Instead of solely relying on expensive replications to assess the reliability of SLRs, this work provides means to objectively assess the likely reliability of a search-strategy used in an SLR. It highlights the often-assumed aspect of repeatability of search when using automated-search. Furthermore, by explicitly considering repeatability and consistency as sub-characteristics of a reliable search, it provides a more comprehensive evaluation checklist than the ones currently used in EBSE. © 2018 Elsevier B.V.

Keywords
Credibility Guidelines, Reliability, Search strategies, Secondary studies, Systematic literature reviews
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15974 (URN)10.1016/j.infsof.2018.02.002 (DOI)000432767900012 ()
Available from: 2018-03-22 Created: 2018-03-22 Last updated: 2018-06-07Bibliographically approved
Josyula, J., Panamgipalli, S., Usman, M., Britto, R. & Ali, N. b. (2018). Software Practitioners' Information Needs and Sources: A Survey Study. In: Proceedings - 2018 9th International Workshop on Empirical Software Engineering in Practice, IWESEP 2018: . Paper presented at 9th International Workshop on Empirical Software Engineering in Practice (IWESEP), DEC 04, 2018, Nara, JAPAN (pp. 1-6). IEEE
Open this publication in new window or tab >>Software Practitioners' Information Needs and Sources: A Survey Study
Show others...
2018 (English)In: Proceedings - 2018 9th International Workshop on Empirical Software Engineering in Practice, IWESEP 2018, IEEE , 2018, p. 1-6Conference paper, Published paper (Refereed)
Abstract [en]

Software engineering practitioners have information needs to support strategic, tactical and operational decision-making. However, there is scarce research on understanding which information needs exist and how they are currently fulfilled in practice. This study aims to identify the information needs, the frequency of their occurrence, the sources of information used to satisfy the needs, and the perception of practitioners regarding the usefulness of the sources currently used. For this purpose, a literature review was conducted to aggregate the current state of understanding in this area. We built on the results of the literature review and developed further insights through in-depth interviews with 17 practitioners. We further triangulated the findings from these two investigations by conducting a web-based survey (with 83 completed responses). Based on the results, we infer that information regarding product design, product architecture and requirements gathering are the most frequently faced needs. Software practitioners mostly use blogs, community forums, product documentation, and discussion with colleagues to address their information needs.

Place, publisher, year, edition, pages
IEEE, 2018
Series
International Workshop on Empirical Software Engineering in Practice, ISSN 2333-519X
Keywords
evidence-based software engineering, EBSE, Information retrieval, knowledge sharing
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-17830 (URN)10.1109/IWESEP.2018.00009 (DOI)000462914400001 ()978-1-7281-0439-3 (ISBN)
Conference
9th International Workshop on Empirical Software Engineering in Practice (IWESEP), DEC 04, 2018, Nara, JAPAN
Available from: 2019-04-18 Created: 2019-04-18 Last updated: 2019-06-28Bibliographically approved
Usman, M., Börstler, J. & Petersen, K. (2017). An Effort Estimation Taxonomy for Agile Software Development. International journal of software engineering and knowledge engineering, 27(4), 641-674
Open this publication in new window or tab >>An Effort Estimation Taxonomy for Agile Software Development
2017 (English)In: International journal of software engineering and knowledge engineering, ISSN 0218-1940, Vol. 27, no 4, p. 641-674Article in journal (Refereed) Published
Abstract [en]

In Agile Software Development (ASD) effort estimation plays an important role during release and iteration planning. The state of the art and practice on effort estimation in ASD have been recently identified. However, this knowledge has not yet been organized. The aim of this study is twofold: (1) To organize the knowledge on effort estimation in ASD and (2) to use this organized knowledge to support practice and the future research on effort estimation in ASD. We applied a taxonomy design method to organize the identified knowledge as a taxonomy of effort estimation in ASD. The proposed taxonomy offers a faceted classification scheme to characterize estimation activities of agile projects. Our agile estimation taxonomy consists of four dimensions: estimation context, estimation technique, effort predictors and effort estimate. Each dimension in turn has several facets. We applied the taxonomy to characterize estimation activities of 10 agile projects identified from the literature to assess whether all important estimation-related aspects are reported. The results showed that studies do not report complete information related to estimation. The taxonomy was also used to characterize the estimation activities of four agile teams from three different software companies. The practitioners involved in the investigation found the taxonomy useful in characterizing and documenting the estimation sessions. © 2017 The Author(s).

Place, publisher, year, edition, pages
World Scientific Publishing Co. Pte Ltd, 2017
Keywords
agile software development, Effort estimation, taxonomy, Iterative methods, Software design, Taxonomies, Complete information, Effort estimates, Estimation techniques, Faceted Classification, Iteration planning, Software company, Software engineering
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-14472 (URN)10.1142/S0218194017500243 (DOI)000402062200006 ()2-s2.0-85019610980 (Scopus ID)
Available from: 2017-06-13 Created: 2017-06-13 Last updated: 2018-02-09Bibliographically approved
Usman, M., Britto, R., Börstler, J. & Mendes, E. (2017). Taxonomies in software engineering: A Systematic mapping study and a revised taxonomy development method. Information and Software Technology, 85, 43-59
Open this publication in new window or tab >>Taxonomies in software engineering: A Systematic mapping study and a revised taxonomy development method
2017 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 85, p. 43-59Article in journal (Refereed) Published
Abstract [en]

Context: Software Engineering (SE) is an evolving discipline with new subareas being continuously developed and added. To structure and better understand the SE body of knowledge, taxonomies have been proposed in all SE knowledge areas. Objective: The objective of this paper is to characterize the state-of-the-art research on SE taxonomies. Method: A systematic mapping study was conducted, based on 270 primary studies. Results: An increasing number of SE taxonomies have been published since 2000 in a broad range of venues, including the top SE journals and conferences. The majority of taxonomies can be grouped into the following SWEBOI(knowledge areas: construction (19.55%), design (19.55%), requirements (15.50%) and maintenance (11.81%). Illustration (45.76%) is the most frequently used approach for taxonomy validation. Hierarchy (53.14%) and faceted analysis (39.48%) are the most frequently used classification structures. Most taxonomies rely on qualitative procedures to classify subject matter instances, but in most cases (86.53%) these procedures are not described in sufficient detail. The majority of the taxonomies (97%) target unique subject matters and many taxonomy-papers are cited frequently. Most SE taxonomies are designed in an ad-hoc way. To address this issue, we have revised an existing method for developing taxonomies in a more systematic way. Conclusion: There is a strong interest in taxonomies in SE, but few taxonomies are extended or revised. Taxonomy design decisions regarding the used classification structures, procedures and descriptive bases are usually not well described and motivated. (C) 2017 The Authors. Published by Elsevier B.V.

Place, publisher, year, edition, pages
ELSEVIER SCIENCE BV, 2017
Keywords
Taxonomy, Classification, Software engineering, Systematic mapping study
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15161 (URN)10.1016/j.infsof.2017.01.006 (DOI)000397553500003 ()
Available from: 2017-09-21 Created: 2017-09-21 Last updated: 2018-02-09Bibliographically approved
Britto, R. & Usman, M. (2015). Bloom's taxonomy in software engineering education: A systematic mapping study. In: Frontiers in Education Conference (FIE), 2015: . Paper presented at IEEE Frontiers in Education Conference (FIE), El Paso (pp. 392-399). IEEE Communications Society
Open this publication in new window or tab >>Bloom's taxonomy in software engineering education: A systematic mapping study
2015 (English)In: Frontiers in Education Conference (FIE), 2015, IEEE Communications Society, 2015, p. 392-399Conference paper, Published paper (Refereed)
Abstract [en]

Designing and assessing learning outcomes could be a challenging activity for any SoftwareEngineering (SE) educator. To support the process of designing and assessing SE courses, educators have been applied the cognitive domain of Bloom's taxonomy. However, to the best of our knowledge, the evidence on the usage of Bloom's taxonomy in SE higher education has not yet been systematically aggregated or reviewed. Therefore, in this paper we report the state of the art on the usage of Bloom's taxonomy in SE education, identified by conducted a systematic mapping study. As a result of the performed systematic mapping study, 26 studies were deemed as relevant. The main findings from these studies are: i) Bloom's taxonomy has mostly been applied at undergraduate level for both design and assessment of software engineering courses; ii) software construction is the leading SE subarea in which Bloom's taxonomy has been applied. The results clearly point out the usefulness of Bloom's taxonomy in the SE education context. We intend to use the results from this systematic mapping study to develop a set of guidelines to support the usage of Bloom's taxonomycognitive levels to design and assess SE courses.

Place, publisher, year, edition, pages
IEEE Communications Society, 2015
Series
Frontiers in Education Conference, ISSN 0190-5848
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-11151 (URN)10.1109/FIE.2015.7344084 (DOI)000371705200069 ()978-1-4799-8454-1 (ISBN)
Conference
IEEE Frontiers in Education Conference (FIE), El Paso
Available from: 2015-12-10 Created: 2015-12-10 Last updated: 2018-01-10Bibliographically approved
Organisations

Search in DiVA

Show all publications