T#1: Smart Contract Analisys
Presenter:
Sangharatna Godboley
National Institute of Technology, Warangal, Telangana, India
Abstract:
Smart contracts, self-executing contracts with the terms of the agreement directly written into code, have gained significant traction in decentralized applications, particularly on blockchain platforms. As the adoption of smart contracts continues to rise, the need for robust analysis tools becomes imperative. This tutorial delves into the realm of Smart Contract Analysis, exploring techniques and methodologies aimed at ensuring the security, reliability, and efficiency of these programmable agreements. The tutorial begins with an overview of smart contracts, elucidating their functionality, and the pivotal role they play in various blockchain ecosystems. It then delves into the inherent security challenges associated with smart contracts, emphasizing the susceptibility to vulnerabilities such as reentrancy, overflow, and permission issues. The tutorial elucidates advanced program analysis concepts and methodologies, providing insights into techniques like Bounded Model Checking, Fuzzing, and Dynamic Symbolic Execution (DSE), tailored specifically for smart contract environments. Furthermore, the tutorial outlines the presenter's contributions to the field, including the development and application of tools. These tools aim to enhance smart contract analysis by addressing critical aspects such as vulnerability detection, test case generation, and code coverage measurement. The tutorial emphasizes practical aspects, offering participants hands-on experience with the tools and techniques discussed, fostering a comprehensive understanding of smart contract analysis in real-world scenarios.
In conclusion, this tutorial equips participants with the knowledge and tools necessary to navigate the intricate landscape of smart contract analysis. By addressing security concerns and leveraging advanced analysis techniques, the tutorial empowers participants to contribute to the development of secure and reliable smart contracts, thereby advancing the broader field of blockchain technology.
Bios:
Dr. Sangharatna Godboley completed his M.Tech and Ph.D. from the National Institute of Technology Rourkela, India. He served as a Researcher at the School of Computing, National University Singapore, and later as a Postdoctoral Research Fellow in the same institution. Currently, he holds the position of Assistant Professor in the Department of Computer Science and Engineering at the National Institute of Technology Warangal, India.
His research interests span various areas, including Program Analysis, Software Testing, Security, Verification, and Smart Contracts. Specifically, he focuses on Bounded Model Checking, Fuzzing, Dynamic Symbolic Execution (DSE), Mutation Testing, and Combinatorial Testing. He is a team member of the Tracer-X Research group.
T#2: Specifying Requirements through Interaction Design
Presenter:
Hermann Kaindl
Vienna University of Technology (TU Wien), Vienna, Austria
Abstract:
When 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, errors may be induced by human-computer interaction through a bad interaction design and its resulting user interface. Such a system may even not be used at all. Alternatively, a great user interface of a system with features that are not required will not be very useful as well.
This tutorial explains joint modeling of (communicative) interaction design and requirements, through discourse models and ontologies. Our discourse models are derived from results of human communication theories, cognitive science and sociology (even without employing speech or natural language). While these models were originally devised for capturing interaction design, it turned out that they can be also viewed as specifying classes of scenarios, i.e., use cases. In this sense, they can also be utilized for specifying requirements. Ontologies are used to define domain models and the domains of discourse for the interactions with software systems. User interfaces for these software systems can be generated semi-automatically from our discourse models, domain-of-discourse models and specifications of the requirements. This is especially useful when user interfaces for different devices are needed. Specific usability requirements can be dealt with in our approach through advanced customization approaches. Hence, interaction design facilitates requirements engineering to make applications both more useful and usable.
Bios:
Prof. Hermann Kaindl joined the Institute of Computer Technology in early 2003 as a full professor, where he served in this position until September 2022, for several years as the department head and the head of the organizational unit entitled “Software-intensive Systems”. He served for several years as a member of the Senate at TU Wien, from October 2019 until September 2022 as a Vice Chairman. After his retirement, Hermann Kaindl is still working on (funded) research projects. Prior to moving to academia, he was a senior consultant with the division of program and systems engineering at Siemens AG Austria.
There he has gained more than 24 years of industrial experience in requirements and software engineering, human-computer interaction and artificial intelligence. He has published several books and more than 250 papers in refereed journals, books and conference proceedings. He is a Senior Member of the IEEE and a Distinguished Scientist Member of the ACM.