- Table View
- List View
Model-Based Systems Engineering with OPM and SysML
by Dov DoriModel-Based Systems Engineering (MBSE), which tackles architecting and design of complex systems through the use of formal models, is emerging as the most critical component of systems engineering. This textbook specifies the two leading conceptual modeling languages, OPM--the new ISO 19450, composed primarily by the author of this book, and OMG SysML. It provides essential insights into a domain-independent, discipline-crossing methodology of developing or researching complex systems of any conceivable kind and size. Combining theory with a host of industrial, biological, and daily life examples, the book explains principles and provides guidelines for architecting complex, multidisciplinary systems, making it an indispensable resource for systems architects and designers, engineers of any discipline, executives at all levels, project managers, IT professional, systems scientists, and engineering students.
Modeling and Optimization of Cloud-Ready and Content-Oriented Networks
by Krzysztof WalkowiakThisbook focuses on modeling and optimization of cloud-ready and content-orientednetworks in the context of different layers and accounts for specificconstraints following from protocols andtechnologies used in a particular layer. It addresses a wide range ofadditional constraints importantin contemporary networks, including various types of network flows,survivability issues, multi-layer networking, and resource location. Thebook presents recent existing and new results in a comprehensive and cohesiveway. The contents of the book are organized in five chapters, which are mostlyself-contained. Chapter 1 briefly presents information oncloud computing and content-oriented services, and introduces basic notionsand concepts of network modeling and optimization. Chapter 2 covers various optimizationproblems that arise in the context of connection-oriented networks. Chapter3 focuses on modeling and optimization of Elastic Optical Networks. Chapter 4 isdevoted to overlay networks. The book concludes with Chapter 5, summarizing thebook and present recent research trends in the field of network optimization.
Modeling and Optimization of Parallel and Distributed Embedded Systems
by Sanjay Ranka Ann Gordon-Ross Arslan MunirThis book introduces the state-of-the-art in research in parallel and distributed embedded systems, which have been enabled by developments in silicon technology, micro-electro-mechanical systems (MEMS), wireless communications, computer networking, and digital electronics. These systems have diverse applications in domains including military and defense, medical, automotive, and unmanned autonomous vehicles. The emphasis of the book is on the modeling and optimization of emerging parallel and distributed embedded systems in relation to the three key design metrics of performance, power and dependability. Key features: Includes an embedded wireless sensor networks case study to help illustrate the modeling and optimization of distributed embedded systems. Provides an analysis of multi-core/many-core based embedded systems to explain the modeling and optimization of parallel embedded systems. Features an application metrics estimation model; Markov modeling for fault tolerance and analysis; and queueing theoretic modeling for performance evaluation. Discusses optimization approaches for distributed wireless sensor networks; high-performance and energy-efficient techniques at the architecture, middleware and software levels for parallel multicore-based embedded systems; and dynamic optimization methodologies. Highlights research challenges and future research directions. The book is primarily aimed at researchers in embedded systems; however, it will also serve as an invaluable reference to senior undergraduate and graduate students with an interest in embedded systems research.
Modeling and Simulating Software Architectures: The Palladio Approach
by Heiko Koziolek Robert Heinrich Max Kramer Jens Happe Ralf H. Reussner Klaus Krogmann Steffen Becker Anne KoziolekToo often, software designers lack an understanding of the effect of design decisions on such quality attributes as performance and reliability. This necessitates costly trial-and-error testing cycles, delaying or complicating rollout. This book presents a new, quantitative architecture simulation approach to software design, which allows software engineers to model quality of service in early design stages. It presents the first simulator for software architectures, Palladio, and shows students and professionals how to model reusable, parametrized components and configured, deployed systems in order to analyze service attributes.The text details the key concepts of Palladio's domain-specific modeling language for software architecture quality and presents the corresponding development stage. It describes how quality information can be used to calibrate architecture models from which detailed simulation models are automatically derived for quality predictions. Readers will learn how to approach systematically questions about scalability, hardware resources, and efficiency. The text features a running example to illustrate tasks and methods as well as three case studies from industry. Each chapter ends with exercises, suggestions for further reading, and "takeaways" that summarize the key points of the chapter. The simulator can be downloaded from a companion website, which offers additional material. The book can be used in graduate courses on software architecture, quality engineering, or performance engineering. It will also be an essential resource for software architects and software engineers and for practitioners who want to apply Palladio in industrial settings.
Modeling and Simulating Software Architectures: The Palladio Approach
by Robert Heinrich Jens Happe Ralf H. Reussner Steffen Becker Anne KoziolekA new, quantitative architecture simulation approach to software design that circumvents costly testing cycles by modeling quality of service in early design states.Too often, software designers lack an understanding of the effect of design decisions on such quality attributes as performance and reliability. This necessitates costly trial-and-error testing cycles, delaying or complicating rollout. This book presents a new, quantitative architecture simulation approach to software design, which allows software engineers to model quality of service in early design stages. It presents the first simulator for software architectures, Palladio, and shows students and professionals how to model reusable, parametrized components and configured, deployed systems in order to analyze service attributes.The text details the key concepts of Palladio's domain-specific modeling language for software architecture quality and presents the corresponding development stage. It describes how quality information can be used to calibrate architecture models from which detailed simulation models are automatically derived for quality predictions. Readers will learn how to approach systematically questions about scalability, hardware resources, and efficiency. The text features a running example to illustrate tasks and methods as well as three case studies from industry. Each chapter ends with exercises, suggestions for further reading, and “takeaways” that summarize the key points of the chapter. The simulator can be downloaded from a companion website, which offers additional material. The book can be used in graduate courses on software architecture, quality engineering, or performance engineering. It will also be an essential resource for software architects and software engineers and for practitioners who want to apply Palladio in industrial settings.
Modelling Foundations and Applications
by Andrzej Wąsowski Henrik LönnThis book constitutes the proceedings of the 12th European Conference on Modelling Foundations and Applications, ECMFA 2016, held as part of STAF 2016, in Vienna, Austria, in July 2016. The 16 papers presented in this volume were carefully reviewed and selected from 47 submissions. The committee decided to accept 16 papers, 12 papers for the Foundations Track and 4 papers for the Applications Track. Papers on a wide range of MBE aspects were accepted, including topics such as multi- and many models, language engineering, UML and meta-modeling, experience reports and case studies, and variability and uncertainty.
Modelling Intelligent Multi-Modal Transit Systems
by Agostino Nuzzolo William H. LamThe growing mobility needs of travellers have led to the development of increasingly complex and integrated multi-modal transit networks. Hence, transport agencies and transit operators are now more urgently required to assist in the challenging task of effectively and efficiently planning, managing, and governing transit networks. A pre-condition for the development of an effective intelligent multi-modal transit system is the integration of information and communication technology (ICT) tools that will support the needs of transit operators and travellers. To achieve this, reliable real-time simulation and short-term forecasting of passenger demand and service network conditions are required to provide both real-time traveller information and successfully synchronise transit service planning and operations control. Modelling Intelligent Multi-Modal Transit Systems introduces the current trends in this newly emerging area. Recent developments in information technology and telematics have enabled a large amount of data to become available, thus further attracting transport researchers to set up new models outside the context of the traditional data-driven approach. The alternative demand-supply interaction or network assignment modelling approach has improved greatly in recent years and has a crucial role to play in this new context.
Modelling and Implementation of Complex Systems
by Salim Chikhi Abdelmalek Amine Allaoua Chaoui Mohamed Khireddine Kholladi Djamel Eddine SaidouniThis volumeis a comprehensive collection of extended contributions from the fourthinternational symposium on Modeling and Implementing Complex Systems(MICS'2106) organized into four main topics: Networking and Cloud Computing,Software Engineering and Formal Methods, Intelligent and Information Systems,and Algorithms and Complexity. This book presents recent advances related totheory and applications of networking and distributed computing, including:cloud computing, software engineering, formal methods, information extraction,optimization algorithms, intelligent systems, and multi-agent systems.
Models and Methods for Interval-Valued Cooperative Games in Economic Management
by Deng-Feng LiThis book proposes several commonly used interval-valuedsolution concepts of interval-valued cooperative games with transferable utility. It thoroughly investigates these solutions,thereby establishing the properties, models, methods, and applications. Thefirst chapter proposes the interval-valued least square solutions and quadraticprogramming models, methods, and properties. Next, the satisfactory-degree-basednon-linear programming models for computing interval-valued cores andcorresponding bisection algorithm are explained. Finally, the book explores severalsimplification methods of interval-valued solutions: the interval-valued equal division and equalsurplus division values; the interval-valued Shapley, egalitarian Shapley, and discountedShapley values; the interval-valued solidarity and generalized solidarity values;and the interval-valued Banzhaf value. This book is designed for individuals fromdifferent fields and disciplines, such as decision science, game theory, managementscience, operations research, fuzzy sets or fuzzy mathematics, appliedmathematics, industrial engineering, finance, applied economics, expert system,and social economy as well as artificial intelligence. Moreover, it is suitablefor teachers, postgraduates, and researchers from different disciplines:decision analysis, management, operations research, fuzzy mathematics, fuzzysystem analysis, applied mathematics, systems engineering, project management,supply chain management, industrial engineering, applied economics, and hydrologyand water resources.
Modern Database Management (Twelfth Edition)
by Jeffrey A. Hoffer Ramesh Venkataraman Heikki TopiThis text is designed to be used with an introductory course in database management. Such a course is usually required as part of an information systems curriculum in business schools, computer technology programs, and applied computer science departments.
Modern JavaScript Applications
by Narayan PrustyAn example-driven guide that explores the world of modern web development with JavaScript About This Book * Explore the new features of ECMAScript 6 and how they can be incorporated to build cutting edge web applications * Learn about modern web architectures and build real-world apps on top of them * Make use of modern JavaScript tools, techniques and frameworks to enhance your web development skills Who This Book Is For This book is for existing JavaScript developers who want to explore some of the modern JavaScript features, techniques, and architectures to develop cutting edge web applications. What You Will Learn * Learn to create single page websites * Gain expertise in responsive and dynamic website design * Enable Real-time communications between client-client and client-server/server-client * Create APIs for large-scale applications * Write complete applications using functional reactive programming In Detail Over the years, JavaScript has taken significant strides in the world of modern web development to enhance the development of a wide range of applications with different architectures. This book explores the advanced and new features that have arrived in JavaScript and how they can be applied to develop high-quality applications with different architectures. The book begins by covering a single page application that builds on the innovative MVC approach using AngularJS. As we move forward, the book shows you how to develop an enterprise-level application with the microservices architecture, using Node to build web services. We then focus on network programming concepts and you'll build a real-time web application with websockets. When you've gained a solid grip on the different architectures, we'll move on to the area where JavaScript shines, that is, UI development. You'll learn to build responsive, declarative UIs with React and Bootstrap. As we near the end of this book, you'll see how the performance of web applications can be enhanced using Functional Reactive Programming (FRP). Along the way, the book also explores how the power of JavaScript can be increased multi-fold. After reading this book, you will have a solid knowledge of the latest JavaScript techniques, tools, and architecture to build modern web apps. Style and approach Covering all the new features in ECMAScript 6, this book takes a project-based approach to introduce you to all the latest techniques, tools, and architectures of JavaScript web development. Each project that the book builds will show you a different angle of the power of JavaScript in modern web development.
Modern Mathematical Methods and High Performance Computing in Science and Technology
by Vijay Gupta Vinai K. Singh H. M. Srivastava Ezio Venturino Michael ReschThe book discusses important results in modern mathematical models and high performance computing, such as applied operations research, simulation of operations, statistical modeling and applications, invisibility regions and regular meta-materials, unmanned vehicles, modern radar techniques/SAR imaging, satellite remote sensing, coding, and robotic systems. Furthermore, it is valuable as a reference work and as a basis for further study and research. All contributing authors are respected academicians, scientists and researchers from around the globe. All the papers were presented at the international conference on Modern Mathematical Methods and High Performance Computing in Science & Technology (M3HPCST 2015), held at Raj Kumar Goel Institute of Technology, Ghaziabad, India, from 27-29 December 2015, and peer-reviewed by international experts. The conference provided an exceptional platform for leading researchers, academicians, developers, engineers and technocrats from a broad range of disciplines to meet and discuss state-of-the-art mathematical methods and high performance computing in science & technology solutions. This has brought new prospects for collaboration across disciplines and ideas that facilitate novel breakthroughs.
Modern Monopolies: What It Takes to Dominate the 21st Century Economy
by Nicholas L. Johnson Alex MoazedIn Modern Monopolies, Alex Moazed and Nicholas L. Johnson tell the definitive story of what has changed, what it means for businesses today, and how managers, entrepreneurs, and business owners can adapt and thrive in this new era.What do Google, Snapchat, Tinder, Amazon, and Uber have in common, besides soaring market share? They're platforms - a new business model that has quietly become the only game in town, creating vast fortunes for its founders while dominating everyone's daily life. A platform, by definition, creates value by facilitating an exchange between two or more interdependent groups. So, rather that making things, they simply connect people.The Internet today is awash in platforms - Facebook is responsible for nearly 25 percent of total Web visits, and the Google platform crash in 2013 took about 40 percent of Internet traffic with it. Representing the ten most trafficked sites in the U.S., platforms are also prominent over the globe; in China, they hold the top eight spots in web traffic rankings.The advent of mobile computing and its ubiquitous connectivity have forever altered how we interact with each other, melding the digital and physical worlds and blurring distinctions between "offline" and "online." These platform giants are expanding their influence from the digital world to the whole economy. Yet, few people truly grasp the radical structural shifts of the last ten years.
Modern Programming Made Easy
by Adam L. DavisGet up and running fast with the basics of programming using Java as an example language. This short book gets you thinking like a programmer in an easy and entertaining way. Modern Programming Made Easy teaches you basic coding principles, including working with lists, sets, arrays, and maps; coding in the object-oriented style; and writing a web application. This book is language agnostic, but will mainly cover Java, with some references to Groovy, Scala, and JavaScript to give you a broad range of examples to consider. You will get a taste of what modern programming has to offer and set yourself up for further study and growth in your chosen language. What You'll Learn Code using the functional programming style Build and test your code Read and write from files Design user interfaces Deploy your app in the cloud Who This Book Is For Anyone who wants to learn how to code. Whether you're a student, a teacher, looking for a career change, or just a hobbyist, this book is made for you.
Modern Python Cookbook
by Steven F. LottThe latest in modern Python recipes for the busy modern programmer About This Book * Develop succinct, expressive programs in Python * Learn the best practices and common idioms through carefully explained and structured recipes * Discover new ways to apply Python for the new age of development Who This Book Is For The book is for web developers, programmers, enterprise programmers, engineers, big data scientist, and so on. If you are a beginner, Python Cookbook will get you started. If you are experienced, it will expand your knowledge base. A basic knowledge of programming would help. What You Will Learn * See the intricate details of the Python syntax and how to use it to your advantage * Improve your code readability through functions in Python * Manipulate data effectively using built-in data structures * Get acquainted with advanced programming techniques in Python * Equip yourself with functional and statistical programming features * Write proper tests to be sure a program works as advertised * Integrate application software using Python In Detail Python is the preferred choice of developers, engineers, data scientists, and hobbyists everywhere. It is a great scripting language that can power your applications and provide great speed, safety, and scalability. By exposing Python as a series of simple recipes, you can gain insight into specific language features in a particular context. Having a tangible context helps make the language or standard library feature easier to understand. This book comes with over 100 recipes on the latest version of Python. The recipes will benefit everyone ranging from beginner to an expert. The book is broken down into 13 chapters that build from simple language concepts to more complex applications of the language. The recipes will touch upon all the necessary Python concepts related to data structures, OOP, functional programming, as well as statistical programming. You will get acquainted with the nuances of Python syntax and how to effectively use the advantages that it offers. You will end the book equipped with the knowledge of testing, web services, and configuration and application integration tips and tricks. The recipes take a problem-solution approach to resolve issues commonly faced by Python programmers across the globe. You will be armed with the knowledge of creating applications with flexible logging, powerful configuration, and command-line options, automated unit tests, and good documentation. Style and approach This book takes a recipe-based approach, where each recipe addresses specific problems and issues. The recipes provide discussions and insights and an explanation of the problems.
Modular Programming with JavaScript
by Sasan SeydnejadModularize your JavaScript code for better readability, greater maintainability, and enhanced testability About This Book * Design and build fully modular, modern JavaScript applications using modular design concepts * Improve code portability, maintainability, and integrity while creating highly scalable and responsive web applications * Implement your own loosely coupled code blocks that can power highly maintainable and powerful applications in a flexible and highly responsive modular architecture Who This Book Is For If you are an intermediate to advanced JavaScript developer who has experience of writing JavaScript code but probably not in a modular, portable manner, or you are looking to develop enterprise level JavaScript applications, then this book is for you. A basic understanding of JavaScript concepts such as OOP, prototypal inheritance, and closures is expected. What You Will Learn * Understand the important concepts of OOP in JavaScript, such as scope, objects, inheritance, event delegation, and more * Find out how the module design pattern is used in OOP in JavaScript * Design and augment modules using both tight augmentation and loose augmentation * Extend the capabilities of modules by creating sub-modules using techniques such as cloning and inheritance * Move from isolated module pieces to a cohesive, well integrated application modules that can interact and work together without being tightly coupled * See how SandBoxing is used to create a medium for all the modules to talk to each other as well as to the core * Use the concepts of modular application design to handle dependencies and load modules asynchronously * Become familiar with AMD and CommonJS utilities and discover what the future of JavaScript holds for modular programming and architecture In Detail Programming in the modular manner is always encouraged for bigger systems--it is easier to achieve scalability with modular programming. Even JavaScript developers are now interested in building programs in a modular pattern. Modules help people who aren't yet familiar with code to find what they are looking for and also makes it easier for programmers to keep things that are related close together. Designing and implementing applications in a modular manner is highly encouraged and desirable in both simple and enterprise level applications. This book covers some real-life examples of modules and how we can translate that into our world of programming and application design. After getting an overview of JavaScript object-oriented programming (OOP) concepts and their practical usage, you should be able to write your own object definitions using the module pattern. You will then learn to design and augment modules and will explore the concepts of cloning, inheritance, sub-modules, and code extensibility. You will also learn about SandBoxing, application design, and architecture based on modular design concepts. Become familiar with AMD and CommonJS utilities. By the end of the book, you will be able to build spectacular modular applications in JavaScript. Style and approach This in-depth step-by-step guide will teach you modular programming with JavaScript. Starting from the basics, it will cover advanced modular patterns that can be used in sophisticated JavaScript applications.
Modular Programming with PHP 7
by Branko AjzeleUtilize the power of modular programming to improve code readability, maintainability, and testability About This Book * This book demonstrates code reusability and distributed development to get high speed, maintainable, and fast applications * It illustrates the development of a complete modular application developed using PHP7 in detail * This book provides a high-level overview of the Symfony framework, a set of tools and a development methodology that are needed to build a modular web shop application Who This Book Is For This step-by-step guide is divided into two sections. The first section explores all the fundamentals of modular design technique with respect to PHP 7. The latter section demonstrates the practical development of individual modules of a web shop application. What You Will Learn * Discover the new features of PHP 7 that are relevant to modular application development * Write manageable code based on the GoF design patterns and SOLID principles * Define the application requirements of a working modular application * Explore the ins and outs of the Symfony framework * Build a set of modules based on the Symfony framework that comprise a simple web shop app * Use core modules to set the structure and dependencies for other modules to use * Set up entities that are relevant to the module functionality and see how to manage these entities In Detail Modular design techniques help you build readable, manageable, reusable, and more efficient codes. PHP 7, which is a popular open source scripting language, is used to build modular functions for your software. With this book, you will gain a deep insight into the modular programming paradigm and how to achieve modularity in your PHP code. We start with a brief introduction to the new features of PHP 7, some of which open a door to new concepts used in modular development. With design patterns being at the heart of all modular PHP code, you will learn about the GoF design patterns and how to apply them. You will see how to write code that is easy to maintain and extend over time with the help of the SOLID design principles. Throughout the rest of the book, you will build different working modules of a modern web shop application using the Symfony framework, which will give you a deep understanding of modular application development using PHP 7. Style and approach This book is for intermediate-level PHP developers with little to no knowledge of modular programming who want to understand design patterns and principles in order to better utilize the existing frameworks for modular application development.
Modular Programming with Python
by Erik WestraIntroducing modular techniques for building sophisticated programs using Python About This Book * The book would help you develop succinct, expressive programs using modular deign * The book would explain best practices and common idioms through carefully explained and structured examples * It will have broad appeal as far as target audience is concerned and there would be take away for all beginners to Python Who This Book Is For This book is intended for beginner to intermediate level Python programmers who wish to learn how to use modules and packages within their programs. While readers must understand the basics of Python programming, no knowledge of modular programming techniques is required. What You Will Learn * Learn how to use modules and packages to organize your Python code * Understand how to use the import statement to load modules and packages into your program * Use common module patterns such as abstraction and encapsulation to write better programs * Discover how to create self-testing Python packages * Create reusable modules that other programmers can use * Learn how to use GitHub and the Python Package Index to share your code with other people * Make use of modules and packages that others have written * Use modular techniques to build robust systems that can handle complexity and changing requirements over time In Detail Python has evolved over the years and has become the primary choice of developers in various fields. The purpose of this book is to help readers develop readable, reliable, and maintainable programs in Python. Starting with an introduction to the concept of modules and packages, this book shows how you can use these building blocks to organize a complex program into logical parts and make sure those parts are working correctly together. Using clearly written, real-world examples, this book demonstrates how you can use modular techniques to build better programs. A number of common modular programming patterns are covered, including divide-and-conquer, abstraction, encapsulation, wrappers and extensibility. You will also learn how to test your modules and packages, how to prepare your code for sharing with other people, and how to publish your modules and packages on GitHub and the Python Package Index so that other people can use them. Finally, you will learn how to use modular design techniques to be a more effective programmer. Style and approach This book will be simple and straightforward, focusing on imparting learning through a wide array of examples that the readers can put into use as they read through the book. They should not only be able to understand the way modules help in improving development, but they should also be able to improvise on their techniques of writing concise and effective code.
MongoDB Cookbook - Second Edition
by Amol Nayak Cyrus DasadiaHarness the latest features of MongoDB 3 with this collection of 80 recipes - from managing cloud platforms to app development, this book is a vital resourceAbout This BookGet to grips with the latest features of MongoDB 3Interact with the MongoDB server and perform a wide range of query operations from the shellFrom administration to automation, this cookbook keeps you up to date with the world's leading NoSQL databaseWho This Book Is ForThis book is engineered for anyone who is interested in managing data in an easy and efficient way using MongoDB. You do not need any prior knowledge of MongoDB, but it would be helpful if you have some programming experience in either Java or Python.What You Will LearnInstall, configure, and administer MongoDB sharded clusters and replica setsBegin writing applications using MongoDB in Java and Python languagesInitialize the server in three different modes with various configurationsPerform cloud deployment and introduce PaaS for MongoDiscover frameworks and products built to improve developer productivity using MongoTake an in-depth look at the Mongo programming driver APIs in Java and PythonSet up enterprise class monitoring and backups of MongoDBIn DetailMongoDB is a high-performance and feature-rich NoSQL database that forms the backbone of the systems that power many different organizations - it's easy to see why it's the most popular NoSQL database on the market. Packed with many features that have become essential for many different types of software professionals and incredibly easy to use, this cookbook contains many solutions to the everyday challenges of MongoDB, as well as guidance on effective techniques to extend your skills and capabilities.This book starts with how to initialize the server in three different modes with various configurations. You will then be introduced to programming language drivers in both Java and Python. A new feature in MongoDB 3 is that you can connect to a single node using Python, set to make MongoDB even more popular with anyone working with Python. You will then learn a range of further topics including advanced query operations, monitoring and backup using MMS, as well as some very useful administration recipes including SCRAM-SHA-1 Authentication. Beyond that, you will also find recipes on cloud deployment, including guidance on how to work with Docker containers alongside MongoDB, integrating the database with Hadoop, and tips for improving developer productivity.Created as both an accessible tutorial and an easy to use resource, on hand whenever you need to solve a problem, MongoDB Cookbook will help you handle everything from administration to automation with MongoDB more effectively than ever before.Style and approachEvery recipe is explained in a very simple set-by-step manner yet is extremely comprehensive.
MongoDB in Action: Covers MongoDB version 3.0
by Kyle Banker Douglas Garrett Peter Bakkum Shaun VerchSummaryMongoDB in Action, Second Edition is a completely revised and updated version. It introduces MongoDB 3.0 and the document-oriented database model. This perfectly paced book gives you both the big picture you'll need as a developer and enough low-level detail to satisfy system engineers.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologyThis document-oriented database was built for high availability, supports rich, dynamic schemas, and lets you easily distribute data across multiple servers. MongoDB 3.0 is flexible, scalable, and very fast, even with big data loads.About the BookMongoDB in Action, Second Edition is a completely revised and updated version. It introduces MongoDB 3.0 and the document-oriented database model. This perfectly paced book gives you both the big picture you'll need as a developer and enough low-level detail to satisfy system engineers. Lots of examples will help you develop confidence in the crucial area of data modeling. You'll also love the deep explanations of each feature, including replication, auto-sharding, and deployment.What's InsideIndexes, queries, and standard DB operationsAggregation and text searchingMap-reduce for custom aggregations and reportingDeploying for scale and high availabilityUpdated for Mongo 3.0 About the ReaderWritten for developers. No previous MongoDB or NoSQL experience is assumed.About the AuthorsAfter working at MongoDB, Kyle Banker is now at a startup. Peter Bakkum is a developer with MongoDB expertise. Shaun Verch has worked on the core server team at MongoDB. A Genentech engineer, Doug Garrett is one of the winners of the MongoDB Innovation Award for Analytics. A software architect, Tim Hawkins has led search engineering at Yahoo Europe. Technical Contributor: Wouter Thielen. Technical Editor: Mihalis Tsoukalos. Table of ContentsPART 1 GETTING STARTEDA database for the modern web MongoDB through the JavaScript shell Writing programs using MongoDB PART 2 APPLICATION DEVELOPMENT IN MONGODBDocument-oriented data Constructing queries Aggregation Updates, atomic operations, and deletes PART 3 MONGODB MASTERYIndexing and query optimization Text search WiredTiger and pluggable storage Replication Scaling your system with sharding Deployment and administration
Monitoring Elasticsearch
by Dan NobleMonitor your Elasticsearch cluster's health, and diagnose and solve its performance and reliability issues About This Book * Understand common performance and reliability pitfalls in ElasticSearch * Use popular monitoring tools such as ElasticSearch-head, BigDesk, Marvel, Kibana, and more * This is a step-by-step guide with lots of case studies on solving real-world ElasticSearch cluster issues Who This Book Is For This book is for developers and system administrators who use ElasticSearch in a wide range of capacities. Prior knowledge of ElasticSearch and related technologies would be helpful, but is not necessary. What You Will Learn * Explore your cluster with ElasticSearch-head and BigDesk * Access the underlying data of the ElasticSearch monitoring plugins using the ElasticSearch API * Analyze your cluster's performance with Marvel * Troubleshoot some of the common performance and reliability issues that come up when using ElasticSearch * Analyze a cluster's historical performance, and get to the bottom of and recover from system failures * Use and install various other tools and plugins such as Kibana and Kopf, which is helpful to monitor ElasticSearch In Detail ElasticSearch is a distributed search server similar to Apache Solr with a focus on large datasets, a schema-less setup, and high availability. This schema-free architecture allows ElasticSearch to index and search unstructured content, making it perfectly suited for both small projects and large big data warehouses with petabytes of unstructured data. This book is your toolkit to teach you how to keep your cluster in good health, and show you how to diagnose and treat unexpected issues along the way. You will start by getting introduced to ElasticSearch, and look at some common performance issues that pop up when using the system. You will then see how to install and configure ElasticSearch and the ElasticSearch monitoring plugins. Then, you will proceed to install and use the Marvel dashboard to monitor ElasticSearch. You will find out how to troubleshoot some of the common performance and reliability issues that come up when using ElasticSearch. Finally, you will analyze your cluster's historical performance, and get to know how to get to the bottom of and recover from system failures. This book will guide you through several monitoring tools, and utilizes real-world cases and dilemmas faced when using ElasticSearch, showing you how to solve them simply, quickly, and cleanly. Style and approach This is a step-by-step guide to monitoring your ElasticSearch cluster and correcting performance issues. It is filled with lots of in-depth, real-world use-cases on solving different ElasticSearch cluster issues.
Mood and Mobility: Navigating the Emotional Spaces of Digital Social Networks
by Richard CoyneAn argument that as we engage with social media on our digital devices we receive, modify, intensify, and transmit moods.We are active with our mobile devices; we play games, watch films, listen to music, check social media, and tap screens and keyboards while we are on the move. In Mood and Mobility, Richard Coyne argues that not only do we communicate, process information, and entertain ourselves through devices and social media; we also receive, modify, intensify, and transmit moods. Designers, practitioners, educators, researchers, and users should pay more attention to the moods created around our smartphones, tablets, and laptops.Drawing on research from a range of disciplines, including experimental psychology, phenomenology, cultural theory, and architecture, Coyne shows that users of social media are not simply passive receivers of moods; they are complicit in making moods. Devoting each chapter to a particular mood—from curiosity and pleasure to anxiety and melancholy—Coyne shows that devices and technologies do affect people's moods, although not always directly. He shows that mood effects are transitional; different moods suit different occasions, and derive character from emotional shifts. Furthermore, moods are active; we enlist all the resources of human sociability to create moods. And finally, the discourse about mood is deeply reflexive; in a kind of meta-moodiness, we talk about our moods and have feelings about them. Mood, in Coyne's distinctive telling, provides a new way to look at the ever-changing world of ubiquitous digital technologies.
Moodle 2.7 LTS Administration - Third Edition
by Alex BuchnerThe book takes a problem-solution approach to fall in line with your day-to-day operations. This is a one-stop reference for any task you will ever come across when administering a Moodle site of any shape and size. If you are a technician, systems administrator, or part of academic staff, this is the book for you. This book is ideal for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment, this book will assist you with any administrative task. Some basic Moodle knowledge is helpful, but not essential.
Moodle 3.x Teaching Techniques - Third Edition
by Susan Smith NashCreative ways to build powerful and effective online courses with Moodle 3.0 About This Book * Unleash your teaching talents and develop exciting, dynamic courses * Put together effective online courses that motivate students from all backgrounds, generations, and learning styles * Find powerful insights into developing more successful and educational courses Who This Book Is For If you want to unleash your teaching talents and develop exciting, dynamic courses that really get students moving forward, then this book is for you. Experienced Moodlers who want to upgrade to Moodle 3.0 will find powerful insights into developing more successful and educational courses. What You Will Learn * Create a dynamic learning environment using different techniques * Motivate your students to collaborate and demonstrate what they are learning and to create projects together * Develop materials you can re-use in your future courses * Create online workshops and galleries for your students to make presentations about what they have learned * Engage your students in team work that helps them connect course content with their experiences and prior learning * Develop high-quality courses that will last to create a personal inventory you can use and re-use In Detail Moodle, the world's most popular, free open-source Learning Management System (LMS) has released several new features and enhancements in its latest 3.0 release. More and more colleges, universities, and training providers are using Moodle, which has helped revolutionize e-learning with its flexible, reusable platform and components. This book brings together step-by-step, easy-to-follow instructions to leverage the full power of Moodle 3 to build highly interactive and engaging courses that run on a wide range of platforms including mobile and cloud. Beginning with developing an effective online course, you will write learning outcomes that align with Bloom's taxonomy and list the kinds of instructional materials that will work given one's goal. You will gradually move on to setting up different types of forums for discussions and incorporating multi-media from cloud-base sources. You will then focus on developing effective timed tests, self-scoring quizzes while organizing the content, building different lessons, and incorporating assessments. Lastly, you will dive into more advanced topics such as creating interactive templates for a full course by focussing on creating each element and create workshops and portfolios which encourage engagement and collaboration Style and approach With clear, step-by-step instructions, this book helps you develop good, solid, dynamic courses that will last by making sure that your instructional design is robust, and that they are built around satisfying learning objectives and course outcomes. Packed with plenty of screenshots and practical examples, you will get solid understanding of developing courses that are a success in the real world.
Moodle Theme Development
by Silvina Paola HillarBuild customized themes to make your Moodle courses engaging and interactive About This Book * Leverage the power of Moodle 3 to create interactive and engaging themes for your courses * Experience and integrate the power of Bootstrap and CSS into your Moodle app * Implement your plans with illustrative examples to become a top notch designer Who This Book Is For If you are a Moodle administrator, developer, or designer and wish to enhance your Moodle site to make it visually attractive, then this book is for you. You should be familiar with web design techniques such as HTML and further experience with CSS would be helpful. What You Will Learn * Plan a personalized Moodle theme from start to finish * Install a Moodle theme in different operating systems and change Moodle's theme settings * Add your own customized logo and test your changes in several web browsers * Customize the Moodle site to fit in with other elements such as websites and social networks, among others * Create a design mock-up using graphics software * Design themes that are capable of working with a huge number of different resolutions, screen sizes, screen orientations, and pixel densities * Work with code to adjust the theme to users requirements * Create new custom icons for your theme In Detail Theming is one of the main features of Moodle, and it can be used to customize your online courses and make them look exactly how you want them to,according to your target audience. If you have been looking for a book that will help you develop Moodle themes that you are proud of, and that your students will enjoy, then this is the book for you. We start off by introducing Moodle 3 and explaining what it is, how it works, and what tools you might need to create a stunning Moodle theme. We then show you how to choose and change the pre-installed Moodle themes in detailed steps, and explain what Moodle themes are and how they work. Next, we show you how to change an existing theme and test the changes that you have made. You can not only plan the customization of theme, but also tailor it using advanced Moodle theming processes; this book is your one-stop guide to creating your own personalized Moodle 3 theme. Style and approach This book acts as a comprehensive guide which helps you to create visually stunning and responsive themes to add that extra edge to your Moodle apps.