Type Systems for Distributed Programs: Components and Sessions

Total Page:16

File Type:pdf, Size:1020Kb

Type Systems for Distributed Programs: Components and Sessions Type Systems for Distributed Programs: Components and Sessions Ornela Dardha ii Foreword The Italian Chapter of the EATCS (European Association for Theoretical Com- puter Science) was founded in 1988, and aims at facilitating the exchange of ideas and results among Italian theoretical computer scientists, and at stimulating coop- eration between the theoretical and the applied communities in Italy. One of the major activities of this Chapter is to promote research in theoretical computer science, stimulating scientific excellence by supporting and encouraging the very best and creative young Italian theoretical computer scientists. This is done also by sponsoring a prize for the best PhD thesis. An interdisciplinary committee selects the best PhD thesis, among those defended in the previous year and dealing with one of the many themes in theoretical computer science. In 2012 we started a cooperation with Atlantis Press so that the selected PhD theses will be published as volumes in the Atlantis Studies in Computing. The present volume contains the thesis selected for publication in 2015: Type Systems for Distributed Programs: Components and Sessions by Ornela Dardha (supervisor: Prof. Davide Sangiorgi, Univ. of Bologna, Italy) The scientific committee that selected this thesis was composed of Professors Margherita Napoli (Univ. of Salerno), Paolo Santi (CNR of Pisa) and Andrea Masini (Univ. of Verona). They gave the following motivation to justify the assignment of the award to the thesis by Ornela Dardha: The PhD thesis “Type Systems for Distributed Programs: Components and Sessions” by Ornela Dardha deals with type-based systems for distributed pro- grams. The goal of the thesis is the development of static techniques based on type systems aimed at dealing with consistency and safety properties related with dynamic reconfiguration and communication in complex distributed systems. The main original contributions of the thesis are: • the design of a type system for a realistic concurrent object-oriented calcu- lus to statically guarantee the consistency of dynamic reconfigurations; iii • the study of concrete, non-trivial safety properties of complex distributed systems, namely deadlock freedom, livelock freedom, and progress. All the theoretical proposals of the thesis are original and extremely interesting. They represent a major breakthrough in the study of type systems for concurrent languages. It is our opinion that the ideas of this thesis could also help in the design and implementation of real type systems for concrete distributed program- ming languages. I would like to thank the members of the scientific committee, and I hope that this initiative will further contribute to strengthen the sense of belonging to the same community of all the young researchers that have accepted the challenges posed by any branch of theoretical computer science. Rome, January 2016 Tiziana Calamoneri President of the Italian Chapter of the EATCS iv Preface It is a pleasure for me to write a preface for Ornela Dardha’s PhD thesis in the occasion of its publication in the Atlantis Studies in Computing, as recipient of a prize for “Best Italian 2015 PhD Thesis in Theoretical Computer Science” awarded by the Italian Chapter of EATCS. I am happy that Ornela has obtained the prize, as a reward for the time and the energy that she has invested into research during the PhD period. Ornela’s achievement is also gratifying for the Focus team and the whole Department of Computer Science of the University of Bologna, in which the thesis has been carried out. I like to think that Focus and the Department have provided a fertile environment in which her desire of learning and growing has been nourished. The general topic of Ornela’s thesis is type systems for programming lan- guages. Type systems have been developed in sequential languages, initially with the goal of improving the efficiency of programs, and later also with the goals of ensuring certain correctness properties during execution and of specifying the inteded use of certain objects or components in a program. The application of type systems to concurrency is more recent. The field has presented, and still presents, a number of challenges: in a concurrent system new features, such as interactions, have to be taken into account; other features, such as dynamic recon- figurations, take a prominent role. Concurrency has sometimes led to the design of new type systems. A relevant example are the so-called session types, roughly types capable of specifying the protocols that a set of components should follow, in order to accomplish a certain task. The past two decades have seen a thorough investigation of session types. Ornela’s thesis shows how types can be used in presence of interactions and dynamic reconfiguration to guarantee some fundamental behavioural properties of distributed systems, such as forms of consistency, deadlock freedom, progress. Moreover, the thesis sheds light into the foundations of session types. The thesis shows that session types, at least in their most common format, are not a primitive concept, as they had been treated in the literature: they can be derived from more basic and well-known type constructs. This is important, both to understand better the concept, and to develop its metatheory. v I would like to conclude with my personal congratulations to Ornela for the work done, and my warmest wishes for her future. Bologna, Gennaio 2016 Davide Sangiorgi vi Acknowledgments The work for the PhD thesis was carried out while I was a PhD student at the Computer Science Department of the University of Bologna and a member of the Focus team, and also during my one-year visit at the IT University of Copenhagen. I am very grateful to my supervisor Davide Sangiorgi, who during my PhD has been of great support and guidance. I also want to thank the external reviewers of my PhD thesis: Ilaria Castellani and Vasco T. Vasconcelos for their careful work and useful feedbacks. Currently I am a Research Associate at the School od Computing Science of the University of Glasgow, working with Simon J. Gay and supported by the UK EPSRC project From Data Types to Session Types: A Basis for Concurrency and Distribution (ABCD) (EP/K034413/1). A very special thanks goes to Elena Giachino for her help and support, for the scientific and life-related advice she gave me during those years. I also want to thank Jorge A. Perez,´ for being a very good friend and a very good “older academic brother”. Thank you for your prompt response every time I needed your help. During my one-year visit at ITU of Copenhagen, I had the pleasure to work with Marco Carbone and Fabrizio Montesi. Thank you for the very nice year at ITU and for making research a lot fun. An enormous hug goes to all my friends around the world, especially the ones in Rome, Bologna, Copenhagen, Glasgow and London. Thank you for the great time together, for being of inspiration and support and above all for making me feel home whenever I visit you. Falenderoj familjen time babin, mamin dhe dy motrat e mia te mrekullueshme, per prezencen,¨ durimin dhe dashurine¨ e tyre te¨ pakushtezuar.¨ Ju dua shume!¨ Ringrazio la mia (seconda) famiglia, mamma, papi, Titi e Ernesto: il tempo con voi non e` mai abbastanza... Vi voglio un mondo di bene! Last, but absolutely not least, I want to thank my Simon. During the time I was writing this book he has been very supportive, understanding and caring. You are truly a wonderful person! vii viii Contents Foreword iii Preface v Acknowledgements vii List of Figures xiii Introduction to the PhD Thesis 1 I Safe Dynamic Reconfiguration of Components 7 Introduction to Part I 9 1 Background on Components 13 1.1 Syntax . 13 1.2 Semantics . 17 1.2.1 Runtime Syntax . 17 1.2.2 Functions and Predicates . 18 1.2.3 Evaluation of Pure and Guard Expressions . 19 1.2.4 Reduction Rules . 21 1.3 Server and Client Example . 25 2 A Type System for Components 29 2.1 Typing Features . 29 2.2 Subtyping Relation . 30 2.3 Functions and Predicates . 32 2.4 Typing Rules . 35 2.5 Typing Rules for Runtime Configurations . 41 ix 3 Properties of the Type System 43 3.1 Main Results . 43 3.2 Proofs . 44 Related Work of Part I 53 II Safe Communication by Encoding 57 Introduction to Part II 59 4 Background on π-Types 63 4.1 Syntax . 63 4.2 Semantics . 65 4.3 π-Types . 66 4.4 π-Typing Rules . 67 4.5 Main Results . 71 5 Background on Session Types 73 5.1 Syntax . 75 5.2 Semantics . 76 5.3 Session Types . 78 5.4 Session Typing Rules . 79 5.5 Main Results . 83 6 Session Types Revisited 85 6.1 Types Encoding . 85 6.2 Terms Encoding . 87 6.3 Properties of the Encoding . 89 6.3.1 Auxiliary Results . 90 6.3.2 Typing Values by Encoding . 92 6.3.3 Typing Processes by Encoding . 93 6.3.4 Operational Correspondence . 102 6.4 Corollaries from the Encoding . 109 III Advanced Features on Safety by Encoding 111 Introduction to Part III 113 x 7 Subtyping 115 7.1 Subtyping Rules . 115 7.2 Properties . 116 8 Polymorphism 121 8.1 Parametric Polymorphism . 121 8.1.1 Syntax . 122 8.1.2 Semantics . 122 8.1.3 Typing Rules . 123 8.1.4 Encoding . 123 8.1.5 Properties of the Encoding . 124 8.2 Bounded Polymorphism . 127 8.2.1 Syntax . 127 8.2.2 Semantics . 129 8.2.3 Typing Rules . 130 8.2.4 Encoding . 131 8.2.5 Properties of the Encoding . 132 9 Higher-Order Communication 141 9.1 Syntax .
Recommended publications
  • Reit) Hydrology \-Th,C),^:::Th
    Icru j Institute of 'reit) Hydrology \-Th,c),^:::Th Natural Environment Research Council Environment Research A CouncilNatural • • • • • • • • • SADC-HYCOS • HYDATAv4.0trainingcourse • PRCPretoria,SouthAfrica 28July-6August1998 • • • • • • • • • • Institute of Hydrology Maclean Building Crowmarsh Gifford Wallingford Oxon OXIO 81313 • Tel: 01491 838800 Fax: 01491 692424 • Telex: 849365 HYDROL, G September 1998 • • •••••••••••••••••••••••••••••••••• Summary 111 A key stage in the implementation of the SADC-HYCOS projcct involves establishing a regional database system. Thc database selected was the Institute of Hydrology's HYDATA system. HYDATA is uscd in more than 50 countries worldwide, and is the national database system for surface water data in more than 20 countries, including many of the SADC countries. A ncw Windows version of HYDATA (v4.0) is near release (scheduled January 1999), and provides several improvements over the original DOS-bascd system. It was agreed that HYDATA v4.0 would be provided to each National Hydrological Agency for the SADC- HYCOS project, and that a 2-week training course would be held in Pretoria, South Africa. The first HYDATA v4.0 training course was held at the DWAF training centre in Pretoria between 28 July and 6 August 1998. The course was attended by 16 delegates from 1 I different countries. This report provides a record of the course and the software and training provided. •••••••••••••••••••••••••••••••••• Contents • Page • 1. INTRODUCTION 1 • 1.1Background to SADC-HYCOS 1.2 Background to HYDATA 1.3Background to course 2 2 THE HYDATA TRAINING COURSE 3 • 2.1The HYDATA v4.0 training course 3 • 2.2Visit to DWAF offices 4 • 3. CONCLUSIONS AND FUTURE PLANS 5 • APPENDIX A:RECEIPTS FOR HYDATA v4.0 SOFTWARE 6 • APPENDIX B:PROGRAMME OF VISIT 7 • APPENDIX C:LIST OF TRAINING COURSE PARTICIPANTS 9 • APPENDIX D:LIST OF SOFTWARE BUGS 10 ••••••••••••0-••••••••••••••••••••• • • 1.
    [Show full text]
  • An In-Depth Study with All Rust Cves
    Memory-Safety Challenge Considered Solved? An In-Depth Study with All Rust CVEs HUI XU, School of Computer Science, Fudan University ZHUANGBIN CHEN, Dept. of CSE, The Chinese University of Hong Kong MINGSHEN SUN, Baidu Security YANGFAN ZHOU, School of Computer Science, Fudan University MICHAEL R. LYU, Dept. of CSE, The Chinese University of Hong Kong Rust is an emerging programing language that aims at preventing memory-safety bugs without sacrificing much efficiency. The claimed property is very attractive to developers, and many projects start usingthe language. However, can Rust achieve the memory-safety promise? This paper studies the question by surveying 186 real-world bug reports collected from several origins which contain all existing Rust CVEs (common vulnerability and exposures) of memory-safety issues by 2020-12-31. We manually analyze each bug and extract their culprit patterns. Our analysis result shows that Rust can keep its promise that all memory-safety bugs require unsafe code, and many memory-safety bugs in our dataset are mild soundness issues that only leave a possibility to write memory-safety bugs without unsafe code. Furthermore, we summarize three typical categories of memory-safety bugs, including automatic memory reclaim, unsound function, and unsound generic or trait. While automatic memory claim bugs are related to the side effect of Rust newly-adopted ownership-based resource management scheme, unsound function reveals the essential challenge of Rust development for avoiding unsound code, and unsound generic or trait intensifies the risk of introducing unsoundness. Based on these findings, we propose two promising directions towards improving the security of Rust development, including several best practices of using specific APIs and methods to detect particular bugs involving unsafe code.
    [Show full text]
  • University of California Santa Cruz Learning from Games
    UNIVERSITY OF CALIFORNIA SANTA CRUZ LEARNING FROM GAMES FOR GENERATIVE PURPOSES A dissertation submitted in partial satisfaction of the requirements for the degree of DOCTOR OF PHILOSOPHY in COMPUTER SCIENCE by Adam J. Summerville June 2018 The Dissertation of Adam J. Summerville is approved: Professor Michael Mateas, Chair Professor Noah Wardrip-Fruin Professor Santiago Ontañón Dean Tyrus Miller Vice Provost and Dean of Graduate Studies Copyright © by Adam J. Summerville 2018 Table of Contents List of Figures vi List of Tables xiv Abstract xvi Dedication xvii Acknowledgments xviii 1 Introduction 1 1.1 Research Contributions ........................... 5 I Learning From Game 7 2 How Humans Understand Games 8 2.1 Human Annotation Tasks .......................... 17 2.2 Entity Persistence .............................. 17 2.3 Camera Motion ................................ 18 2.4 Room Detection ............................... 21 2.4.1 Teleportation ............................. 23 2.4.2 Traversal ............................... 25 2.5 Animation Cycles ............................... 32 2.6 Mode Dynamics ................................ 34 2.7 Conclusion .................................. 36 3 Mappy – A System for Map Extraction and Annotation via Observa- tion 37 3.1 NES Architecture and Emulation ...................... 41 3.2 Operationalizing Entity Persistence ..................... 43 3.3 Inferring Camera Motion .......................... 49 iii 3.4 Determining Room Transitions ....................... 59 3.4.1 Automatic Mapping ........................
    [Show full text]
  • Managing Software Development – the Hidden Risk * Dr
    Managing Software Development – The Hidden Risk * Dr. Steve Jolly Sensing & Exploration Systems Lockheed Martin Space Systems Company *Based largely on the work: “Is Software Broken?” by Steve Jolly, NASA ASK Magazine, Spring 2009; and the IEEE Fourth International Conference of System of Systems Engineering as “System of Systems in Space 1 Exploration: Is Software Broken?”, Steve Jolly, Albuquerque, New Mexico June 1, 2009 Brief history of spacecraft development • Example of the Mars Exploration Program – Danger – Real-time embedded systems challenge – Fault protection 2 Robotic Mars Exploration 2011 Mars Exploration Program Search: Search: Search: Determine: Characterize: Determine: Aqueous Subsurface Evidence for water Global Extent Subsurface Bio Potential Minerals Ice Found Found of Habitable Ice of Site 3 Found Environments Found In Work Image Credits: NASA/JPL Mars: Easy to Become Infamous … 1. [Unnamed], USSR, 10/10/60, Mars flyby, did not reach Earth orbit 2. [Unnamed], USSR, 10/14/60, Mars flyby, did not reach Earth orbit 3. [Unnamed], USSR, 10/24/62, Mars flyby, achieved Earth orbit only 4. Mars 1, USSR, 11/1/62, Mars flyby, radio failed 5. [Unnamed], USSR, 11/4/62, Mars flyby, achieved Earth orbit only 6. Mariner 3, U.S., 11/5/64, Mars flyby, shroud failed to jettison 7. Mariner 4, U.S. 11/28/64, first successful Mars flyby 7/14/65 8. Zond 2, USSR, 11/30/64, Mars flyby, passed Mars radio failed, no data 9. Mariner 6, U.S., 2/24/69, Mars flyby 7/31/69, returned 75 photos 10. Mariner 7, U.S., 3/27/69, Mars flyby 8/5/69, returned 126 photos 11.
    [Show full text]
  • CSE 501 Principles and Applications of Program Analysis
    CSE 501 ! Principles and Applications! of Program Analysis! " Alvin Cheung" Spring 15" Welcome to CSE 501!" The Cast" App–4 A. Cheung et al. Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e ) h i i !h i i Q0, D0, σ, h0 , e Q00, D00, σ, h00 ,(σ00, e ) h i a !h i a force(Q00, D00,(σ0, e )) Q000, D000, v J K i ! i force(Q000, D000,(σ00, ea)) Q0000, D0000, va J K ! [Array deference] Q, D, σ, h , e [e ] Q0000, D0000, σ, h00 , h00[v , v ] h i a i !h i a i J K Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e) Q000 = Q00[id (v, )] h i !h i ! ; force(Q0, D0,(σ0, e)) Q00, D00, v id is a fresh identifier ! [Read query] J Q, DK, σ, h , R(e) Q000, D00, σ, h0 , ([ ], id) h i !h i Semantics ofJ statements: K [Skip] Q, D, σ, h , skip Q, D, σ, h h i !h i J K Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e) h i !h i Q0, D0, σ, h0 , el Q00, D00, σ, h00 , vl h i !h i [Assignment] Q, D, σ,Jh , e := e KQ00, D00, σ[v (σ0, e)], h00 h i l !h l ! i J K J K Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e) h i !h i force(Q0, D0,(σ0, e)) Q00, D00, True ! J Q00, D00, σ, h0 K, s1 Q000, D00, σ0, h00 h i !h i [Conditional–true] Q, D, σ, h , if(e) then s else s Q000, D000, σ0, h00 h i 1 2 !h i J K J K Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e) h i !h i force(Q0, D0,(σ0, e)) Q00, D00, False ! Q00, D00, σ, h0 , s2 Q000, D00, σ0, h00 Jh iK !h i [Conditional–false] Q, D, σ, h , if(e) then s1 else s2 Q000, D000, σ0, h00 h J i K !h i J K Q, D, σ, h , s Q0, D0, σ0, h0 h i !h i [Loop] Q, D, σ, h , while(True) do s Q0, D0, σ0, h0 h i !h i Instructor" J K J K Q, D, σ, h , e Q0, D0, σ, h0 ,(σ0, e) h i !h i force(Q0, D0,(σ0, e)) Q00, D00, v ! update(D00, v) D000 J K ! D000[Q00[id].s] if Q00[id].rs = Alvin Cheung" id Q00 .
    [Show full text]
  • Ame Development from Nintendo 8-Bit to Wii
    Bachelor report in Computer Science Blekinge institute of technology, 2009 EXAMINATION CANDIDATE COMPUTER SCIENSE Game Development from Nintendo 8-bit to Wii An analysis of Super Mario Bros. 1985 to 2009 Sophie Forsell 2009-08-14 This is a report of the game development of Super Mario Bros. from 1985 to 2009. It describes the differences in the games; Story, game flow, hardware, software development and graphics Game Development from Nintendo 8-bit to Wii A report of Super Mario Bros. 1985 to 2009 Contact information: Author: Sophie Forsell E-mail: [email protected] Supervisor: Jeanette Eriksson E-mail: [email protected] Program: Game Programing Blekinge Tekniska Högskola Phone: +46 457 38 50 00 SE - 372 25 RONNEBY Fax: +46 457 279 14 2 Game Development from Nintendo 8-bit to Wii A report of Super Mario Bros. 1985 to 2009 ABSTRACT “The game begins the moment a person touches a console -- everything builds from that.” (Quote by Shiguru Miyamoto; founder of Super Mario) This report contains a well-structured analysis of the main four Super Mario games that clearly states a difference in story, hardware, software development and design. The report is structured in sections for each game to better understand the concept of the Super Mario games. The report ends with comparisons of the games for a better view of the paradigm between them. The pictures and quotations in this report are referenced to the company that has copy write and Shiguru Miyamoto that is the founder of the character Super Mario. 3 Game Development from Nintendo 8-bit to Wii A report of Super Mario Bros.
    [Show full text]
  • Pristup Agregaciji Mrežnih Veza U Operativnom Sistemu Sa Mikrojezgrom
    UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA NOVI SAD Kandidat: Lazar Stričević Pristup agregaciji mrežnih veza u operativnom sistemu sa mikrojezgrom doktorska disertacija Mentor: dr Miroslav Hajduković Novi Sad 2016 УНИВЕРЗИТЕТ У НОВОМ САДУ ФАКУЛТЕТ ТЕХНИЧКИХ НАУКА 21000 НОВИ САД, Трг Доситеја Обрадовића 6 КЉУЧНА ДОКУМЕНТАЦИЈСКА ИНФОРМАЦИЈА Редни број, РБР: Идентификациони број, ИБР: Тип документације, ТД: Монографска публикација Тип записа, ТЗ: Текстуални штампани документ/ЦД Врста рада, ВР: Докторска дисертација Аутор, АУ: Лазар Стричевић Ментор, МН: др Мирослав Хајдуковић, редовни професор Наслов рада, НР: Приступ агрегацији мрежних веза у оперативном систему са микројезгром Језик публикације, ЈП: српски (латиница) Језик извода, ЈИ: српски/енглески Земља публиковања, ЗП: Србија Уже географско подручје, УГП: Војводина Година, ГО: 2016. Издавач, ИЗ: Ауторски репринт Место и адреса, МА: Факултет техничких наука (ФТН), Д. Обрадовића 6, 21000 Нови Сад Физички опис рада, ФО: 7/90/107/0/27/0/2 (поглавља/страна/ цитата/табела/слика/графика/прилога) Научна област, НО: Електротехничко и рачунарско инжењерство Научна дисциплина, НД: Примењене рачунарске науке и информатика Предметна одредница/Кључне речи, ПО: агрегација мрежних веза, микројезгро, толеранција поремећаја, ослоњивост, поузданост, доступност, рачунарске мреже УДК Чува се, ЧУ: Библиотека ФТН, Д. Обрадовића 6, 21000 Нови Сад Важна напомена, ВН: Извод, ИЗ: Теза се бави повећањем укупне ослонљивости модуларног микрокернел оперативног систем MINIX 3 кроз повећање поузданости његовог
    [Show full text]
  • Formal Methods: from Academia to Industrial Practice a Travel Guide
    Formal Methods: From Academia to Industrial Practice A Travel Guide Marieke Huisman Department of Computer Science (FMT), UT, P.O. Box 217, 7500 AE Enschede, The Netherlands Dilian Gurov KTH Royal Institute of Technology, Lindstedtsvägen 3, SE-100 44 Stockholm, Sweden Alexander Malkis Department of Informatics (I4), TUM, Boltzmannstr. 3, 85748 Garching, Germany 17 February 2020 Abstract For many decades, formal methods are considered to be the way for- ward to help the software industry to make more reliable and trustworthy software. However, despite this strong belief and many individual success stories, no real change in industrial software development seems to be oc- curring. In fact, the software industry itself is moving forward rapidly, and the gap between what formal methods can achieve and the daily software- development practice does not appear to be getting smaller (and might even be growing). In the past, many recommendations have already been made on how to develop formal-methods research in order to close this gap. This paper investigates why the gap nevertheless still exists and provides its own re- commendations on what can be done by the formal-methods–research com- munity to bridge it. Our recommendations do not focus on open research questions. In fact, formal-methods tools and techniques are already of high quality and can address many non-trivial problems; we do give some tech- nical recommendations on how tools and techniques can be made more ac- cessible. To a greater extent, we focus on the human aspect: how to achieve impact, how to change the way of thinking of the various stakeholders about this issue, and in particular, as a research community, how to alter our be- haviour, and instead of competing, collaborate to address this issue.
    [Show full text]
  • A Technical View of Theopenssl 'Heartbleed' Vulnerability
    A technical view of theOpenSSL ‘Heartbleed’ vulnerability A look at the memory leak in the OpenSSL Heartbeat implementation Bipin Chandra [email protected] Version 1.2.1, May 13, 2014 Abstract: This article describes ‘OpenSSL Heartbleed Vulnerability’ in detail. It describes the ‘HeartBleed’ problem, its causes and its impact. The purpose of this article is to increase awareness about Heartbleed vulnerability in OpenSSL library, using which attackers can get access to passwords, private keys or any encrypted data. It also explains how Heartbleed works, what code causes data leakage and explains the resolution with code fix. • Table of Contents 1Introduction to Heartbleed Vulnerability.................................................................................................3 2Heartbleed Explanation............................................................................................................................3 2.1The OpenSSL Project......................................................................................................................3 2.2SSL, TLS and DTLS Protocols........................................................................................................3 2.3TLS/DTLS Heartbeat Extension......................................................................................................4 2.3.1How the heartbeat works..........................................................................................................4 2.3.2Heartbeat Implementation in OpenSSL....................................................................................5
    [Show full text]
  • Mars Science Laboratory Landing
    PRESS KIT/JULY 2012 Mars Science Laboratory Landing Media Contacts Dwayne Brown NASA’s Mars 202-358-1726 Steve Cole Program 202-358-0918 Headquarters [email protected] Washington [email protected] Guy Webster Mars Science Laboratory 818-354-5011 D.C. Agle Mission 818-393-9011 Jet Propulsion Laboratory [email protected] Pasadena, Calif. [email protected] Science Payload Investigations Alpha Particle X-ray Spectrometer: Ruth Ann Chicoine, Canadian Space Agency, Saint-Hubert, Québec, Canada; 450-926-4451; [email protected] Chemistry and Camera: James Rickman, Los Alamos National Laboratory, Los Alamos, N.M.; 505-665-9203; [email protected] Chemistry and Mineralogy: Rachel Hoover, NASA Ames Research Center, Moffett Field, Calif.; 650-604-0643; [email protected] Dynamic Albedo of Neutrons: Igor Mitrofanov, Space Research Institute, Moscow, Russia; 011-7-495-333-3489; [email protected] Mars Descent Imager, Mars Hand Lens Imager, Mast Camera: Michael Ravine, Malin Space Science Systems, San Diego; 858-552-2650 extension 591; [email protected] Radiation Assessment Detector: Donald Hassler, Southwest Research Institute; Boulder, Colo.; 303-546-0683; [email protected] Rover Environmental Monitoring Station: Luis Cuesta, Centro de Astrobiología, Madrid, Spain; 011-34-620-265557; [email protected] Sample Analysis at Mars: Nancy Neal Jones, NASA Goddard Space Flight Center, Greenbelt, Md.; 301-286-0039; [email protected] Engineering Investigation MSL Entry, Descent and Landing Instrument Suite: Kathy Barnstorff, NASA Langley Research Center, Hampton, Va.; 757-864-9886; [email protected] Contents Media Services Information.
    [Show full text]
  • Integrating Testing Into Software Engineering Courses Supported by a Collaborative Learning Environment
    Integrating Testing into Software Engineering Courses Supported by a Collaborative Learning Environment PETER J. CLARKE and DEBRA DAVIS, Florida International University TARIQ M. KING , North Dakota State University JAIRO PAVA, Florida International University EDWARD L. JONES, Florida A&M University As software becomes more ubiquitous and complex, the cost of software bugs continues to grow at a staggering 18 rate. To remedy this situation, there needs to be major improvement in the knowledge and application of software validation techniques. Although there are several software validation techniques, software testing continues to be one of the most widely used in industry. The high demand for software engineers in the next decade has resulted in more software engineering (SE) courses being offered in academic institutions. However, due to the number of topics to be covered in SE courses, little or no attention is given to software testing, resulting in students entering industry with little or no testing experience. We propose a minimally disruptive approach of integrating software testing into SE courses by providing students access to a collaborative learning environment containing learning materials on testing techniques and testing tools. In this article, we describe the learning environment and the studies conducted to measure the benefits accrued by students using the learning environment in the SE courses. Categories and Subject Descriptors: D.2.5 [Software Engineering]: Testing and Debugging—Testing tools; K.3.1 [Computers and Education]: Computer Uses in Education—Collaborative learning General Terms: Experimentation Additional Key Words and Phrases: Course management, code coverage, software testing, unit testing, testing tutorials ACM Reference Format: Peter J.
    [Show full text]
  • Legal Liability for Bad Software
    SUPPLY CHAIN RISKS IN CRITICAL INFRASTRUCTURE But software has fallen short of its ability to meet expectations. And some of its failures have resulted in catastrophes of a mag- Legal Liability for nitude that for other sectors and industries—from meat packing to automobiles—have raised outrage so great that the government was compelled to establish national regulations (and in a few Bad Software cases, international) with whole agencies to enforce them. [3] Inexplicably, despite these costly and fatal software-related Karen Mercedes Goertzel disasters, and despite the recent spate of software malfuction- and defect-related automobile recalls at Toyota, Jeep-Chrysler, Abstract. This article focuses on lawsuits as a recourse for purchasers of defective Honda and Volvo, and despite the software-related fraud com- COTS software — particularly safety-critical COTS software and software-controlled mitted by Volkswagen, nothing has inspired a general or sus- systems, such as software used in commercial aircraft, motor vehicles, unmanned tained outcry or driven the government to undertake regulation aerial vehicles, medical devices, physical security systems, automated teller ma- of the software industry, as it has when other industries have chines, commercial robots and industrial control systems, a wide variety of COTS been involved in safety or security catastrophes. diagnostic and sensor systems, a nd the whole growing panoply of cyber-physical Despite decades of improvement of software safety and qual- devices and systems that collectively comprise the “Internet of Things.” [1] ity, most commercial software is still shipped with serious flaws and defects, some of which are exploitable as vulnerabilities. Background: Why Sue Software Companies? This has, in fact, been going on so long, it has simply become Most commercial software contains serious flaws and defects, expected and accepted by most software customers.
    [Show full text]