ABSTRACT
A key challenge facing IT organizations today is their evolution towards adopting e-business practices that gives rise to the need for reengineering their underlying software systems. Any reengineering effort has to be aware of the functional requirements of the subject system, in order not to violate the integrity of its intended uses. However, as software systems get regularly maintained throughout their lifecycle, the documentation of their requirements often become obsolete or get lost. To address this problem of "software requirements loss", we have developed an interaction-pattern mining method for the recovery of functional requirements as usage scenarios. Our method analyzes traces of the run-time system-user interaction to discover frequently recurring patterns; these patterns correspond to the functionality currently exercised by the system users, represented as usage scenarios. The discovered scenarios provide the basis for reengineering the software system into web-accessible components, each one supporting one of the discovered scenarios. In this paper, we describe IPM2, our interaction-pattern discovery algorithm, we illustrate it with a case study from a real application and we give an overview of the reengineering process in the context of which it is employed.
- Agrawal, R. and Srikant, R. Mining Sequential Patterns. In Proc. of the 11th Int. Conf. on Data Engineering, 3--14, IEEE Comp. Soc. Press, 1995. Google ScholarDigital Library
- Bairoch, A. and Bucher, P. PROSITE: Recent Developments, Nucleic Acids Research, vol. 22, 3583--3589, 1994.Google ScholarCross Ref
- Baixeries, J., Casas, G. and Balcazar, J. L. Frequent Sets, Sequences, and Taxonomies: New, Efficient Algorithmic Proposals. Report Number: LSI-00-78-R, El departament de Llenguatges i Sistemes Informàtics, Universitat Politécnica de Catalunya, Spain, Dec. 2000.Google Scholar
- Biuk-Aghai, R. and Simoff, S. Assisting the Design of Virtual Work Processes via On-line Reverse Engineering. In Proc. of 35th Hawaii Int. Conf. on System Sciences, IEEE Comp. Soc. Press, USA, 2002. Google ScholarDigital Library
- Brejova, B., DiMarco, C., Vinar, T., Hidalgo, S. R., Holguin, G. and Patten, C. Finding Patterns in Biological Sequences. Unpublished project report for CS798G, University of Waterloo, Fall 2000.Google Scholar
- Chikofsky, E. and Cross, J.H.II. Reverse Engineering and Design Recovery: A Taxonomy. IEEE Software, vol. 7, no. 1, 13--17, Jan. 1990. Google ScholarDigital Library
- Cypher, A. (ed.). Watch What I Do: Programming by Demonstration, MIT Press, Cambridge, MA, 1993. Google ScholarDigital Library
- Di Lucca, G., Fasolino, A., and De Carlini, U. Recovering Use Case Models from Object-oriented Code: A Thread-based Approach. In Proc. of 7th Working Conf. on Reverse Eng. (WCRE 2000), 108--117, IEEE Comp. Soc. Press, 2000. Google ScholarDigital Library
- El-Ramly, M., Iglinski, P., Stroulia, E., Sorenson, P. and Matichuk, B. Modeling the System-User Dialog Using Interaction Traces. In Proc. 8th Working Conf. on Reverse Eng. (WCRE 2001), 208--217, IEEE Comp. Soc. Press, Oct. 2001. Google ScholarDigital Library
- El-Ramly, M, Stroulia E., and Sorenson, P. Mining System-User Interaction Traces for Use Case Models. In Proc. of the 10th Int. Workshop on Program Comprehension (IWPC 2002), IEEE Comp. Soc. Press, France, Oct. 2002. Google ScholarDigital Library
- El-Ramly, M., Stroulia E. and Sorenson, P. Recovering Software Requirements from System-user Interaction Traces, In Proc. of 14th Int. Conf. on Software Eng. and Knowledge Eng. (SEKE'02), ACM Press, Italy, 2002. Google ScholarDigital Library
- Finnigan, P., Holt, R., Kalas, I., Kerr, S., Kontogiannis, K., Muller, H., Mylopoulos, J., Perelgut, S., Stanley, M. and Wong, K. The Software Bookshelf. IBM Systems Journal, vol. 36, no. 4, 564--594, 1997. Google ScholarDigital Library
- Floratos, A. Pattern Discovery in Biology: Theory and Applications. Ph.D. Thesis, Department of Computer Science, New York University, Jan. 1999. Google ScholarDigital Library
- Jonassen, I. Methods for Finding Motifs in Sets of Related Biosequences. Dr. Scient Thesis, Dept. of Informatics, Univ. of Bergen, 1996.Google Scholar
- Kapoor, R. and Stroulia, E. Simultaneous Legacy Interface Migration to Multiple Platforms. In Proc. 9th Int. Conf. on Human-Computer Interaction, vol. 1, 51--55, Lawrence Erlbaum Associates, Aug. 2001.Google Scholar
- Lehman, M., Ramil, J., Wernick, P. and Perry, D. Metrics and Laws of Software Evolution -- The Nineties View. In Proc. of the 4th Int. Software Metrics Symposium (METRICS '97), 20--32, 1997. Google ScholarDigital Library
- Mannila, H., Toivonen, H. and Verkamo, A. I. Discovery of Frequent Episodes in Event Sequences. Data Mining and Knowledge Discovery, vol. 1, no. 3, 259--289, Nov. 1997. Google ScholarDigital Library
- Mortazavi-Asl, B. Discovering and Mining User Web-page Traversal Patterns. M.Sc. Thesis, The School of Computing Science, Simon Fraser Univ. Canada, 2001.Google Scholar
- Müller, H., Orgun, M., Tilley, S. and Uhl, J. A reverse engineering approach to subsystem structure identification. J. of Software Maintenance: Research and Practice, vol. 5, no. 4, 181--204, Dec. 1993.Google ScholarCross Ref
- Stroulia, E., El-Ramly, M., Kong, L., Sorenson, P. and Matichuk, B. Reverse Engineering Legacy Interfaces: An Interaction-Driven Approach. In Proc. 8th Working Conf. on Reverse Eng. (WCRE 1999), 292--302, IEEE Comp. Soc. Press, 1999. Google ScholarDigital Library
- Stroulia, E., El-Rarely, M., Sorenson, P., and Penner, R. Legacy Systems Migration in CelLEST. Short Research Demonstration. In Proc. of the 22nd Int. Conf. on Software Engineering (ICSE 2000), pp. 790, Ireland, 2000. Google ScholarDigital Library
- Parnas, D. Software Aging. in Proc. 16th Int. Conf. on Software Engineering (ICSE'94), 279--287, 1994. Google ScholarDigital Library
- Quilici, A., Woods S. and Zhang, Y. Program Plan Matching: Experiments with a Constraint-Based Approach. Science Of Computer Programming, vol. 36, no. 2--3, 285--302, 2000. Google ScholarDigital Library
- Wills, L. Automated Program Recognition: A Feasibility Demonstration. Artificial Intelligence, vol. 45, no. 1--2, 113--168, Sept. 1990. Google ScholarDigital Library
Index Terms
- From run-time behavior to usage scenarios: an interaction-pattern mining approach
Recommendations
Combining Requirements and Interaction Design through Usage Scenarios
INTERACT '09: Proceedings of the 12th IFIP TC 13 International Conference on Human-Computer Interaction: Part IIWhen the requirements and the interaction design of a system are separated, they will most likely not fit together, and the resulting system will be less than optimal. Even if all the real needs are covered in the requirements and also implemented, ...
How to combine requirements and interaction design through usage scenarios
INTERACT'07: Proceedings of the 11th IFIP TC 13 international conference on Human-computer interaction - Volume Part IIWhen the requirements and the interaction design of a system are separated, they will most likely not fit together, and the resulting system will be less than optimal. Even if all the real needs are covered in the requirements and also implemented, ...
Two-Layer Wrapping for COTS Software Integration: An Experience with Matlab
Although commercial-off-the-shelf (COTS) product integration presents clear advantages in a variety of engineering fields, several problems can arise in part due to their heterogeneous nature. Little research addresses the integration of particular COTS ...
Comments