Allgemein
Ontology-Based Information Retrieval for Healthcare Systems
With the advancements of semantic web, ontology has become the crucial mechanism for representing concepts in various domains. For research and dispersal of customized healthcare services, a major challenge is to efficiently retrieve and analyze individual patient data from a large volume of heterogeneous data over a long time span. This requirement demands effective ontology-based information retrieval approaches for clinical information systems so that the pertinent information can be mined from large amount of distributed data.This unique and groundbreaking book highlights the key advances in ontology-based information retrieval techniques being applied in the healthcare domain and covers the following areas:* Semantic data integration in e-health care systems* Keyword-based medical information retrieval* Ontology-based query retrieval support for e-health implementation* Ontologies as a database management system technology for medical information retrieval* Information integration using contextual knowledge and ontology merging* Collaborative ontology-based information indexing and retrieval in health informatics* An ontology-based text mining framework for vulnerability assessment in health and social care* An ontology-based multi-agent system for matchmaking patient healthcare monitoring* A multi-agent system for querying heterogeneous data sources with ontologies for reducing cost of customized healthcare systems* A methodology for ontology based multi agent systems development* Ontology based systems for clinical systems: validity, ethics and regulationVISHAL JAIN is an associate professor at Bharati Vidyapeeth's Institute of Computer Applications and Management (BVICAM), New Delhi, India. He has more than 350 research citation indices with Google Scholar (h-index score 9 and i-10 index 9). He has authored more than 70 research papers in reputed conferences and journals indexed by Web of Science and Scopus, as well as authored and edited more than 10 books with various international publishers. His research areas include information retrieval, semantic web, ontology engineering, data mining, adhoc networks, and sensor networks. RITIKA WASON is currently working as an associate professor at Bharati Vidyapeeth's Institute of Computer Applications and Management (BVICAM), New Delhi. She completed her PhD degree in Computer Science from Sharda University. She has more than 10 years of teaching experience and has authored as well as edited several books in computer science and has been a recipient of many awards and honors. JYOTIR MOY CHATTERJEE is currently an assistant professor in the IT department at Lord Buddha Education Foundation (Asia Pacific University of Technology & Innovation), Kathmandu, Nepal. He has completed M. Tech from Kalinga Institute of Industrial Technology, Bhubaneswar, Odisha and B. Tech in Computer Science & Engineering from Dr. MGR Educational & Research Institute, Chennai. His research interests include the cloud computing, big data, privacy preservation, data mining, Internet of Things, machine learning. DAC-NHUONG LE, PhD is the Head-Deputy of Faculty of Information Technology, Haiphong University, Vietnam. He has a total academic teaching experience of 10 years with many publications in reputed international conferences, journals and online book chapter contributions. He researches interests span the optimization and algorithmic mathematics underpinnings of network communication, security and vulnerability, network performance analysis, and cloud computing. Preface xixAcknowledgment xxiii1 ROLE OF ONTOLOGY IN HEALTH CARE 1Sonia Singla1.1 Introduction 21.2 Ontology in Diabetes 31.2.1 Ontology Process 41.2.2 Impediments of the Present Investigation 51.3 Role of Ontology in Cardiovascular Diseases 61.4 Role of Ontology in Parkinson Diseases 81.4.1 The Spread of Disease With Age and Onset of Disease 101.4.2 Cost of PD for Health Care, Household 111.4.3 Treatment and Medicines 111.5 Role of Ontology in Depression 131.6 Conclusion 151.7 Future Scope 15References 152 A STUDY ON BASAL GANGLIA CIRCUIT AND ITS RELATION WITH MOVEMENT DISORDERS 19Dinesh Bhatia2.1 Introduction 192.2 Anatomy and Functioning of Basal Ganglia 212.2.1 The Striatum-Major Entrance to Basal Ganglia Circuitry 222.2.2 Direct and Indirect Striatofugal Projections 232.2.3 The STN: Another Entrance to Basal Ganglia Circuitry 252.3 Movement Disorders 262.3.1 Parkinson Disease 262.3.2 Dyskinetic Disorder 272.3.3 Dystonia 282.4 Effect of Basal Ganglia Dysfunctioning on Movement Disorders 292.5 Conclusion and Future Scope 31References 313 EXTRACTION OF SIGNIFICANT ASSOCIATION RULES USING PRE- AND POST-MINING TECHNIQUES—AN ANALYSIS 37M. Nandhini and S. N. Sivanandam3.1 Introduction 383.2 Background 393.2.1 Interestingness Measures 393.2.2 Pre-Mining Techniques 403.2.2.1 Candidate Set Reduction Schemes 403.2.2.2 Optimal Threshold Computation Schemes 413.2.2.3 Weight-Based Mining Schemes 423.2.3 Post-Mining Techniques 423.2.3.1 Rule Pruning Schemes 433.2.3.2 Schemes Using Knowledge Base 433.3 Methodology 443.3.1 Data Preprocessing 443.3.2 Pre-Mining 463.3.2.1 Pre-Mining Technique 1: Optimal Support and Confidence Threshold Value Computation Using PSO 463.3.2.2 Pre-Mining Technique 2: Attribute Weight Computation Using IG Measure 483.3.3 Association Rule Generation 503.3.3.1 ARM Preliminaries 503.3.3.2 WARM Preliminaries 523.3.4 Post-Mining 563.3.4.1 Filters 563.3.4.2 Operators 583.3.4.3 Rule Schemas 583.4 Experiments and Results 593.4.1 Parameter Settings for PSO-Based Pre-Mining Technique 603.4.2 Parameter Settings for PAW-Based Pre-Mining Technique 603.5 Conclusions 63References 654 ONTOLOGY IN MEDICINE AS A DATABASE MANAGEMENT SYSTEM 69Shobowale K. O.4.1 Introduction 704.1.1 Ontology Engineering and Development Methodology 724.2 Literature Review on Medical Data Processing 724.3 Information on Medical Ontology 754.3.1 Types of Medical Ontology 754.3.2 Knowledge Representation 764.3.3 Methodology of Developing Medical Ontology 764.3.4 Medical Ontology Standards 774.4 Ontologies as a Knowledge-Based System 784.4.1 Domain Ontology in Medicine 794.4.2 Brief Introduction of Some Medical Standards 814.4.2.1 Medical Subject Headings (MeSH) 814.4.2.2 Medical Dictionary for Regulatory Activities (MedDRA) 814.4.2.3 Medical Entities Dictionary (MED) 814.4.3 Reusing Medical Ontology 824.4.4 Ontology Evaluation 854.5 Conclusion 864.6 Future Scope 86References 875 USING IOT AND SEMANTIC WEB TECHNOLOGIES FOR HEALTHCARE AND MEDICAL SECTOR 91Nikita Malik and Sanjay Kumar Malik5.1 Introduction 925.1.1 Significance of Healthcare and Medical Sector and Its Digitization 925.1.2 e-Health and m-Health 925.1.3 Internet of Things and Its Use 945.1.4 Semantic Web and Its Technologies 965.2 Use of IoT in Healthcare and Medical Domain 985.2.1 Scope of IoT in Healthcare and Medical Sector 985.2.2 Benefits of IoT in Healthcare and Medical Systems 1005.2.3 IoT Healthcare Challenges and Open Issues 1005.3 Role of SWTs in Healthcare Services 1015.3.1 Scope and Benefits of Incorporating Semantics in Healthcare 1015.3.2 Ontologies and Datasets for Healthcare and Medical Domain 1035.3.3 Challenges in the Use of SWTs in Healthcare Sector 1045.4 Incorporating IoT and/or SWTs in Healthcare and Medical Sector 1065.4.1 Proposed Architecture or Framework or Model 1065.4.2 Access Mechanisms or Approaches 1085.4.3 Applications or Systems 1095.5 Healthcare Data Analytics Using Data Mining and Machine Learning 1105.6 Conclusion 1125.7 Future Work 113References 1136 AN ONTOLOGICAL MODEL, DESIGN, AND IMPLEMENTATION OF CSPF FOR HEALTHCARE 117Pooja Mohan6.1 Introduction 1176.2 Related Work 1196.3 Mathematical Representation of CSPF Model 1226.3.1 Basic Sets of CSPF Model 1236.3.2 Conditional Contextual Security and Privacy Constraints 1236.3.3 CSPF Model States CsetofStates 1246.3.4 Permission Cpermission 1246.3.5 Security Evaluation Function (SEFcontexts) 1246.3.6 Secure State 1256.3.7 CSPF Model Operations 1256.3.7.1 Administrative Operations 1256.3.7.2 Users’ Operations 1276.4 Ontological Model 1276.4.1 Development of Class Hierarchy 1276.4.1.1 Object Properties of Sensor Class 1296.4.1.2 Data Properties 1296.4.1.3 The Individuals 1296.5 The Design of Context-Aware Security and Privacy Model for Wireless Sensor Network 1296.6 Implementation 1336.7 Analysis and Results 1356.7.1 Inference Time/Latency/Query Response Time vs. No. of Policies 1356.7.2 Average Inference Time vs. Contexts 1366.8 Conclusion and Future Scope 137References 1387 ONTOLOGY-BASED QUERY RETRIEVAL SUPPORT FOR E-HEALTH IMPLEMENTATION 143Aatif Ahmad Khan and Sanjay Kumar Malik7.1 Introduction 1437.1.1 Health Care Record Management 1447.1.1.1 Electronic Health Record 1447.1.1.2 Electronic Medical Record 1457.1.1.3 Picture Archiving and Communication System 1457.1.1.4 Pharmacy Systems 1457.1.2 Information Retrieval 1457.1.3 Ontology 1467.2 Ontology-Based Query Retrieval Support 1467.3 E-Health 1507.3.1 Objectives and Scope 1507.3.2 Benefits of E-Health 1517.3.3 E-Health Implementation 1517.4 Ontology-Driven Information Retrieval for E-Health 1547.4.1 Ontology for E-Heath Implementation 1557.4.2 Frameworks for Information Retrieval Using Ontology for E-Health 1577.4.3 Applications of Ontology-Driven Information Retrieval in Health Care 1587.4.4 Benefits and Limitations 1607.5 Discussion 1607.6 Conclusion 164References 1648 ONTOLOGY-BASED CASE RETRIEVAL IN AN E-MENTAL HEALTH INTELLIGENT INFORMATION SYSTEM 167Georgia Kaoura, Konstantinos Kovas and Basilis Boutsinas8.1 Introduction 1678.2 Literature Survey 1708.3 Problem Identified 1738.4 Proposed Solution 1748.4.1 The PAVEFS Ontology 1748.4.2 Knowledge Base 1798.4.3 Reasoning 1808.4.4 User Interaction 1828.5 Pros and Cons of Solution 1838.5.1 Evaluation Methodology and Results 1838.5.2 Evaluation Methodology 1858.5.2.1 Evaluation Tools 1868.5.2.2 Results 1878.6 Conclusions 1898.7 Future Scope 190References 1909 ONTOLOGY ENGINEERING APPLICATIONS IN MEDICAL DOMAIN 193Mariam Gawich and Marco Alfonse9.1 Introduction 1939.2 Ontology Activities 1959.2.1 Ontology Learning 1959.2.2 Ontology Matching 1959.2.3 Ontology Merging (Unification) 1959.2.4 Ontology Validation 1969.2.5 Ontology Verification 1969.2.6 Ontology Alignment 1969.2.7 Ontology Annotation 1969.2.8 Ontology Evaluation 1969.2.9 Ontology Evolution 1969.3 Ontology Development Methodologies 1979.3.1 TOVE 1979.3.2 Methontology 1989.3.3 Brusa et al. Methodology 1989.3.4 UPON Methodology 1999.3.5 Uschold and King Methodology 2009.4 Ontology Languages 2039.4.1 RDF-RDF Schema 2039.4.2 OWL 2059.4.3 OWL 2 2059.5 Ontology Tools 2089.5.1 Apollo 2089.5.2 NeON 2099.5.3 Protégé 2109.6 Ontology Engineering Applications in Medical Domain 2129.6.1 Ontology-Based Decision Support System (DSS) 2139.6.1.1 OntoDiabetic 2139.6.1.2 Ontology-Based CDSS for Diabetes Diagnosis 2149.6.1.3 Ontology-Based Medical DSS within E-Care Telemonitoring Platform 2159.6.2 Medical Ontology in the Dynamic Healthcare Environment 2169.6.3 Knowledge Management Systems 2179.6.3.1 Ontology-Based System for Cancer Diseases 2179.6.3.2 Personalized Care System for Chronic Patients at Home 2189.7 Ontology Engineering Applications in Other Domains 2199.7.1 Ontology Engineering Applications in E-Commerce 2199.7.1.1 Automated Approach to Product Taxonomy Mapping in E-Commerce 2199.7.1.2 LexOnt Matching Approach 2219.7.2 Ontology Engineering Applications in Social Media Domain 2229.7.2.1 Emotive Ontology Approach 2229.7.2.2 Ontology-Based Approach for Social Media Analysis 2249.7.2.3 Methodological Framework for Semantic Comparison of Emotional Values 225References 22610 ONTOLOGIES ON BIOMEDICAL INFORMATICS 233Marco Alfonse and Mariam Gawich10.1 Introduction 23310.2 Defining Ontology 23410.3 Biomedical Ontologies and Ontology-Based Systems 23510.3.1 MetaMap 23510.3.2 GALEN 23610.3.3 NIH-CDE 23610.3.4 LOINC 23710.3.5 Current Procedural Terminology (CPT) 23810.3.6 Medline Plus Connect 23810.3.7 Gene Ontology 23910.3.8 UMLS 24010.3.9 SNOMED-CT 24010.3.10 OBO Foundry 24010.3.11 Textpresso 24010.3.12 National Cancer Institute Thesaurus 241References 24111 MACHINE LEARNING TECHNIQUES BEST FOR LARGE DATA PREDICTION: A CASE STUDY OF BREAST CANCER CATEGORICAL DATA: K-NEAREST NEIGHBORS 245Yagyanath Rimal11.1 Introduction 24611.2 R Programming 25011.3 Conclusion 255References 25512 NEED OF ONTOLOGY-BASED SYSTEMS IN HEALTHCARE SYSTEM 257Tshepiso Larona Mokgetse12.1 Introduction 25812.2 What is Ontology? 25912.3 Need for Ontology in Healthcare Systems 26012.3.1 Primary Healthcare 26212.3.1.1 Semantic Web System 26212.3.2 Emergency Services 26312.3.2.1 Service-Oriented Architecture 26312.3.2.2 IOT Ontology 26412.3.3 Public Healthcare 26512.3.3.1 IOT Data Model 26512.3.4 Chronic Disease Healthcare 26612.3.4.1 Clinical Reminder System 26612.3.4.2 Chronic Care Model 26712.3.5 Specialized Healthcare 26812.3.5.1 E-Health Record System 26812.3.5.2 Maternal and Child Health 26912.3.6 Cardiovascular System 27012.3.6.1 Distributed Healthcare System 27012.3.6.2 Records Management System 27012.3.7 Stroke Rehabilitation 27112.3.7.1 Patient Information System 27112.3.7.2 Toronto Virtual System 27112.4 Conclusion 272References 27213 EXPLORATION OF INFORMATION RETRIEVAL APPROACHES WITH FOCUS ON MEDICAL INFORMATION RETRIEVAL 275Mamata Rath and Jyotir Moy Chatterjee13.1 Introduction 27613.1.1 Machine Learning-Based Medical Information System 27813.1.2 Cognitive Information Retrieval 27813.2 Review of Literature 27913.3 Cognitive Methods of IR 28113.4 Cognitive and Interactive IR Systems 28613.5 Conclusion 288References 28914 ONTOLOGY AS A TOOL TO ENABLE HEALTH INTERNET OF THINGS VIABLE 5G COMMUNICATION NETWORKS 293Nidhi Sharma and R. K. Aggarwal14.1 Introduction 29314.2 From Concept Representations to Medical Ontologies 29514.2.1 Current Medical Research Trends 29614.2.2 Ontology as a Paradigm Shift in Health Informatics 29614.3 Primer Literature Review 29714.3.1 Remote Health Monitoring 29814.3.2 Collecting and Understanding Medical Data 29814.3.3 Patient Monitoring 29814.3.4 Tele-Health 29914.3.5 Advanced Human Services Records Frameworks 29914.3.6 Applied Autonomy and Healthcare Mechanization 30014.3.7 IoT Powers the Preventive Healthcare 30114.3.8 Hospital Statistics Control System (HSCS) 30114.3.9 End-to-End Accessibility and Moderateness 30114.3.10 Information Mixing and Assessment 30214.3.11 Following and Alerts 30214.3.12 Remote Remedial Assistance 30214.4 Establishments of Health IoT 30314.4.1 Technological Challenges 30414.4.2 Probable Solutions 30614.4.3 Bit-by-Bit Action Statements 30714.5 Incubation of IoT in Health Industry 30714.5.1 Hearables 30814.5.2 Ingestible Sensors 30814.5.3 Moodables 30814.5.4 PC Vision Innovation 30814.5.5 Social Insurance Outlining 30814.6 Concluding Remarks 309References 30915 TOOLS AND TECHNIQUES FOR STREAMING DATA: AN OVERVIEW 313K. Saranya, S. Chellammal and Pethuru Raj Chelliah15.1 Introduction 31415.2 Traditional Techniques 31515.2.1 Random Sampling 31515.2.2 Histograms 31615.2.3 Sliding Window 31615.2.4 Sketches 31715.2.4.1 Bloom Filters 31715.2.4.2 Count-Min Sketch 31715.3 Data Mining Techniques 31715.3.1 Clustering 31815.3.1.1 STREAM 31815.3.1.2 BRICH 31815.3.1.3 CLUSTREAM 31915.3.2 Classification 31915.3.2.1 Naïve Bayesian 31915.3.2.2 Hoeffding 32015.3.2.3 Very Fast Decision Tree 32015.3.2.4 Concept Adaptive Very Fast Decision Tree 32015.4 Big Data Platforms 32015.4.1 Apache Storm 32115.4.2 Apache Spark 32115.4.2.1 Apache Spark Core 32115.4.2.2 Spark SQL 32215.4.2.3 Machine Learning Library 32215.4.2.4 Streaming Data API 32215.4.2.5 GraphX 32315.4.3 Apache Flume 32315.4.4 Apache Kafka 32315.4.5 Apache Flink 32615.5 Conclusion 327References 32816 AN ONTOLOGY-BASED IR FOR HEALTH CARE 331J. P. Patra, Gurudatta Verma and Sumitra Samal16.1 Introduction 33116.2 General Definition of Information Retrieval Model 33316.3 Information Retrieval Model Based on Ontology 33416.4 Literature Survey 33616.5 Methodolgy for IR 339References 344
Role of Edge Analytics in Sustainable Smart City Development
Efficient Single Board Computers (SBCs) and advanced VLSI systems have resulted in edge analytics and faster decision making. The QoS parameters like energy, delay, reliability, security, and throughput should be improved on seeking better intelligent expert systems. The resource constraints in the Edge devices, challenges the researchers to meet the required QoS. Since these devices and components work in a remote unattended environment, an optimum methodology to improve its lifetime has become mandatory. Continuous monitoring of events is mandatory to avoid tragic situations; it can only be enabled by providing high QoS. The applications of IoT in digital twin development, health care, traffic analysis, home surveillance, intelligent agriculture monitoring, defense and all common day to day activities have resulted in pioneering embedded devices, which can offer high computational facility without much latency and delay. The book address industrial problems in designing expert system and IoT applications. It provides novel survey and case study report on recent industrial approach towards Smart City development.G. R. KANAGACHIDAMBARESAN received his PhD from Anna University Chennai in 2017. He is currently an associate professor in the Department of Computer Science Engineering, Veltech Rangarajan Dr. Sagunthala R&D Institute of Science and Technology, India. His main research interests include Industry 4.0, smart city projects, Body Sensor Network and Fault Tolerant Wireless Sensor Network. He has published several articles in SCI journals and is an associate editor of Wireless Networks. Preface xv1 SMART HEALTH CARE DEVELOPMENT: CHALLENGES AND SOLUTIONS 1R. Sujatha, E.P. Ephzibah and S. Sree Dharinya1.1 Introduction 21.2 ICT Explosion 31.2.1 RFID 41.2.2 IoT and Big Data 51.2.3 Wearable Sensors—Head to Toe 71.2.4 Cloud Computing 81.3 Intelligent Healthcare 101.4 Home Healthcare 111.5 Data Analytics 111.6 Technologies—Data Cognitive 131.6.1 Machine Learning 131.6.2 Image Processing 141.6.3 Deep Learning 141.7 Adoption Technologies 151.8 Conclusion 15References 152 WORKING OF MOBILE INTELLIGENT AGENTS ON THE WEB—A SURVEY 21P.R. Joe Dhanith and B. Surendiran2.1 Introduction 212.2 Mobile Crawler 232.3 Comparative Study of the Mobile Crawlers 472.4 Conclusion 47References 473 POWER MANAGEMENT SCHEME FOR PHOTOVOLTAIC/BATTERY HYBRID SYSTEM IN SMART GRID 49T. Bharani Prakash and S. Nagakumararaj3.1 Power Management Scheme 503.2 Internal Power Flow Management 503.2.1 PI Controller 513.2.2 State of Charge 533.3 Voltage Source Control 543.3.1 Phase-Locked Loop 553.3.2 Space Vector Pulse Width Modulation 563.3.3 Park Transformation (abc to dq0) 573.4 Simulation Diagram and Results 583.4.1 Simulation Diagram 583.4.2 Simulation Results 63Conclusion 654 ANALYSIS: A NEURAL NETWORK EQUALIZER FOR CHANNEL EQUALIZATION BY PARTICLE SWARM OPTIMIZATION FOR VARIOUS CHANNEL MODELS 67M. Muthumari, D.C. Diana and C. Ambika Bhuvaneswari4.1 Introduction 684.2 Channel Equalization 724.2.1 Channel Models 734.2.1.1 Tapped Delay Line Model 744.2.1.2 Stanford University Interim (SUI) Channel Models 754.2.2 Artificial Neural Network 754.3 Functional Link Artificial Neural Network 764.4 Particle Swarm Optimization 764.5 Result and Discussion 774.5.1 Convergence Analysis 774.5.2 Comparison Between Different Parameters 794.5.3 Comparison Between Different Channel Models 804.6 Conclusion 81References 825 IMPLEMENTING HADOOP CONTAINER MIGRATIONS IN OPENNEBULA PRIVATE CLOUD ENVIRONMENT 85P. Kalyanaraman, K.R. Jothi, P. Balakrishnan, R.G. Navya, A. Shah and V. Pandey5.1 Introduction 865.1.1 Hadoop Architecture 865.1.2 Hadoop and Big Data 885.1.3 Hadoop and Virtualization 885.1.4 What is OpenNebula? 895.2 Literature Survey 905.2.1 Performance Analysis of Hadoop 905.2.2 Evaluating Map Reduce on Virtual Machines 915.2.3 Virtualizing Hadoop Containers 945.2.4 Optimization of Hadoop Cluster Using Cloud Platform 955.2.5 Heterogeneous Clusters in Cloud Computing 965.2.6 Performance Analysis and Optimization in Hadoop 975.2.7 Virtual Technologies 975.2.8 Scheduling 985.2.9 Scheduling of Hadoop VMs 985.3 Discussion 995.4 Conclusion 100References 1016 TRANSMISSION LINE INSPECTION USING UNMANNED AERIAL VEHICLE 105A. Mahaboob Subahani, M. Kathiresh and S. Sanjeev6.1 Introduction 1066.1.1 Unmanned Aerial Vehicle 1066.1.2 Quadcopter 1066.2 Literature Survey 1076.3 System Architecture 1086.4 ArduPilot 1096.5 Arduino Mega 1116.6 Brushless DC Motor 1116.7 Battery 1126.8 CMOS Camera 1136.9 Electronic Speed Control 1136.10 Power Module 1156.11 Display Shield 1166.12 Navigational LEDS 1166.13 Role of Sensors in the Proposed System 1186.13.1 Accelerometer and Gyroscope 1186.13.2 Magnetometer 1186.13.3 Barometric Pressure Sensor 1196.13.4 Global Positioning System 1196.14 Wireless Communication 1206.15 Radio Controller 1206.16 Telemetry Radio 1216.17 Camera Transmitter 1216.18 Results and Discussion 1216.19 Conclusion 124References 1257 SMART CITY INFRASTRUCTURE MANAGEMENT SYSTEM USING IOT 127S. Ramamoorthy, M. Kowsigan, P. Balasubramanie and P. John Paul7.1 Introduction 1287.2 Major Challenges in IoT-Based Technology 1297.2.1 Peer to Peer Communication Security 1297.2.2 Objective of Smart Infrastructure 1307.3 Internet of Things (IoT) 1317.3.1 Key Components of Components of IoT 1317.3.1.1 Network Gateway 1327.3.1.2 HTTP (HyperText Transfer Protocol) 1327.3.1.3 LoRaWan (Long Range Wide Area Network) 1337.3.1.4 Bluetooth 1337.3.1.5 ZigBee 1337.3.2 IoT Data Protocols 1337.3.2.1 Message Queue Telemetry Transport (MQTT) 1337.3.2.2 Constrained Application Protocol (CoAP) 1347.3.2.3 Advanced Message Queuing Protocol (AMQP) 1347.3.2.4 Data Analytics 1347.4 Machine Learning-Based Smart Decision-Making Process 1357.5 Cloud Computing 136References 1388 LIGHTWEIGHT CRYPTOGRAPHY ALGORITHMS FOR IOT RESOURCE-STARVING DEVICES 139S. Aruna, G. Usha, P. Madhavan and M.V. Ranjith Kumar8.1 Introduction 1398.1.1 Need of the Cryptography 1408.2 Challenges on Lightweight Cryptography 1418.3 Hashing Techniques on Lightweight Cryptography 1428.4 Applications on Lighweight Cryptography 1528.5 Conclusion 167References 1689 PRE-LEARNING-BASED SEMANTIC SEGMENTATION FOR LIDAR POINT CLOUD DATA USING SELF-ORGANIZED MAP 171K. Rajathi and P. Sarasu9.1 Introduction 1729.2 Related Work 1739.2.1 Semantic Segmentation for Images 1739.3 Semantic Segmentation for LiDAR Point Cloud 1739.4 Proposed Work 1759.4.1 Data Acquisition 1759.4.2 Our Approach 1759.4.3 Pre-Learning Processing 1799.5 Region of Interest (RoI) 1809.6 Registration of Point Cloud 1819.7 Semantic Segmentation 1819.8 Self-Organized Map (SOM) 1829.9 Experimental Result 1839.10 Conclusion 186References 18710 SMART LOAD BALANCING ALGORITHMS IN CLOUD COMPUTING—A REVIEW 189K.R. Jothi, S. Anto, M. Kohar, M. Chadha and P. Madhavan10.1 Introduction 18910.2 Research Challenges 19210.2.1 Security & Routing 19210.2.2 Storage/Replication 19210.2.3 Spatial Spread of the Cloud Nodes 19210.2.4 Fault Tolerance 19310.2.5 Algorithm Complexity 19310.3 Literature Survey 19310.4 Survey Table 20110.5 Discussion & Comparison 20210.6 Conclusion 202References 21611 A LOW-COST WEARABLE REMOTE HEALTHCARE MONITORING SYSTEM 219Konguvel Elango and Kannan Muniandi11.1 Introduction 21911.1.1 Problem Statement 22011.1.2 Objective of the Study 22111.2 Related Works 22211.2.1 Remote Healthcare Monitoring Systems 22211.2.2 Pulse Rate Detection 22411.2.3 Temperate Measurement 22511.2.4 Fall Detection 22511.3 Methodology 22611.3.1 NodeMCU 22611.3.2 Pulse Rate Detection System 22711.3.3 Fall Detection System 23011.3.4 Temperature Detection System 23111.3.5 LCD Specification 23411.3.6 ADC Specification 23411.4 Results and Discussions 23611.4.1 System Implementation 23611.4.2 Fall Detection Results 23611.4.3 ThingSpeak 23611.5 Conclusion 23911.6 Future Scope 240References 24112 IOT-BASED SECURE SMART INFRASTRUCTURE DATA MANAGEMENT 243R. Poorvadevi, M. Kowsigan, P. Balasubramanie and J. Rajeshkumar12.1 Introduction 24412.1.1 List of Security Threats Related to the Smart IoT Network 24412.1.2 Major Application Areas of IoT 24412.1.3 IoT Threats and Security Issues 24512.1.4 Unpatched Vulnerabilities 24512.1.5 Weak Authentication 24512.1.6 Vulnerable API’s 24512.2 Types of Threats to Users 24512.3 Internet of Things Security Management 24612.3.1 Managing IoT Devices 24612.3.2 Role of External Devices in IoT Platform 24712.3.3 Threats to Other Computer Networks 24812.4 Significance of IoT Security 24912.4.1 Aspects of Workplace Security 24912.4.2 Important IoT Security Breaches and IoT Attacks 25012.5 IoT Security Tools and Legislation 25012.6 Protection of IoT Systems and Devices 25112.6.1 IoT Issues and Security Challenges 25112.6.2 Providing Secured Connections 25212.7 Five Ways to Secure IoT Devices 25312.8 Conclusion 255References 25513 A STUDY OF ADDICTION BEHAVIOR FOR SMART PSYCHOLOGICAL HEALTH CARE SYSTEM 257V. Sabapathi and K.P. Vijayakumar13.1 Introduction 25813.2 Basic Criteria of Addiction 25813.3 Influencing Factors of Addiction Behavior 25913.3.1 Peers Influence 25913.3.2 Environment Influence 26013.3.3 Media Influence 26213.3.4 Family Group and Society 26213.4 Types of Addiction and Their Effects 26213.4.1 Gaming Addiction 26313.4.2 Pornography Addiction 26413.4.3 Smart Phone Addiction 26513.4.4 Gambling Addiction 26713.4.5 Food Addiction 26713.4.6 Sexual Addiction 26813.4.7 Cigarette and Alcohol Addiction 26813.4.8 Status Expressive Addiction 26913.4.9 Workaholic Addiction 26913.5 Conclusion 269References 27014 A CUSTOM CLUSTER DESIGN WITH RASPBERRY PI FOR PARALLEL PROGRAMMING AND DEPLOYMENT OF PRIVATE CLOUD 273Sukesh, B., Venkatesh, K. and Srinivas, L.N.B.14.1 Introduction 27414.2 Cluster Design with Raspberry Pi 27614.2.1 Assembling Materials for Implementing Cluster 27614.2.1.1 Raspberry Pi4 27714.2.1.2 RPi 4 Model B Specifications 27714.2.2 Setting Up Cluster 27814.2.2.1 Installing Raspbian and Configuring Master Node 27914.2.2.2 Installing MPICH and MPI4PY 27914.2.2.3 Cloning the Slave Nodes 27914.3 Parallel Computing and MPI on Raspberry Pi Cluster 27914.4 Deployment of Private Cloud on Raspberry Pi Cluster 28114.4.1 NextCloud Software 28114.5 Implementation 28114.5.1 NextCloud on RPi Cluster 28114.5.2 Parallel Computing on RPi Cluster 28214.6 Results and Discussions 28614.7 Conclusion 287References 28715 ENERGY EFFICIENT LOAD BALANCING TECHNIQUE FOR DISTRIBUTED DATA TRANSMISSION USING EDGE COMPUTING 289Karthikeyan, K. and Madhavan, P.15.1 Introduction 29015.2 Energy Efficiency Offloading Data Transmission 29015.2.1 Web-Based Offloading 29115.3 Energy Harvesting 29115.3.1 LODCO Algorithm 29215.4 User-Level Online Offloading Framework (ULOOF) 29315.5 Frequency Scaling 29415.6 Computation Offloading and Resource Allocation 29515.7 Communication Technology 29615.8 Ultra-Dense Network 29715.9 Conclusion 299References 29916 BLOCKCHAIN-BASED SDR SIGNATURE SCHEME WITH TIME-STAMP 303Swathi Singh, Divya Satish and Sree Rathna Lakshmi16.1 Introduction 30316.2 Literature Study 30416.2.1 Signatures With Hashes 30416.2.2 Signature Scheme With Server Support 30516.2.3 Signatures Scheme Based on Interaction 30516.3 Methodology 30616.3.1 Preliminaries 30616.3.1.1 Hash Trees 30616.3.1.2 Chains of Hashes 30616.3.2 Interactive Hash-Based Signature Scheme 30716.3.3 Significant Properties of Hash-Based Signature Scheme 30916.3.4 Proposed SDR Scheme Structure 31016.3.4.1 One-Time Keys 31016.3.4.2 Server Behavior Authentication 31016.3.4.3 Pre-Authentication by Repository 31116.4 SDR Signature Scheme 31116.4.1 Pre-Requisites 31116.4.2 Key Generation Algorithm 31216.4.2.1 Server 31316.4.3 Sign Algorithm 31316.4.3.1 Signer 31316.4.3.2 Server 31316.4.3.3 Repository 31416.4.4 Verification Algorithm 31416.5 Supportive Theory 31516.5.1 Signing Algorithm Supported by Server 31516.5.2 Repository Deployment 31616.5.3 SDR Signature Scheme Setup 31616.5.4 Results and Observation 31616.6 Conclusion 317References 317Index 321
Beginning C
Learn how to program using C, beginning from first principles and progressing through step-by-step examples to become a competent, C-language programmer. All you need are this book and any of the widely available C compilers, and you'll soon be writing real C programs.You’ll discover that C is a foundation language that every programmer ought to know. Beginning C is written by renowned author Ivor Horton and expert programmer German Gonzalez-Morris. This book increases your programming expertise by guiding you through the development of fully working C applications that use what you've learned in a practical context. You’ll also be able to strike out on your own by trying the exercises included at the end of each chapter. At the end of the book you'll be confident in your skills with all facets of the widely-used and powerful C language.WHAT YOU WILL LEARN* Discover the C programming languageProgram using C starting with first steps, then making decisions * Use loops, arrays, strings, text, pointers, functions, I/O, and moreCode applications with strings and text * Structure your programs efficientlyWork with data, files, facilities, and moreWHO THIS BOOK IS FORThose new to C programming who may or may not have some prior programming experience.GERMAN GONZALEZ-MORRIS is a software architect/engineer working with C/C++, Java, and different application containers, in particular, with WebLogic Server. He has developed different applications including JEE/Spring/Python. His areas of expertise also include OOP, design patterns, Spring Core/MVC, and microservices.IVOR HORTON is self-employed in consultancy and writes programming tutorials. He worked for IBM for many years and holds a bachelor's degree, with honors, in mathematics. Horton's experience at IBM includes programming in most languages (such as assembler and high-level languages on a variety of machines), real-time programming, and designing and implementing real-time closed-loop industrial control systems. He has extensive experience teaching programming to engineers and scientists (Fortran, PL/1, APL, etc.). Horton is an expert in mechanical, process, and electronic CAD systems; mechanical CAM systems; and DNC/CNC systems.1. Programming in C2. First Steps in Programming3. Making Decisions4. Loops5. Arrays6. Applications with Strings and Text7. Pointers8. Structuring Your Programs9. More on Functions10. Essential Input and Output Operations11. Structuring Data12. Working with Files13. Supporting Facilities14. Advanced and Specialized TopicsA. Computer ArithmeticB. ASCII Character Code DefinitionsC. Reserved Words in CD. Input and Output Format SpecificationsE. Standard Library Headers
Krisen mit Social Media Intelligence bewältigen. Empfehlungen für den Einsatz sozialer Netzwerke im Katastrophenschutz
Der fortschreitende Klimawandel und dessen Auswirkungen werden dafür sorgen, dass die Zahl der Naturkatastrophen zunimmt. Daher ist es besonders für Menschen in Krisengebieten notwendig, sich durch umfassendes Katastrophen- und Krisenmanagement auf derartige Situationen vorzubereiten.Welche Informationssysteme zur Bevölkerungswarnung gibt es bereits? Welches Potenzial besitzen soziale Netzwerke in diesem Zusammenhang? Was verstehen wir unter Social Media Intelligence? inwieweit können sich freiwillige Helfer einbringen, um die Widerstandsfähigkeit in humanitären Notlagen zu steigern. Welche Herausforderungen können dabei auftreten?Der Autor untersucht den Mehrwert von Social Media bei der Krisenbewältigung. Er legt dar, wie Informationssysteme im Katastrophenschutz zum Einsatz kommen und geht insbesondere auf die Potenziale von sozialen Medien ein. Für die effektive Koordination von digitalen Freiwilligen und Vor-Ort-Helfern gibt er Handlungsempfehlungen.Aus dem Inhalt:- Digital Volunteers;- Vor-Ort-Helfer;- Facebook Disaster Maps;- Warn-Apps;- Big Data
VR Integrated Heritage Recreation
Create assets for history-based games. This book covers the fundamental principles required to understand and create architectural visualizations of historical locations using digital tools. You will explore aspects of 3D design visualization and VR integration using industry-preferred software.Some of the most popular video games in recent years have historical settings (Age of Empires, Call of Duty, etc.). Creating these games requires creating historically accurate game assets. You will use Blender to create VR-ready assets by modeling and unwrapping them. And you will use Substance Painter to texture the assets that you create.You will also learn how to use the Quixel Megascans library to acquire and implement physically accurate materials in the scenes. Finally, you will import the assets into Unreal Engine 4 and recreate a VR integrated heritage that can be explored in real time. Using VR technology and game engines, you can digitally recreate historical settings for games.WHAT YOU WILL LEARN* Create high-quality, optimized models suitable for any 3D game engine* Master the techniques of texturing assets using Substance Painter and Quixel Megascans* Keep assets historically accurate* Integrate assets with the game engine* Create visualizations with Unreal Engine 4WHO IS THIS BOOK FORGame developers with some experience who are eager to get into VR-based gamesDR. ABHISHEK KUMAR is Assistant Professor in the Department of Computer Science at the Institute of Science at Banaras Hindu University. He is an Apple Certified Associate, Adobe Education Trainer, and certified by Autodesk. He is actively involved in course development in animation and design engineering courses for various institutions and universities as they will be a future industry requirement.Dr. Kumar has published a number of research papers and covered a wide range of topics in various digital scientific areas (image analysis, visual identity, graphics, digital photography, motion graphics, 3D animation, visual effects, editing, composition). He holds two patents in the field of design and IoT.Dr. Kumar has completed professional studies related to animation, computer graphics, virtual reality, stereoscopy, filmmaking, visual effects, and photography from Norwich University of Arts, University of Edinburg, and Wizcraft MIME & FXPHD, Australia. He is passionate about the media and entertainment industry, and has directed two animation short films.Dr. Kumar has trained more than 50,000 students across the globe from 153 countries (top five: India, Germany, United States, Spain, Australia). His alumni have worked for national and international movies such as Ra-One, Krissh, Dhoom, Life of Pi, the Avengers series, the Iron Man series, GI Joe 3D, 300, Alvin and the Chipmunks, Prince of Persia, Titanic 3D, the Transformers series, Bahubali 1 & 2, London Has Fallen, Warcraft, Aquaman 3D, Alita, and more.CHAPTER 1: INTRODUCTION TO BOOKChapter Goal: In this chapter we will introduce the readers to the book and its concepts.Sub TopicsScope of this bookTopics coveredCHAPTER 2: INTRODUCTION TO SOFTWAREChapter Goal: In this chapter the readers will be introduced to the software applications that we will use throughout the book for creating our scene and everything related to it. Software that we will use are Blender, Substance Painter, Quixel Bridge and Unreal Engine 4.Sub TopicsBlenderSubstance PainterQuixel Bridge Unreal Engine 4CHAPTER 3: ACQUIRING RESOURCES FOR OUR PROJECTChapter Goal: In this chapter we will explore how we can acquire various resources that we will require for creating our project.Sub TopicsWebsites for getting texturesCollecting ReferencesCreating basic planCHAPTER 4: DESIGN VISUALIZATIONChapter Goal: We will learn the basic tools of the software which we are going to use for heritage recreation. After that we will create a white box level using Blender and UE4.Sub TopicsBasics of BlenderBasics of Substance PainterCreating White Box sceneCHAPTER 5: MODELLING OUR SCENEChapter Goal: In this chapter we will start modelling our scene. We will create optimized game ready models that can be used within any game engine.Sub TopicsModelling the TempleModelling the ground assets and stairsModelling additional assetsCHAPTER 6: UNWRAPPING THE MODELSChapter Goals: In this chapter we will create UV map for our models and explore in detail the UV editing tools provided by Blender.Sub TopicsUnwrapping the TempleUnwrapping the various ground assets and stairsUnwrapping the remaining smaller assetsCHAPTER 7: TEXTURING ASSETS USING SUBSTANCE PAINTERChapter Goal: We will now see how we can texture our assets using Substance Painter which is an industry standard tool for texturing.Sub TopicsA quick introduction Substance PainterTexturing our Larger structuresTexturing the smaller assetsCHAPTER 8: CREATING FOLIAGEChapter Goal: Here we will see how we can create game ready foliage like grasses, bushes and trees.Sub TopicsCreating grassCreating BushesCreating TreesCHAPTER 9: EXPORTING TO UNREAL ENGINE 4Chapter Goal: We will see in this chapter how to export assets to Unreal Engine 4.Sub TopicsBasics of Unreal Engine 4Creating lightmap UVsExporting models from BlenderExporting textures from Substance PainterCHAPTER 10: IMPORTING INTO UNREAL ENGINE 4Chapter Goal: In this chapter the readers will see how we can import assets into Unreal Engine 4 and set them up for use.Sub TopicsImport settingsExploring properties editorCHAPTER 11: MATERIAL SETUP IN UNREAL ENGINE 4Chapter Goal: Readers will now learn how to create materials with the imported textures that can then be applied to the meshes.Sub TopicsSimple material setupComplex material setupWorking with Master and Instanced materialsCHAPTER 12: INTEGRATION WITH VRChapter Goal: We will assemble the scene and write scripts for gameplay part of our scene. We will set up our scene to work with VR devices and bake everything into executable file.Sub TopicsCreating landscapeAssembling sceneCreating gameplay scriptsBuilding our scene into an executable
Deep Learning Projects Using TensorFlow 2
Work through engaging and practical deep learning projects using TensorFlow 2.0. Using a hands-on approach, the projects in this book will lead new programmers through the basics into developing practical deep learning applications.Deep learning is quickly integrating itself into the technology landscape. Its applications range from applicable data science to deep fakes and so much more. It is crucial for aspiring data scientists or those who want to enter the field of AI to understand deep learning concepts.The best way to learn is by doing. You'll develop a working knowledge of not only TensorFlow, but also related technologies such as Python and Keras. You'll also work with Neural Networks and other deep learning concepts. By the end of the book, you'll have a collection of unique projects that you can add to your GitHub profiles and expand on for professional application.WHAT YOU'LL LEARN* Grasp the basic process of neural networks through projects, such as creating music* Restore and colorize black and white images with deep learning processesWHO THIS BOOK IS FORBeginners new to TensorFlow and Python. VINITA SILAPARASETTY is a Data Scientist at Trendwise Analytics. Deep Learning is a topic she's passionate about, and she has experience working on deep learning projects and experimenting with neural networks. She aspires to share her love for deep learning with beginners and make it simple and easy to understand, so as to ignite a similar passion in them.Chapter 1— Perceptrons• Introduction to Perceptrons• Working of a Perceptron• Program to understand the working of a PerceptronChapter 2: Neural Networks• Introduction to Neural Networks• Types of Neural Networks• How each neural network works• Program to understand the working of Neural NetworksChapter 3: Project 1- DJ Neuron• About the Project: Creating Music Using Neural Networks• Requirements• Explanation of concepts used• Architecture of the Neural Network• Source code with line by line instructionsChapter 4: Project 2- Artistic Neurons• About the Project: Adding colour to black and white images• Requirements• Explanation of concepts used• Architecture of the Neural Network• Source code with line by line instructionsChapter 5: Project 3- Go HD• About the Project: Restoration of images for better quality• Requirements• Explanation of concepts used• Architecture of the Neural Network• Source code with line by line instructionsChapter 6: Project 4- Voice Experiments• About the Project: Voice Manipulation• Requirements• Explanation of concepts used• Architecture of the Neural Network• Source code with line by line instructionsChapter 7: Project 5- Imposters• About the Project: Fake Image Recognition• Requirements• Explanation of concepts used• Architecture of the Neural Network• Source code with line by line instructionsChapter 8: Project 6 - Gaming is Fun• About the Project: MI-agent training using Unity. Learn to create Artificially Intelligent Characters.* Requirements* Explanation of concepts used* Architecture of the Neural Network* Source code with line by line instructions
Hands-on Azure Pipelines
Build, package, and deploy software projects, developed with any language targeting any platform, using Azure pipelines.The book starts with an overview of CI/CD and the need for software delivery automation. It further delves into the basic concepts of Azure pipelines followed by a hands-on guide to setting up agents on all platforms enabling software development in any language. Moving forward, you will learn to set up a pipeline using the classic Visual Editor using PowerShell scripts, a REST API, building edit history, retention, and much more. You’ll work with artifact feeds to store deployment packages and consume them in a build. As part of the discussion you’ll see the implementation and usage of YAML (Yet Another Markup Language) build pipelines. You will then create Azure release pipelines in DevOps and develop extensions for Azure pipelines. Finally, you will learn various strategies and patterns for developing pipelines and go through some sample lessons on building and deploying pipelines.After reading Hands-on Azure Pipelines, you will be able to combine CI and CD to constantly and consistently test and build your code and ship it to any target.WHAT YOU WILL LEARN* Work with Azure build-and-release pipelines * Extend the capabilities and features of Azure pipelines* Understand build, package, and deployment strategies, and versioning and patterns with Azure pipelines* Create infrastructure and deployment that targets commonly used Azure platform services* Build and deploy mobile applications * Use quick-start Azure DevOps projectsWHO THIS BOOK IS FORSoftware developers and test automation engineers who are involved in the software delivery process.CHAMINDA CHANDRASEKARA is a Microsoft Most Valuable Professional (MVP) for Visual Studio ALM and Scrum Alliance Certified ScrumMaster®, and focuses on and believes in continuous improvement of the software development lifecycle. He works as a Senior Engineer - DevOps at Xameriners, Singapore. Chaminda is an active Microsoft Community Contributor (MCC) who is well recognized for his contributions in Microsoft forums, TechNet galleries, wikis, and Stack Overflow and he contributes extensions to Azure DevOps Server and Services (former VSTS/TFS) in the Microsoft Visual Studio Marketplace. He also contributes to other open source projects in GitHub. Chaminda has published five books with Apress.PUSHPA HERATH is a DevOps engineer at Xamariners. She has many years of experience in Azure DevOps Server and Services (formerly VSTS/TFS), Azure cloud platform and QA Automation. She is an expert in DevOps currently leading the DevOps community in Sri Lanka, and she has shown in depth knowledge in Azure cloud platform tools in her community activities. She has published three books with Apress and spoken in community evets as well as in the you tube channel of her Sri Lanka DevOps community.CHAPTER 1: UNDERSTANDING THE IMPORTANCE OF SOFTWARE DELIVERY AUTOMATIONCHAPTER GOAL: Give conceptual overview on CI CD while elaborating on the need of software delivery automation.NO OF PAGES: 10SUB -TOPICS1. Introducing Concepts (CI/CD)2. Why we need SW Delivery Automation?CHAPTER 2: OVERVIEW OF AZURE PIPELINESCHAPTER GOAL: Introduction to components in Azure Pipelines enabling you to follow the lessons from chapter 3.NO OF PAGES: 30Sub - Topics1. Introducing Pools and Agents (Explain purpose and usage (no need to go into setup details), +Security)2. Deployment Groups (Explain purpose and usage (no need to go into setup details), +Security)3. Build Pipelines (Explain purpose and usage (no need to go into setup details), +Security)4. Release Pipelines (Explain purpose and usage (no need to go into setup details), +Security)5. Task Groups (Explain purpose and usage (no need to go into setup details), +Security)6. Library (Variables) (Explain purpose and usage (no need to go into setup details), +Security)7. Parallel Pipelines and BillingCHAPTER 3: SETTING UP POOLS, DEPLOYMENT GROUPS AND AGENTSCHAPTER GOAL: Lessons to provide hand-on guidance on setting up agents on all platforms enabling building software developed with any language.NO OF PAGES : 40SUB - TOPICS:1. Setting up pools and permissions (scopes, Capabilities)2. Adding agents to pools (three pools Linux, mac and windows – add each type)3. Enable .NET core builds in Linux Agents4. Setting up Deployment Groups and permissions (scopes)5. Adding agent to Deployment groups (roles)CHAPTER 4: CREATING BUILD PIPELINES – CLASSIC – PART1CHAPTER GOAL: Step by step guidance to setting up a build pipeline using Classic Visual Editor.NO OF PAGES: 50SUB - TOPICS:1. Using Source Control Providers (show integration with each type and explain all options for each type such as tag sources and other options)2. Using a Template (Explain few commonly used templates)3. Using Multiple jobs – Adding Build jobs, Selecting Pools, setting up Demands, timeouts, mention parallelism, conditions are later lesson, Dependency settings with sample4. Using Tasks (Explain adding Tasks, find tasks in marketplace (install marketplace task in next lesson))5. Installing tasks from marketplace (Explain how to when you have rights, explain how to request to install task admin approve and install as well as decline)6. Build phase and Task Control Conditions – Explain using condition types, custom conditions in detail using a sample7. Parallelism - multi configuration and multi agents – show with samplesCHAPTER 5: CREATING BUILD PIPELINES – CLASSIC – PART2CHAPTER GOAL: Step by step guidance to setting up a build pipeline using Classic Visual Editor.NO OF PAGES: 40SUB - TOPICS:1. Using Variables – System, pipeline and group, scoping variables, queue time variable value change2. Setting up triggers and path filters for a build – show how it works CI, PR etc, path filters, scheduled builds3. Format Build number and apply custom formats with PowerShell4. Enable, paused and disabled builds -explain in detail with sample5. Link work items and Create work items on failures6. Using build status badge7. Build job scope, timeouts and demands8. Build edit history, compare and restore9. RetentionCHAPTER 6: CREATING BUILD PIPELINES – CLASSIC – PART 3CHAPTER GOAL: Step by step guidance to setting up a build pipeline using Classic Visual Editor.NO OF PAGES: 30SUB - TOPICS:1. Queuing builds and enable debugging mode for more diagnostic information2. Setting variable values in PowerShell scripts3. Accessing secret variable values in PowerShell4. Using OAuth tokens in builds (show example of REST API call , mention REST API details are later chapter)5. Creating and using task groups (include export and import as well)6. Using agentless phases – provide few usable task examples7. Publishing Artifacts – as server, as shared path (mention package as nuget later)8. Exporting and importing build definitionsCHAPTER 7: USING ARTIFACTSCHAPTER GOAL: Usage of artifact feeds to store deployment packages and usage of artifact feeds to keep packages related to development and consuming them in builds.NO OF PAGES: 40SUB - TOPICS:1. Creating and publishing build artifacts as nuget2. Using nuget packages from azure artifacts in VS, and in VS Code3. Using nuget packages in Azure Artifact feed in builds4. Creating and Consuming npm packages5. Creating and Consuming maven packages6. Creating and consuming gradle packages7. Creating and Consuming python packages8. Azure CLI to use feeds9. New Public feedsCHAPTER 8: CREATING AND USING YAML BUILD PIPELINESCHAPTER GOAL: Hands on lessons on implementing YAML based build pipelines giving all essential information on implementing configurations and pilines as code.No of pages: 40SUB - TOPICS:Will be defined laterCHAPTER 9: CREATING AZURE RELEASE PIPELINES – PART1Chapter Goal: Step by step guidance to setting up release pipelines with Azure DevOps.NO OF PAGES: 40SUB - TOPICS:1. Service Connections – Explain different types2. Using Templates to Create Pipelines (explain few common templates)3. Adding Artifacts for Release Pipeline (explain each artifact type)4. Setting up Artifact Triggers (continuous deployment triggers, artifact filters)5. Adding Stage (templated or empty, add vs clone, after release, manual triggers, after stage trigger (show parallel and different stage sequence setup options for pipelines), (partial succeeded) and artifact filters)6. Scheduled deployments for a stage (how it works samples)7. Pull request triggers in artifacts and Pull request deployment in stages8. Deployment queue settings (how it works sample should be shown)CHAPTER 10: CREATING AZURE RELEASE PIPELINES – PART2CHAPTER GOAL: Step by step guidance to setting up release pipelines with Azure DevOps.NO OF PAGES: 50SUB - TOPICS:1. Defining Gates (show examples for each gate type)2. Post deployment Options (approval and auto redeploy, gates just mention)3. Agent Job (Pools and specifications, demands samples, execution plan (multi config, multi agent as well) samples, timeouts, Artifact downloads, Oauth, Run job conditions)4. Deployment group job (Deployment group, how it works for required tags samples, targets to deploy multiple, one at a time samples, maximum parallel settings how it works samples, timeouts, artifacts, Oauth, run job conditions)5. Agentless Jobs – Explain usage of possible tasks – manual, delay, invoke azure function, quires, alerts, publishing to service bus – show samples for each6. Using variables – Scoping and using group variables as well7. Release Options – Release number, all integration options explain with sample for each8. History, compare, restore9. Export, import pipelinesCHAPTER 11: USING REST API AND DEVELOPING EXTENSIONS FOR AZURE PIPELINESCHAPTER GOAL: How to extend the capabilities and features of Azure Pipelines using the REST APIs and the extension development is discussed in this chapter.NO OF PAGES: 30SUB - TOPICS:1. Build and Release Management REST APIs - introduce get, post, put etc. with PS and typescript2. Developing extensions for Azure Pipelines – Develop a simple pipeline extension3. Deploying and distributing Azure Pipeline extensions – sharing privately and enable to use publiclyCHAPTER 12: USEFUL PIPELINE STRATEGIES AND PATTERNSCHAPTER GOAL: Guidance in pipeline development strategies and patterns with Azure build and release pipelines.NO OF PAGES: 25SUB - TOPICS:Will define later.CHAPTER 13: COMMONLY USED BUILD AND DEPLOYMENT PIPELINES – SAMPLES AND INTEGRATIONSCHAPTER GOAL: Few useful samples lessons on building and release commonly used applications to Azure platform.NO OF PAGES: 50SUB - TOPICS:1. Deploying infrastructure with Azure Pipelines – Creating Azure resources such as, resource groups, app service plans, storage accounts, web apps, function apps, APIM, Cosmos, SQL, ACR, AKS (provide open source code samples developed by us integrated with pipelines)2. Using Terraform with Azure Pipelines3. Deploying function apps and web apps – including configuration management options4. Deploying mobile apps5. Deploying Azure Databases – SQL, Cosmos6. Deploying Containerized Applications (web apps, AKS)7. Using SonarQube and Azure Build Pipelines for Code Analysis8. Integrating with Jenkins9. Integrating with Octopus deploy10. Generating quick start projects with Azure DevOps Projects (specially focus on java, python, node etc. and targeting Azure platforms)11. Generating release notes12. Visualizing Pipelines status with Dashboards in Azure DevOps
Microsoft Azure
Gain the technical and business insight needed to plan, deploy, and manage the services provided by the Microsoft Azure cloud. This second edition focuses on improving operational decision tipping points for the professionals leading DevOps and security teams. This will allow you to make an informed decision concerning the workloads appropriate for your growing business in the Azure public cloud.Microsoft Azure starts with an introduction to Azure along with an overview of its architecture services such as IaaS and PaaS. You’ll also take a look into Azure’s data, artificial intelligence, and machine learning services. Moving on, you will cover the planning for and adoption of Azure where you will go through budgeting, cloud economics, and designing a hybrid data center. Along the way, you will work with web apps, network PaaS, virtual machines, and much more.The final section of the book starts with Azure data services and big data with an in-depth discussion of Azure SQL Database, CosmosDB, Azure Data Lakes, and MySQL. You will further see how to migrate on-premises databases to Azure and use data engineering. Next, you will discover the various Azure services for application developers, including Azure DevOps and ASP.NET web apps. Finally, you will go through the machine learning and AI tools in Azure, including Azure Cognitive Services.WHAT YOU WILL LEARN* Apply design guidance and best practices using Microsoft Azure to achieve business growth* Create and manage virtual machinesWork with AI frameworks to process and analyze data to support business decisions and increase revenue * Deploy, publish, and monitor a web appWHO THIS BOOK IS FORAzure architects and business professionals looking for Azure deployment and implementation advice.JULIAN SOH is a cloud solutions architect with Microsoft, focusing in the areas of artificial intelligence, cognitive services, and advanced analytics. Prior to his current role, Julian worked extensively in major public cloud initiatives, such as SaaS (Microsoft Office 365), IaaS/PaaS (Microsoft Azure), and hybrid private-public cloud implementations.MARSHALL COPELAND is a security architect focused on kill chain defenses in public cloud deployments using cloud native and third-party cyber solutions. His work focuses on security in hybrid cloud deployments, secure DevOps, and security partner cloud integrations that enhance “blue team hunting” efficiencies.ANTHONY PUCA is a director of azure apps and infrastructure in Microsoft’s United States Federal Government division. Anthony has been consulting with US federal government departments and agencies on private, public, and hybrid cloud technologies for the last three years.MICHELEEN HARRIS is a technical program manager at Microsoft focusing on AI and machine learning. She has been a developer for over ten years and has a data science focus. She has designed and delivered many courses and given talks at large conferences such as Microsoft /build and ODSC West.PART I INTRODUCING MICROSOFT AZURECh 1. Microsoft Azure and Cloud ComputingOverview of Microsoft Azure servicesAzure conceptsAvailability ZonesSecurity, Compliance, and Privacy primerAzure licensing and cost management conceptsSubscriptionsCh 2. Overview of Azure Infrastructure-as-a-Service (IaaS) servicesAzure Virtual MachinesAzure NetworkingHybrid data center design concepts (private-public cloud)Hybrid data center operations and monitoringIaaS security considerationsCH 3. OVERVIEW OF AZURE PLATFORM-AS-A-SERVICEAzure Storage AccountsAzure WebAppsAzure Database ServicesAzure PaaS networking servicesAzure Machine Learning and Cognitive ServicesAzure Load BalancersAzure BatchCH 4. AZURE APPDEV SERVICES OVERVIEWAzure DevOps and GitHubAzure IaaS as codeVisual StudioContainers - AKS5. Ethical AI, Azure AI, and Machine LearningAzure for the modern Data EngineersAzure SQL DatabaseAzure SQL Managed InstanceAzure SQL Data WarehouseAzure Cosmos DBAzure Data Lake Service (gen 2)Azure Data Factory v2Cognitive ServicesArtificial Intelligence and Machine LearningPART II PLANNING AND ADOPTING AZURE6. BUDGETING AND CLOUD ECONOMICSUsing assessment tools - Microsoft MovereUnderstanding Cloud Economics - CapEx vs OpExForecasting and other cost saving featuresAutoscalingReserved InstancesService Level Agreement in LRS vs GRSAzure Cost Mgmt and Billing7. DESIGNING A HYBRID DATA CENTERNetworking considerationsPaaS ConsiderationsIdentity and Access ManagementSecurity and monitoring8.TOOLS, TRAINING, AND UPSKILLING EXISTING IT PERSONNELAvailable and required minimum trainingAssembling the toolkit for the Cloud engineerPowerShell ISEVisual Studio CodeAzure Storage ExplorerARM TemplatesHashicorp TerraformSource controlCommon MistakesPART III USING AZURE FOR INFRASTRUCTURE-AS-A-SERVICE (IAAS)9. IMPLEMENTING AZUR NETWORKINGDesigning and implementing Virtual Networks (vNets)Implementing Site-to-Site VPNImplementing ExpressRouteER DirectGlobal ReachImplementing Network Security GroupsImplementing Security and Monitoring for networksNetwork WatcherNetwork Perforamance MonitorAutoscaling10. VIRTUAL MACHINESCreating and managing Virtual MachinesOperating Systems (Windows, Linux)Gallery ImageCustomer ImageVM DisksMonitoring and health of VMSecuring VMAutomationTroubleshootingImproving VM availabilityAvailability GroupsDisaster RecoveryAzure Site Recovery (ASR)11. INFRASTRUCTURE-AS-CODEYour first Infrastructure-as-code exerciseDeploying VMs with codeDeploying virtual networks with codeAddressing dependenciesTroubleshooting your codeSource controlPART IV ADOPTING PLATFORM-AS-A-SERVICE (PAAS)12. AZURE WEBAPPSDeploying a WebAppPublishing to a WebAppMonitoring and securing WebAppsAzure Security Center for WebAppsIntegrating authentication for WebAppsLeveraging Azure Active DirectoryB2B and B2CMulti-factor authenticationTroubleshootingUse Case: Azure Drupal+MySQL PaaS13 NETWORK PAASWeb Application Firewall (WAF)Load BalancerAzure DNSAzure Traffic ManagerAzure Front Door ServiceAzure Private LinkContent Delivery Network (CDN)Azure DDoS ProtectionAzure FirewallUse Case: Implement Azure Front Door Service14 AZURE STORAGEAzure Blob StorageAzure QueuesAzure FilesUse Case: Using Azure Storage ExplorerPART V AZURE DATA SERVICES AND BIG DATA15. AZURE DATABASE SERVICESAzure SQL DatabaseAzure SQL DatabaseAzure SQL Database ServerlessAzure SQL Database Managed Instance (MI)Azure SQL Data WarehouseAzure CosmosDBAzure Database for MySQLAzure TablesAzure Data Lake Services (ADLS)Determining the right Data Services to use16 MIGRATING ON-PREMISES DATABASES TO AZUREDatabase Migration Assistant (DMA)Azure Database Migration Service17 DATA ENGINEERINGData Engineering and EstateExtract, transform, and loading data (ETL vs ELT)Data sharing with Azure Data ShareAzure Data FactoryPipelines, activities, and datasetsOrchestrating Data CopiesAzure Data Flow (Preview)Use Case: Copying, combining, and enriching dataPART VI AZURE SERVICES FOR APPLICATION DEVELOPERS18. DEVELOPING AZURE-BASED APPLICATIONSConsiderations for Cloud-first development practicesUse case: Build and publish an ASP.Net WebAppContainers and AKSUse case: Build a .Net Core WebApp in DockerMonitoring application health and performance in AzureDesigning IoT solutions19. AZURE DEVOPSIntroducing Azure DevOpsAzure ReposAzure PipelinesAzure BoardsAzure Test PlansAzure ArtifactsGitHubUse case: Development lifecycle demo using Azure Repo/GitHub, Pipelines, and CI/CDPART VII INTELLIGENT CLOUD - MACHINE LEARNING AND ARTIFICIAL INTELLIGENCE20. AZURE COGNITIVE SERVICES (COGS)Introducing COGSQnAmaker.aiUse Case: ChatBots21. MACHINE LEARNING AND DEEP LEARNINGAzure Machine Learning overviewDatabricks/Spark overviewUse case: Azure Databricks for data scientistsData preparationML Modeling using Azure Auto MLBuild DNN for classificationParallel and distributed trainingIoT and Edge IoT devicesUse case: Real world examples
Beginning Rails 6
Springboard your journey into web application development and discover how much fun building web applications with Ruby on Rails can be. This book has been revised to cover what's new in Rails 6 including features such as WebPack, advanced JavaScript integration, Action Mailbox, Action Text, system and parallel testing, Action Cable testing, and more.Beginning Rails 6 gently guides you through designing your application, writing tests for the application, and then writing the code to make your application work as expected. It is a book that will guide you from never having programmed with Ruby, to having a Rails 6 application built and deployed to the web.After reading and using this book, you'll have the know-how and the freely available source code to get started with your own Rails-based web development in days.WHAT YOU WILL LEARN* Create Ruby on Rails 6 web applications from the bottom up* Gain the basics of the Ruby programming language* Combine all the components of Rails to develop your own web applications * Apply TDD to make sure your application works exactly as you expect * Use Git source control and best practice techniques to create applications like a pro WHO THIS BOOK IS FORSomeone with little to no Ruby or Rails experience, or possibly even someone with no experience developing web applications at all. A basic familiarity with the web and typical web terms is assumed, but you don’t need to be an expert in these.BRADY SOMERVILLE is a professional web developer and senior engineer at Eezy. In general, he has experience in applications development, web development, and even system administration. His programming background includes Ruby/Rails and Java. He has a degree in computer science as well.ADAM GAMBLE is a professional web developer and currently works as CTO for Eezy in Birmingham, AL. He has over 10 years' experience building web applications for everything from startups to multiple Fortune 500 companies. His passion for technology has enabled him to turn a hobby into a career that he loves.CLOVES CARNEIRO Jr is a software engineer who's been building software since 1997, especially web-based applications. He's also the original author of Beginning Rails and Beginning Ruby on Rails for Apress. His experience includes both Ruby and Java. He is currently working for LivingSocial in Florida.RIDA AL BARAZI is a passionate web developer experienced in building smart web applications for startups. He has been designing and building for the web since 2002. He started working with Rails in 2005 and has spoken at different web and Rails conferences around the world.1. Introducing the Rails Framework2. Getting Started3. Getting Something Running4. Introduction to the Ruby Language5. Working with a Database: Active Record6. Advanced Active Record: Enhancing Your Models7. Action Pack: Working with the View and the Controller8. Advanced Action Pack9. JavaScript and CSS10. Sending and Receiving Email11. Testing Your Application12. Internationalization13. Deploying Your Rails ApplicationsA. Databases 101B. The Rails CommunityC. GitNOTES below: for Planned Revisions for Beginning Rails 6Chapter 1: Introducing the Rails FrameworkThe majority of chapter 1 is still relevant, needing only minor, superficial changes. This may also be a good place to address the “is rails dead?” question. In short, no -- Rails is not dead, it’s mature.Chapter 2: Getting StartedThis chapter needs to be updated to include more recent installation instructions and screenshots for more recent versions of technologies involved. The general idea is the same, though.Chapter 3: Getting Something RunningThis chapter needs minor updates to:Reflect the new directory structure created by RailsReflect that Rails 6 now uses webpack instead of the asset pipelineChapter 4: Introduction to the Ruby LanguageThis chapter needs little, if any revision, as the basics of Ruby which it covers haven’t changed much.Chapter 5: Working with a Database: Active RecordThis chapter needs little, if any revision.Chapter 6: Advanced Active Record: Enhancing Your ModelsThis chapter seems like it would need only minor revisions. It is a dense chapter, though, with lots of code samples that need to be verified.Chapter 6.5: ActiveModelWe could add this chapter, showing readers how they can create objects very similar to ActiveRecord models described in the previous chapter, but which aren’t directly backed by the database.We would explain why this can be useful, and include an example of usage that fits in with the sample application being developed throughout the app.Chapter 7: Action Pack: Working with the View and the ControllerLike the previous chapter, this chapter is still mostly relevant, but has a lot of code samples and screenshots which need verification and updating.Also, the following sections have some changes in Rails 6 that should be updated:“Using Form Helpers” (`form_with` was added, and is the preferred way going forward.)“Rendering a Collection of Partials” ( Rails 6 has a newer, more performant way of rendering a collection of partials which should be described)Also, a section on Caching could be added, though it’s not new, and may not be appropriate for a “Beginning” book.Chapter 7.5: ActionTextIn this chapter, we would introduce ActionText, which gives the developer a simple path for adding a WYSIWYG editor to their application. This would be a short chapter, and we would show how to add a WYSIWYG editor to the sample application.Chapter 8: Advanced Action PackThis section only needs minor updates to verify code samples are still correct, and to update screenshots.Chapter 8.5: ActiveStorageActiveStorage facilitates the attaching of files to records. (e.g., product images, downloadable pdfs, etc.) We would explain why this is useful, how to configure it, and then provide code samples for how to enhance the sample application with images for each article, or something like that.)Chapter 9: JavaScript and CSSThis chapter needs significant revision. The structure of the chapter is good, but the underlying technologies have changed significantly, and all code samples need to be replaced. Thankfully this is a relatively short chapter.Chapter 10: Sending and Receiving E-MailThe existing content is mostly still relevant. Hower, the following changes should be made:We could add a section on “Previewing Emails” (https://edgeguides.rubyonrails.org/action_mailer_basics.html#previewing-emails), a new feature which aids development of emails sent by a Rails app.We could add a small section on “Action Mailer Callbacks”The section on “Receiving E-Mail” should be updated to reflect the new “ActionMailbox” featureChapter 10.5: ActiveJobIn this chapter, we would explain the concept of background jobs, explain why they’re useful, and then provide a working sample which ties into the sample application. (Namely, as a way of sending the email developed in the previous chapter.)Chapter 11: Testing Your ApplicationThis chapter will need some more significant updates, as Rails 6 has changed some concepts and introduced new ones:“Parallel testing” is new, and should be introduced -- it can dramatically increase the speed of running the test suite“Functional Testing Your Controllers” needs to be revised to reflect new technology“System Testing” could be added to introduce readers to the concept of browser-based testingSmall sections for testing ActiveJob and ActionMailer, and ActionCable could be addedChapter 12: InternationalizationThis chapter is still mostly relevant, and would only need small revisions. Additionally, we could introduce the concept of “lazy lookup”, allowing developers to rely on convention to make their usage of internationalization keys throughout their code more concise.Chapter 12.5: ActionCableWe could add a chapter to introduce this concept to the reader, explaining how it could be used to add “real-time” functionality to their application. (The easiest to understand example is a chat system, where you want to see messages from another user as soon as they are submitted without having to refresh the page.)We could add sample code to add something like a chat system to the application, though it seems like a stretch. I may try to think of a more relevant feature to add to the sample application.Chapter 13: Deploying Your Rails ApplicationsThis short chapter is still mostly relevant, but needs minor revisions to reflect newer technologies and software versions.Appendix A: DatabasesThis appendix needs little (or no) revision.Appendix B: The Rails CommunityThis appendix is mostly fine as-is; I would just want to make sure links are still valid, and that we’re not overlooking any new sources.Appendix C: GitThis appendix is still mostly relevant. I would just want to update links and references to version numbers, and make sure that example output and function listings are up-to-date.
Practical User Research
Explore how User Research has been influenced over the years by a range of disciplines, such as HCI, usability, anthropology, cognitive psychology, ergonomics etc. This book aims to contribute to the User Research community and covers topics that will help UX professionals, students and stakeholders to gain a better understanding of what User Research is.Throughout the book you will acquire a practical skill set, ranging from how to get the research going, to building a case in order to receive the budget and resources needed. It will provide you with a clear account of how to organise your research, how to plan it, and how to manage stakeholders’ expectations throughout the project. You’ll see how to fit User Research into your organization and incorporate it through the different product development phases (Discovery, Alpha, Beta until Live), as well as how to grow a User Research team.Practical User Research reviews the methodologies used for User Research, looks at how to recruit participants along with how to collect and analyse data, finally focusing on how to interpret and present your findings. Cross-cultural research, accessibility and assisted digital research will also be discussed throughout this book. The final chapter gives you 10 project briefs, with which you will be able to apply your new skill set and put into practice what you have learnt.WHAT YOU'LL LEARN* Integrate user research into your business* Apply user research to your product development cycle* Review the appropriate processes necessary to carry out user research* Take a pragmatic approach to user research, method by methodWHO THIS BOOK IS FORAnyone that wants to understand more about user research.DR. EMMANUELLE SAVARIT has a strong academic background and has worked closely with leaders in qualitative research methodology at UCLA. She has worked on a freelance basis with several companies in the Silicon Valley area, and has worked at the University of Technology of Compiègne (UTC) in France, one of the leading French engineering universities, as well as the Clinical Safety Research Unit at Imperial College, London. In 2010 Emmanuelle left academia and decided to focus exclusively on her consulting work and set up Analyse-Concept Ltd, which is specialised in user research. She offered her services in the private sector for companies such as Betfair, HSBC, Thompson Reuters, Graze, Odigeo, Adecco etc. as well as in the public sector for the Home Office, Department Work and Pension, Department for Education, etc. Emmanuelle is also frequently invited to talk at conferences around the world and organizes workshops to upskill and train people to become user researchers. You can find her on Twitter @eSavarit and find out more about her company on the website: www.analyse-concept.com.1. Introduction to User Research2. Understanding Product Development Phases3. Fitting User Research Into Your Organization4. Preparing for Your Research5. Research Preparation6. Research Methods: Analytics, survey and card sorting7. Collecting Qualitative Data8. Analyzing Qualitative Data and Interpreting the Findings9. Participant Recruitment, Ethics, and Accessibility10. Using Your New Skills in the Real WorldAppendix A: Screener Participant Recruitment Tablet TestingAppendix B: User Research Consent FormReferences
Attribution of Advanced Persistent Threats
An increasing number of countries develop capabilities for cyber-espionage and sabotage. The sheer number of reported network compromises suggests that some of these countries view cyber-means as integral and well-established elements of their strategical toolbox. At the same time the relevance of such attacks for society and politics is also increasing. Digital means were used to influence the US presidential election in 2016, repeatedly led to power outages in Ukraine, and caused economic losses of hundreds of millions of dollars with a malfunctioning ransomware. In all these cases the question who was behind the attacks is not only relevant from a legal perspective, but also has a political and social dimension.Attribution is the process of tracking and identifying the actors behind these cyber-attacks. Often it is considered an art, not a science.This book systematically analyses how hackers operate, which mistakes they make, and which traces they leave behind. Using examples from real cases the author explains the analytic methods used to ascertain the origin of Advanced Persistent Threats.DR. TIMO STEFFENS was involved in the analysis of many of the most spectacular cyber-espionage cases in Germany. He has been tracking the activities and techniques of sophisticated hacker groups for almost a decade.Advanced Persistent Threats.- The attribution process.-Analysis of malware.- Attack infrastructure.- Analysis of control servers.- Geopolitical analysis.- Telemetry - data from security products.- Methods of intelligence agencies.- Doxing.- False flags.- Group set-ups.- Communication.- Ethics of attribution.
Implementing Cryptography Using Python
LEARN TO DEPLOY PROVEN CRYPTOGRAPHIC TOOLS IN YOUR APPLICATIONS AND SERVICESCryptography is, quite simply, what makes security and privacy in the digital world possible. Tech professionals, including programmers, IT admins, and security analysts, need to understand how cryptography works to protect users, data, and assets. Implementing Cryptography Using Python will teach you the essentials, so you can apply proven cryptographic tools to secure your applications and systems. Because this book uses Python, an easily accessible language that has become one of the standards for cryptography implementation, you’ll be able to quickly learn how to secure applications and data of all kinds.In this easy-to-read guide, well-known cybersecurity expert Shannon Bray walks you through creating secure communications in public channels using public-key cryptography. You’ll also explore methods of authenticating messages to ensure that they haven’t been tampered with in transit. Finally, you’ll learn how to use digital signatures to let others verify the messages sent through your services.* Learn how to implement proven cryptographic tools, using easy-to-understand examples written in Python* Discover the history of cryptography and understand its critical importance in today’s digital communication systems* Work through real-world examples to understand the pros and cons of various authentication methods* Protect your end-users and ensure that your applications and systems are using up-to-date cryptographySHANNON W. BRAY CASP, Security +, CISM is the Virtual CISO at Secured Systems providing clients guidance on establishing and maintaining information security plans, policies, procedures, standards, and guidelines using accepted frameworks. He has worked in this roles and others in corporations and federal agencies. Shannon has an MS in Cybersecurity from the University of Delaware. Prior to transitioning to cybersecurity, he was a well known IT expert with several successful books about Microsoft SharePoint. Introduction xviiCHAPTER 1 INTRODUCTION TO CRYPTOGRAPHY AND PYTHON 1Exploring Algorithms 2Why Use Python? 2Downloading and Installing Python 3Installing on Ubuntu 4Installing on macOS 4Installing on Windows 4Installing on a Chromebook 4Installing Additional Packages 5Installing Pip, NumPy, and Matplotlib 6Installing the Cryptography Package 7Installing Additional Packages 8Testing Your Install 9Diving into Python Basics 9Using Variables 10Using Strings 11Introducing Operators 11Understanding Arithmetic Operators 11Understanding Comparison Operators 13Understanding Logical Operators 13Understanding Assignment Operators 14Understanding Bitwise Operators 15Understanding Membership Operators 15Understanding Identity Operators 16Using Conditionals 16Using Loops 17for 17while 18continue 18break 18else 18Using Files 19Understanding Python Semantics 20Sequence Types 20Introducing Custom Functions 26Downloading Files Using Python 27Introducing Python Modules 28Creating a Reverse Cipher 29Summary 30CHAPTER 2 CRYPTOGRAPHIC PROTOCOLS AND PERFECT SECRECY 31The Study of Cryptology 32Understanding Cryptography 32Cryptography’s Famous Family: Alice and Bob 33Diffie-Hellman 34Data Origin Authentication 34Entity Authentication 35Symmetric Algorithms 36Asymmetric Algorithms 36The Needham-Schroeder Protocols 36The Otway-Rees Protocol 38Kerberos 39Multiple-Domain Kerberos 40X.509 41Formal Validation of Cryptographic Protocols 46Configuring Your First Cryptographic Library 47Understanding Cryptanalysis 47Brute-Force Attacks 47Side-Channel Attacks 48Social Engineering 48Analytical Attacks 48Frequency Analysis 48Attack Models 49Shannon’s Theorem 50One-Time Pad 51XOR, AND, and OR 51One-Time Pad Function 56One-Way Hashes 58Cryptographic One-Way Hashes 59Message Authentication Codes 60Perfect Forward Secrecy 60Published and Proprietary Encryption Algorithms 61Summary 62References 62CHAPTER 3 CLASSICAL CRYPTOGRAPHY 65Password Best Practices 66Password Storage 66Hashing Passwords 67Salting Passwords 67Stretching Passwords 68Password Tools 68Obfuscating Data 69ASCII Encoding 70Base64 Encoding Text 70Binary Data 72Decoding 72Historical Ciphers 72Scytale of Sparta 73Substitution Ciphers 73Caesar Cipher 74ROT-13 76Atbash Cipher 77Vigenère Cipher 77Playfair 79Hill 2x2 83Column Transposition 87Affine Cipher 90Summary 93CHAPTER 4 CRYPTOGRAPHIC MATH AND FREQUENCY ANALYSIS 95Modular Arithmetic and the Greatest Common Devisor 96Prime Numbers 97Prime Number Theorem 98School Primality Test 98Fermat’s Little Theorem 100Miller-Rabin Primality Test 100Generate Large Prime Numbers 104Basic Group Theory 106Orders of Elements 107Modular Inverses 109Fermat’s Little Theorem to Find the Inverse 110Extending the GCD 111Euler’s Theorem 111Pseudorandomness 115Breaking C’s rand() Function 116Solving Systems of Linear Equations 117Frequency Analysis 120Cryptanalysis with Python 123Using an Online Word List 125Determining the Frequency 126Breaking the Vigenère Cipher 129Summary 138CHAPTER 5 STREAM CIPHERS AND BLOCK CIPHERS 139Convert between Hexdigest and Plaintext 140Use Stream Ciphers 141ARC4 147Vernam Cipher 148Salsa20 Cipher 149ChaCha Cipher 151Use Block Ciphers 156Block Modes of Operations 158ECB Mode 158CBC Mode 159CFB Mode 160OFB Mode 162CTR Mode 163Tricks with Stream Modes 164DIY Block Cipher Using Feistel Networks 165Advanced Encryption Standard (AES) 167Using AES with Python 167File Encryption Using AES 169File Decryption Using AES 169Summary 169CHAPTER 6 USING CRYPTOGRAPHY WITH IMAGES 171Simple Image Cryptography 171Images and Cryptography Libraries 174Understanding the Cryptography Library 174Understanding the Cryptosteganography Library 175Image Cryptography 175File Cryptography Using Fernet 176Image Cryptography Using Fernet 179AES and Block Modes of Operations 180Exploring a Simple ECB Mode Example 181Exploring a Simple CBC Mode Example 185Applying the Examples 186Steganography 187Storing a Message Inside an Image 188Storing a Binary File Inside an Image 192Working with large images 195Summary 197CHAPTER 7 MESSAGE INTEGRITY 199Message Authentication Codes 200Hash-based Message Authentication Code 201Using HMAC to Sign Message 202Message Digest with SHA 203Binary Digests 204NIST Compliance 205CBC-MAC 206Birthday Attacks 207Crafting Forgeries 209The Length Extension Attack 209Setting Up a Secure Channel 210Communication Channels 211Sending Secure Messages over IP Networks 212Create a Server Socket 212Create a Client Socket 213Create a Threaded Server with TCP 214Adding Symmetric Encryption 215Concatenate Message and MAC 218Summary 221References 222CHAPTER 8 CRYPTOGRAPHIC APPLICATIONS AND PKI 223The Public-Key Transformation 224Exploring the Basics of RSA 226Generating RSA Certificates 229Constructing Simple Text Encryption and Decryption with RSA Certificates 231Constructing BLOB Encryption andDecryption with RSA Certificates 232The El-Gamal Cryptosystem 235Elliptic Curve Cryptography 238Generating ECC Keys 240Key Lengths and Curves 241Diffie-Hellman Key Exchange 242Summary 245CHAPTER 9 MASTERING CRYPTOGRAPHY USING PYTHON 247Constructing a Plaintext Communications Application 248Creating a Server 248Creating the Client 250Creating the Helper File 251Execution 252Installing and Testing Wireshark 253Implementing PKI in the Application Using RSA Certificates 255Modifying the Server 256Modifying the Client 257Modifying the Helper File 258Execution 259Implementing Diffie-Hellman Key Exchange 261Modifying the Server File 262Modifying the Client File 264Modifying the Helper File 266Creating the Diffie-Hellman Class File 270Execution 275Wrapping Up 276Index 277
CompTIA CySA+ Study Guide
THIS UPDATED STUDY GUIDE BY TWO SECURITY EXPERTS WILL HELP YOU PREPARE FOR THE COMPTIA CYSA+ CERTIFICATION EXAM. POSITION YOURSELF FOR SUCCESS WITH COVERAGE OF CRUCIAL SECURITY TOPICS!Where can you find 100% coverage of the revised CompTIA Cybersecurity Analyst+ (CySA+) exam objectives? It’s all in the CompTIA CySA+ Study Guide Exam CS0-002, Second Edition! This guide provides clear and concise information on crucial security topics. You’ll be able to gain insight from practical, real-world examples, plus chapter reviews and exam highlights. Turn to this comprehensive resource to gain authoritative coverage of a range of security subject areas.* Review threat and vulnerability management topics* Expand your knowledge of software and systems security* Gain greater understanding of security operations and monitoring* Study incident response information* Get guidance on compliance and assessment The CompTIA CySA+ Study Guide, Second Edition connects you to useful study tools that help you prepare for the exam. Gain confidence by using its interactive online test bank with hundreds of bonus practice questions, electronic flashcards, and a searchable glossary of key cybersecurity terms. You also get access to hands-on labs and have the opportunity to create a cybersecurity toolkit.Leading security experts, Mike Chapple and David Seidl, wrote this valuable guide to help you prepare to be CompTIA Security+ certified. If you’re an IT professional who has earned your CompTIA Security+ certification, success on the CySA+ (Cybersecurity Analyst) exam stands as an impressive addition to your professional credentials. Preparing and taking the CS0-002exam can also help you plan for advanced certifications, such as the CompTIA Advanced Security Practitioner (CASP+).MIKE CHAPPLE, PHD, CYSA+, CISSP, is Teaching Professor of IT, Analytics, and Operations at the University of Notre Dame. He's a cybersecurity professional and educator with over 20 years of experience. Mike provides cybersecurity certification resources at his website, CertMike.com.DAVID SEIDL, CYSA+, CISSP, PENTEST+, is Vice President for Information Technology and CIO at Miami University. David co-led Notre Dame's move to the cloud, and has written multiple cybersecurity certification books.Introduction xxviiAssessment Test xliCHAPTER 1 TODAY’S CYBERSECURITY ANALYST 1Cybersecurity Objectives 2Privacy vs. Security 3Evaluating Security Risks 4Identify Threats 6Identify Vulnerabilities 8Determine Likelihood, Impact, and Risk 8Reviewing Controls 10Building a Secure Network 10Network Access Control 10Firewalls and Network Perimeter Security 12Network Segmentation 15Defense Through Deception 16Secure Endpoint Management 17Hardening System Configurations 17Patch Management 17Group Policies 18Endpoint Security Software 19Penetration Testing 19Planning a Penetration Test 20Conducting Discovery 21Executing a Penetration Test 21Communicating Penetration Test Results 22Training and Exercises 22Reverse Engineering 22Isolation and Sandboxing 23Reverse-Engineering Software 23Reverse-Engineering Hardware 24The Future of Cybersecurity Analytics 25Summary 26Exam Essentials 26Lab Exercises 28Activity 1.1: Create an Inbound Firewall Rule 28Activity 1.2: Create a Group Policy Object 28Activity 1.3: Write a Penetration Testing Plan 30Activity 1.4: Recognize Security Tools 30Review Questions 30CHAPTER 2 USING THREAT INTELLIGENCE 35Threat Data and Intelligence 36Open Source Intelligence 37Proprietary and Closed Source Intelligence 39Assessing Threat Intelligence 39Threat Indicator Management and Exchange 41The Intelligence Cycle 42The Threat Intelligence Community 43Threat Classification 44Threat Actors 44Threat Classification 45Threat Research and Modeling 46Attack Frameworks 48MITRE’s ATT&CK Framework 48The Diamond Model of Intrusion Analysis 50Lockheed Martin’s Cyber Kill Chain 51The Unified Kill Chain 53Common Vulnerability Scoring System (CVSS) 53Applying Threat Intelligence Organizationwide 53Proactive Threat Hunting 54Summary 55Exam Essentials 56Lab Exercises 57Activity 2.1: Explore the ATT&CK Framework 57Activity 2.2: Set Up a STIX/TAXII Feed 58Activity 2.3: Intelligence Gathering Techniques 58Review Questions 59CHAPTER 3 RECONNAISSANCE AND INTELLIGENCE GATHERING 63Mapping and Enumeration 64Active Reconnaissance 65Mapping Networks and Discovering Topology 65Pinging Hosts 67Port Scanning and Service Discovery Techniques and Tools 69Passive Footprinting 75Log and Configuration Analysis 76Harvesting Data from DNS and Whois 84Responder 91Information Aggregation and Analysis Tools 92Information Gathering Using Packet Capture 92Gathering Organizational Intelligence 92Organizational Data 93Electronic Document Harvesting 94Detecting, Preventing, and Responding to Reconnaissance 97Capturing and Analyzing Data to Detect Reconnaissance 97Preventing Reconnaissance 99Summary 100Exam Essentials 101Lab Exercises 102Activity 3.1: Port Scanning 102Activity 3.2: Write an Intelligence Gathering Plan 102Activity 3.3: Intelligence Gathering Techniques 103Review Questions 103CHAPTER 4 DESIGNING A VULNERABILITY MANAGEMENT PROGRAM 109Identifying Vulnerability Management Requirements 110Regulatory Environment 110Corporate Policy 114Identifying Scan Targets 114Determining Scan Frequency 115Active vs. Passive Scanning 117Configuring and Executing Vulnerability Scans 118Scoping Vulnerability Scans 118Configuring Vulnerability Scans 119Scanner Maintenance 123Developing a Remediation Workflow 126Reporting and Communication 127Prioritizing Remediation 129Testing and Implementing Fixes 130Delayed Remediation Options 131Overcoming Risks of Vulnerability Scanning 131Vulnerability Scanning Tools 133Infrastructure Vulnerability Scanning 133Web Application Scanning 133Interception Proxies 134Wireless Assessment Tools 136Summary 137Exam Essentials 138Lab Exercises 139Activity 4.1: Install a Vulnerability Scanner 139Activity 4.2: Run a Vulnerability Scan 140Review Questions 140CHAPTER 5 ANALYZING VULNERABILITY SCANS 145Reviewing and Interpreting Scan Reports 146Understanding CVSS 148Validating Scan Results 155False Positives 156Documented Exceptions 156Understanding Informational Results 157Reconciling Scan Results with Other Data Sources 158Trend Analysis 158Common Vulnerabilities 158Server and Endpoint Vulnerabilities 159Network Vulnerabilities 168Virtualization Vulnerabilities 173Internet of Things (IoT) 176Web Application Vulnerabilities 177Authentication Vulnerabilities 181Summary 183Exam Essentials 184Lab Exercises 185Activity 5.1: Interpret a Vulnerability Scan 185Activity 5.2: Analyze a CVSS Vector 185Activity 5.3: Remediate a Vulnerability 185Review Questions 187CHAPTER 6 CLOUD SECURITY 191Understanding Cloud Environments 192The Case for Cloud Computing 193Cloud Service Models 194Cloud Deployment Models 200Operating in the Cloud 204DevOps Strategies 205Infrastructure as Code (IaC) 206Application Programming Interfaces 207Cloud Monitoring 208Cloud Infrastructure Security 208Cloud Infrastructure Security Tools 209Cloud Access Security Brokers (CASB) 213Summary 214Exam Essentials 215Lab Exercises 216Activity 6.1: Run a ScoutSuite Assessment 216Activity 6.2: Explore the Exploits Available with Pacu 216Activity 6.3: Scan an AWS Account with Prowler 216Review Questions 217CHAPTER 7 INFRASTRUCTURE SECURITY AND CONTROLS 221Understanding Defense-in-Depth 222Layered Security 222Zero Trust 223Segmentation 224Network Architecture 226Physical Network Architectures 227Software-Defined Networks 227Virtualization 228Asset and Change Management 229Logging, Monitoring, and Validation 229Encryption 230Active Defense 231Infrastructure Security and the Cloud 231Improving Security by Improving Controls 233Layered Host Security 234Permissions 235Whitelisting and Blacklisting 235Technical Controls 236Policy, Process, and Standards 238Analyzing Security Architecture 240Analyzing Security Requirements 240Reviewing Architecture 241Common Issues 242Reviewing a Security Architecture 246Maintaining a Security Design 248Summary 249Exam Essentials 249Lab Exercises 250Activity 7.1: Review an Application Using the OWASP Attack Surface Analysis Cheat Sheet 250Activity 7.2: Review a NIST Security Architecture 251Activity 7.3: Security Architecture Terminology 252Review Questions 253CHAPTER 8 IDENTITY AND ACCESS MANAGEMENT SECURITY 259Understanding Identity 260Identity Systems and Security Design 261Threats to Identity and Access 269Understanding Security Issues with Identities 269Attacking AAA Systems and Protocols 270Targeting Account Creation, Provisioning, and Deprovisioning 275Preventing Common Exploits of Identity and Authorization 276Acquiring Credentials 277Identity as a Security Layer 280Identity and Defense-in-Depth 280Securing Authentication and Authorization 281Detecting Attacks and Security Operations 288Federation and Single Sign-On 289Federated Identity Security Considerations 289Federated Identity Design Choices 291Federated Identity Technologies 293Federation Incident Response 297Summary 297Exam Essentials 298Lab Exercises 299Activity 8.1: Federated Security Scenario 299Activity 8.2: On-site Identity Issues Scenario 300Activity 8.3: Identity and AccessManagement Terminology 301Review Questions 303CHAPTER 9 SOFTWARE AND HARDWARE DEVELOPMENT SECURITY 307Software Assurance Best Practices 308The Software Development Life Cycle 309Software Development Phases 310Software Development Models 311DevSecOps and DevOps 317Designing and Coding for Security 318Common Software Development Security Issues 319Security Implications of Target Platforms 321Secure Coding Best Practices 322API Security 325Service-Oriented Architectures 325Application Testing 327Information Security and the SDLC 327Code Review Models 328Software Security Testing 331Software Assessment: Testing and Analyzing Code 332Web Application Vulnerability Scanning 335Hardware Assurance Best Practices 337Cryptographic Hardware 337Firmware Security 338Hardware Security 339Summary 340Exam Essentials 341Lab Exercises 342Activity 9.1: Review an Application Using the OWASP Application Security Architecture Cheat Sheet 342Activity 9.2: Learn About Web Application Exploits from WebGoat 342Activity 9.3: SDLC Terminology 343Review Questions 344CHAPTER 10 SECURITY OPERATIONS AND MONITORING 349Security Monitoring 350Analyzing Security Data 350Logs 351Endpoint Data Analysis 358Network Data Analysis 362Protecting and Analyzing Email 365Scripting, Searching, and Text Manipulation 369Summary 371Exam Essentials 371Lab Exercises 372Activity 10.1: Analyze a Network Capture File 372Activity 10.2: Analyze a Phishing Email 373Activity 10.3: Security Architecture Terminology 373Review Questions 374CHAPTER 11 BUILDING AN INCIDENT RESPONSE PROGRAM 379Security Incidents 380Phases of Incident Response 381Preparation 382Detection and Analysis 383Containment, Eradication, and Recovery 384Postincident Activity 385Building the Foundation for Incident Response 387Policy 387Procedures and Playbooks 387Documenting the Incident Response Plan 388Creating an Incident Response Team 389Incident Response Providers 391CSIRT Scope of Control 391Coordination and Information Sharing 391Internal Communications 392External Communications 392Classifying Incidents 393Threat Classification 393Severity Classification 394Summary 398Exam Essentials 398Lab Exercises 399Activity 11.1: Incident Severity Classification 399Activity 11.2: Incident Response Phases 400Activity 11.3: Develop an Incident Communications Plan 400Review Questions 401CHAPTER 12 ANALYZING INDICATORS OF COMPROMISE 405Analyzing Network Events 406Capturing Network-Related Events 407Network Monitoring Tools 411Detecting Common Network Issues 413Detecting Scans and Probes 417Detecting Denial-of-Service and Distributed Denial-of-Service Attacks 417Detecting Other Network Attacks 420Detecting and Finding Rogue Devices 420Investigating Host-Related Issues 422System Resources 422Malware, Malicious Processes, and Unauthorized Software 426Unauthorized Access, Changes, and Privileges 428Investigating Service and Application-Related Issues 430Application and Service Monitoring 431Application and Service Issue Response and Restoration 433Detecting Attacks on Applications 434Summary 435Exam Essentials 436Lab Exercises 436Activity 12.1: Identify a Network Scan 436Activity 12.2: Write a Service Issue Response Plan 437Activity 12.3: Security Tools 438Review Questions 439CHAPTER 13 PERFORMING FORENSIC ANALYSIS AND TECHNIQUES 443Building a Forensics Capability 444Building a Forensic Toolkit 444Understanding Forensic Software 448Capabilities and Application 448Conducting Endpoint Forensics 452Operating System, Process, and Memory Dump Analysis 452Network Forensics 455Cloud, Virtual, and Container Forensics 458Conducting a Forensic Investigation 460Forensic Procedures 460Target Locations 462Acquiring and Validating Drive Images 463Imaging Live Systems 467Acquiring Other Data 467Forensic Investigation: An Example 471Importing a Forensic Image 471Analyzing the Image 473Reporting 476Summary 478Exam Essentials 478Lab Exercises 479Activity 13.1: Create a Disk Image 479Activity 13.2: Conduct the NIST Rhino Hunt 480Activity 13.3: Security Tools 481Review Questions 482CHAPTER 14 CONTAINMENT, ERADICATION, AND RECOVERY 487Containing the Damage 489Segmentation 490Isolation 492Removal 493Evidence Gathering and Handling 495Identifying Attackers 495Incident Eradication and Recovery 496Reconstruction and Reimaging 497Patching Systems and Applications 497Sanitization and Secure Disposal 498Validating the Recovery Effort 500Wrapping Up the Response 500Managing Change Control Processes 501Conducting a Lessons Learned Session 501Developing a Final Report 501Evidence Retention 502Summary 502Exam Essentials 502Lab Exercises 503Activity 14.1: Incident Containment Options 503Activity 14.2: Incident Response Activities 505Activity 14.3: Sanitization and Disposal Techniques 506Review Questions 507CHAPTER 15 RISK MANAGEMENT 511Analyzing Risk 512Risk Identification 513Risk Calculation 514Business Impact Analysis 515Managing Risk 518Risk Mitigation 519Risk Avoidance 520Risk Transference 520Risk Acceptance 521Security Controls 522Nontechnical Controls 522Technical Controls 526Summary 528Exam Essentials 529Lab Exercises 529Activity 15.1: Risk Management Strategies 529Activity 15.2: Risk Identification and Assessment 530Activity 15.3: Risk Management 530Review Questions 531CHAPTER 16 POLICY AND COMPLIANCE 535Understanding Policy Documents 536Policies 536Standards 539Procedures 541Guidelines 542Exceptions and Compensating Controls 543Complying with Laws and Regulations 545Adopting a Standard Framework 546NIST Cybersecurity Framework 546ISO 27001 549Control Objectives for Information and Related Technologies (COBIT) 550Information Technology Infrastructure Library (ITIL) 551Implementing Policy-Based Controls 552Security Control Categories 552Security Control Types 553Security Control Verification and Quality Control 553Summary 554Exam Essentials 554Lab Exercises 555Activity 16.1: Policy Documents 555Activity 16.2: Using a Cybersecurity Framework 556Activity 16.3: Compliance Auditing Tools 556Review Questions 557APPENDICES 561APPENDIX A PRACTICE EXAM 561Exam Questions 562APPENDIX B ANSWERS TO REVIEW QUESTIONS AND PRACTICE EXAM 581Chapter 1: Today’s Cybersecurity Analyst 582Chapter 2: Using Threat Intelligence 583Chapter 3: Reconnaissance and Intelligence Gathering 585Chapter 4: Designing a Vulnerability Management Program 587Chapter 5: Analyzing Vulnerability Scans 589Chapter 6: Cloud Security 590Chapter 7: Infrastructure Security and Controls 592Chapter 8: Identity and Access Management Security 595Chapter 9: Software and Hardware Development Security 597Chapter 10: Security Operations and Monitoring 599Chapter 11: Building an Incident Response Program 601Chapter 12: Analyzing Indicators of Compromise 603Chapter 13: Performing Forensic Analysis and Techniques 605Chapter 14: Containment, Eradication, and Recovery 607Chapter 15: Risk Management 609Chapter 16: Policy and Compliance 610Practice Exam Answers 612APPENDIX C ANSWERS TO LAB EXERCISES 621Chapter 1: Today’s Cybersecurity Analyst 622Solution to Activity 1.4: Recognize Security Tools 622Chapter 2: Using Threat Intelligence 622Solution to Activity 2.3: Intelligence Gathering Techniques 622Chapter 3: Reconnaissance and Intelligence Gathering 623Solution to Activity 3.3: Intelligence Gathering Tools 623Chapter 5: Analyzing Vulnerability Scans 623Solution to Activity 5.2: Analyze a CVSS Vector 623Chapter 7: Infrastructure Security and Controls 624Solution to Activity 7.3: Security Architecture Terminology 624Chapter 8: Identity and Access Management Security 625Solution to Activity 8.1: Federated Security Scenario 625Solution to Activity 8.2: On-site Identity Issues Scenario 625Solution to Activity 8.3: Identity and Access Management Terminology 626Chapter 9: Software and Hardware Development Security 627Solution to Activity 9.3: Security Tools 627Chapter 10: Security Operations and Monitoring 627Solution to Activity 10.3: Security Architecture Terminology 627Chapter 11: Building an Incident Response Program 628Solution to Activity 11.1: Incident Severity Classification 628Solution to Activity 11.2: Incident Response Phases 629Chapter 12: Analyzing Indicators of Compromise 629Solution to Activity 12.3: Security Tools 629Chapter 13: Performing Forensic Analysis and Techniques 630Solution to Activity 13.2: Conduct the NIST Rhino Hunt 630Solution to Activity 13.3: Security Tools 630Chapter 14: Containment, Eradication, and Recovery 631Solution to Activity 14.1: Incident Containment Options 631Solution to Activity 14.2: Incident Response Activities 632Solution to Activity 14.3: Sanitization and Disposal Techniques 633Chapter 15: Risk Management 633Solution to Activity 15.1: Risk Management Strategies 633Chapter 16: Policy and Compliance 634Solution to Activity 16.1: Policy Documents 634Solution to Activity 16.3: Compliance Auditing Tools 634Index 635
Advanced R 4 Data Programming and the Cloud
Program for data analysis using R and learn practical skills to make your work more efficient. This revised book explores how to automate running code and the creation of reports to share your results, as well as writing functions and packages. It includes key R 4 features such as a new color palette for charts, an enhanced reference counting system, and normalization of matrix and array types where matrix objects now formally inherit from the array class, eliminating inconsistencies.Advanced R 4 Data Programming and the Cloud is not designed to teach advanced R programming nor to teach the theory behind statistical procedures. Rather, it is designed to be a practical guide moving beyond merely using R; it shows you how to program in R to automate tasks.This book will teach you how to manipulate data in modern R structures and includes connecting R to databases such as PostgreSQL, cloud services such as Amazon Web Services (AWS), and digital dashboards such as Shiny. Each chapter also includes a detailed bibliography with references to research articles and other resources that cover relevant conceptual and theoretical topics.WHAT YOU WILL LEARN* Write and document R functions using R 4* Make an R package and share it via GitHub or privately* Add tests to R code to ensure it works as intended* Use R to talk directly to databases and do complex data management* Run R in the Amazon cloud* Deploy a Shiny digital dashboard* Generate presentation-ready tables and reports using RWHO THIS BOOK IS FORWorking professionals, researchers, and students who are familiar with R and basic statistical techniques such as linear regression and who want to learn how to take their R coding and programming to the next level.MATT WILEY leads institutional effectiveness, research, and assessment at Victoria College, facilitating strategic and unit planning, data-informed decision making, and state/regional/federal accountability. As a tenured, associate professor of mathematics, he won awards in both mathematics education (California) and student engagement (Texas). Matt earned degrees in computer science, business, and pure mathematics from the University of California and Texas A&M systems.Outside academia, he co-authors books about the popular R programming language and was managing partner of a statistical consultancy for almost a decade. He has programming experience with R, SQL, C++, Ruby, Fortran, and JavaScript.A programmer, a published author, a mathematician, and a transformational leader, Matt has always melded his passion for writing with his joy of logical problem solving and data science. From the boardroom to the classroom, he enjoys finding dynamic ways to partner with interdisciplinary and diverse teams to make complex ideas and projects understandable and solvable.JOSHUA F. WILEY is a lecturer in the Turner Institute for Brain and Mental Health and School of Psychological Sciences at Monash University. He earned his PhD from the University of California, Los Angeles and completed his post-doctoral training in primary care and prevention. His research uses advanced quantitative methods to understand the dynamics between psychosocial factors, sleep and other health behaviours in relation to psychological and physical health. He develops or co-develops a number of R packages including varian, a package to conduct Bayesian scale-location structural equation models, MplusAutomation, a popular package that links R to the commercial Mplus software, extraoperators for faster logical operations, multilevelTools for diagnostics, effect sizes, and easy display of multilevel / mixed effects models results, and miscellaneous functions to explore data or speed up analysis in JWileymisc.PROGRAMMING1.Programming Basics2.Programming Utilities3.Loops, flow control, and *apply functions4.Writing Functions5.Writing Classes and Methods6.Writing a PackageDATA MANAGEMENT7.Data Management using data.table8.Data Munging With data.table9.Other Tools for Data Management10.Reading Big Data(bases)CLOUD COMPUTING11.Getting a Cloud12.Ubuntu for Windows Users13.Every Cloud has a Shiny lining…14.Shiny Dashboard Sampler15.Dynamic Reports and the CloudReferences (backmatter)
Data Mashup with Microsoft Excel Using Power Query and M
Master the art of loading external data into Excel for use in reporting, charting, dashboarding, and business intelligence. This book provides a complete and thorough explanation of Microsoft Excel’s Get and Transform feature set, showing you how to connect to a range of external databases and other data sources to find data and pull that data into your local spreadsheet for further analysis. Leading databases are covered, including Microsoft Azure data sources and web sources, and you will learn how to access those sources from your Microsoft Excel spreadsheets.Getting data into Excel is a prerequisite for using Excel's analytics capabilities. This book takes you beyond copying and pasting by showing you how to connect to your corporate databases that are hosted in the Azure cloud, and how to pull data from Oracle Database and SQL Server, and other sources.Accessing data is only half the problem, and the other half involves cleansing and rearranging your data to make it useful in spreadsheet form. Author Adam Aspin shows you how to create datasets and transformations. For advanced problems, there is help on the M language that is built into Excel, specifically to support mashing up data in support of business intelligence and analysis. If you are an Excel user, you won't want to be without this book that teaches you to extract and prepare external data ready for use in what is arguably the world’s leading analytics tool.WHAT YOU WILL LEARN* Connect to a range of external data, from databases to Azure sources* Ingest data directly into your spreadsheets, or into PowerPivot data models* Cleanse and prepare external data so it can be used inside Excel* Refresh data quickly and easily to always have the latest information* Transform data into ready-to-use structures that fit the spreadsheet format* Execute M language functions for complex data transformationsWHO THIS BOOK IS FORExcel users who want to access data from external sources—including the Microsoft Azure platform—in order to create business intelligence reporting, dashboards, and visualizations. For Excel users needing to cleanse and rearrange such data to meet their own, specific needs.ADAM ASPIN is an independent business intelligence consultant based in the United Kingdom. He has worked with SQL Server for over 25 years. During this time, he has developed several dozen reporting and analytical systems based on the Microsoft analytics stack.Business intelligence has been Adam’s principal focus for the last 20 years. He has applied his skills for a variety of clients in a range of industry sectors. He is the author of Apress books: SQL Server Data Integration Recipes, Pro Power BI Desktop (now in its third edition), Business Intelligence with SQL Server Reporting Services, and High Impact Data Visualization.A graduate of Oxford University, Adam began his career in publishing before moving into IT. Databases soon became a passion, and his experience in this arena ranges from dBase to Oracle, and Access to MySQL, with occasional sorties into the world of DB2. He is, however, most at home in the Microsoft universe when using SQL Server Analysis Services, SQL Server Reporting Services, and SQL Server Integration Services and Power BI (both on-premise and in Azure).A fluent French speaker, Adam has worked in France and Switzerland for many years.1. Using Power Query to Discover and Load Data into Excel2. Discovering and Loading File-Based Data with Power Query3. Loading Data from Databases and Data Warehouses4. Loading Data from the Web and the Cloud5. Generic Data Sources6. Structuring Imported Data7. Data Transformation8. Restructuring Data9. Complex Data Loads10. Organizing and Managing Queries11. Parameterizing Queries12. The M Language13. Appendix A: Sample Data
Building Computer Vision Applications Using Artificial Neural Networks
Apply computer vision and machine learning concepts in developing business and industrial applications using a practical, step-by-step approach.The book comprises four main sections starting with setting up your programming environment and configuring your computer with all the prerequisites to run the code examples. Section 1 covers the basics of image and video processing with code examples of how to manipulate and extract useful information from the images. You will mainly use OpenCV with Python to work with examples in this section.Section 2 describes machine learning and neural network concepts as applied to computer vision. You will learn different algorithms of the neural network, such as convolutional neural network (CNN), region-based convolutional neural network (R-CNN), and YOLO. In this section, you will also learn how to train, tune, and manage neural networks for computer vision. Section 3 provides step-by-step examples of developing business and industrial applications, such as facial recognition in video surveillance and surface defect detection in manufacturing.The final section is about training neural networks involving a large number of images on cloud infrastructure, such as Amazon AWS, Google Cloud Platform, and Microsoft Azure. It walks you through the process of training distributed neural networks for computer vision on GPU-based cloud infrastructure. By the time you finish reading Building Computer Vision Applications Using Artificial Neural Networks and working through the code examples, you will have developed some real-world use cases of computer vision with deep learning.WHAT YOU WILL LEARN· Employ image processing, manipulation, and feature extraction techniques· Work with various deep learning algorithms for computer vision· Train, manage, and tune hyperparameters of CNNs and object detection models, such as R-CNN, SSD, and YOLO· Build neural network models using Keras and TensorFlow· Discover best practices when implementing computer vision applications in business and industry· Train distributed models on GPU-based cloud infrastructureWHO THIS BOOK IS FORData scientists, analysts, and machine learning and software engineering professionals with Python programming knowledge.Shamshad (Sam) Ansari works as President and CEO of Accure Inc, an artificial intelligence automation company that he founded. He has raised Accure from startup to a sustainable business by building a winning team and acquiring customers from across the globe. He has technical expertise in the area of computer vision, machine learning, AI, cognitive science, NLP, and big data. He architected, designed, and developed the Momentum platform that automates AI solution development. He is an inventor and has four US patents in the area of AI and cognitive computing.Shamshad worked as a senior software engineer with IBM, VP of engineering with Orbit Solutions, and as principal architect and director of engineering with Apixio.Section 11. Chapter 1: Prerequisite and Software Installation1.1. Python and PIP1.1.1. Installing Python and PIP on Ubuntu1.1.2. Installing Python and PIP on Mac OS1.1.3. Installing Python and PIP on CentOS 71.1.4. Installing Python and PIP on Windows1.2. Virtualenv1.2.1. Setup and activate virtualenv 1.3. Tensorflow1.3.1. Installing Tensorflow1.4. PyCharm IDE1.4.1. Installing PyCharm1.4.2. Configuring PyCharm to use virtualenv1.5. OpenCV1.5.1. Installing OpenCV1.5.2. Installing OpenCV4 with Python bindings1.6. Additional libraries1.6.1. SciPy1.6.2. MatplotlibChapter 2: Core Concepts of Image and Video Processing1.7. Image processing1.7.1. Image basics 1.7.2. Pixel1.7.3. Pixel color1.7.3.1. Grayscale1.7.3.2. Color1.7.4. Coordinate system 1.7.5. Python and OpenCV code to manipulate images1.7.6. Program: loading, exploring and showing image1.7.7. Program: OpenCV code to access and manipulate pixels1.8. Drawing1.8.1. Drawing a line on an image1.8.2. Drawing a rectangle on an image1.8.3. Drawing a circle on an image1.9. Chapter summary1.10.2. Chapter 3: Techniques of Image Processing2.1. Transformation2.1.1. Resizing2.1.2. Translation2.1.3. Rotation2.1.4. Flipping2.1.5. Cropping2.2. Image arithmetic and bitwise operations2.2.1. Addition2.2.2. Subtraction 2.2.3. Bitwise operations2.2.3.1. OR2.2.3.2. AND2.2.3.3. NOT2.2.3.4. XOR 2.3. Masking2.4. Splitting and merging channels2.5. Smoothing and blurring2.6. Thresholding2.7. Gradient and edge detection2.8. Contours2.9. Chapter summarySection 23. Chapter 4: Building Artificial Intelligence System For Computer Vision3.1. Image processing pipeline3.2. Feature extraction3.2.1. Color histogram3.2.2. GLCM3.2.3. HOG3.2.4. LBP3.3. Feature selection3.3.1. Filter3.3.2. Wrapper3.3.3. Embedded3.3.4. Regularization3.4. Chapter summary4. Chapter 5: Artificial Neural Network for Computer Vision4.1. Introduction to ANN4.1.1. ANN topology4.1.2. Hyperparameters4.1.3. ANN model training using TensorFlow4.1.4. Model evaluation4.1.5. Model deployment4.1.6. Use of trained model4.2. Introduction to Convolution Neural Network (CNN)4.2.1. Core concepts of CNN4.2.2. Creating training set for CNN4.2.3. Training CNN model using TensorFlow4.2.4. Inspecting CNN model and evaluating model fitness4.2.5. Using and deployment of trained model4.3. Introduction to Recurrent Neural Network (RNN) and long short-term Memory (LSTM)4.3.1. Core concepts of RNN and LSTM4.3.2. Creating training set for LSTM4.3.3. LSTM model training using TensorFlow4.3.4. Inspecting LSTM model and assessing fitness4.3.5. Deploying LSTM models in practiceSection 35. Chapter 6: Practical Example 1- Object Detection in Images6. Chapter 7: Practical Example 2- Object Tracking in Videos7. Chapter 8: Practical Example 3- Facial Detection8. Chapter 9: Industrial Application - Realtime Defect Detection in Industrial ManufacturingSection 49. Chapter 10: Training Machine Learning Model on the Cloud9.1. Amazon AWS9.2. Google Cloud Platform (GCP)9.3. Microsoft Azure
The Art of Immutable Architecture
This book teaches you how to evaluate a distributed system from the perspective of immutable objects. You will understand the problems in existing designs, know how to make small modifications to correct those problems, and learn to apply the principles of immutable architecture to your tools.Most software components focus on the state of objects. They store the current state of a row in a relational database. They track changes to state over time, making several basic assumptions: there is a single latest version of each object, the state of an object changes sequentially, and a system of record exists.This is a challenge when it comes to building distributed systems. Whether dealing with autonomous microservices or disconnected mobile apps, many of the problems we try to solve come down to synchronizing an ever-changing state between isolated components. Distributed systems would be a lot easier to build if objects could not change.After reading THE ART OF IMMUTABLE ARCHITECTURE, you will come away with an understanding of the benefits of using immutable objects in your own distributed systems. You will learn a set of rules for identifying and exchanging immutable objects, and see a collection of useful theorems that emerges and ensures that the distributed systems we build are eventually consistent. Using patterns, you will find where the truth converges, see how changes are associative, rather than sequential, and come to feel comfortable understanding that there is no longer a single source of truth. Practical hands-on examples reinforce how to build software using the described patterns, techniques, and tools. By the end, you will possess the language and resources needed to analyze and construct distributed systems with confidence.The assumptions of the past were sufficient for building single-user, single-computer systems. But as we expand to multiple devices, shared experiences, and cloud computing, they work against us. It is time for a new set of assumptions. Start with immutable objects, and build better distributed systems.WHAT YOU WILL LEARN* Evaluate a distributed system from the perspective of immutable objects * Recognize the problems in existing designs, and make small modifications to correct them* Start a new system from scratch, applying patternsApply the principles of immutable architecture to your tools, including SQL databases, message queues, and the network protocols that you already use * Discover new tools that natively apply these principles WHO THIS BOOK IS FORSoftware architects and senior developers. It contains examples in SQL and languages such as JavaScript and C#. Past experience with distributed computing, data modeling, or business analysis is helpful.MICHAEL L. PERRY has built upon the works of mathematicians such as Bertrand Meyer, Leslie Lamport, and Donald Knuth to develop a mathematical system for software development. He has captured this system in a set of open source projects. Michael often presents on math and software at events and online. You can find out more at qedcode.com.Part I: DefinitionChapter 1. Why Immutable ArchitectureChapter 2. Forms of Immutable ArchitectureChapter 3. How to Read a Historical ModelPart II: ApplicationChapter 4. Location IndependenceChapter 5. AnalysisChapter 6. State TransitionsChapter 7. SecurityChapter 8. PatternsPart III: ImplementationChapter 9. Query InversesChapter 10. SQL DatabasesChapter 11. CommunicationChapter 12. Generated Behaviors
People-Centric Skills
USE YOUR INTERPERSONAL AND COMMUNICATION SKILLS AS A FINANCIAL PROFESSIONAL TO WORK SUCCESSFULLY WITH CLIENTSEmbark on a journey to further develop your career when you read People-Centric Skills: Interpersonal and Communication Skills for Financial Professionals, 2nd Edition. Business leaders consider employee communication skills and critical thinking abilities as essential elements for success. In their work, all professionals must communicate clearly and rely on their interpersonal skills to be successful.This second edition of People-Centric Skills shares the fictional story of Dalton Zimmer, executive coach and public speaker. Dalton, all the while juggling his business, kids and social life, provides coaching and communication strategies for handling challenging situations faced by his clients.This insightful narrative will help you expand communication and soft skills as a CPA, auditor, financial planner or other financial professional.As Generation Z is entering the work force, the communication gap between Z and Boomers or Generation X is widening significantly. New to the second edition, you’ll find a discussion of communication between generations and how to bridge them as a financial professional.You can be a more people-centric leader as you engage with a wide range of clients and associates. This book can be a first step to improving interpersonal and communication skills as you continue to develop in your career.DANNY M. GOLDBERG, CPA, CIA, CISA, is the founder of GoldSRD, a leading staffing, recruiting, and professional development firm. He has over 22 years of experience and is an IIA - Dallas Chapter board member. He is well-published, from numerous articles to three other books, and is a highly-regarded speaker on all facets of audit and people-centric skills. Foreword ixPreface xiAcknowledgments xvChapter 1 The People-Centric Journey Begins Anew 1Chapter 2 Reading Through People 5Chapter 3 Emotional Intelligence 29Chapter 4 Different Points of View: Using Self-Awareness and Empathy Effectively 47Chapter 5 Wrong Mode = Wrong Mood: Determining the Optimal Mode of Communication 51Chapter 6 Influencing Change Throughout Any Business 59Chapter 7 Projecting the Real You: Public Speaking 65Chapter 8 Coaching and Mentoring 93Chapter 9 Presentation Skills and Body Language 99Chapter 10 Thinking Quickly on Your Feet 125Chapter 11 Coaching and Mentoring, Revisited 131Chapter 12 Crisis Management 139Epilogue 143Appendix 145About the Author 179Index 181
Understanding Microsoft Teams Administration
Explore solutions, best practices, tips, and workarounds to plan, design, customize, implement, and manage Microsoft Teams in any environment.The book starts with an overview of Microsoft Teams where you will go through the teams architecture, teams/channels, audio/video meetings, and the phone system. It further dives into deployment and management of teams, clients, guests and external access, and live events, followed by network assessment and bandwidth planning for Teams. Here, you will learn about deployment of quality of service and how to configure your phone systems using direct routing and calling plans. Moving forward, you will learn Microsoft Teams administration and policy management along with the migration process of Skype for Business on-prem to Microsoft Teams. Towards the end, you will learn troubleshooting techniques in Teams for call quality issues and connectivity challenges.After reading Understanding Microsoft Teams Administration, you will be able to effectively configure, customize, and manage the Teams experience using the Teams admin portal and other tools and techniques.WHAT YOU WILL LEARN* Understand the Microsoft Teams architecture including the different components involved* Enable and manage external and guest access for Teams users* Manage Teams and channels with a private channel* Implement quality of service for audio/video calls and meetings* Establish Office 365 data classifications, loss prevention plans, and governance* Manage resource types, licensing, service health reporting, and support* Work with Microsoft Teams room and live event management* Implement and manage messaging, calling policies, and settingsWHO THIS BOOK IS FORAdministrators and technical consultants working on Teams.BALU ILAG is a Microsoft Certified Trainer (MCT), Microsoft 365 Certified Teams Administrator Associate, and Microsoft Certified Solutions Expert (MCSE) for communication and productivity. He has written several blog posts on unified communication and collaboration technologies including subjects ranging from a how-to guide to best practices and troubleshooting.He is currently working as an Office 365 and collaboration specialist at Juniper networks. Balu has over 13 years' experience in messaging, telecom and unified communications and collaboration and is focused on Microsoft Teams and Microsoft Office 365 collaboration. His role is a combination of product administration, product development, and strategic guidance for enterprise customers.CHAPTER 1: MICROSOFT TEAMS OVERVIEWa. What is Microsoft Teams?b. Teams Architecturec. Teams Team and channelsd. Meeting, Tab, Files and Wikie. Teams Audio/video call and meetingf. Teams phone system overviewCHAPTER 2: TEAMS CLIENT DEPLOYMENT AND USER PROVISIONINGa. Deploy and Manage Teams clientb. Manage Teams storagec. Manage External and Guest accessCHAPTER 3: ORGANIZATION READINESS FOR MICROSOFT TEAMSa. Network assessment and bandwidth planning for Teamsb. Deploy Quality of Servicec. Configure phone systema. Configure Teams Direct Routingb. Configure Microsoft Calling pland. Customizes and manage Live eventCHAPTER 4: MICROSOFT TEAMS ADMINISTRATION AND POLICY MANAGEMENTa. Enable and users for Microsoft Teamsb. Organization wide setting for Microsoft Teamsc. Meeting, Live event and messaging policyd. Manage Phone number and Voice routing policyCHAPTER 5: MIGRATION FROM SKYPE FOR BUSINESS (LYNC) ON-PREM AND ONLINE TO MICROSOFT TEAMSa. Get ready for Microsoft Teamsb. Plan user migration wiselyc. Migrate user from Skype for Business Online to Microsoft Teamsd. Migrate user from Skype for Business On-prem to Microsoft Teamse. Maintain momentum after migrationCHAPTER 6: MICROSOFT TEAMS TROUBLESHOOTING APPROACHES1. Solve Teams sign-in issues2. Analyze call quality and Troubleshoot call quality issues3. Troubleshoot Live event issues4. Solve connectivity challenges
Learn Java for Android Development
Gain the essential Java language skills necessary for using the Android SDK platform to build Java-based Android apps. This book includes the latest Java SE releases that Android supports, and is geared towards the Android SDK version 10. It includes new content including JSON documents, functional programming, and lambdas as well as other language features important for migrating Java skills to Android development.Android is still the world's most popular mobile platform and because this technology is still mostly based on Java, you should first obtain a solid grasp of the Java language and its APIs in order to improve your chances of succeeding as an effective Android apps developer. Learn Java for Android Development, 4th Editionhelps you do that.Each of the book’s chapters provides an exercise section that gives you the opportunity to reinforce your understanding of the chapter’s material. Answers to the book’s more than 500 exercises are provided in an appendix. Once you finish, you will be ready to begin your Android app development journey using Java.WHAT YOU WILL LEARN* Discover the latest Java programming language features relevant to Android SDK development* Apply inheritance, polymorphism, and interfaces to Android development* Use Java collections, concurrency, I/O, networks, persistence, functional programming, and data access in Android apps* Parse, create, and transform XML and JSON documents* Migrate your Java skills for mobile development using the Android platformWHO THIS BOOK IS FORProgrammers with at least some prior Java programming experience looking to get into mobile Java development with the Android platform.PETER SPÄTH consults, trains/teaches, and writes books on various subjects, with a primary focus on software development. With a wealth of experience in Java-related languages, the release of Kotlin for building Android apps made him enthusiastic about writing books for Kotlin development in the Android environment. He also graduated in 2002 as a physicist and soon afterward became an IT consultant, mainly for Java-related projects.JEFF FRIESEN is a freelance tutor and software developer with an emphasis on Java (and now Android). In addition to authoring Learn Java for Android Development and co-authoring Android Recipes, Jeff has written numerous articles on Java and other technologies for JavaWorld, informIT, Java.net, and DevSource.1: Getting Started with JavaTalking about ART and licensing here2: Learning Language Fundamentals3: Discovering Classes and Objects4: Discovering Inheritance, Polymorphism, and Interfaces5: Mastering Advanced Language Features, Part 16: Mastering Advanced Language Features, Part 27: Exploring the Basic APIs, Part18: Exploring the Basic APIs, Part29: Functional Programming and Lambdas10: Exploring the Collections Framework11: Exploring the Concurrency Utilities12: Performing Classic I/O13: Accessing Networks14: Migrating to New I/O15: Accessing Databases16: Parsing, Creating, and Transforming XML Documents17: Working With JSON DocumentsA. Solutions to Exercises
Computational and Analytic Methods in Science and Engineering
This contributed volume collects papers presented at a special session of the conference Computational and Mathematical Methods in Science and Engineering (CMMSE) held in Cadiz, Spain from June 30 - July 6, 2019. Covering the applications of integral methods to scientific developments in a variety of fields, ranging from pure analysis to petroleum engineering, the chapters in this volume present new results in both pure and applied mathematics. Written by well-known researchers in their respective disciplines, each chapter shares a common methodology based on a combination of analytic and computational tools. This approach makes the collection a valuable, multidisciplinary reference on how mathematics can be applied to various real-world processes and phenomena. Computational and Analytic Methods in Science and Engineering will be ideal for applied mathematicians, physicists, and research engineers. CHRISTIAN CONSTANDA, holder of the C.W. Oliphant Endowed Chair in Mathematics at the University of Tulsa, is the chairman of the International Consortium for Integral Methods in Science and Engineering (IMSE). He organizes IMSE conferences all over the world, and is the author and editor of 32 books and over 150 journal articles. 1 New Numerical Results for the Optimization of Neumann Eigenvalues2 Transient Convection-Diffusion-Reaction Problems with Variable Velocity Field by Means of DRBEM with Different Radial Basis Functions3 On a Parametric Representation of the Angular Neutron Flux in the Energy Range from 1 eV to 10MeV4 A Boundary Integral Equation Formulation for Advection–Diffusion–Reaction Problems with Point Sources5 Displacement Boundary Value Problem for a Thin Plate in an Unbounded Domain6 A Dirichlet Spectral Problem in Domains Surrounded by Thin Stiff and Heavy Bands7 Spectral Homogenization Problems in Linear Elasticity with Large Reaction Terms Concentrated in Small Regions of the Boundary8 The Mathematical Modelling of the Motion of Biological Cells in Response to Chemical Signals9 Numerical Calculation of Interior Transmission Eigenvalues with Mixed Boundary Conditions10 An Inequality for H¨older Continuous Functions Generalizing a Result of CarloMiranda11 Two-Phase Three-Component Flow in PorousMedia:Mathematical Modeling of Dispersion-Free Pressure Behavior12 Error Analysis and the Role of Permutation in Dynamic Iteration SchemesIndex
Machine Learning and Cognitive Computing for Mobile Communications and Wireless Networks
Communication and network technology has witnessed recent rapid development and numerous information services and applications have been developed globally. These technologies have high impact on society and the way people are leading their lives. The advancement in technology has undoubtedly improved the quality of service and user experience yet a lot needs to be still done. Some areas that still need improvement include seamless wide-area coverage, high-capacity hot-spots, low-power massive-connections, low-latency and high-reliability and so on. Thus, it is highly desirable to develop smart technologies for communication to improve the overall services and management of wireless communication. Machine learning and cognitive computing have converged to give some groundbreaking solutions for smart machines. With these two technologies coming together, the machines can acquire the ability to reason similar to the human brain. The research area of machine learning and cognitive computing cover many fields like psychology, biology, signal processing, physics, information theory, mathematics, and statistics that can be used effectively for topology management. Therefore, the utilization of machine learning techniques like data analytics and cognitive power will lead to better performance of communication and wireless systems.KRISHNA KANT SINGH is an Associate Professor in Electronics and Communications Engineering in KIET Group of Institutions, Ghaziabad, India. Dr. Singh has acquired BTech, MTech, and PhD (IIT Roorkee) in the area of machine learning and remote sensing. He has authored more than 50 technical books and research papers in international conferences and SCIE journals. AKANSHA SINGH is an Associate Professor in Department of Computer Science Engineering in Amity University, Noida, India. Dr. Singh has acquired BTech, MTech, and PhD (IIT Roorkee) in the area of neural network and remote sensing. She has authored more than 40 technical books and research papers in international conferences and SCIE journals. Her area of interest includes Mobile Computing, Artificial Intelligence, Machine Learning, Digital Image Processing. KORHAN CENGIZ received his PhD in Electronics Engineering from Kadir Has University, Istanbul, Turkey, in 2016. He has served as keynote speakers at many conferences. His research interests include wireless sensor networks, routing protocols, wireless communications, 5G systems, statistical signal processing, and spatial modulation. DAC-NHUONG LE has a MSc and PhD in computer science from Vietnam National University, Vietnam in 2009 and 2015, respectively. He is Associate Professor in Computer Science, Deputy-Head of Faculty of Information Technology, Haiphong University, Vietnam. He has a total academic teaching experience of 12+ years with many publications in reputed international conferences, journals and online book chapters. His area of research includes: evaluation computing and approximate algorithms, network communication, security and vulnerability, network performance analysis and simulation, cloud computing, IoT and image processing in biomedical. Preface xiii1 MACHINE LEARNING ARCHITECTURE AND FRAMEWORK 1Nilanjana Pradhan and Ajay Shankar Singh1.1 Introduction 21.2 Machine Learning Algorithms 31.2.1 Regression 31.2.2 Linear Regression 41.2.3 Support Vector Machine 41.2.4 Linear Classifiers 51.2.5 SVM Applications 81.2.6 Naïve Bayes Classification 81.2.7 Random Forest 91.2.8 K-Nearest Neighbor (KNN) 91.2.9 Principal Component Analysis (PCA) 91.2.10 K-Means Clustering 101.3 Business Use Cases 101.4 ML Architecture Data Acquisition 141.5 Latest Application of Machine Learning 151.5.1 Image Identification 161.5.2 Sentiment Analysis 161.5.3 News Classification 161.5.4 Spam Filtering and Email Classification 171.5.5 Speech Recognition 171.5.6 Detection of Cyber Crime 171.5.7 Classification 171.5.8 Author Identification and Prediction 181.5.9 Services of Social Media 181.5.10 Medical Services 181.5.11 Recommendation for Products and Services 181.5.11.1 Machine Learning in Education 191.5.11.2 Machine Learning in Search Engine 191.5.11.3 Machine Learning in Digital Marketing 191.5.11.4 Machine Learning in Healthcare 191.6 Future of Machine Learning 201.7 Conclusion 22References 232 COGNITIVE COMPUTING: ARCHITECTURE, TECHNOLOGIES AND INTELLIGENT APPLICATIONS 25Nilanjana Pradhan, Ajay Shankar Singh and Akansha Singh2.1 Introduction 262.1 The Components of a Cognitive Computing System 272.3 Subjective Computing Versus Computerized Reasoning 282.4 Cognitive Architectures 292.5 Subjective Architectures and HCI 312.6 Cognitive Design and Evaluation 322.6.1 Architectures Conceived in the 1940s Can’t Handle the Data of 2020 412.7 Cognitive Technology Mines Wealth in Masses of Information 412.7.1 Technology is Only as Strong as Its Flexible, Secure Foundation 422.8 Cognitive Computing: Overview 432.9 The Future of Cognitive Computing 47References 493 DEEP REINFORCEMENT LEARNING FOR WIRELESS NETWORK 51Bharti Sharma, R.K Saini, Akansha Singh and Krishna Kant Singh3.1 Introduction 513.2 Related Work 543.3 Machine Learning to Deep Learning 553.3.1 Advance Machine Learning Techniques 563.3.1.1 Deep Learning 563.3.2 Deep Reinforcement Learning (DRL) 573.3.2.1 Q-Learning 583.3.2.2 Multi-Armed Bandit Learning (MABL) 583.3.2.3 Actor–Critic Learning (ACL) 583.3.2.4 Joint Utility and Strategy Estimation Based Learning 593.4 Applications of Machine Learning Models in Wireless Communication 593.4.1 Regression, KNN and SVM Models for Wireless 603.4.2 Bayesian Learning for Cognitive Radio 603.4.3 Deep Learning in Wireless Network 613.4.4 Deep Reinforcement Learning in Wireless Network 623.4.5 Traffic Engineering and Routing 633.4.6 Resource Sharing and Scheduling 643.4.7 Power Control and Data Collection 643.5 Conclusion 65References 664 COGNITIVE COMPUTING FOR SMART COMMUNICATION 73Poonam Sharma, Akansha Singh and Aman Jatain4.1 Introduction 744.2 Cognitive Computing Evolution 754.3 Characteristics of Cognitive Computing 764.4 Basic Architecture 774.4.1 Cognitive Computing and Communication 774.5 Resource Management Based on Cognitive Radios 784.6 Designing 5G Smart Communication with Cognitive Computing and AI 804.6.1 Physical Layer Design Based on Reinforcement Learning 824.7 Advanced Wireless Signal Processing Based on Deep Learning 844.7.1 Modulation 854.7.2 Deep Learning for Channel Decoding 864.7.3 Detection Using Deep Learning 874.8 Applications of Cognition-Based Wireless Communication 874.8.1 Smart Surveillance Networks for Public Safety 884.8.2 Cognitive Health Care Systems 884.9 Conclusion 89References 895 SPECTRUM SENSING AND ALLOCATION SCHEMES FOR COGNITIVE RADIO 91Amrita Rai, Amit Sehgal, T.L. Singal and Rajeev Agrawal5.1 Foundation and Principle of Cognitive Radio 925.2 Spectrum Sensing for Cognitive Radio Networks 945.3 Classification of Spectrum Sensing Techniques 955.4 Energy Detection 975.5 Matched Filter Detection 1005.6 Cyclo-Stationary Detection 1035.7 Euclidean Distance-Based Detection 1075.8 Spectrum Allocation for Cognitive Radio Networks 1085.9 Challenges in Spectrum Allocation 1185.9.1 Spectrum and Network Heterogeneity 1195.9.2 Issues and Challenges 1205.10 Future Scope in Spectrum Allocation 122References 1236 SIGNIFICANCE OF WIRELESS TECHNOLOGY IN INTERNET OF THINGS (IOT) 131Ashish Tripathi, Arun Kumar Singh, Pushpa Choudhary, Prem Chand Vashist and K. K. Mishra6.1 Introduction 1326.1.1 Internet of Things: A Historical Background 1336.1.2 Internet of Things: Overview, Definition, and Understanding 1336.1.3 Internet of Things: Existing and Future Scopes 1356.2 Overview of the Hardware Components of IoT 1366.2.1 IoT Hardware Components: Development Boards/Platforms 1366.2.1.1 Arduino 1366.2.1.2 Raspberry Pi 1376.2.1.3 BeagleBone 1376.2.2 IoT Hardware Components: Transducer 1386.2.2.1 Sensors 1386.2.2.2 Actuators 1386.3 Wireless Technology in IoT 1396.3.1 Topology 1396.3.1.1 Mesh Topology 1406.3.1.2 Star Topology 1416.3.1.3 Point-to-Point Topology 1416.3.2 IoT Networks 1426.3.2.1 Nano Network 1426.3.2.2 Near-Field Communication (NFC) Network 1436.3.2.3 Body Area Network (BAN) 1436.3.2.4 Personal Area Network (PAN) 1436.3.2.5 Local Area Network (LAN) 1436.3.2.6 Campus/Corporate Area Network (CAN) 1436.3.2.7 Metropolitan Area Network (MAN) 1446.3.2.8 Wide Area Network (WAN) 1446.3.3 IoT Connections 1446.3.3.1 Device-to-Device (D2D)/Machine-to-Machine (M2M) 1446.3.3.2 Machine-to-Gateway/Router (M2G/R) 1456.3.3.3 Gateway/Router-to-Data System (G/R2DS) 1456.3.3.4 Data System to Data System (DS2DS) 1456.3.4 IoT Protocols/Standards 1456.3.4.1 Network Protocols for IoT 1466.3.4.2 Data Protocols for IoT 1486.4 Conclusion 150References 1507 ARCHITECTURES AND PROTOCOLS FOR NEXT-GENERATION COGNITIVE NETWORKING 155R. Ganesh Babu, V. Amudha and P. Karthika7.1 Introduction 1567.1.1 Primary Network (Licensed Network) 1567.1.2 CR Network (Unlicensed Network) 1577.2 Cognitive Radio Network Technologies and Applications 1597.2.1 Classes of CR 1597.2.2 Next Generation (xG) of CR Applications 1627.3 Cognitive Computing: Architecture, Technologies, and Intelligent Applications 1637.3.1 CR Physical Architecture 1637.4 Functionalities of CR in NeXt Generation (xG) Networks 1647.5 Spectrum Sensing 1657.5.1 Spectrum Decision 1657.5.2 Spectrum Mobility 1657.5.3 CR Network Functions 1667.6 Cognitive Computing for Smart Communications 1677.6.1 CR Technologies 1677.7 Spectrum Allocation in Cognitive Radio 1697.8 Cooperative and Cognitive Network 1737.8.1 Cooperative Centralized Coordinated 1737.8.2 Cooperative Decentralized (Distributed) Coordinated and Uncoordinated 176References 1768 ANALYSIS OF PEAK-TO-AVERAGE POWER RATIO IN OFDM SYSTEMS USING COGNITIVE RADIO TECHNOLOGY 179Udayakumar Easwaran, Poongodi Palaniswamy and Vetrivelan Ponnusamy8.1 Introduction 1808.2 OFDM Systems 1818.3 Peak-to-Average Power Ratio 1838.4 Cognitive Radio (CR) 1848.5 Related Works 1868.6 Neural Network System Model 1938.7 Complexity Examination 1948.8 PAPR and BER Examination 1958.9 Performance Evaluation 1968.10 Results and Discussions 1968.11 Conclusion 200References 2009 A THRESHOLD-BASED OPTIMIZATION ENERGY-EFFICIENT ROUTING TECHNIQUE IN HETEROGENEOUS WIRELESS SENSOR NETWORKS 203Samayveer Singh9.1 Introduction 2049.2 Literature Review 2059.3 System Model 2079.3.1 Four-Level Heterogeneous Network Model 2089.3.2 Energy Dissipation Radio Model 2109.4 Proposed Work 2119.4.1 Optimum Cluster Head Election of the Proposed Protocol 2119.4.2 Information Congregation and Communication Process Based on Chaining System for Intra and Inter‑Cluster Communication 2149.4.3 The Complete Working Process of the Proposed Method 2149.5 Simulation Results and Discussions 2169.5.1 Network Lifetime and Stability Period 2179.5.2 Network Outstanding Energy 2199.5.3 Throughput 2199.5.4 Comparative Analysis of the Level-4 Network Protocols 2229.6 Conclusion 222References 22310 EFFICACY OF BIG DATA APPLICATION IN SMART CITIES 225Sudipta Sahana, Dharmpal Singh and Pranati Rakshit10.1 Introduction 22610.1.1 Characteristics of Big Data 22710.1.1.1 Velocity 22710.1.1.2 Volume 22710.1.1.3 Value 22810.1.1.4 Variety 22810.1.1.5 Veracity 22810.1.2 Definition of Smart Cities 22810.2 Types of Data in Big Data 22910.2.1 Structured Data 22910.2.2 Unstructured Data 23010.2.3 Semi-Structured Data 23010.3 Big Data Technologies 23110.3.1 Apache Hadoop 23110.3.2 HDFS 23110.3.3 Spark 23210.3.4 Microsoft HDInsight 23210.3.5 NoSQL 23310.3.6 Hive 23310.3.7 Sqoop 23410.3.8 R 23510.3.9 Data Lakes 23510.4 Data Source for Big Data 23510.4.1 Media 23610.4.2 Cloud 23610.4.3 The Web 23610.4.4 IOT 23610.4.5 Databases as a Big Data Source 23710.4.6 Hidden Big Data Sources 23710.4.6.1 Email 23710.4.6.2 Social Media 23810.4.6.3 Open Data 23810.4.6.4 Sensor Data 23810.4.7 Application-Oriented Big Data Source for a Smart City 23810.4.7.1 Healthcare 23810.4.7.2 Transportation 23910.4.7.3 Education 24010.5 Components of a Smart City 24110.5.1 Smart Infrastructure 24110.5.1.1 Intelligent Lighting 24110.5.1.2 Modern Parking Systems 24110.5.1.3 Associated Charging Points 24210.5.2 Smart Buildings and Belongings 24210.5.2.1 Safety and Security Systems 24210.5.2.2 Smart Sprinkler Systems for Gardens 24210.5.2.3 Smart Heating and Ventilation 24210.5.3 Smart Industrial Environment 24310.5.4 Smart City Services 24310.5.4.1 Smart Stalls 24310.5.4.2 Monitoring of Risky Areas 24410.5.4.3 Public Safety 24410.5.4.4 Fire/Explosion Management 24410.5.4.5 Automatic Health-Care Delivery 24410.5.5 Smart Energy Management 24410.5.5.1 Smart Grid 24510.5.5.2 Intelligent Meters 24510.5.6 Smart Water Management 24510.5.7 Smart Waste Management 24510.6 Challenge and Solution of Big Data for Smart City 24610.6.1 Challenge in Big Data for Smart City 24610.6.1.1 Data Integration 24610.6.1.2 Security and Privacy 24610.6.1.3 Data Analytics 24710.6.2 Solution of Challenge Smart City 24710.6.2.1 Conquering Difficulties with Enactment 24710.6.2.2 Making People Smarter—Education for Everyone 24810.7 Conclusion 248References 249Index 251
Parallel Algorithms in Computational Science and Engineering
This contributed volume highlights two areas of fundamental interest in high-performance computing: core algorithms for important kernels and computationally demanding applications. The first few chapters explore algorithms, numerical techniques, and their parallel formulations for a variety of kernels that arise in applications. The rest of the volume focuses on state-of-the-art applications from diverse domains. By structuring the volume around these two areas, it presents a comprehensive view of the application landscape for high-performance computing, while also enabling readers to develop new applications using the kernels. Readers will learn how to choose the most suitable parallel algorithms for any given application, ensuring that theory and practicality are clearly connected. Applications using these techniques are illustrated in detail, including:* Computational materials science and engineering* Computational cardiovascular analysis* Multiscale analysis of wind turbines and turbomachinery* Weather forecasting* Machine learning techniquesParallel Algorithms in Computational Science and Engineering will be an ideal reference for applied mathematicians, engineers, computer scientists, and other researchers who utilize high-performance computing in their work.State-of-the-Art Sparse Direct Solvers.- The Effect of Various Sparsity Structures on Parallelism and Algorithms to Reveal Those Structures.- Structure-Exploiting Interior Point Methods.- Parallel Hybrid Sparse Linear System Solvers.- Computational Material Science and Engineering.- Computational Cardiovascular Analysis with the Variational Multiscale Methods and Isogeometric Discretization.- ALE and Space-Time Variational Multiscale Isogeometric Analysis of Wind Turbines and Turbomachinery.- Variational Multiscale Flow Analysis in Aerospace, Energy, and Transportation Technologies.- Multiscale Crowd Dynamics Modeling and Safety Problems Towards Parallel Computing.- HPC for Weather Forecasting.- A Simple Study of Pleasing Parallelism on Multicore Computers.- Parallel Fast Time-Domain Integral-Equation Methods for Transient Electromagnetism Analysis.- Parallel Optimization Techniques for Machine Learning.
Von Data Mining bis Big Data
Von Datensalat zu DatenschatzEine wichtige Säule von Industrie 4.0 ist Big Data. Hierbei geht es um die intelligente Verwertung riesiger Datenmengen mit dem Ziel Prozesse besser zu beherrschen oder neue Geschäftsfelder zu finden. Big Data für sich zu erschließen bedeutet nichts anderes als einen Schatz zu heben, der in der Fülle von Informationen, die Sie in Ihrem Unternehmen anhäufen, verborgen liegt. Dieses Buch enthält die Schatzkarte. Hier erfahren Sie- wie mit Hilfe von Data Mining-Techniken unbekannte Zusammenhänge und Strukturen über den datenliefernden Prozess entdeckt werden können- wie mit den gewonnenen Erkenntnissen detaillierte Vorhersagen über das zukünftige Prozessverhalten und Strategien zur Optimierung ganzer Fabriken abgeleitet werden- welche Tools und Plattformen es gibt, um Big Data wirtschaftlich sinnvoll in Ihr Unternehmen einzuführen- wie andere Firmen aus verschiedensten Branchen mit Big Data erfolgreiche Effizienzsteigerungen erreicht habenWenn Sie sich im Rahmen der aktuell laufenden Digitalisierungswelle fragen, welche der modernen Techniken wofür genutzt werden können oder müssen, um den Anschluss nicht zu verpassen, dann ist dieses Buch genau das richtige für Sie. Der Autor hat über 20 JahreErfahrung bei der Entwicklung von Data Mining-Technologien und bei ihrem Einsatz in der Industrie. Prof. Dr. Otte leitet die Lehre im Bereich Künstliche Intelligenz im Masterstudium an der Hochschule Ulm