Abstract-We report on work that is part of the development of an agent-based structural health monitoring system. The data used are acoustic emission signals, and we classify these signals according to source mechanisms, those associated with crack growth being particularly significant. The agents are proxies for communication-and computation-intensive techniques and respond to the situation at hand by determining an appropriate constellation of techniques. It is critical that the system have a repertoire of classifiers with different characteristics so that a combination appropriate for the situation at hand can generally be found. We use unsupervised learning for identifying the existence and location of damage but supervised learning for identifying the type and severity of damage. The supervised learning techniques investigated are support vector machines (SVM), naive Bayes classifiers, and feed-forward neural networks (FNN). The unsupervised learning techniques investigated are k-means (with k equal to 3, 4, 5, and 6) and self-organizing maps (SOM, with 3, 4, 5, and 6 output neurons). For each technique except SOM, we tested versions with and without principal component analysis (PCA) to reduce the dimensionality of the data. We found significant differences in the characteristics of these machine learning techniques, with trade-offs between accuracy and fast classification runtime that can be exploited by the agents in finding appropriate combinations of classification techniques. The approach followed here can be generalized for exploring the characteristics of machine-learning techniques for monitoring various kinds of structures.
Writing secure code is critical because a large fraction of security incidents result from flaws in the code. In order to effectively teaching knowledge of secure software engineering we have developed a course module titled "Introduction to Writing Secure Code". This paper presents the content of this module and reports our teaching experiences. This module has been successfully taught in GEEN 163 Introduction to Java Programming class and GEEN 165 Computer Programming Design class in Spring 2011 in the Department of Computer Science at xxx University. Our experience exhibits that teaching this module in freshman and sophomore levels help students not only understand the impacts of insecure code, but also gain significant knowledge of safe programming practice. Students' survey and feedback reflected that this module is very valuable in their educational experience. This module could be taught in first year freshman and second year sophomore classes of software engineering, computer science and information technology.
(Abstract)Keywords: secure software engineering education, secure code I.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.