Peer-reviewed Publications |
2009 |
|
|
Koru, G., & El Emam, K. (2009). Theory of Relative Dependency. IEEE Software, Accepted(To appear).
|
|
|
|
Koru, G., Zhang, D., El Emam, K., & Liu, H. (2009). An Investigation into the Functional Form of the Size-Defect Relationship for Software Modules. IEEE Transactions on Software Engineering, 35(2), 293–304.
Abstract: The importance of the relationship between the size and defect proneness of software modules is well recognized. Understanding the nature of that relationship can facilitate various development decisions related to prioritization of quality assurance activities. Overall, the previous research only drew a general conclusion that there was a monotonically increasing relationship between module size and defect proneness. In this study, we analyzed class-level size and defect data in order to increase our understanding of this crucial relationship. We studied four large-scale object-oriented products, Mozilla, Cn3d, JBoss, and Eclipse. We observed that defect proneness increased as class size increased, but at a slower rate; smaller classes were proportionally more problematic than larger classes. Therefore, practitioners should consider giving higher priority to smaller modules when planning focused quality assurance activities with limited resources. For example, in Mozilla and Eclipse, an inspection strategy investing 80 percent of available resources on 100-LOC classes and the rest on 1,000-LOC classes would be more than twice as cost-effective as the opposite strategy. These results should be immediately useful to guide focused quality-assurance activities in large-scale software projects.
Keywords: Open-source software, Planning for SQA and Measurement applied to SQA and Software Quality/SQA, Product metrics, Software, software engineering, Software Measurement, Software science, Systems Engineering
|
|
2008 |
|
|
El Emam, K., & Koru, G. (2008). A Replicated Survey of IT Software Project Failure Rates. IEEE Software, 25(5), 84–90.
Abstract: Despite various industry reports about the failure rates of software projects, theres still uncertainty about the actual figures. Researchers performed a global Web survey of IT departments in 2005 and 2007. The results suggest that the software crisis is perhaps exaggerated and that most software projects deliver. However, the overall project failure rate, including cancelled and completed but poorly performing projects, remains arguably high for an applied discipline.
Keywords: IT software project failures, management, productivity, programming teams, project control and modeling, project management, review and evaluation, risk management, schedule and organizational issues, software crisis, software engineering, software management, Web survey
|
|
|
|
Koru, G., El Emam, K., Zhang, D., Liu, H., & Mathew, D. (2008). Theory of Relative Defect Proneness. Empirical Software Engineering, 13(5), 473–498.
Abstract: In this study, we investigated the functional form of the size-defect relationship for software modules through replicated studies conducted on ten open-source products. We consistently observed a power-law relationship where defect proneness increases at a slower rate compared to size. Therefore, smaller modules are proportionally more defect prone. We externally validated the application of our results for two commercial systems. Given limited and fixed resources for code inspections, there would be an impressive improvement in the cost-effectiveness, as much as 341% in one of the systems, if a smallest-first strategy were preferred over a largest-first one. The consistent results obtained in this study led us to state a theory of relative defect proneness (RDP): In large-scale software systems, smaller modules will be proportionally more defect-prone compared to larger ones. We suggest that practitioners consider our results and give higher priority to smaller modules in their focused quality assurance efforts.
Keywords: Open-source software, Planning for software quality assurance, Size–defect relationship, Software inspections, Software Measurement, Software metrics, Software reviews, Software science, Software testing
|
|
|
|
Munoz, G., Seaman, C., & Koru, G. (2008). An Empirical Investigation into the Adoption of Open Source Software in Hospitals. International Journal of Healthcare Information Systems and Informatics, 3(3), 16–37.
Abstract: Open source software (OSS) has gained considerable attention recently in healthcare. Yet, how and why OSS is being adopted within hospitals in particular remains a poorly understood issue. This research attempts to further this understanding. A mixed-method research approach was used to explore the extent of OSS adoption in hospitals as well as the factors facilitating and inhibiting adoption. The findings suggest a very limited adoption of OSS in hospitals. Hospitals tend to adopt general-purpose instead of domain-specific OSS. We found that software vendors are the critical factor facilitating the adoption of OSS in hospitals. Conversely, lack of in-house development as well as a perceived lack of security, quality, and accountability of OSS products were factors inhibiting adoption. An empirical model is presented to illustrate the factors facilitating and inhibiting the adoption of OSS in hospitals.
Keywords: Biomedical Informatics, Healthcare Informatics, hospitals, information systems, medical informatics, Open-source software, technology adoption
|
|
2007 |
|
|
Koru, G., & Liu, H. (2007). Identifying and characterizing change-prone classes in two large-scale open-source products. Journal of Systems and Software, 80(1), 63–73.
Abstract: Developing and maintaining open-source software has become an important source of profit for many companies. Change-prone classes in open-source products increase project costs by requiring developers to spend effort and time. Identifying and characterizing change-prone classes can enable developers to focus timely preventive actions, for example, peer-reviews and inspections, on the classes with similar characteristics in the future releases or products. In this study, we collected a set of static metrics and change data at class level from two open-source projects, KOffice and Mozilla. Using these data, we first tested and validated Paretos Law which implies that a great majority (around 80%) of change is rooted in a small proportion (around 20%) of classes. Then, we identified and characterized the change-prone classes in the two products by producing tree-based models. In addition, using tree-based models, we suggested a prioritization strategy to use project resources for focused preventive actions in an efficient manner. Our empirical results showed that this strategy was effective for prioritization purposes. This study should provide useful guidance to practitioners involved in development and maintenance of large-scale open-source products.
Keywords: Change-Prone Classes, Object-Oriented Programming, Open-Source Development, Open-source software, Software Maintenance, Static metrics
|
|
|
|
Koru, G., El Emam, K., Neisa, A., & Umarji, M. (2007). A Survey of Quality Assurance Practices in Biomedical Open-Source Software Projects. Journal of Medical Internet Research, 9(2).
Abstract: Background: Open source (OS) software is continuously gaining recognition and use in the biomedical domain, for example, in health informatics and bioinformatics. Objectives: Given the mission critical nature of applications in this domain and their potential impact on patient safety, it is important to understand to what degree and how effectively biomedical OS developers perform standard quality assurance (QA) activities such as peer reviews and testing. This would allow the users of biomedical OS software to better understand the quality risks, if any, and the developers to identify process improvement opportunities to produce higher quality software. Methods: A survey of developers working on biomedical OS projects was conducted to examine the QA activities that are performed. We took a descriptive approach to summarize the implementation of QA activities and then examined some of the factors that may be related to the implementation of such practices. Results: Our descriptive results show that 63% (95% CI, 54-72) of projects did not include peer reviews in their development process, while 82% (95% CI, 75-89) did include testing. Approximately 74% (95% CI, 67-81) of developers did not have a background in computing, 80% (95% CI, 74-87) were paid for their contributions to the project, and 52% (95% CI, 43-60) had PhDs. A multivariate logistic regression model to predict the implementation of peer reviews was not significant and neither was a model to predict the implementation of testing. Conclusions: Less attention is paid to peer review than testing. However, the former is a complementary, and necessary, QA practice rather than an alternative. Therefore, one can argue that there are quality risks, at least at this point in time, in transitioning biomedical OS software into any critical settings that may have operational, financial, or safety implications. Developers of biomedical OS applications should invest more effort in implementing systemic peer review practices throughout the development and maintenance processes.
Keywords: Code Inspections and Walkthroughs, Computational Biology, information systems, medical informatics, Open-source software, Software Quality Assurance, Software Reliability, Software/program Verification
|
|
|
|
Liu, H., Zeeberg, B. R., Qu, G., Koru, G., Ferrucci, A., Kahn, A., et al. (2007). AffyProbeMiner: a web resource for computing or retrieving accurately redefined Affymetrix probe sets. Bioinformatics, 23(18), 2385–2390.
Abstract: Motivation: Affymetrix microarrays are widely used to measure global expression of mRNA transcripts. That technology is based on the concept of a probe set. Individual probes within a probe set were originally designated by Affymetrix to hybridize with the same unique mRNA transcript. Because of increasing accuracy in knowledge of genomic sequences, however, a substantial number of the manufacturers original probe groupings and mappings are now known to be inaccurate and must be corrected. Otherwise, analysis and interpretation of an Affymetrix microarray experiment will be in error. Results: AffyProbeMiner is a computationally efficient platform-independent tool that uses all RefSeq mature RNA protein coding transcripts and validated complete coding sequences in GenBank to (1) regroup the individual probes into consistent probe sets and (2) remap the probe sets to the correct sets of mRNA transcripts. The individual probes are grouped into probe sets that are transcript-consistent in that they hybridize to the same mRNA transcript (or transcripts) and, therefore, measure the same entity (or entities). About 65.6 % of the probe sets on the HG-U133A chip were affected by the remapping. Pre-computed regrouped and remapped probe sets for many Affymetrix microarrays are made freely available at the AffyProbeMiner web site. Alternatively, we provide a web service that enables the user to perform the remapping for any type of short-oligo commercial or custom array that has an Affymetrix-format Chip Definition File (CDF). Important features that differentiate AffyProbeMiner from other approaches are flexibility in the handling of splice variants, computational efficiency, extensibility, customizability and user-friendliness of the interface. Availability: The web interface and software (GPL open source license), are publicly-accessible at http://discover.nci.nih.gov/affyprobeminer.
Keywords: biology and genetics, pattern recognition
|
|
2005 |
|
|
Koru, G., & Liu, H. (2005). Building effective defect-prediction models in practice. IEEE Software, 22(6), 23–29.
Abstract: Defective software modules cause software failures, increase development and maintenance costs, and decrease customer satisfaction. Effective defect prediction models can help developers focus quality assurance activities on defect-prone modules and thus improve software quality by using resources more efficiently. These models often use static measures obtained from source code, mainly size, coupling, cohesion, inheritance, and complexity measures, which have been associated with risk factors, such as defects and changes.
Keywords: Defect Prediction Model, Defect-Prone Module, Defective Software Module, Learning (artificial intelligence), Quality Assurance, Software Complexity Measure, Software Failure, Software Fault Tolerance, Software Measurement, Software metrics, Software Quality
|
|
|
|
Koru, G., & Tian, J. (2005). Comparing high change modules and modules with the highest measurement values in two large-scale open-source products. IEEE Transactions on Software Engineering, 31(8), 625–642.
Abstract: Identifying change-prone modules can enable software developers to take focused preventive actions that can reduce maintenance costs and improve quality. Some researchers observed a correlation between change proneness and structural measures, such as size, coupling, cohesion, and inheritance measures. However, the modules with the highest measurement values were not found to be the most troublesome modules by some of our colleagues in industry, which was confirmed by our previous study of six large-scale industrial products. To obtain additional evidence, we identified and compared high-change modules and modules with the highest measurement values in two large-scale open-source products, Mozilla and OpenOffice, and we characterized the relationship between them. Contrary to common intuition, we found through formal hypothesis testing that the top modules in change-count rankings and the modules with the highest measurement values were different. In addition, we observed that high-change modules had fairly high places in measurement rankings, but not the highest places. The accumulated findings from these two open-source products, together with our previous similar findings for six closed-source products, should provide practitioners with additional guidance in identifying the change-prone modules.
Keywords: Change-Prone Modules, Formal Hypothesis Testing, Large-Scale Industrial Products, Large-Scale Open-Source Products, Mozilla, Open-source software, OpenOffice, Product metrics, Public Domain Software, Software Cost Estimation, Software Developers, Software Maintenance, Software Maintenance Cost Reduction, Software Maintenance Planning, Software Measurement, Software metrics, Software Quality
|
|
2004 |
|
|
Koru, G., & Tian, J. (2004). Defect handling in medium and large open source projects. IEEE Software, 21(4), 54–61.
Abstract: Open source projects have resulted in numerous high-quality, widely used products. Understanding the defect-handling strategies such projects employ can help us use the publicly accessible defect data from these projects to provide valuable quality-improvement feedback and to better understand the defect characteristics for a wider variety of software products. We conducted a survey to understand defect handling in selected open source projects and compared the particular approaches taken in different projects. We focused on defect handling instead of the broader quality assurance activities other researchers have previously reported. Our results provided quantitative evidence about the current practice of defect handling in an important subset of open source projects.
Keywords: defect handling, open source project, project management, Public Domain Software, Quality Assurance, quality-improvement feedback, software product, Software Quality
|
|
2003 |
|
|
Koru, G., & Tian, J. (2003). An Empirical Comparison and Characterization of High Defect and High Complexity Modules. Journal of Systems and Software, 67(3), 153–163.
Abstract: We analyzed a large set of complexity metrics and defect data collected from six large-scale software products, two from IBM and four from Nortel Networks, to compare and characterize the similarities and differences between the high defect (HD) and high complexity modules. We observed that the most complex modules often have an acceptable quality and HD modules are not typically the most complex ones. This observation was statistically validated through hypothesis testing. Our analyses also indicated that the clusters of modules with the highest defects are usually those whose complexity rankings are slightly below the most complex ones. These results should help us better understand the complexity behavior of HD modules and guide future software development and research efforts.
Keywords: Complexity metrics, Complexity-defect association, Hypothesis testing, Risk identification, Software Quality
|
|
Conference Proceedings |
2009 |
|
|
Crabtree, C., Koru, G., Seaman, C., & Erdogmus, H. (2009). An Empirical Characterization of Scientific Software Development Projects According to the Boehm and Turner Model: a Progress Report.. Acm.
Abstract: A number of recent studies reported on the success of applying agile methods in scientific software development projects. These studies found that agile methods are well suited to the exploratory, iterative, and collaborative nature of scientific inquiry. However, these findings might not be applicable in all situations pertaining to scientific software development projects. In addition, they only constitute a subset of the important factors while deciding which development methods and practices should be adopted. Therefore, it becomes important to conduct further research before making recommendations regarding the adoption of certain development methods and practices in this domain. In this progress report, we discuss our on-going research that will empirically study the characteristics of various scientific software development projects according to a model suggested by Boehm and Turner. We plan to conduct interviews and collect data from various scientific software development projects in the Baltimore-Washington area. We expect that our qualitative results will increase our understanding of the characteristics in those projects favoring plan-driven approaches or agile methods, and the needs and conditions associated with those characteristics. Our research provides guidance to scientific software developers by enhancing their capacity to evaluate and understand their own project characteristics and select effective software practices. As a long-term benefit in the same direction, our qualitative results will generate a set of hypotheses that can be tested in different project environments to better understand and categorize scientific software development projects. Consequently, in the future, more generalizable and actionable recommendations can be made for scientific software development projects.
Keywords: : Scientific software development, agile methods, plan driven approaches, software development methodologies, software development practices
|
|
|
|
Fu, Y., Koru, G., Chen, Z., & Emam, K. E. (2009). A Tree-Based Approach to Preserve Privacy of Software Engineering Data and Predictive Models. In The International Conference on Predictor Models in Software Engineering.
|
|
|
|
Umarji, M., Seaman, C., Liu, H., & Koru, G. (2009). Software Engineering Education for Bioinformatics. In Proceedings of the 22nd IEEE-CS Conference on Software Engineering Education and Training (pp. 216–223). Los Alamitos, CA, USA: IEEE Computer Society.
Abstract: As software engineering educators, it is important for us to realize the increasing domain-specificity of software, and incorporate these changes in our design of teaching material. Bioinformatics software is an example of immensely complex and critical scientific software and this domain provides an excellent illustration of the role of computing in the life sciences. To study bioinformatics from a software engineering standpoint, we conducted an exploratory survey of bioinformatics developers. The survey had a range of questions about people, processes and products. As software engineering educators, we realized that the survey results had important implications for the education of bioinformatics professionals. We also investigated the current status of software engineering education in bioinformatics, by examining the curricula of more than fifty bioinformatics programs and the contents of over fifteen textbooks. We observed that there was no mention of the role and importance of software engineering practices essential for creating dependable software systems. Based on our findings and existing literature we present a software engineering education in bioinformatics.
Keywords: bioinformatics, education, open source, software engineering, survey
|
|
2008 |
|
|
Ngamkajornwiwat, K., Zhang, D., Koru, G., Zhou, L., & Nolker, R. D. (2008). An Exploratory Study on the Evolution of OSS Developer Communities. In HICSS 2008: Proceedings of the 41st Annual Hawaii International Conference on System Sciences (HICSS 2008) (Vol. 00, 305). Washington, DC, USA: IEEE Computer Society.
Abstract: Software is developed in a dynamic context where team structure, requirements, and processes evolve together with the product. Although researchers have been studying the evolution of software systems since the early 70s, the study on the evolution of software development teams remains rare. Such evolutionary patterns and their impact on software quality are especially important in the context of OSS (Open Source Software) development, where a group of volunteer developers collaborate online for an extended period of time. By analyzing how social networks of developers evolve over time while building OSS products, we can gain knowledge and experience to improve the effectiveness and efficiency of resource management and distribution in future OSS projects. To this end, we studied the evolution of the developer communities using a suite of OSS products developed under the KOffice project. We found that in general, the social networks of OSS developer communities change over time in certain ways. Identifying such patterns can help OSS managers better understand the unique process of OSS development and improve their management and coordination of the projects.
|
|
|
|
Sampath, S., Bryce, R., Viswanath, G., Kandimalla, V., & Koru, G. (2008). Prioritizing User-session-based Test Cases for Web Applications Testing. In Proceedings of ICST 08 International Conference on Software Testing (pp. 141–150). Washington, DC, USA: IEEE Computer Society.
Abstract: Web applications have rapidly become a critical part of business for many organizations. However, increased usage of web applications has not been reciprocated with corresponding increases in reliability. Unique characteristics, such as quick turnaround time, coupled with growing popularity motivate the need for efficient and effective web application testing strategies. In this paper, we propose several new test suite prioritization strategies for web applications and examine whether these strategies can improve the rate of fault detection for three web applications and their preexisting test suites. We prioritize test suites by test lengths, frequency of appearance of request sequences, and systematic coverage of parameter-values and their interactions. Experimental results show that the proposed prioritization criteria often improve the rate of fault detection of the test suites when compared to random ordering of test cases. In general, the best prioritization metrics either (1) consider frequency of appearance of sequences of requests or (2) systematically cover combinations of parameter-values as early as possible.
|
|
|
|
Umarji, M., Pohl, M., Seaman, C., Koru, G., & Liu, H. (2008). Teaching Software Engineering to End-users. In Fourth Workshop on End-User Software Engineering (WEUSE IV) (pp. 40–42). New York, NY, USA: Acm.
Abstract: Through this paper we intend to open an avenue of discussion about the software engineering material that should be taught to end user programmers, based on our findings in the bioinformatics domain. Bioinformatics software is an example of immensely complex and critical scientific software, and this domain provides an excellent illustration of the role of end user computing in the sciences. To explore these interesting characteristics from a software engineering standpoint, we had conducted an exploratory survey of bioinformatics developers. The survey had a range of questions about people, processes and products. As software engineering researchers, we realized that the survey results had important implications for the education of bioinformatics software professionals. We also went through the curricula of more than fifty bioinformatics programs as well as the contents of over fifteen textbooks. We observed that there was no mention of the role and importance of software engineering practices essential for creating dependable software systems. Based on our findings we present a set of recommendations for improving bioinformatics education in software engineering principles and ways that they apply in the context of end-user development.
|
|
2007 |
|
|
Koru, G., Zhang, D., & Liu, H. (2007). Effect of Coupling on Defect Proneness in Evolutionary Open-Source Software Development. In The Third International Conference on Open Source Systems (pp. 271–276).
Abstract: Previous research on closed-source software found that highly coupled software modules were more defect prone, which makes it important to understand the effect of coupling on defect proneness in open-source software (OSS) projects. For this purpose, we used Cox proportional hazards modeling with recurrent events. We found that the effect of coupling was significant, and we quantified this effect on defect proneness.
|
|
|
|
Koru, G., Zhang, D., & Liu, H. (2007). Modeling the Effect of Size on Defect Proneness for Open-Source Software. In PROMISE 07: Proceedings of the Third International Workshop on Predictor Models in Software Engineering (pp. 115–124). Washington, DC, USA: IEEE Computer Society.
Abstract: Quality is becoming increasingly important with the continuous adoption of open-source software. Previous research has found that there is generally a positive relationship between module size and defect proneness. Therefore, in open-source software development, it is important to monitor module size and understand its impact on defect proneness. However, traditional approaches to quality modeling, which measure specific system snapshots and obtain future defect counts, are not well suited because open-source modules usually evolve and their size changes over time. In this study, we used Cox proportional hazards modeling with recurrent events to study the effect of class size on defect-proneness in the Mozilla product. We found that the effect of size was significant, and we quantified this effect on defect proneness.
|
|
2006 |
|
|
Sherman, A. T., Gangopadhyay, A., Holden, S. H., Karabatis, G., Koru, G., Law, C. M., et al. (2006). An examination of vote verification technologies: findings and experiences from the Maryland study. In EVT2006: Proceedings of the USENIX/Accurate Electronic Voting Technology Workshop 2006 on Electronic Voting Technology Workshop (p. 10). Berkeley, CA, USA: USENIX Association.
Abstract: We describe our findings and experiences from our technical review of vote verification systems for the Maryland State Board of Elections (SBE). The review included the following four systems for possible use together with Marylands existing Diebold AccuVote-TS (touch screen) voting system: VoteHere Sentinel; SCYTL Pnyx.DRE; MIT-Selker audio system; Diebold voter verified paper audit trail. As a baseline, we also examined the SBEs procedures for “parallel testing” of its Diebold system. For each system, we examined how it enables voters who use touch screens to verify that their votes are cast as intended, recorded as cast, and reported as recorded. We also examined how well it permits post-election auditing. To this end, we considered implementation, impact on current state voting processes and procedures, impact on voting, functional completeness, security against fraud, attack and failure, reliability, accessibility, and voter privacy. Our principal findings are, first, that each system we examined may at some point provide a degree of vote verification beyond what is available through the Diebold System as currently implemented, provided the system were fully developed, fully integrated with the Diebold system, and effectively implemented. Second, none of the systems is yet a fully developed, commercially ready product. This interdisciplinary study-the first of its kind-is of interest for the way in which it evaluates the systems, for the technical questions it raises about standard interfaces, and as a snapshot of the state of vote verification technologies and their commercial development.
|
|
2005 |
|
|
Koru, G., & Liu, H. (2005). An investigation of the effect of module size on defect prediction using static measures. In International Workshop on Predictor Models in Software Engineering (PROMISE 2005) (pp. 1–5). St. Louis, Missouri.
Abstract: We used several machine learning algorithms to predict the defective modules in five NASA products, namely, CM1, JM1, KC1, KC2, and PC1. A set of static measures were used as predictor variables. While doing so, we observed that a large portion of the modules were small, as measured by lines of code (LOC). When we experimented on the data subsets created by partitioning according to module size, we obtained higher prediction performance for the subsets that include larger modules. We also performed defect prediction using class-level data for KC1 rather than method-level data. In this case, the use of class-level data resulted in improved prediction performance compared to using method-level data. These findings suggest that quality assurance activities can be guided even better if defect predictions are made by using data that belong to larger modules.
|
|
|
|
Koru, G., Ozok, A. A., & Norcio, A. F. (2005). The effect of human memory organization on code reviews under different single and pair code reviewing scenarios. In Proceedings of the 2005 workshop on Human and social factors of software engineering, ICSE 2005 Workshop (pp. 1–3). Saint Louis, MO.
Abstract: Human memory organization has been shown to be related to how programmers understand programs. In recent years, agile methods brought the emphasis back on human and social aspects of software engineering with a set of new principles and practices. One of them, pair programming has been shown to improve quality and reduce the development costs. In this position paper, we propose a controlled experiment to evaluate the effect of human memory organization through chunking on code reviews under different single and pair code reviewing scenarios.
|
|
2003 |
|
|
Koru, G., Ma, L., & Li, Z. (2003). Utilizing Operational Profile in Refactoring Large Scale Legacy Systems. In WCRE 2003: First IEEE International Workshop on Refactoring:Achievements, Challenges, Effects. Victoria, Canada.
Abstract: Applying refactoring in a large-scale legacy system can potentially decrease future maintenance costs and prepare the system to accommodate future changes more easily. However, in such systems, it is desirable to identify the system components that will be the subject of the refactoring effort before making a significant investment. The operational profile of the system could be a useful input in focusing the effort, in addition to other guidance such as expertise, domain knowledge, static measurements of the system, and so on on. In this position paper, we suggest using a markov chain model which could take operational profile into account and support engineers in identifying the system components of greatest interest for refactoring.
|
|
|
|
Tian, J., Ma, L., Li, Z., & Koru, G. (2003). A Hierarchical Strategy for Testing Web-Based Applications and Ensuring their Reliability. In COMPSAC 27th: First IEEE International Workshop on Web Based Systems and Applications(WEBSA). Dallas, TX.
Abstract: After examining the specific problems of testing and quality assurance for Web-based applications, we propose a strategy by integrating existing testing techniques and reliability analyses in a hierarchical framework. This strategy combines various usage models for statistical testing to perform high level testing and to guide selective testing of critical and frequently used subparts or components using traditional coverage-based structural testing. Reliability analysis and risk identification form an integral part of this strategy to help assure and improve the overall reliability for Web-based applications. Some preliminary results are included to demonstrate the general viability and effectiveness of our approach.
|
|
1998 |
|
|
Koru, G., & Demirors, O. (1998). Decentralized Process Modeling Notations for Horizontal Change Approach. In Proceedings of the 13th International Symposium on Computer and Information Sciences, ISCIS-98 (pp. 535–542). Advances in computer and information sciences. Antalya, Turkey: IOS Press.
Abstract: Horizontal Change Approach (HOC-A) is a software process improvement approach that enables individuals to define and improve their own processes. It is assumed that peer-wise conflict resolution efforts among individuals are crucial and supply continuous process improvement for the total processes. In order to support individual process modeling and improvement, HOC-A requires a notation that supports decentralized process modeling. In this paper, we give a brief description of HOC-A in the light of previous research on decentralized process modeling. Then we analyze notations that can be used for decentralized process modeling by means of process examples and discuss their applicability to HOC-A.
|
|
|
|
Koru, G., & Demirors, O. (1998). Structures of Software Process Improvement Problems. In Proceedings of BILISIM 98. Istanbul, Turkey.
Abstract: Widely used software process improvement approaches are based on the experiences gained in other disciplines. However, inherent characteriestics of software development can prevent obtaining satisfactory results when these approaches are applied. In this paper, we discuss potential problems with using the classical process improvement approaches by considering the special structures of software process improvement problems. We classify software process improvement problems as mechanical and organic problems, explain the horizontal change approac HOC-A, as a solution to organic problems and finally suggest the use of the most appropriate approach according to the specific software process improvement problem.
|
|
|
|
Koru, G., Demirors, E., & Demirors, O. (1998). Process-product unification in a decentralized environment: a status report. In Euromicro Conference, 1998. Proceedings. 24th (Vol. 2, pp. 769–774). Vasteräs, Sweden: IEEE Computer Society.
Abstract: Process-product unification and decentralization when considered together reflect the actual behavior of software development organizations. These two concepts enable team members to switch between process and product activities easily, and empower them to take process definition, enactment and monitoring responsibility. In this paper, we investigate the requirements of software development techniques and tools that support unification and decentralization. Our focus is on defining a modeling notation that enables developers to encode both product and process related information, using a single representation that captures all the knowledge related to a specific software project.
|
|
1997 |
|
|
Demirors, O., & Koru, G. (1997). A Process Improvement Case Study Using Horizontal Change Approach. In Proceedings of the 12th International Symposium on Computer and Information Sciences, ISCIS XII (pp. 478–485). Antalya, Turkey.
Abstract: Top-down process improvement approaches have inherent difficulties for software development organizations. HOC-A (Horizontal Change Approach) is a process improvement approach to solve these inherent problems. We applied HOC-A to a change management process in an object-oriented software development environment as a case study. In this paper, we report our experience and explain the benefits of HOC-A. We show how individuals can model their own processes within a larger goal of total process improvement. We also specify conflict resolution activities between the agents. Finally, we explain local parameter resolution technique and express its importance in HOC-A.
|
|