This Friday (November 13, 2015) we are honored to have Dr. Hironori Washizaki from Waseda University (Japan) as speaker.
The similar will start at 13:30 in room M-2109 pavillons Claudette-MacKay-Lassonde et Pierre-Lassonde.
Please find bellow, title, abstract of talk, and biography of Dr. Washizaki.
Title:
Software Maintenance Support by Extracting Links and Models
Abstract:
Extracting missing important links and models from software is the
key to success of its maintenance such as specifying locations that
need correction. This talk firstly introduces two novel techniques
for recovering traceability links precisely between requirements and
program source code: log-based interactive recovery (CAiSE'15) and
transitive recovery (ICSME'15 ERA). Secondly the talk introduces two
novel preventive maintenance techniques employing behavioral model
extraction and model checking targeting Ajax applications: design
pattern based invariants verification (ASE'13) and delay-based
mutation (ASE'14).
Bio:
Hironori Washizaki is head and associate professor at Global
Software Engineering Laboratory, Waseda University, Japan. He is also
visiting associate professor at National Institute of Informatics,
and, visiting professor at Ecole Polytechnique de Montreal during his
sabbatical stay till Dec 2015. He received PhD in Information and
Computer Science from Waseda University in 2003. His research interests
include software and systems requirements, architecture, reuse,
maintenance, quality assurance, and education. He has served on the
organizing committees of many international conferences (such as ASE,
ICST, SPLC, CSEE&T, SEKE, BICT and APSEC) as well as editorial boards
of several international journals (such as Int. J. Soft. Eng. Know.
Eng. and IEICE Trans). He also has served at various professional
societies such as IEEE Computer Society Japan Chapter Chair, SEMAT
Japan Chapter Chair, IPSJ SamurAI Coding Director, and ISO/IEC/
JTC1/SC7/WG20 Convenor. http://www.washi.cs.waseda.ac.jp/?page_id=2
Waseda Super Global University Program and Collaboration in Software PatternsHironori Washizaki
Hironori Washizaki, "Waseda Super Global University Program and Collaboration in Software Patterns", Invited talk at AsianPLoP 2016: 5th Asian Conference on Pattern Languages of Programs, February 24, 2016, Taipei, Taiwan
Recovery of Traceability Links and Behavior Models for Software Maintenance,...Hironori Washizaki
Hironori Washizaki, Recovery of Traceability Links and Behavior Models for Software Maintenance, Keynote, 2016 International Conference for Top and Emerging Computer Scientists (IC-TECS 2016), Taipei, Dec 24, 2016.
Software Maintenance Support by Extracting Links and ModelsHironori Washizaki
Extracting missing important links and models from software is the key to success of its maintenance such as specifying locations that need correction. This talk firstly introduces two novel techniques for recovering traceability links precisely between requirements and program source code: log-based interactive recovery (CAiSE'15) and transitive recovery (ICSME'15 ERA). Secondly the talk introduces two novel preventive maintenance techniques employing behavioral model extraction and model checking targeting Ajax applications: design pattern based invariants verification (ASE'13) and delay-based mutation (ASE'14).
Hironori Washizaki is head and associate professor at Global Software Engineering Laboratory, Waseda University, Japan. He is also visiting associate professor at National Institute of Informatics, and, visiting professor at Ecole Polytechnique de Montreal during his sabbatical stay till Dec 2015. He received PhD in Information and Computer Science from Waseda University in 2003. His research interests include software and systems requirements, architecture, reuse, maintenance, quality assurance, and education. He has served on the organizing committees of many international conferences (such as ASE, ICST, SPLC, CSEE&T, SEKE, BICT and APSEC) as well as editorial boards of several international journals (such as Int. J. Soft. Eng. Know. Eng. and IEICE Trans). He also has served at various professional societies such as IEEE Computer Society Japan Chapter Chair, SEMAT Japan Chapter Chair, IPSJ SamurAI Coding Director, and ISO/IEC/JTC1/SC7/WG20 Convenor. http://www.washi.cs.waseda.ac.jp/?page_id=2
Waseda Super Global University Program and Collaboration in Software PatternsHironori Washizaki
Hironori Washizaki, "Waseda Super Global University Program and Collaboration in Software Patterns", Invited talk at AsianPLoP 2016: 5th Asian Conference on Pattern Languages of Programs, February 24, 2016, Taipei, Taiwan
Recovery of Traceability Links and Behavior Models for Software Maintenance,...Hironori Washizaki
Hironori Washizaki, Recovery of Traceability Links and Behavior Models for Software Maintenance, Keynote, 2016 International Conference for Top and Emerging Computer Scientists (IC-TECS 2016), Taipei, Dec 24, 2016.
Software Maintenance Support by Extracting Links and ModelsHironori Washizaki
Extracting missing important links and models from software is the key to success of its maintenance such as specifying locations that need correction. This talk firstly introduces two novel techniques for recovering traceability links precisely between requirements and program source code: log-based interactive recovery (CAiSE'15) and transitive recovery (ICSME'15 ERA). Secondly the talk introduces two novel preventive maintenance techniques employing behavioral model extraction and model checking targeting Ajax applications: design pattern based invariants verification (ASE'13) and delay-based mutation (ASE'14).
Hironori Washizaki is head and associate professor at Global Software Engineering Laboratory, Waseda University, Japan. He is also visiting associate professor at National Institute of Informatics, and, visiting professor at Ecole Polytechnique de Montreal during his sabbatical stay till Dec 2015. He received PhD in Information and Computer Science from Waseda University in 2003. His research interests include software and systems requirements, architecture, reuse, maintenance, quality assurance, and education. He has served on the organizing committees of many international conferences (such as ASE, ICST, SPLC, CSEE&T, SEKE, BICT and APSEC) as well as editorial boards of several international journals (such as Int. J. Soft. Eng. Know. Eng. and IEICE Trans). He also has served at various professional societies such as IEEE Computer Society Japan Chapter Chair, SEMAT Japan Chapter Chair, IPSJ SamurAI Coding Director, and ISO/IEC/JTC1/SC7/WG20 Convenor. http://www.washi.cs.waseda.ac.jp/?page_id=2
A Taxonomy for Program Metamodels in Program Reverse EngineeringHironori Washizaki
Hironori Washizaki, Yann-Gael Gueheneuc, Foutse Khomh, “A Taxonomy for Program Metamodels in Program Reverse Engineering,” 32nd IEEE International Conference on Software Maintenance and Evolution (ICSME) (CORE Rank A), October 2-10, Raleigh, North Carolina, USA. (to appear) (acceptance rate 29%=37/127) http://www.washi.cs.waseda.ac.jp/
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...Tao Xie
2018 Keynote Speaker, Symposium on Dependable Software Engineering - Theories, Tools and Applications (SETTA 2018). "Intelligent Software Engineering: Synergy between AI and Software Engineering" http://confesta2018.csp.escience.cn/dct/page/65581
Intelligent Software Engineering: Synergy between AI and Software Engineering...Tao Xie
2018 Distinguished Speaker, the UC Irvine Institute for Software Research (ISR) Distinguished Speaker Series 2018-2019. "Intelligent Software Engineering: Synergy between AI and Software Engineering" http://isr.uci.edu/content/isr-distinguished-speaker-series-2018-2019
A Taxonomy for Program Metamodels in Program Reverse EngineeringHironori Washizaki
Hironori Washizaki, Yann-Gael Gueheneuc, Foutse Khomh, “A Taxonomy for Program Metamodels in Program Reverse Engineering,” 32nd IEEE International Conference on Software Maintenance and Evolution (ICSME) (CORE Rank A), October 2-10, Raleigh, North Carolina, USA. (to appear) (acceptance rate 29%=37/127) http://www.washi.cs.waseda.ac.jp/
SETTA'18 Keynote: Intelligent Software Engineering: Synergy between AI and So...Tao Xie
2018 Keynote Speaker, Symposium on Dependable Software Engineering - Theories, Tools and Applications (SETTA 2018). "Intelligent Software Engineering: Synergy between AI and Software Engineering" http://confesta2018.csp.escience.cn/dct/page/65581
Intelligent Software Engineering: Synergy between AI and Software Engineering...Tao Xie
2018 Distinguished Speaker, the UC Irvine Institute for Software Research (ISR) Distinguished Speaker Series 2018-2019. "Intelligent Software Engineering: Synergy between AI and Software Engineering" http://isr.uci.edu/content/isr-distinguished-speaker-series-2018-2019
Presentation I did at the Master Course (UFBA/UEFS) about (1) the role of refactoring and (2) usability in the evolution of APIs. Feel free to download it, so you can see the notes (almost everything is in portuguese, sorry about that )
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
Hironori Washizaki, "Machine Learning Software Engineering Patterns and Their Engineering," 2nd International Workshop on Responsible AI Engineering (RAIE’24), Keynote, Lisbon, April 16th, 2024.
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Hironori Washizaki
Hironori Washizaki, "Patterns for New Software Engineering: Machine Learning and IoT Engineering Patterns", Keynote, AsianPLoP 2020: 9th Asian Conference on Pattern Languages of Programs, Sep 3rd, 2020.
2 September - 4 September, 2020
FANTASIA: A Tool for Automatically Identifying Inconsistency in AngularJS MVC...Misu Md Rakib Hossain
AngularJS is prone to inconsistency issues because
of the abstract interactions between Document Object Model
(DOM) and JavaScript. It creates hidden bugs, and leads the
application to failure. It becomes acute when developers use
custom AngularJS directives for increasing code reusability and
maintainability. To resolve the inconsistency issues, a static code
analysis based approach FANTASIA is proposed. FANTASIA
first extracts Abstract Syntax Tree (AST) and DOM from the
AngularJS application’s MVC modules including its custom
directives. By traversing AST and DOM, next it finds the
defined identifiers along with the associated data types of those
identifiers. Finally, the extracted identifiers and data types are
mapped and compared using a string matching algorithm to
determine the consistency across the application. To evaluate
FANTASIA, 25 open source AngularJS applications are used
where 15 applications contain only MVC modules and rest of
the applications contain both MVC modules and custom directives.
The experimental result shows that FANTASIA produces
overall 97.63% recall and 100% precision to correctly detect
inconsistency in those 15 applications similar to existing approach
AUREBESH. Interestingly, when custom directives are present,
FANTASIA outperforms with a significant increase of overall
96.66% recall and 100% precision comparing to 76.97% recall
and 100% precision of AUREBESH.
The goal of this talk is to highlight open source opportunities for students especially through an opportunity to earn $5000 through Google Summer of Code program. I will discuss some of the tips on how to engage with open source communities, the befits for contributing. I will provide motivating examples on how students can gain significant experience in contributing challenging distributed systems problems while impacting scientific research. I will specifically focus with a concrete example of Apache Airavata software suite for Web-based science gateways. I will list some example GSoC topics of interest and provide some recipes for success in getting accepted and navigating through success.
Information Technology in Industry(ITII) - November Issue 2018ITIIIndustries
IT Industry publishes original research articles, review articles, and extended versions of conference papers. Articles resulting from research of both theoretical and/or practical natures performed by academics and/or industry practitioners are welcome. IT in Industry aims to become a leading IT journal with a high impact factor.
Takashi Kobayashi and Hironori Washizaki, "SWEBOK Guide and Future of SE Education," First International Symposium on the Future of Software Engineering (FUSE), June 3-6, 2024, Okinawa, Japan
Software Engineering Patterns for Machine Learning ApplicationsHironori Washizaki
Hironori Washizaki, Software Engineering Patterns for Machine Learning Applications, 2021 IEEE International Conference on Electronic Technology, Communication and Information (ICETCI 2021), Keynote, August 28, Online, 2021.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Anthony Dahanne
Les Buildpacks existent depuis plus de 10 ans ! D’abord, ils étaient utilisés pour détecter et construire une application avant de la déployer sur certains PaaS. Ensuite, nous avons pu créer des images Docker (OCI) avec leur dernière génération, les Cloud Native Buildpacks (CNCF en incubation). Sont-ils une bonne alternative au Dockerfile ? Que sont les buildpacks Paketo ? Quelles communautés les soutiennent et comment ?
Venez le découvrir lors de cette session ignite
Accelerate Enterprise Software Engineering with PlatformlessWSO2
Key takeaways:
Challenges of building platforms and the benefits of platformless.
Key principles of platformless, including API-first, cloud-native middleware, platform engineering, and developer experience.
How Choreo enables the platformless experience.
How key concepts like application architecture, domain-driven design, zero trust, and cell-based architecture are inherently a part of Choreo.
Demo of an end-to-end app built and deployed on Choreo.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfJay Das
With the advent of artificial intelligence or AI tools, project management processes are undergoing a transformative shift. By using tools like ChatGPT, and Bard organizations can empower their leaders and managers to plan, execute, and monitor projects more effectively.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
How to Position Your Globus Data Portal for Success Ten Good Practices
Software Maintenance Support by Extracting Links and Models (revised)
1. Software Maintenance Support by
Extracting Links and Models
(revised)
Hiro - Hironori Washizaki
Waseda University / National Institute of Informatics
Twitter: @Hiro_Washi washizaki@waseda.jp
http://www.washi.cs.waseda.ac.jp/
PolyMORSE Seminar @ Ecole Polytechnique de Montreal, Nov 13, 2015
2. Software maintenance matters!
60–90% of total costs
2
B. Lientz and E. Swanson, Software Maintenance Management. Reading, Ma.: Addison-Wesley, 1980.
J. Conejero, E. Figueiredo, A. Garcia, J. Hernández and E. Jurado, "On the Relationship of Concern
Metrics and Requirements Maintainability,” Information and Software Technology, vol.54, no.2, 2012.
3. How can we support?
3
Requirements
Design
Program
source
code
4. How can we support?
4
Requirements
Design
Program
source
code
Tracing
artifacts
Tracing
artifacts
Log-based interactive recovery [CAiSE’15]
Transitive recovery [ICSME’15 ERA]
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
Kazuki Nishikawa, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Ohshima, Ryota Mibe, “Recovering Transitive Traceability Links
among Software Artifacts,” 31st IEEE International Conference on Software Maintenance and Evolution (ICSME 2015), ERA Track
5. Facts of traceability links
• Relationships among software artifacts
• Key to ensure consistency among artifacts [Antoniol‘00]
• Rarely established explicitly [Lucia’12]
• Most of existing recovery techniques employing
Information Retrieval (IR) approaches such as TF/IDF and
Vector Space Model (VSM)
5
[Antoniol’00] G. Antoniol, B. Caprile, A. Potrich and P. Tonella, "Design-Code Traceability for Object-Oriented
Systems," Annals of Software Engineering, vol. 9, no. 1-4, pp. 35-58, 2000
[Lucia’12] A. De Lucia, et al., "Information Retrieval Methods for Automated Traceability Recovery," in Software and
Systems Traceability, 1st ed., J. Cleland-Huang, O. Gotel and A. Zisman, Ed. New York: Springer, p. 71-98, 2012.
Automated test
Automated.c
MyMem.c
Initialization
Requirement
基本テスト
Basic.c
NGOK
6. Interactive recovery utilizing call relationships
Rank Requirement Code file Score Recommended Correct
1 Recover link
2 Recover link
3 Recover link
・・・ ・・・
6
Recover link
・・・
LinkPresenter.java
・・・
LinkRecover.java
ScoreCalc.java
・・・
Call
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
7. Interactive recovery utilizing call relationships
Rank Requirement Code file Score Recommended Correct
1 Recover link LinkRecover.java 0.98 not yet
2 Recover link LinkPresenter.java 0.65 not yet
3 Recover link ScoreCalc.java 0.30 not yet
・・・ ・・・ ・・・ ・・・
7
Recover link
・・・
LinkPresenter.java
・・・
LinkRecover.java
ScoreCalc.java
・・・
☑
Call
☑
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
8. Interactive recovery utilizing call relationships
Rank Requirement Code file Score Recommended Correct
1 Recover link LinkRecover.java 0.98 not yet
2 Recover link ScoreCalc.java 0.30 Recommended
3 Recover link LinkPresenter.java 0.65 not yet
・・・ ・・・ ・・・ ・・・
8
Recover link
・・・
LinkPresenter.java
・・・
LinkRecover.java
ScoreCalc.java
・・・
☑
Call
☑
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
9. Automated test
Log-based recovery
9
Automated test
automate・・
・・XML・・・
・test・・・・・・
Requirement
automate
XML
test
automate
XML
Keywords
High
TF-IDF value
Proper noun
Filtered
by experts
automate
XML
Revision: 137
Author: anilsaharan
Date: 2011/8/20 9:35:13
Message:
Changes for fixing XML tag issue
----
Modified : /trunk/CUnit/Sources/Tool/Process.c
Process.c
・・・
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
10. Experiment: Japanese enterprise system
• 80,000 LOC, 192 requirements, 694 Java code files,
7090 revisions in Subversion
• 726 known links as correct answer
10
Ryosuke Tsuchiya, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Oshima, and Ryota Mibe,“Interactive Recovery of Requirements
Traceability Links Using User Feedback and Configuration Management Logs,” 27th International Conference on Advanced
Information Systems Engineering (CAiSE 2015)
11. Transitive recovery
11
Code Design Test Score
C1 Da Tx 0.16
C1 Da Ty 0.14
C1 Db Tx 0.03
• Vector Space Model (VSM) for basic recovery
Source code Design Test case
Code Design Similarity
C1 Da 0.4
C2 Db 0.3
Design Test Similarity
Da Tx 0.40
Da Ty 0.35
Db Tx 0.10
Kazuki Nishikawa, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Ohshima, Ryota Mibe, “Recovering Transitive Traceability Links
among Software Artifacts,” 31st IEEE International Conference on Software Maintenance and Evolution (ICSME 2015), ERA Track
12. Experiment: EasyClinic
• Target link: 47 Java code ⇔ 63 test docs
• Supportive artifacts: 20 design docs or 30 use cases
• Effectiveness varies with supportive artifacts
12Kazuki Nishikawa, Hironori Washizaki, Yoshiaki Fukazawa, Keishi Ohshima, Ryota Mibe, “Recovering Transitive Traceability Links
among Software Artifacts,” 31st IEEE International Conference on Software Maintenance and Evolution (ICSME 2015), ERA Track
13. Related work and future
• Related work
– Relevance feedback for traceability recovery [Lucia’06]
– Multi-faceted Interactive Exploration [Wanget’13]
– Recovery based on call or structural relationships in
program [Kagdi’07][CSIE’09][Ghabiand’12]
• Possible future work
– More sophisticated NLP and IR approaches (such as LSA,
LDA and ontology) for basic recovery
– Probability-based combination of similarity scores
13
[Lucia’06] Andrea De Lucia, Rocco Oliveto, and Paola Sgueglia, Incremental Approach and User Feedbacks: a Silver Bullet for
Traceability Recovery? , ICSM2006
[Wanget’13] J Wanget al., Improving Feature Location Practice with Multi-faceted Interactive Exploration, ICSE2013
[Kagdi’07] H. Kagdi, J. Maletic, and B. Sharif, “Mining Software Repositories for Traceability Links,” Proc. 15th IEEE Int’l Conf.
Program Comprehension, pp. 145-154, June, 2007.
[Kassab’09] M. Kassab, O. Ormandjieva, and M. Daneva, “A metamodel for tracing non-functional requirements,” WRI World
Congress on Computer Science and Information Engineering (CSIE’09), vol.7, pp.687-694, March, 2009.
[Ghabiand’12] A. Ghabiand A. Egyed., Code Patterns for Automatically Validating Requirements-to-Code Traces, ASE2012
14. How can we support?
14
Requirements
Design
Program
source
code
Yuta Maezawa, Kazuki Nishiura, Hironori Washizaki, Shinichi Honiden, “Validating Ajax Applications Using a Delay-Based Mutation
Technique,” 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014)
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
15. How can we support?
15
Requirements
Design
Program
source
code
Reversing
model
Detecting
problems
Detecting
problems
Ajax model extraction and verification
[ASE’13][ASE’14]
Yuta Maezawa, Kazuki Nishiura, Hironori Washizaki, Shinichi Honiden, “Validating Ajax Applications Using a Delay-Based Mutation
Technique,” 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014)
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
16. 16
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
reqRunTrans();
} else {
alert(“Invalid user inputs”);
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded });
};
function succeeded() { disableAll();
jumpToConfirm();
};Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
17. 17
Extracted finite state machine
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
18. • #70 programming and usability patterns
• Potential faults: might not be revealed by testing
Ajax (Asynchronous JavaScript + XML)
Design Patterns [Mahamoff’06]
18
[Mahamoff’06] M. Mahamoff, “Ajax Design Patterns”, O’Reilly Media Inc., 2006.
(i) Page load
(ii) Option select
(iii) Add to cart
E.g. User Action
“Prevent multiple
calls of specific user
event handler”
Duplicate
order
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
19. Duplicate
order
19
Verifying invariants of specified pattern
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
20. 20
window.onload = setEventHandler;
function setEventHandler() {
$(“reg_type”).onchange = calcPrice;
・・・
$(“reg_addcart”).onclick = addCart;
};
function calcPrice() { ・・・ };
function addCart() {
if(isValidInput()) {
$(“addCart”).disabled = true;
reqRunTrans();
} else {
alert(“Invalid user inputs”);
$(“addCart”).disabled = false;
}
};
function reqRunTrans() {
new Ajax.Request(“runTrans.php”, {
method: “GET”, parameters: getParams(),
onSuccess: succeeded }); };
function succeeded() { disableAll();
jumpToConfirm(); };Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
21. • Developers are concerned with interactions[Duhl’03]
• Interaction = event + callback
• Rules are necessary for distinguishing interaction-
related code fragments
Interaction-based state machine extraction
21
………………………………
………………………………
………………………………
………………………………
…………………………….…
………………………………
……………………………
function addCart() {…
………………………………
……………………..……
………………………………………
………………………………………
$(“addcart”).disabled=true;
………………………………………
………………………………………
……………………………………
…………
…………
…………
………………………………
………………………..……
………………………………
………………………………
………………………………
………………………………
………………………………
………………………………
………………………………
………………………………
…………………………
……………………………………………
……………………………………………
function setEventHandler() {
$(“addcart”).onclick=addCart;
……………………………………………
……………………………………………
……………………………………………
……………………………………………
……………………………………………
onclick
setEventHandler
ev
addCart
…disabled…
[c]
[!c]
[Duhl’03] J.Duhl, “White Paper: Rich Internet Applications”, IDC Technical Report’ 03.
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
22. Verification on Promela with LTL
22
Self interaction
User Server
active proctype
App () {…}
App model
active proctype
Interaction () {…}
Interaction model Faulty execution paths
Verification formulas (LTL)
Pattern Negative property
User Action <>(App_state == PreventFunc
&& App_event == UserEvent )
Yuta Maezawa, Hironori Washizaki, Yoshinori Tanabe and Shinichi Honiden, “Automated Verification of Pattern-based Interaction
Invariants in Ajax Applications,” 28th IEEE/ACM International Conference on Automated Software Engineering (ASE2013)
23. • Problem: Potential faults might not cause actual errors
• Assumption: Unexpected network latency make
potential faults executable.
• Solution: Delay-based mutation and testing
Delay-based mutation
23
<button onclick=“handleClick()” />
・・・
<script src=“handleClick.js” />
new DelayedRequest(3000).applyFunction(
$.get ,
“myscript.php”,
{ name: “ABC” }, function(data) {
alert(“Response is ” + data); }
);
Synchronous delay Asynchronous delay
Original code
S1
S2
S3
Late
response
reveals!
Assumes
immediate
response
Yuta Maezawa, Kazuki Nishiura, Hironori Washizaki, Shinichi Honiden, “Validating Ajax Applications Using a Delay-Based Mutation
Technique,” 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014)
24. Case Study: industrial services
24
Subject
JS
[LOC]
#States #Trans.
#Invariants
verified
#Potential
faults
#Delay-
Dependent
faults
2020
Marketing
2,468 15 547 4 1 1
ECD China 880 32 508 3 2 1
Easy
Serviced
Apartments
3,523 34 602 3 1 1
Undefined
function call
Login failed
with correct
username and
password
Yuta Maezawa, Kazuki Nishiura, Hironori Washizaki, Shinichi Honiden, “Validating Ajax Applications Using a Delay-Based Mutation
Technique,” 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014)
25. • Related work: state-based analysis and testing
– Hard to find potential faults
– ReAjax[Marchetto’08]: DOM*/callback-exec as state/trans
– Crawljax[Mesbah’09]: Crawler for Ajax apps
– Artemis[Artzi’11]: Event sequences priorities
• Future work
– Automated debugging: using solutions in patterns
– More mutation operators to reveal actual errors due to
other potential faults except for ones related to delay
– Case studies on large-scale Ajax applications
Related work and future
25
[Marchetto’08] A. Marchetto, P. Tonella, and F. Ricca, “State-based testing of ajax web applications,” in Proc. Int’l
Conf. on Software Testing, Verification and Validation (ICST’08), Apr. 2008, pp. 121–130.
[Mesbah’09] A. Mesbah and A. van Deursen, “Invariant-based automatic testing of ajax user interfaces,” in Proc.
Int’l Conf. on Software Engineering (ICSE’09), May 2009, pp. 210–220.
[Artzi’11] S. Artzi, J. Dolby, S. H. Jensen, A. Moller, and F. Tip, “A framework for automated testing of javascript
web applications,” in Proc. Int’l Conf. on Software Engineering (ICSE’11), May 2011, pp. 571–580.
27. 27
Feb 24-26 (due Dec 4)
asianplop.org
Mar 15 (due Dec 11)
ppap.soccerlab.polymtl.ca
Mar 11 (due Jan 8)
samuraicoding.info
Mar 13-18 (due Sep 2016)
aster.or.jp/conference/icst2017/
10th IEEE International Conference on
Software Testing, Verification and Validation
IPSJ International AI Programming Contest