Implementing agglomerative hierarchic clustering algorithms for use in document retrieval
Information Processing and Management: an International Journal
Algorithms for clustering data
Algorithms for clustering data
Measuring software design quality
Measuring software design quality
Object-oriented analysis and design with applications (2nd ed.)
Object-oriented analysis and design with applications (2nd ed.)
Applying UML and patterns: an introduction to object-oriented analysis and design
Applying UML and patterns: an introduction to object-oriented analysis and design
Applying use cases: a practical guide
Applying use cases: a practical guide
Program design by informal English descriptions
Communications of the ACM
Writing Effective Use Cases
Software Design
Using Clustering Algorithms in Legacy Systems Remodularization
WCRE '97 Proceedings of the Fourth Working Conference on Reverse Engineering (WCRE '97)
Data Mining: Concepts and Techniques
Data Mining: Concepts and Techniques
Does Requirements Clustering Lead to Modular Design?
REFSQ '09 Proceedings of the 15th International Working Conference on Requirements Engineering: Foundation for Software Quality
Pattern-based generation of test plans for open distributed processing systems
Proceedings of the 5th Workshop on Automation of Software Test
TORC: test plan optimization by requirements clustering
Software Quality Control
Hi-index | 0.00 |
Software modularity is not a new concept in the software engineering field; it has been a design issue since the earliest days of software development. Because the software designer cannot be expected to conceptualize a complex software application as a whole, it is usual to create a top-level design which is decomposed into a set of modules. The degree of modularization is a subjective concept that is difficult to measure; however, coupling and cohesion are two well-known concepts that are used to characterize software modularization.In this paper we illustrate how requirement scenarios can be clustered, based on attributes identified in the scenarios to quantitatively assess software modularization. Our technique uses a data mining clustering method that clusters scenarios, so that those scenarios within a cluster have a strong functional relationship with one another and weak relationships with scenarios in other clusters. Hence, cohesion within clusters is maximized while coupling between clusters is minimized. Consequently, software modularization based on these clusters should provide a good initial design.