{"product_id":"design-of-multithreaded-software-the-entity-life-modeling-approach-hardback-9780470876596","title":"Design of Multithreaded Software; The Entity-Life Modeling Approach (Hardback) 9780470876596","description":"\u003cfont face=\"Georgia\"\u003e\r\n\u003cp\u003e\u003cfont size=\"6\"\u003eDesign of Multithreaded Software\u003c\/font\u003e\u003cbr\u003e\r\n\u003cfont size=\"5\"\u003eThe Entity-Life Modeling Approach\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\r\n\r\n\u003cp\u003e\u003cfont size=\"4\"\u003eBo I. Sanden (Author)\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e9780470876596, Wiley\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eHardback, published 15 February 2011\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e320 pages, Charts: 78 B\u0026amp;W, 0 Color; Drawings: 2 B\u0026amp;W, 0 Color\u003cbr\u003e26.2 x 18.3 x 2.4 cm, 0.803 kg\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\r\n\r\n\r\n\u003cp align=\"justify\"\u003e\u003cstrong\u003e\u003cfont size=\"3\"\u003eThis book assumes familiarity with threads (in a language such as Ada, C#, or Java) and introduces the entity-life modeling (ELM) design approach for certain kinds of multithreaded software. ELM focuses on \"reactive systems,\" which continuously interact with the problem environment. These \"reactive systems\" include embedded systems, as well as such interactive systems as cruise controllers and automated teller machines.  \u003cp\u003ePart I covers two fundamentals: program-language thread support and state diagramming. These are necessary for understanding ELM and are provided primarily for reference. Part II covers ELM from different angles. Part III positions ELM relative to other design approaches.\u003c\/p\u003e\u003c\/font\u003e\u003c\/strong\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003e\u003cb\u003eForeword.\u003c\/b\u003e  \u003cp\u003e\u003cb\u003ePreface.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eI Foundations.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e1 Introduction.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1 Entity-Life Modeling.\u003c\/p\u003e \u003cp\u003e1.2 Overview of This Book.\u003c\/p\u003e \u003cp\u003e1.3 Multithreading.\u003c\/p\u003e \u003cp\u003e1.4 Engineering the Intangible.\u003c\/p\u003e \u003cp\u003e1.5 The Development Process.\u003c\/p\u003e \u003cp\u003e1.6 Unifi ed Modeling Language.\u003c\/p\u003e \u003cp\u003e1.7 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2 Support for Multithreading.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e2.1 Introduction.\u003c\/p\u003e \u003cp\u003e2.2 Concurrency in Java.\u003c\/p\u003e \u003cp\u003e2.3 Concurrency in Ada.\u003c\/p\u003e \u003cp\u003e2.4 Pthreads.\u003c\/p\u003e \u003cp\u003e2.5 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3 State Modeling.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1 Introduction.\u003c\/p\u003e \u003cp\u003e3.2 State-Modeling Terminology.\u003c\/p\u003e \u003cp\u003e3.3 Basic State Modeling.\u003c\/p\u003e \u003cp\u003e3.4 Superstates.\u003c\/p\u003e \u003cp\u003e3.5 Examples.\u003c\/p\u003e \u003cp\u003e3.6 State Modeling in Practice.\u003c\/p\u003e \u003cp\u003e3.7 State Machine Implementation.\u003c\/p\u003e \u003cp\u003e3.8 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eII The ELM Way.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4 Entity-Life Modeling.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1 Introduction.\u003c\/p\u003e \u003cp\u003e4.2 Modeling Software on Event Threads.\u003c\/p\u003e \u003cp\u003e4.3 Discovering and Choosing Event-Thread Models.\u003c\/p\u003e \u003cp\u003e4.4 Event-Thread Patterns for Resource Sharing.\u003c\/p\u003e \u003cp\u003e*4.5 Portraying the World in Software.\u003c\/p\u003e \u003cp\u003e4.6 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5 Design Patterns Based on Event Threads.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1 Introduction.\u003c\/p\u003e \u003cp\u003e5.2 State Machines without Software activities.\u003c\/p\u003e \u003cp\u003e5.3 Sequential-Activities Design Pattern.\u003c\/p\u003e \u003cp\u003e5.4 Concurrent-Activities Design Pattern.\u003c\/p\u003e \u003cp\u003e5.5 Communicating State Machines.\u003c\/p\u003e \u003cp\u003e5.6 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6 Event-Thread Patterns for Resource Sharing.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1 Introduction.\u003c\/p\u003e \u003cp\u003e6.2 Resource-User-Thread Pattern.\u003c\/p\u003e \u003cp\u003e6.3 The Resource-Guard-Thread Pattern.\u003c\/p\u003e \u003cp\u003e6.4 Choosing and Combining Patterns.\u003c\/p\u003e \u003cp\u003e6.5 Examples with Dual Solutions.\u003c\/p\u003e \u003cp\u003e6.6 Data Stream Processing.\u003c\/p\u003e \u003cp\u003e6.7 Repository Problems.\u003c\/p\u003e \u003cp\u003e6.8 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e7 Simultaneous Exclusive Access to Multiple Resources.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e7.1 Introduction.\u003c\/p\u003e \u003cp\u003e7.2 The Deadlock Problem.\u003c\/p\u003e \u003cp\u003e7.3 Case Studies.\u003c\/p\u003e \u003cp\u003e7.4 Heuristics.\u003c\/p\u003e \u003cp\u003e7.5 More on Deadlock and Its Prevention.\u003c\/p\u003e \u003cp\u003e7.6 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eIII Background and Discussion.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e8 Real-Time Software Architectures and Data-Flow Design Approaches.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e8.1 Introduction.\u003c\/p\u003e \u003cp\u003e8.2 Real-Time Architectures.\u003c\/p\u003e \u003cp\u003e8.3 Data-Flow Design Approaches.\u003c\/p\u003e \u003cp\u003e8.4 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e9 The Origins of Entity-Life Modeling.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e9.1 Introduction.\u003c\/p\u003e \u003cp\u003e9.2 Early Experiences with Software Development.\u003c\/p\u003e \u003cp\u003e9.3 The Jackson Methods.\u003c\/p\u003e \u003cp\u003e9.3.1.4 Structure Clashes.\u003c\/p\u003e \u003cp\u003e*9.4 Formal Models and Methods.\u003c\/p\u003e \u003cp\u003e9.5 Software Patterns.\u003c\/p\u003e \u003cp\u003e9.6 Conclusion.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eGlossary.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eReferences.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eIndex.\u003c\/b\u003e\u003c\/p\u003e\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\u003cp\u003e\u003cfont size=\"3\"\u003eSubject Areas: Electronics \u0026amp; communications engineering [\u003ca title=\"See our other books on Electronics \u0026amp; communications engineering\" href=\"https:\/\/freshlyprintedbooks.co.uk\/search?q=%22Electronics%20\u0026amp;%20communications%20engineering%20%5BTJ%5D%22\"\u003eTJ\u003c\/a\u003e]\u003c\/font\u003e\u003c\/p\u003e\r\n\r\n\r\n\u003c\/font\u003e","brand":"Wiley-IEEE Computer Society Pr","offers":[{"title":"Brand New","offer_id":52278086959384,"sku":"9780470876596","price":73.69,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0730\/2037\/5320\/files\/9780470876596.jpg?v=1781458086","url":"https:\/\/freshlyprintedbooks.co.uk\/products\/design-of-multithreaded-software-the-entity-life-modeling-approach-hardback-9780470876596","provider":"Freshly Printed Books","version":"1.0","type":"link"}