Software Engineering Books

809 products


  • Apress Illustrated C 7

    15 in stock

    Table of Contents1. C# and the .NET Framework2. C# and .NET Core3. Overview of C# Programming4. Types, Storage, and Variables5. Classes: The Basics6. Methods7. More About Classes8. Classes and Inheritance9. Expressions and Operators10. Statements11. Structs12. Enumerations13. Arrays14. Delegates15. Events16. Interfaces17. Conversions18. Generics19. Enumerators and Iterators20. Introduction to LINQ21. Introduction to Asynchronous Programming22. Namespaces and Assemblies23. Exceptions24. Preprocessor Directives25. Reflection and Attributes26. What’s New in C# 6 and 7 27. Other Topics

    15 in stock

    £52.24

  • Taylor & Francis Inc Agile ModelBased Development Using UMLRSDS

    Out of stock

    Book SynopsisThis book describes the concepts and application of model-based development (MBD), model transformations, and Agile MBD to a wide range of software systems. It covers systems requirements engineering, system specification and design, verification, reuse, and system composition in the context of Agile MBD. Examples of applications in finance, system migration, internet systems and software refactoring are given. An established open-source MBD technology, UML-RSDS, is used throughout to illustrate the concepts.The book is suitable for industrial practitioners who need training in Agile MBD, and those who need to understand the issues to be considered when introducing MBD in an industrial context. It is also suitable for academic researchers, and for use as text for undergraduate or postgraduate courses in MBD. Examples for educational use of UML-RSDS are included in the book.Table of ContentsIntroduction. Overview of development using UML-RSDS. Class Diagrams. Constraints. Use Cases. Design Synthesis. Model Transformations. Design Patterns and Refactorings. System Composition. Agile Development and Model-based Development. Requirements Analysis and Specification. System Verification. Reactive Systems Development with UML-RSDS. Enterprise Systems Development with UML-RSDS. Example Case Studies. Conclusions.

    Out of stock

    £999.99

  • 15 in stock

    £23.74

  • Artech House Publishers Testing and Quality Assurance for Component-Based Software

    15 in stock

    Book SynopsisPresenting the state of the art in component-based software testing, this cutting-edge resource offers you an in-depth understanding of the current issues, challenges, needs and solutions in this critical area. The book discusses the very latest advances in component-based testing and quality assurance in an accessible tutorial format, making the material easy to comprehend and benefit from no matter what your professional level. The book clearly explains what component-based software testing is, why it is important, and how it differs from traditional software testing. From an introduction to software components, testing component-based software and validation methods for software components, to performance testing and measurement, standards and certification and verification of quality for component-based systems, you get a revealing snapshot of the key developments in this area, including important research findings. This volume also serves as a textbook for related courses at the advanced undergraduate or graduate level.Table of ContentsPart I Introduction: introduction to software components; testing software components; introductions to component-based software; testing component-based software. Part II Validation methods for software components: black-box testing methods for software components; white-box testing methods for software components; test automation and tools for software components. Part III Validation methods for component-based programs: integration testing for component-based software; regression testing for component-based software; performance testing and measurement; frameworks for testing component-based software. Part IV Quality assurance for software components and component-based software: quality assurance for software components; quality assurance for component-based software systems; standards and certification for software components and component-based software; component quality verification and measurement; verification of quality for component-based software.

    15 in stock

    £97.68

  • MC Press, LLC Open Source Starter Guide for IBM i Developers

    Out of stock

    Book SynopsisThis book provides a friendly, practical introduction to open source development options for programmers who build applications to run on IBM i computers. The author dispenses guidance to help developers get into open source in a strategic way—for example, helping them to assess the tools and platforms based on criteria such as their business needs, capabilities of the open source technologies, and career development considerations. Readers will take away a clear understanding of open source on IBM i platforms and tools, how these tools fit in with IBM i app development, and the next steps they must take in order to start developing with open source technologies.

    Out of stock

    £47.70

  • APress ADO.NET: From Novice to Pro, Visual Basic .NET Edition

    15 in stock

    Book SynopsisThe author shows developers with litte or no ADO.NET background how to apply ADO.NET fast to real world scenarios by giving examples and code that really works.Table of ContentsA table of contents is not available for this title.

    15 in stock

    £29.92

  • APress Code Generation in Microsoft .NET

    15 in stock

    Book Synopsis* Coverage of all three significant .NET code generation mechanisms: Manual code generation, XSL/XML and CodeDom. * Includes a database metadata extraction tool based on SQL-92 standards. * Real solutions to the problem of protecting handcrafted code across regeneration. * Covers code generation in the broader picture of how applications are developed. * Includes real world samples for a complete middle tier and simple User Interface. Table of ContentsA table of contents is not available for this title.

    15 in stock

    £47.49

  • APress Mastering Oracle PL/SQL: Practical Solutions

    15 in stock

    Book SynopsisIf you have mastered the fundamentals of the PL/SQL language and are now looking for an in-depth, practical guide to solving real problems with PL/SQL stored procedures, then this is the book for you. Table of Contents Efficient PL/SQL Package It All Up The Vexed Subject of Cursors Effective Data Handling PL/SQL Optimization Techniques Triggers DBA Packages Security Packages Web Packages PL/SQL Debugging

    15 in stock

    £37.52

  • APress Practical Common Lisp

    15 in stock

    Book Synopsis* Treats LISP as a language for commercial applications, not a language for academic AI concerns. This could be considered to be a secondary text for the Lisp course that most schools teach . This would appeal to students who sat through a LISP course in college without quite getting it – so a "nostalgia" approach, as in "wow-lisp can be practical…" * Discusses the Lisp programming model and environment. Contains an introduction to the language and gives a thorough overview of all of Common Lisp’s main features. * Designed for experienced programmers no matter what languages they may be coming from and written for a modern audience—programmers who are familiar with languages like Java, Python, and Perl. * Includes several examples of working code that actually does something useful like Web programming and database access. Table of ContentsA table of contents is not available for this title.

    15 in stock

    £64.99

  • APress From Bash to Z Shell: Conquering the Command Line

    15 in stock

    Book Synopsis* In-depth, unique coverage of ZSH, one of most modern and powerful of all shells. Also covers Bash, the preferred shell for most serious Linux and Unix users. * Very strong author and tech review team: Co-author Peter Stephenson has been involved in the development of Zsh since the 1990s when he started to write the FAQ. For the last few years, he has served as coordinator of the shell's development. Tech Reviewers: Ed Schaefer is the "Shell Corner" columnist for SysAdmin Magazine and Bart Schaefer is one of the lead developers of Zsh development. * Book is immediately useful, packed with short example and suggestions that the reader can put to use in their shell environment. * Extensive coverage of interactive and advanced shell features, including shell extensions, completion functions, and shortcuts. * Great book for users of all expertise; perennial seller. Table of ContentsA table of contents is not available for this title.

    15 in stock

    £52.24

  • APress Regular Expression Recipes: A Problem-Solution Approach

    15 in stock

    Book Synopsis*Discusses regular expressions in quick, easy manner (Friedl book is exhaustive, and other two books are superficial) *Teaches by example without exhaustive syntax explanation *Covers the major open source languages Table of Contents Words and Text URLs and Paths CSV and Tab-Delimited Files Formatting and Validating HTML and XML Coding and Using Commands

    15 in stock

    £26.12

  • APress Practical Software Factories in .NET

    15 in stock

    Book SynopsisThe Software Factory methodology is based on recognition of these similarities and a drive to extend the concept of "reusability" to the point where we achieve entirely automated product lines. Based on an analysis and understanding of the common features and techniques of a set of applications, a Software Factory defines a tailored, end-to-end methodology for building these applications. At the heart of the Software factory methodology is the concept of Domain Specific Languages (DSLs), which in essence are development environments specifically tailored to the set of applications in hand. It removes a certain degree of flexibility but greatly enhances productivity by removing a lot of the coding complexity (for an analogy, consider the use of the now ubiquitous drag-and-drop controls in Winforms or Visual Basic). Further, in the SF methodology, patterns, process advice, and best practices can be harvested and applied for all applications in the set. There are some good books on the theory of SF already on the market. Up until this point, a lot of these concepts were fairly theoretical and abstract.Trade ReviewFrom the reviews: "The purpose of this work is to introduce and demystify the concept of software factories in the .NET environment. … The book covers both the theory and practice of software factories, including an acknowledgment of the genesis of the term in the late 1960s. … this book is recommended reading for people involved in the management of large software development groups, particularly ones that develop many similar products. It provides a good theoretical discussion, and practical illustration … in the creation of software solutions." (Neil D. Burgess, ACM Computing Reviews, Vol. 49 (3), March, 2008)Table of ContentsA table of contents is not available for this title.

    15 in stock

    £49.99

  • APress Founders at Work: Stories of Startups' Early Days

    15 in stock

    Book SynopsisFounders at Work recounts the early struggles for independence and acceptance of many of modern technology’s giants, through personal interviews that are at times hilarious, at times painful, and always inspiring. As human-interest stories they will interest the same audience that enjoys reading about the Google founders in PEOPLE magazine. These stories are exceptionally interesting, because they're about the early stages, when the founders were younger and inexperienced. Most readers know startup founders only as confident millionaires. As novices trying to find their way by trial and error, they're more human, and easier for the reader to identify with.Table of ContentsA table of contents is not available for this title.

    15 in stock

    £31.99

  • APress Beginning Game Development with Python and Pygame: From Novice to Professional

    15 in stock

    Book SynopsisThis book provides readers with an introductory resource for learning how to create compelling games using the open source Python programming language and Pygame games development library. Authored by industry veteran and Python expert Will McGugan, readers are treated to a comprehensive, practical introduction to games development using these popular technologies. They can also capitalize upon numerous tips and tricks the author has accumulated over his career creating games for some of the world's largest gaming developers.Table of ContentsA table of contents is not available for this title.

    15 in stock

    £54.99

  • APress Podcast Solutions: The Complete Guide to Audio and Video Podcasting

    15 in stock

    Book SynopsisA much-needed work focusing on one of the e-community’s hottest topics, this is the second edition of a book that covers both video and audio podcasts, as well as updated software and resources. This edition is much improved and updated to cover the latest gear that readers and podcasters want to learn about. Critically, the book also shows how to create video as well as audio podcasts. It provides all the reader needs to know to get heard and now seen online, regardless of his or her level of experience and technical knowledge.Table of ContentsA table of contents is not available for this title.

    15 in stock

    £29.99

  • APress Creating Cool MINDSTORMS NXT Robots

    15 in stock

    Book SynopsisThis book teaches anyone interested how to build LEGO MINDSTORMS robots. The author starts with an easy robot and gets to more detail in the succeeding six robots built in the book. The robots he presents are award winning robots, so he is giving away his secrets. The author also teaches how to program the robots. If you are not a programmer, then you can use the code provided. He tells you what equipment you need and how to get it inexpensively. So everything is discussed that you will need to create these robots or modify his designs to create your own. You truly experience the technology in action as you create your robots.Table of ContentsA table of contents is not available for this title.

    15 in stock

    £42.74

  • Technics Publications LLC Disrupting Data Governance: A Call to Action

    15 in stock

    15 in stock

    £26.34

  • Packt Publishing Limited Optimizing Hadoop for MapReduce

    15 in stock

    15 in stock

    £34.39

  • Packt Publishing Limited Elixir Cookbook

    15 in stock

    15 in stock

    £42.30

  • WIT Press Complex Systems: Fundamentals & Applications

    15 in stock

    Book SynopsisThe papers contained in this volume were originally presented at the 2015 International Conference on Complex Systems in Business, Administration, Science and Engineering. Included are the latest works of practitioners from a variety of disciplines who have developed new approaches for resolving complex issues that cannot be formulated using conventional, mathematical or software models.Complex Systems occur in an infinite variety of problems, not only in the realm of physical sciences and engineering, but also in such diverse fields as economics, the environment, humanities, and social and political sciences.The papers in the book cover such topics as: Complex ecological systems; Complexity science and urban developments; Complex energy systems; Complex issues in biological and medical sciences; Extreme events: natural and human made disasters; Climate change; Complexity of the internet-based global market; Complex business processes; Supply chain complexity; Transportation complexity; Logistics complexity; Closed and open systems; Attractions and chaotic systems; Complex adaptive software; Complexity of big data; Management of complexity; Global economy as a complex system; Complexity in social systems; Complex political systems; Administrations as complex systems; Complexity in engineering; Complexity and environment; Complexity and evolution; Complexity in linguistics, literature and arts.Table of ContentsContentsSection 1: FundamentalsNon-relativistic time, existence and adaptation; On computing the behavior of the mind from an eastern philosophical perspective; Complexity as the defining feature of the 21st century; Factors that facilitate organisational change in complex systems; Mutual shaping between technologies and law: memories of Norwegian e-health infrastructures; 'In' or 'as' space?: a model of complexity, with philosophical, simulatory, and empirical ramifications; Toward thermodynamics of real-time scheduling; Semantic shift to pragmatic meaning in shared decision making: situation theory perspective; Techniques for multifractal spectrum estimation in financial time seriesSection 2: Applications in business and industryAddressing supply-chain complexity using closed-loop simulation-based exercises; Price competition strategy of internet platforms; A novel dwelling time design method for low probability of intercept in a complex radar network; Systems analysis for energy systems using an integrated model of GIS and technology models; Analysing the Chinese stock market using the Hurst exponent, fractional Brownian motion and variants of a stochastic logistic differential equation; Effects of mobile application to the public transportation and future editing: Istanbul caseSection 3: Applications in various fieldsSupporting sensemaking to deal with organizational complexity; The relationship between employee health, quality culture and organizational effectiveness: findings from the literature; Systems engineering beliefs: contemplating personal perceptions regarding state of the art; Value-sensitive design for indigenous people of Oaxaca, Mexico; Influences in a biologically complex adaptive system: environmental stress affects dental development in a group of Romano-BritonsSection 4: Multi-agent applicationsA multi-agent solution for managing complexity in English to Sinhala machine translation; Using a multi-agent system for supply chain management; Design and development of an agent-based model for business operations faced with flood disruption; Using multi-agent technology for the distributed management of a cluster of remote sensing satellites; Multi-agent method to adaptive real-time train scheduling with conflict limitationsAuthor index

    15 in stock

    £138.70

  • 15 in stock

    £49.49

  • Packt Publishing Limited Mastering Reverse Engineering: Re-engineer your ethical hacking skills

    15 in stock

    Book SynopsisImplement reverse engineering techniques to analyze software, exploit software targets, and defend against security threats like malware and viruses.Key Features Analyze and improvise software and hardware with real-world examples Learn advanced debugging and patching techniques with tools such as IDA Pro, x86dbg, and Radare2. Explore modern security techniques to identify, exploit, and avoid cyber threats Book DescriptionIf you want to analyze software in order to exploit its weaknesses and strengthen its defenses, then you should explore reverse engineering. Reverse Engineering is a hackerfriendly tool used to expose security flaws and questionable privacy practices.In this book, you will learn how to analyse software even without having access to its source code or design documents. You will start off by learning the low-level language used to communicate with the computer and then move on to covering reverse engineering techniques. Next, you will explore analysis techniques using real-world tools such as IDA Pro and x86dbg. As you progress through the chapters, you will walk through use cases encountered in reverse engineering, such as encryption and compression, used to obfuscate code, and how to to identify and overcome anti-debugging and anti-analysis tricks. Lastly, you will learn how to analyse other types of files that contain code.By the end of this book, you will have the confidence to perform reverse engineering.What you will learn Learn core reverse engineering Identify and extract malware components Explore the tools used for reverse engineering Run programs under non-native operating systems Understand binary obfuscation techniques Identify and analyze anti-debugging and anti-analysis tricks Who this book is forIf you are a security engineer or analyst or a system programmer and want to use reverse engineering to improve your software and hardware, this is the book for you. You will also find this book useful if you are a developer who wants to explore and learn reverse engineering. Having some programming/shell scripting knowledge is an added advantage.Table of ContentsTable of Contents Preparing to Reverse Identification and extraction of hidden components The Low-Level Language Static and Dynamic Reversing Tools of the trade RE in Linux platforms RE in Windows platforms Sandboxing: Virtualization as a component for RE Binary Obfuscation Techniques Packing and Encryption Anti-analysis Tricks Practical Reverse Engineering of a Windows Executable Reversing various File-types

    15 in stock

    £42.30

  • Packt Publishing Limited Microsoft Power Platform Solution Architect's Handbook: An expert's guide to becoming a Power Platform solution architect and preparing for the PL-600 exam

    15 in stock

    Book SynopsisGain expertise in solution architecture and master all aspects of Power Platform, from data and automation to analytics and securityKey Features Become a full-fledged Power Platform expert and lead your solutions with conviction and clarity Adopt a consistent, systematic, and advanced approach to solution architecture Work on practical examples and exercises to develop expert-level skills and prepare for certification Book DescriptionIf you've been looking for a way to unlock the potential of Microsoft Power Platform and take your career as a solution architect to the next level, then look no further—this practical guide covers it all.Microsoft Power Platform Solution Architect's Handbook will equip you with everything you need to build flexible and cost-effective end-to-end solutions. Its comprehensive coverage ranges from best practices surrounding fit-gap analysis, leading design processes, and navigating existing systems to application lifecycle management with Microsoft Azure DevOps, security compliance monitoring, and third-party API integration.The book takes a hands-on approach by guiding you through a fictional case study throughout the book, allowing you to apply what you learn as you learn it. At the end of the handbook, you'll discover a set of mock tests for you to embed your progress and prepare for PL-600 Microsoft certification.Whether you want to learn how to work with Power Platform or want to take your skills from the intermediate to advanced level, this book will help you achieve that and ensure that you're able to add value to your organization as an expert solution architect.What you will learn Cement the foundations of your applications using best practices Use proven design, build, and go-live strategies to ensure success Lead requirements gathering and analysis with confidence Secure even the most complex solutions and integrations Ensure compliance between the Microsoft ecosystem and your business Build resilient test and deployment strategies to optimize solutions Who this book is forThis book is for solution architects, enterprise architects, technical consultants, and business and system analysts who implement, optimize, and architect Power Platform and Dataverse solutions. It will also help anyone who needs a detailed playbook for architecting and delivering successful digital transformation projects that leverage Power Platform apps and the Microsoft business apps ecosystem. A solid understanding of Power Platform configuration and administration, Power Automate processes, Power Apps Portals, Canvas Apps, Dataverse Plugins, and Workflow Capabilities is expected.Table of ContentsTable of Contents Introducing Power Platform Solution Architecture The Digital Transformation Case Study Discovery and Initial Solution Planning Identifying the Desired Business Process, Risk Factors, and Success Criteria Understanding the Existing Architectural Landscape Requirements Analysis and Engineering for Solution Architecture Power Platform Fit-Gap Analysis Leading the Power Platform Design Process Effective Power Platform Data Modeling Power Platform Integration Strategies Defining Power Platform Security Concepts Validating the Solution Design and Implementation Power Platform Implementation Strategies Leveraging Azure DevOps for Power Platform Go-live Strategies and Support Microsoft Certified: Power Platform Solution Architect Expert Certification Prep

    15 in stock

    £40.49

  • Packt Publishing Limited SAFe® for DevOps Practitioners: Implement robust, secure, and scaled Agile solutions with the Continuous Delivery Pipeline

    15 in stock

    Book SynopsisDiscover how the DevOps approach with Scaled Agile Framework helps you develop and deliver high-quality, secured solutions with a reduced risk of production failures with this step-by-step guideKey Features Explore the five elements of the CALMR approach to avoid product development challenges Use value stream management to introduce systems thinking and flow for product development Demonstrate how the CD pipeline combines practices and technology to optimize your value stream Purchase of the print or Kindle book includes a free eBook in the PDF format Book DescriptionProduct development and release faces overlapping challenges due to the combined pressure of delivering high-quality products in shorter time-to-market cycles, along with maintaining proper operation and ensuring security in a complex high-tech environment. This calls for new ways of overcoming these challenges from design to development, to release, and beyond. SAFe® for DevOps Practitioners helps you use a DevOps approach with the Scaled Agile Framework and details how value streams help you resolve these challenges using examples and use cases. The book begins by explaining how the CALMR approach makes DevOps effective in resolving product development roadblocks. Next, you’ll learn to apply value stream management to establish a value stream that enables product development flow, measure its effectiveness through appropriate feedback loops, and find ways of improving it. Finally, you’ll get to grips with implementing a continuous delivery pipeline that optimizes the value stream through four phases during release on demand. This book complements the latest SAFe DevOps courses, and you’ll find it useful while studying for the SAFe DevOps Practitioner (SDP) certification. By the end of this DevOps book, you’ll have gained a clear understanding of how to achieve continuous execution and release on demand using DevOps and SAFe.What you will learn Understand the important elements of the CALMR approach Discover how to organize around value using value stream mapping Measure your value stream using value stream metrics Improve your value stream with continuous learning Use continuous exploration to design high-quality and secure features Prevent rework and build in quality using continuous integration Automate delivery with continuous deployment Measure successful outcomes with Release on Demand Who this book is forThis book is for IT professionals such as DevOps and DevSecOps practitioners, SREs, and managers who are interested in implementing DevOps practices using the Scaled Agile Framework (SAFe) approach. Basic knowledge of DevOps and agile software development lifecycle and methodology will be helpful.Table of ContentsTable of Contents Introducing SAFe® and DevOps Culture of Shared Responsibility Automation for Efficiency and Quality Leveraging Lean Flow to Keep the Work Moving Measuring the Process and Solution Recovering from Production Failures Mapping Your Value Streams Measuring Value Stream Performance Moving to the Future with Continuous Learning Continuous Exploration and Finding New Features Continuous Integration of Solution Development Continuous Deployment to Production Releasing on Demand to Realize Value Avoiding Pitfalls and Diving into the Future

    15 in stock

    £40.32

  • Packt Publishing Limited Engineering Manager's Handbook: An insider’s guide to managing software development and engineering teams

    15 in stock

    Book SynopsisA comprehensive guide to engineering management packed with tips, tricks, and techniques to drive results Key Features Acquire the necessary skills to manage engineers across various settings Gain valuable insights into engineering leadership, people management, and driving organizational change Discover pitfalls to avoid as a new engineering manager and understand their causation Purchase of the print or Kindle book includes a free PDF eBook Book DescriptionDelightful and customer-centric digital products have become an expectation in the world of business. Engineering managers are uniquely positioned to impact the success of these products and the software systems that power them. Skillful managers guide their teams and companies to develop functional and maintainable systems. This book helps you find your footing as an engineering manager, develop your leadership style, balance your time between engineering and managing, build successful engineering teams in different settings, and work within constraints without sacrificing technical standards or team empathy. You’ll learn practical techniques for establishing trust, developing beneficial habits, and creating a cohesive and high-performing engineering team. You’ll discover effective strategies to guide and contribute to your team’s efforts, facilitating productivity and collaboration. By the end of this book, you’ll have the tools and knowledge necessary to thrive as an engineering manager. Whether you’re just starting out in your role or seeking to enhance your leadership capabilities, this handbook will empower you to make a lasting impact and drive success in your organization.What you will learn Pitfalls common to new managers and how to avoid them Ways to establish trust and authority Methods and tools for building world-class engineering teams Behaviors to build and maintain a great reputation as a leader Mechanisms to avoid costly missteps that end up requiring re-work Strategies to increase employee retention on your team Techniques to facilitate better product outcomes Who this book is forThis book is a valuable resource for software engineers and developers transitioning into engineering management roles, equipping you with best practices and insights to navigate the new responsibilities effectively. Whether you're a newly promoted engineering manager or an experienced one seeking immediate answers to challenges, this comprehensive and up-to-date guide provides the support you need. Familiarity with the software development lifecycle, including concepts like version control, code review, and deployment, is required.Table of ContentsTable of Contents An Introduction to Engineering Management Engineering Leadership Styles Common Failure Modes for New Engineering Managers Leading Architecture Project Planning and Delivery Supporting Production Systems Working Cross-Functionally Communicating with Authority Assessing and Improving Team Performance Fostering Accountability Managing Risk Resilient Leadership Scaling Your Team Changing Priorities, Company Pivots, and Reorgs Retaining Talent Team design and More

    15 in stock

    £35.38

  • Packt Publishing Limited Mastering PLC Programming: The software engineering survival guide to automation programming

    15 in stock

    Book SynopsisLearn PLC programming from the software perspective to understand advanced concepts such as OOP and HMI development and design reusable, portable, and robust codePurchase of the print or Kindle book includes a free PDF eBookKey Features Take a deep dive into object-oriented PLC programming to gain hands-on knowledge Explore software engineering concepts such as SDLC, debugging, and SOLID programming Get a thorough grasp on HMI development to build various HMI projects Book DescriptionObject-oriented programming (OOP) is a new feature of PLC programming that has taken the automation world by storm. This book provides you with the necessary skills to succeed in the modern automation programming environment.The book is designed in a way to take you through advanced topics such as OOP design, SOLID programming, the software development lifecycle (SDLC), library design, HMI development, general software engineering practices, and more. To hone your programming skills, each chapter has a simulated real-world project that'll enable you to apply the skills you've learned. In all, this book not only covers complex PLC programming topics, but it also removes the financial barrier that comes with most books as all examples utilize free software. This means that to follow along, you DO NOT need to purchase any PLC hardware or software.By the end of this PLC book, you will have what it takes to create long-lasting codebases for any modern automation project.What you will learn Find out how to write PLC programs using advanced programming techniques Explore OOP concepts for PLC programming Delve into software engineering topics such as libraries and SOLID programming Explore HMIs, HMI controls, HMI layouts, and alarms Create an HMI project and attach it to a PLC in CODESYS Gain hands-on experience by building simulated PLC and HMI projects Who this book is forThis book is for automaton programmers with a background in software engineering topics such as object-oriented programming and general software engineering knowledge. Automation engineers, software engineers, electrical engineers, PLC technicians, hobbyists, and upper-level university students with an interest in automation or robotics will also find this book useful and interesting. Anyone with a basic knowledge of PLCs can benefit from reading this book.Table of ContentsTable of Contents Software Engineering for PLCs Advanced Structured Text — Programming a PLC in Easy-to-Read English Debugging — Making Your Code Work Complex Variable Declaration — Using Variables to Their Fullest Functions — Making Code Modular and Maintainable OOP — Reducing, Reusing, and Recycling Code OOP — The Power of Objects Libraries — Write Once, Use Anywhere The SDLC — Navigating the SDLC to Create Great Code Advanced Coding — Using SOLID to Make Solid Code HMIs — UIs for PLCs Industrial Controls — User Inputs and Outputs Layouts — Making HMIs User-Friendly Alarms — Avoiding Catastrophic Issues with Alarms Putting It All Together — The Final Project Distributed Control Systems, PLCs, and Networking

    15 in stock

    £52.18

  • WIT Press Managing Complexity

    15 in stock

    Book SynopsisManaging Complexity is the first book that clearly defines the concept of Complexity, explains how Complexity can be measured and tuned, and describes the seven key features of Complex Systems: 1. Connectivity 2. Autonomy 3. Emergency 4. Nonequilibrium 5. Non-linearity 6. Self-organisation 7. Co-evolution The thesis of the book is that complexity of the environment in which we work and live offers new opportunities and that the best strategy for surviving and prospering under conditions of complexity is to develop adaptability to perpetually changing conditions. An effective method for designing adaptability into business processes using multi-agent technology is presented and illustrated by several extensive examples, including adaptive, real-time scheduling of taxis, see-going tankers, road transport, supply chains, railway trains, production processes and swarms of small space satellites. Additional case studies include adaptive servicing of the International Space Station; adaptive processing of design changes of large structures such as wings of the largest airliner in the world; dynamic data mining, knowledge discovery and distributed semantic processing.Finally, the book provides a foretaste of the next generation of complex issues, notably, The Internet of Things, Smart Cities, Digital Enterprises and Smart Logistics.Table of ContentsContents PART 1 Fundamentals 1 What is complexity? Introduction; Defining Complexity; Complex Versus Complicated; Complexity and Uncertainty; The Seven Criteria of Complexity; Negative and Positive Aspects of Complexity; Evolution Favours Complexity; Co-Evolution of Technology, Economy and Society; Complexity and Information Society; Complexity and Philosophy 2 A method for managing complexity Introduction; Coping with External Complexity; Tuning Internal Complexity; Modelling Complexity; Adaptability; Designing Adaptive Business Processes 3 Multi-agent technology Introduction; Fundamentals; MAS for Adaptive Resource Allocation; Knowledge Base; Virtual World; Decision-Making; Agent Negotiations; Architecture; Multi-Agent Platform; Main Features of Our MAS; Multi-Agent Software as a Complex Adaptive System; Comparing Multi-Agent Software with Conventional Programs 4 Emergent intelligence Fundamentals; Evidence of Intelligent Behaviour; Thermodynamics of the Virtual World PART 2 Commercial applications 5 Adaptive scheduling of seagoing tankers The Problem; The Solution; Results 6 Adaptive scheduling of taxis The Problem; The Solution; Results 7 Adaptive scheduling of car rentals The Problem; The Solution; Results 8 Adaptive scheduling of road transport The Problem; The Solution; Results 9 Adaptive data mining The Problem; The Solution; Application Examples; Results 10 Adaptive semantic processing The Problem; The Solution; Application Example: Assessing Relevance of Abstracts; Results 11 Adaptive detection of clashes caused by design changes The Problem; The Solution; Results 133 12 Adaptive scheduling of supply networks The Problem; The Solution; Results 13 Adaptive scheduling of services for the international space station The Problem; The Solution; Results 14 Adaptive scheduling of a fleet of satellites The Problem; The Solution; Results 15 Adaptive scheduling of high-speed railways The Problem; The Solution; Results 16 Adaptive scheduling of manufacturing The Problem; The Solution; Results 17 Adaptive management of service teams The Problem; The Solution; Results 18 Adaptive project management The Problem; The Solution; Results PART 3 A roadmap into the future 19 A vision and ideas A Shift from Personal to Business Applications; The IoT; Digital Enterprise; Smart City; Smart Logistics

    15 in stock

    £59.00

  • Springer London Ltd Software Verification and Analysis: An Integrated, Hands-On Approach

    15 in stock

    Book Synopsis“The situation is good, but not hopeless” (Polish folk wisdom) The text is devoted to the Software Analysis and Testing (SAT) methods and s- porting tools for assessing and, if possible, improving software quality, specifically its correctness. The term quality assurance is avoided for it is this author’s firm belief that in the current state of the art that goal is unattainable, a plethora of “gu- anteed” solutions to the problem notwithstanding. Therefore, the rather awkward phrase “improving correctness” is to be understood as an effort to minimize the number of residual programming faults (“bugs”) and their impact on the software’s behavior, that is, to make the faults tolerable. It is clear that such a minimalist approach is a result of frustration. Indeed, having spent years developing software and teaching (preaching?) “How to do it right,” I still do not know how to go about it with any degree of certainty! It appears then I probably should stop right now, for who with a modicum of common sense would reach for a text that does not offer salvation but (as will be seen) hard work and misery? If I intend to continue, it is only that I suspect there are many professionals out there who have similar doubts. And they are the intended audience of this project. The philosophical underpinning of the text is the importance of sound engine- ing practices in software development.Trade ReviewFrom the reviews: "Software verification is a set of important activities in the software development process that leads to determining whether the software product fulfills requirements. … It could also be very useful to software engineering researchers and practitioners. The quality of the book is enhanced by the wide range of examples that illustrate various problems and offer appropriate solutions. The physical quality of the book is extremely high." (M. Ivanovic, ACM Computing Reviews, June, 2009) “Software verification and validation are conducted to help ensure that programs perform correctly. … While this book’s subtitle indicates a ‘hands-on approach,’ it really takes a formal mathematical approach to describing software verification. … The book includes plenty of diagrams and figures, and it explains verification concepts with examples. This work is useful as a complement to hands-on testing books to detail the mathematical foundations of software verification. Summing Up: Recommended. Upper-division undergraduates through professionals.” (H. J. Bender, Choice, Vol. 47 (3), November, 2009)Table of ContentsThe Semantic Analysis.- Why Not Write Correct Software the First Time?.- How to Prove a Program Correct: Programs Without Loops.- How to Prove a Program Correct: Iterative Programs.- Prepare Test for Any Implementation: Black-Box Testing.- Static Analysis.- Intermediate Program Representation.- Program Dependencies.- What Can One Tell About a Program Without Its Execution: Static Analysis.- Dynamic Analysis.- Is There a Bug in the Program? Structural Program Testing.- Dynamic Program Analysis.

    15 in stock

    £44.99

  • Springer London Ltd Programming Languages: Principles and Paradigms

    15 in stock

    Book SynopsisThis excellent addition to the UTiCS series of undergraduate textbooks provides a detailed and up to date description of the main principles behind the design and implementation of modern programming languages.Rather than focusing on a specific language, the book identifies the most important principles shared by large classes of languages. To complete this general approach, detailed descriptions of the main programming paradigms, namely imperative, object-oriented, functional and logic are given, analysed in depth and compared. This provides the basis for a critical understanding of most of the programming languages.An historical viewpoint is also included, discussing the evolution of programming languages, and to provide a context for most of the constructs in use today. The book concludes with two chapters which introduce basic notions of syntax, semantics and computability, to provide a completely rounded picture of what constitutes a programming language.Trade ReviewFrom the reviews:“This undergraduate textbook on the principles of programming languages has many commendable aspects. It is grounded on sound principles of computing, with machines taking a central role. The authors use activation stacks and other machine-level abstractions to explain many complex ideas--such as scopes and evaluation mechanisms--in concrete terms. Furthermore, many aspects of C++, Java, and C# are covered and contrasted in substantial detail. … In short, what the text covers, it covers well … .” (Simon Thompson, ACM Computing Reviews, January, 2011)“This book provides a detailed description of the main principles behind the design and implementation of modern programming languages. … Primarily, the text is intended as a university textbook, but is also suitable for personal study of professionals who wish to deepen their knowledge of the mechanisms that lie behind the languages they use.” (Stefan Meyer, Zentralblatt MATH, Vol. 1204, 2011)Table of ContentsAbstract Machines.- How to Describe a Programming Language.- Foundations.- Names and The Environment.- Memory Management.- Control Structure.- Control Abstraction.- Structuring Data.- Data Abstraction.- The Object-Oriented Paradigm.- The Functional Paradigm.- The Logic Programming Paradigm.- A Short Historical Perspective.

    15 in stock

    £24.95

  • Springer London Ltd Applied Interval Analysis: With Examples in Parameter and State Estimation, Robust Control and Robotics

    15 in stock

    Book SynopsisAt the core of many engineering problems is the solution of sets of equa­ tions and inequalities, and the optimization of cost functions. Unfortunately, except in special cases, such as when a set of equations is linear in its un­ knowns or when a convex cost function has to be minimized under convex constraints, the results obtained by conventional numerical methods are only local and cannot be guaranteed. This means, for example, that the actual global minimum of a cost function may not be reached, or that some global minimizers of this cost function may escape detection. By contrast, interval analysis makes it possible to obtain guaranteed approximations of the set of all the actual solutions of the problem being considered. This, together with the lack of books presenting interval techniques in such a way that they could become part of any engineering numerical tool kit, motivated the writing of this book. The adventure started in 1991 with the preparation by Luc Jaulin of his PhD thesis, under Eric Walter's supervision. It continued with their joint supervision of Olivier Didrit's and Michel Kieffer's PhD theses. More than two years ago, when we presented our book project to Springer, we naively thought that redaction would be a simple matter, given what had already been achieved . . .Trade ReviewFrom the reviews:"Applied Interval Analysis is the right book at the right time to move computing with intervals into the mainstream of engineering, financial, and scientific computing."G. William Walster, Interval Technology Engineering Manager, Sun Microsystems and Member of the Editorial Board of Reliable ComputingTable of ContentsI. Introduction.- 1. Introduction.- 1.1 What Are the Key Concepts?.- 1.2 How Did the Story Start?.- 1.3 What About Complexity?.- 1.4 How is the Book Organized?.- II. Tools.- 2. Interval Analysis.- 2.1 Introduction.- 2.2 Operations on Sets.- 2.2.1 Purely set-theoretic operations.- 2.2.2 Extended operations.- 2.2.3 Properties of set operators.- 2.2.4 Wrappers.- 2.3 Interval Analysis.- 2.3.1 Intervals.- 2.3.2 Interval computation.- 2.3.3 Closed intervals.- 2.3.4 Interval vectors.- 2.3.5 Interval matrices.- 2.4 Inclusion Functions.- 2.4.1 Definitions.- 2.4.2 Natural inclusion functions.- 2.4.3 Centred inclusion functions.- 2.4.4 Mixed centred inclusion functions.- 2.4.5 Taylor inclusion functions.- 2.4.6 Comparison.- 2.5 Inclusion Tests.- 2.5.1 Interval Booleans.- 2.5.2 Tests.- 2.5.3 Inclusion tests for sets.- 2.6 Conclusions.- 3. Subpavings.- 3.1 Introduction.- 3.2 Set Topology.- 3.2.1 Distances between compact sets.- 3.2.2 Enclosure of compact sets between subpavings.- 3.3 Regular Subpavings.- 3.3.1 Pavings and subpavings.- 3.3.2 Representing a regular subpaving as a binary tree.- 3.3.3 Basic operations on regular subpavings.- 3.4 Implementation of Set Computation.- 3.4.1 Set inversion.- 3.4.2 Image evaluation.- 3.5 Conclusions.- 4. Contractors.- 4.1 Introduction.- 4.2 Basic Contractors.- 4.2.1 Finite subsolvers.- 4.2.2 Intervalization of finite subsolvers.- 4.2.3 Fixed-point methods.- 4.2.4 Forward—backward propagation.- 4.2.5 Linear programming approach.- 4.3 External Approximation.- 4.3.1 Principle.- 4.3.2 Preconditioning.- 4.3.3 Newton contractor.- 4.3.4 Parallel linearization.- 4.3.5 Using formal transformations.- 4.4 Collaboration Between Contractors.- 4.4.1 Principle.- 4.4.2 Contractors and inclusion functions.- 4.5 Contractors for Sets.- 4.5.1 Definitions.- 4.5.2 Sets defined by equality and inequality constraints.- 4.5.3 Improving contractors using local search.- 4.6 Conclusions.- 5. Solvers.- 5.1 Introduction.- 5.2 Solving Square Systems of Non-linear Equations.- 5.3 Characterizing Sets Defined by Inequalities.- 5.4 Interval Hull of a Set Defined by Inequalities.- 5.4.1 First approach.- 5.4.2 Second approach.- 5.5 Global Optimization.- 5.5.1 The Moore—Skelboe algorithm.- 5.5.2 Hansen’s algorithm.- 5.5.3 Using interval constraint propagation.- 5.6 Minimax Optimization.- 5.6.1 Unconstrained case.- 5.6.2 Constrained case.- 5.6.3 Dealing with quantifiers.- 5.7 Cost Contours.- 5.8 Conclusions.- III. Applications.- 6. Estimation.- 6.1 Introduction.- 6.2 Parameter Estimation Via Optimization.- 6.2.1 Least-square parameter estimation in compartmental modelling.- 6.2.2 Minimax parameter estimation.- 6.3 Parameter Bounding.- 6.3.1 Introduction.- 6.3.2 The values of the independent variables are known.- 6.3.3 Robustification against outliers.- 6.3.4 The values of the independent variables are uncertain.- 6.3.5 Computation of the interval hull of the posterior feasible set.- 6.4 State Bounding.- 6.4.1 Introduction.- 6.4.2 Bounding the initial state.- 6.4.3 Bounding all variables.- 6.4.4 Bounding by constraint propagation.- 6.5 Conclusions.- 7. Robust Control.- 7.1 Introduction.- 7.2 Stability of Deterministic Linear Systems.- 7.2.1 Characteristic polynomial.- 7.2.2 Routh criterion.- 7.2.3 Stability degree.- 7.3 Basic Tests for Robust Stability.- 7.3.1 Interval polynomials.- 7.3.2 Polytope polynomials.- 7.3.3 Image-set polynomials.- 7.3.4 Conclusion.- 7.4 Robust Stability Analysis.- 7.4.1 Stability domains.- 7.4.2 Stability degree.- 7.4.3 Value-set approach.- 7.4.4 Robust stability margins.- 7.4.5 Stability radius.- 7.5 Controller Design.- 7.6 Conclusions.- 8. Robotics.- 8.1 Introduction.- 8.2 Forward Kinematics Problem for Stewart—Gough Platforms.- 8.2.1 Stewart—Gough platforms.- 8.2.2 From the frame of the mobile plate to that of the base.- 8.2.3 Equations to be solved.- 8.2.4 Solution.- 8.3 Path Planning.- 8.3.1 Graph discretization of configuration space.- 8.3.2 Algorithms for finding a feasible path.- 8.3.3 Test case.- 8.4 Localization and Tracking of a Mobile Robot.- 8.4.1 Formulation of the static localization problem.- 8.4.2 Model of the measurement process.- 8.4.3 Set inversion.- 8.4.4 Dealing with outliers.- 8.4.5 Static localization example.- 8.4.6 Tracking.- 8.4.7 Example.- 8.5 Conclusions.- IV. Implementation.- 9. Automatic Differentiation.- 9.1 Introduction.- 9.2 Forward and Backward Differentiations.- 9.2.1 Forward differentiation.- 9.2.2 Backward differentiation.- 9.3 Differentiation of Algorithms.- 9.3.1 First assumption.- 9.3.2 Second assumption.- 9.3.3 Third assumption.- 9.4 Examples.- 9.4.1 Example 1.- 9.4.2 Example 2.- 9.5 Conclusions.- 10. Guaranteed Computation with Floating-point Numbers.- 10.1 Introduction.- 10.2 Floating-point Numbers and IEEE 754.- 10.2.1 Representation.- 10.2.2 Rounding.- 10.2.3 Special quantities.- 10.3 Intervals and IEEE 754.- 10.3.1 Machine intervals.- 10.3.2 Closed interval arithmetic.- 10.3.3 Handling elementary functions.- 10.3.4 Improvements.- 10.4 Interval Resources.- 10.5 Conclusions.- 11. Do It Yourself.- 11.1 Introduction.- 11.2 Notions of C++.- 11.2.1 Program structure.- 11.2.2 Standard types.- 11.2.3 Pointers.- 11.2.4 Passing parameters to a function.- 11.3 INTERVAL Class.- 11.3.1 Constructors and destructor.- 11.3.2 Other member functions.- 11.3.3 Mathematical functions.- 11.4 Intervals with PROFIL/BIAS.- 11.4.1 BIAS.- 11.4.2 PROFIL.- 11.4.3 Getting started.- 11.5 Exercises on Intervals.- 11.6 Interval Vectors.- 11.6.1 INTERVAL_VECTOR class.- 11.6.2 Constructors, assignment and function call operators.- 11.6.3 Friend functions.- 11.6.4 Utilities.- 11.7 Vectors with PROFIL/BIAS.- 11.8 Exercises on Interval Vectors.- 11.9 Interval Matrices.- 11.10 Matrices with PROFIL/BIAS.- 11.11 Exercises on Interval Matrices.- 11.12 Regular Subpavings with PROFIL/BIAS.- 11.12.1 NODE class.- 11.12.2 Set inversion with subpavings.- 11.12.3 Image evaluation with subpavings.- 11.12.4 System simulation and state estimation with subpavings.- 11.13 Error Handling.- 11.13.1 Using exit.- 11.13.2 Exception handling.- 11.13.3 Mathematical errors.- References.

    15 in stock

    £85.49

  • ISTE Ltd and John Wiley & Sons Inc From MDD Concepts to Experiments and

    Out of stock

    Book SynopsisIn the context of Distributed and Real-time Embedded Systems (DRES), system developers are faced with reducing system development cost and time while developing correct (relating to safe and QoS properties) and increasingly complex systems. To take up this challenge, Model Driven Development (MDD) advocates the intensive use of models and model transformations on several levels of abstraction. This book includes contributions from academic and professional experts on a range of topics related to MDD practices, methods and emerging technologies. After introducing general concepts about modeling and how to implement model transformations, two presentations provide an overview of the MARTE profile. Coverage is then given to the most common aspects of MDD for DRES: structuring architectures using components, designing hardware architecture, evaluation and validation through tests and performance analysis. Finally, guidance is given as to how and why MDD should be used by presenting a tool to support MDD and describing an industrial application of MDD concepts.Table of ContentsIntroduction. Chapter 1. On Metamodels and Language Engineering (Pierre-Alain Muller). 1.1 Introduction. 1.2 Modeling Abstract Syntax. 1.3 Modeling Operational Semantics. 1.4 Modeling Concrete Syntax. 1.5 Related Works. 1.6 References. Chapter 2. Using Directives to Implement Model Transformations (Devon Simmonds et al). 2.1 Introduction. 2.2 Model Transformation Using Embedded Directives. 2.3 Transformations Directives. 2.4 Transformation Schemas. 2.5 Class Model Transformation - Illustration Example. 2.6 Discussion and Conclusion. 2.7 References. Chapter 3. Rationale of the UML Profile for Marte (Sébastien Gérard and Huascar Espinoza). 3.1 Introduction. 3.2 Outlines of Marte. 3.3 Profile Architecture. 3.4 References. Chapter 4. From UML to Performance Analysis Models by Abstraction-raising Transformation (Dorina Petriu and Antonino Sabetta). 4.1 Introduction. 4.2 Conceptual Approach for Abstracting-raising Transformation. 4.3 Two-step Abstracting-raising Transformation. 4.4 Two-step Abstration-raising Transformation. 4.5 Application of the Proposed Transformation. 4.6 Conclusion. 4.7 References. Chapter 5. Component-Based Software Engineering for Embedded Systems (Ivica Crnkovic). 5.1 Embedded Systems. 5.2 Specfic Requirement and Aspects of Embedded Systems. 5.3 Component-based Basic Concepts for Embedded Systems. 5.4 Specfic Demands on Component-based Software Engineering. 5.5 State of the CBSE Practice and Experience for Embedded Systems. 5.6 Work on Standardization. 5.7 The Needs and Priorities in Research. 5.8 References. Chapter 6. Model Driven Engineering for System-on-Chip Design (Pierre Boulet et al). 6.1 Introduction. 6.2 SoC Design Challenges and Model Driven Engineering. 6.3 UML Profiles for SoC Design. 6.4 MDE Approach to SoC Design. 6.5 Gaspard2 Development Environment. 6.6 Conclusion. 6.7 References. Chapter 7. Schedulability Analysis and MDD (Samuel Rouxel et al). 7.1 Introduction. 7.2 Related Work. 7.3 Global Approach. 7.4 UML Modeling. 7.5 Real Time Analysis Tool (RTDT). 7.6 UMTS FDD Case Study. 7.7 Conclusion. 7.8 Acknowledgements. 7.9 References. Chapter 8. Model Driven Testing of Time Sensitive Distributed Systems (Borislav Gajanovic, Hans Grönniger and Bernhard Rumpe). 8.1 Model Driven Testing. 8.2 Asynchronous Communication in Distributed Systems. 8.3 The Alternative Bit Protocol. 8.4 Strategies for Testing Distributed, Asynchronously Communicating Systems. 8.5 Implementing Tests in Haskell. 8.6 Discussion of Results. 8.7 References. Chapter 9. Model Management for Formal Validation (Joël Champeau et al). 9.1 Introduction. 9.2 System Modeling Framework. 9.3 Building Models for Formal Verification. 9.4 Conclusion and Future Work. 9.5 References. Chapter 10. The Design of Space Systems (David Chemouil). 10.1 Introduction. 10.2 Space Systems. 10.3 Design. 10.4 Modelling. 10.5 Conclusion. 10.6 References. Chapter 11. TOPCASED: An Open Source Development Environment for Embbeded Systems (Patrick Farail et al). 11.1 Introduction. 11.2 Requirements and TOPCASED Architecture. 11.3 Model Driven Engineering and Meta-modeling. 11.4 Generating Model Editors. 11.5 Acknowledgment. 11.6 References. 11.7 Glossary. Chapter 12. Facing Industrial Challenges: A Return on an Experiment on Modeldriven Engineering (Jean-Luc Voirin). 12.1 Introduction. 12.2 A Quick Overview of Our Understanding of MDE. 12.3 Expected Benefits of Model-driven Engineering. 12.4 Applying MDE Concepts in an Industrial Context. 12.5 Return of Experiment and Findings on MDE Use. 12.6 Conclusion: So What About MDE? Index of Authors.

    Out of stock

    £125.06

  • Simple Talk Publishing Under the Hood of .NET Memory Management

    15 in stock

    15 in stock

    £18.99

  • HP HAMILTON LIMITED Software Engineering

    Out of stock

    Out of stock

    £27.98

  • 15 in stock

    £24.69

  • XML Press XProc 3.0 Programmer Reference

    15 in stock

    15 in stock

    £29.50

  • Springer Nature Switzerland AG Software Technologies: Applications and

    15 in stock

    Book SynopsisThis book contains the thoroughly refereed technical papers presented in eight workshops collocated with the International Conference on Software Technologies: Applications and Foundations, STAF 2018, held in Toulouse, France, in June 2018. The 65 full papers presented were carefully reviewed and selected from 120 submissions. The events whose papers are included in this volume are: CoSim-CPS 2018: 2nd International Workshop on Formal Co-Simulation of Cyber-Physical Systems DataMod 2018: 7th International Symposium From Data to Models and Back FMIS 2018: 7th International Workshop on Formal Methods for Interactive Systems FOCLASA 2018: 16th International Workshop on Foundations of Coordination Languages and Self-adaptative Systems GCM 2018: 9th International Workshop on Graph Computation Models MDE@DeRun 2018: 1st International Workshop on Model-Driven Engineering for Design-Runtime Interaction in Complex Systems MSE 2018: 3rd International Workshop on Microservices: Science and Engineering SecureMDE 2018: 1st International Workshop on Security for and by Model-Driven Engineering Table of ContentsFormal Co-Simulation of Cyber-Physical Systems (CoSim-CPS).- From Data to Models and Back (DataMod).- Formal Methods for Interactive Systems (FMIS).- Foundations of Coordination Languages and Self-adaptative Systems (FOCLASA).- Graph Computation Models (GCM).- Model-Driven Engineering for Design-Runtime Interaction in Complex Systems (MDE@DeRun).- Microservices: Science and Engineering (MSE).- Security for and by Model-Driven Engineering (MDE).

    15 in stock

    £44.99

  • Springer Nature Switzerland AG Agile Processes in Software Engineering and Extreme Programming – Workshops: XP 2019 Workshops, Montréal, QC, Canada, May 21–25, 2019, Proceedings

    15 in stock

    Book SynopsisThis open access book constitutes the research workshops, doctoral symposium and panel summaries presented at the 20th International Conference on Agile Software Development, XP 2019, held in Montreal, QC, Canada, in May 2019.XP is the premier agile software development conference combining research and practice. It is a hybrid forum where agile researchers, academics, practitioners, thought leaders, coaches, and trainers get together to present and discuss their most recent innovations, research results, experiences, concerns, challenges, and trends. Following this history, for both researchers and seasoned practitioners XP 2019 provided an informal environment to network, share, and discover trends in Agile for the next 20 years. Research papers and talks submissions were invited for the three XP 2019 research workshops, namely, agile transformation, autonomous teams, and large scale agile. This book includes 15 related papers. In addition, a summary for each of the four panels at XP 2019 is included. The panels were on security and privacy; the impact of the agile manifesto on culture, education, and software practices; business agility – agile’s next frontier; and Agile – the next 20 years.Table of ContentsFirst International Workshop on Agile Transformation. -Agile Transformation: A Summary and Research Agenda.- 2nd International Workshop on Autonomous Teams.- Trends and updated Research Agenda for Autonomous agile teams: A Summary of the 2nd International Workshop at XP2019.- Spotify Tailoring for Promoting Effectiveness in Cross-Functional Autonomous Squads.- Voices From the Teams - Impacts on Autonomy in Large-Scale Agile Software Development Settings.- Exploring the challenges of integrating data science roles in agile autonomous teams.- The Influence of Culture and Structure on Autonomous Teams in Established Companies.- Agile autonomous teams in complex organizations.- Earn Your Wings: A Novel Approach to Deployment Governance.- 7th International Workshop on Large-Scale Agile.- Future Trends in Agile at Scale: A Summary of the 7th International Workshop on Large-Scale Agile Development.- SAFe Adoptions in Finland: A Survey Research.- Comparing Scaling Agile Frameworks Based on Underlying Practices.- Finnish Large-Scale Agile Transformations: A Survey Study.- Changes Over Time in a Planned Inter-Team Coordination Routine.- Technical-, Social- and Process Debt in Large-Scale Agile: an exploratory case-study.- Doctoral Symposium.- Coordination in Large-Scale Agile Software Development.- Panels.- Security and Privacy.- Agile Manifesto – Impacts on Culture, Education, and Software Practices.- Business Agility.- Agile: The Next 20 Years.

    15 in stock

    £44.99

  • Springer Nature Switzerland AG Software Engineering in the Era of Cloud Computing

    15 in stock

    Book SynopsisThis book focuses on the development and implementation of cloud-based, complex software that allows parallelism, fast processing, and real-time connectivity. Software engineering (SE) is the design, development, testing, and implementation of software applications, and this discipline is as well developed as the practice is well established whereas the Cloud Software Engineering (CSE) is the design, development, testing, and continuous delivery of service-oriented software systems and applications (Software as a Service Paradigm). However, with the emergence of the highly attractive cloud computing (CC) paradigm, the tools and techniques for SE are changing. CC provides the latest software development environments and the necessary platforms relatively easily and inexpensively. It also allows the provision of software applications equally easily and on a pay-as-you-go basis. Business requirements for the use of software are also changing and there is a need for applications in big data analytics, parallel computing, AI, natural language processing, and biometrics, etc. These require huge amounts of computing power and sophisticated data management mechanisms, as well as device connectivity for Internet of Things (IoT) environments. In terms of hardware, software, communication, and storage, CC is highly attractive for developing complex software that is rapidly becoming essential for all sectors of life, including commerce, health, education, and transportation. The book fills a gap in the SE literature by providing scientific contributions from researchers and practitioners, focusing on frameworks, methodologies, applications, benefits and inherent challenges/barriers to engineering software using the CC paradigm.Table of ContentsPart 1 - Cloud Requirements Engineering and Domain Modelling: 1. Requirement Engineering Framework for Service and Cloud Computing (REF-SCC).- 2. Towards an Effective Requirement Engineering Approach for Cloud Applications.- 3. Requirements Engineering for Large-Scale Big Data Applications.- 4. Migrating from Monoliths to Cloud-Based Microservices: A Banking Industry Example.- 5. Cloud Enabled Domain Based Software Development.- 6. Security Challenges in Software Engineering for the Cloud: A Systematic Review. Part 2 - Cloud Design and Software Engineering Analytics with Machine Learning Approaches : 7. Software Engineering Framework for Software Defect Management Using Machine Learning Techniques with Azure.- 8. Sentiment Analysis of Twitter Data Through Machine Learning Techniques.- 9. Connection Handler: A Design Pattern for Recovery from Connection Crashes. Part 3 : Cloud Testing and Software Process Improvement as a Service : 10. A Modern Perspective on Cloud Testing Ecosystems.- 11. Towards Green Software Testing in Agile and DevOps using Cloud Virtualization for Environmental Protection.- 12. Machine Learning as a Service for Software Process Improvement.- 13. Comparison of Data Mining Techniques in the Cloud for Software Engineering.

    15 in stock

    £113.99

  • Springer Nature Switzerland AG Graph Transformation for Software Engineers: With

    15 in stock

    Book SynopsisThis book is an introduction to graph transformation as a foundation to model-based software engineering at the level of both individual systems and domain-specific modelling languages.The first part of the book presents the fundamentals in a precise, yet largely informal way. Besides serving as prerequisite for describing the applications in the second part, it also provides a comprehensive and systematic survey of the concepts, notations and techniques of graph transformation. The second part presents and discusses a range of applications to both model-based software engineering and domain-specific language engineering. The variety of these applications demonstrates how broadly graphs and graph transformations can be used to model, analyse and implement complex software systems and languages. This is the first textbook that explains the most commonly used concepts, notations, techniques and applications of graph transformation without focusing on one particular mathematical representation or implementation approach. Emphasising the research and engineering methodologies used, it will be a valuable resource for graduate students, practitioners and researchers in software engineering, foundations of programming and formal methods.Table of ContentsPart I, Graph Transformation.- Graphs for Modeling and Specification.- Graph Transformation Concepts.- Beyond Individual Rules: Usage Scenarios and Control Structures.- Analysis and Improvement of Graph Transformation Systems.- Part II, Graph Transformation in Software Engineering.- Detecting Inconsistent Requirements in a Use Case-Driven Approach.- Service Specification and Matching.- Model-Based Testing.- Reverse Engineering: Inferring Visual Contracts from Java Programs.- Stochastic Analysis of Dynamic Software Architectures.- Advanced Modeling Language Definition: Integrating Meta-modeling with Graph Transformation.- Improving Models and Understanding Model Changes.- Translating and Synchronizing Models.

    15 in stock

    £75.99

  • Springer Nature Switzerland AG Service-Oriented and Cloud Computing: 8th IFIP WG 2.14 European Conference, ESOCC 2020, Heraklion, Crete, Greece, September 28–30, 2020, Proceedings

    15 in stock

    Book SynopsisThis book constitutes the refereed proceedings of the 8th IFIP WG 2.14 European Conference on Service-Oriented and Cloud Computing, ESOCC 2020, held in Heraklion, Crete, Greece, in September 2020. The 6 full and 8 short papers presented in this volume were carefully reviewed and selected from 20 submissions. The main event mapped to the main research track which focused on the presentation of cutting-edge research in both the service-oriented and cloud computing areas. In conjunction, an industrial track was also held attempting to bring together academia and industry through showcasing the application of service-oriented and cloud computing research, especially in the form of case studies, in the industry.The chapters ‘Identification of Comparison Key Elements and their Relationships for Cloud Service Selection’ and ‘Technology-Agnostic Declarative Deployment Automation of Cloud Applications’ are available open access under a Creative Commons Attribution 4.0 International License via link.springer.com.Table of ContentsFormal Methods.- Testing conformance in multi-component enterprise application management.- Formalizing Event-Driven Behavior of Serverless Applications.- Probabilistic Verification of Outsourced Computation Based on Novel Reversible PUFs.- Cloud Service and Platform Selection.- Multiplayer game backends: A Comparison of commodity cloud-based approaches.- Are Cloud Platforms Ready for Multi-Cloud?.- Identification of Comparison Key Elements and their Relationships for Cloud Service Selection.- Deployment and Workflows.- Deployable Self-Contained Workflow Models.- Technology-Agnostic Declarative Deployment Automation of Cloud Applications.- Blockchain-Based Healthcare Workflows in Federated Hospital Clouds.- Monitoring.- Monitoring Behavioral Compliance with Architectural Patterns based on Complex Event Processing.- Towards Real-Time Monitoring of Data Centers using Edge Computing.- Modeling Users' Performance: Predictive Analytics in an IoT Cloud Monitoring System.- Data Distribution and Analytics.- Multi-Source Distributed System Data for AI-powered Analytics.- Blockchain- and IPFS-based Data Distribution for the Internet of Things.

    15 in stock

    £44.99

  • Springer Nature Switzerland AG High Performance Computing: 35th International Conference, ISC High Performance 2020, Frankfurt/Main, Germany, June 22–25, 2020, Proceedings

    15 in stock

    Book SynopsisThis book constitutes the refereed proceedings of the 35th International Conference on High Performance Computing, ISC High Performance 2020, held in Frankfurt/Main, Germany, in June 2020.*The 27 revised full papers presented were carefully reviewed and selected from 87 submissions. The papers cover a broad range of topics such as architectures, networks & infrastructure; artificial intelligence and machine learning; data, storage & visualization; emerging technologies; HPC algorithms; HPC applications; performance modeling & measurement; programming models & systems software. *The conference was held virtually due to the COVID-19 pandemic.Chapters "Scalable Hierarchical Aggregation and Reduction Protocol (SHARP) Streaming-Aggregation Hardware Design and Evaluation", "Solving Acoustic Boundary Integral Equations Using High Performance Tile Low-Rank LU Factorization", "Scaling Genomics Data Processing with Memory-Driven Computing to Accelerate Computational Biology", "Footprint-Aware Power Capping for Hybrid Memory Based Systems", and "Pattern-Aware Staging for Hybrid Memory Systems" are available open access under a Creative Commons Attribution 4.0 International License via link.springer.com.Table of ContentsArchitectures, Networks & Infrastructure.- Artificial Intelligence and Machine Learning.- Data, Storage & Visualization.- Emerging Technologies.- HPC Algorithms.- HPC Applications.- Performance Modeling & Measurement.- Programming Models & Systems Software.

    15 in stock

    £66.49

  • Springer Nature Switzerland AG Software Quality: Future Perspectives on Software Engineering Quality: 13th International Conference, SWQD 2021, Vienna, Austria, January 19–21, 2021, Proceedings

    15 in stock

    Book SynopsisThis book constitutes the refereed proceedings of the 13th Software Quality Days Conference, SWQD 2021, which was planned to be held in Vienna, Austria, during January 19–21, 2021. Due to the COVID-19 pandemic, the conference was cancelled and will be merged with SWQD 2022. The Software Quality Days (SWQD) conference started in 2009 and has grown to the biggest conference on software quality in Europe with a strong community. The program of the SWQD conference is designed to encompass a stimulating mixture of practical presentations and new research topics in scientific presentations. The guiding conference topic of the SWQD 2021 is “Future Perspectives on Software Engineering Quality”. The 3 full papers and 5 short papers presented in this volume were carefully reviewed and selected from 13 submissions. The volume also contains 2 invited talks and one introductory paper for an interactive session. The contributions were organized in topical sections named: automation in software engineering; quality assurance for AI-based systems; machine learning applications; industry-academia collaboration; and experimentation in software engineering. Table of ContentsAutomation in Software Engineering.- Assisted Requirements Engineering - What will Remain in the Hands of the Future Requirements Engineer (Keynote).- Testing Autogenerated OPC UA NodeSet Models for Product Variants in Industry.- Quality Assurance for AI-based Systems.- Quality Assurance for AI-based Systems: Overview and Challenges (Introduction to Interactive Session).- Software Quality for AI: Where we are now.- Hidden feedback loops in machine learning systems: a simulation model and preliminary results.- The AIQ Meta-Testbed: Pragmatically Bridging Academic AI Testing and Industrial Q Needs.- Machine Learning Applications.- Improving Quality of Code Review Datasets - Token-based Feature Extraction Method.- Is Machine Learning Software Just Software: A Maintainability View.- Industry-Academia Collaboration.- Solving Problems or Enabling Problem-Solving? From Purity in Empirical Software Engineering to Effective Co-Production (Keynote).- Experimentation in Software Engineering.- An Empirical Study of User Story Quality and its Impact on Open Source Project Performance.- An Approach for Platform-Independent Online Controlled Experimentation.

    15 in stock

    £54.99

  • Springer Nature Switzerland AG Information Systems Reengineering, Integration

    15 in stock

    Book SynopsisDatabase technology is an important subject in Computer Science. Every large company and nation needs a database to store information. The technology has evolved from file systems in the 60’s, to Hierarchical and Network databases in the 70’s, to relational databases in the 80’s, object-oriented databases in the 90’s, and to XML documents and NoSQL today. As a result, there is a need to reengineer and update old databases into new databases. This book presents solutions for this task.In this fourth edition, Chapter 9 - Heterogeneous Database Connectivity (HDBC) offers a database gateway platform for companies to communicate with each other not only with their data, but also via their database. The ability of sharing a database can contribute to the applications of Big Data and surveys for decision support systems. The HDBC gateway solution collects input from the database, transfers the data into its middleware storage, converts it into a common data format such as XML documents, and then distributes them to the users. HDBC transforms the common data into the target database to meet the user’s requirements, acting like a voltage transformer hub. The voltage transformer converts the voltage to a voltage required by the users. Similarly, HDBC transforms the database to the target database required by the users.This book covers reengineering for data conversion, integration for combining databases and merging databases and expert system rules, normalization for eliminating duplicate data from the database, and above all, HDBC connects all legacy databases to one target database for the users.The authors provide a forum for readers to ask questions and the answers are given by the authors and the other readers on the Internet. Table of ContentsPreface.- Information Systems Reengineering, Integration and Normalization.- Database and Expert System Technology.- Schema Transition.- Data Conversion.- Database Program Translation.- Schema Integration.- Database and Expert-Systems Integration.- Data Normalization.- Heterogeneous Database Connectivity.- Conclusion.

    15 in stock

    £48.99

  • Springer Nature Switzerland AG Animated Problem Solving: An Introduction to Program Design Using Video Game Development

    15 in stock

    Book SynopsisThis textbook is about systematic problem solving and systematic reasoning using type-driven design. There are two problem solving techniques that are emphasized throughout the book: divide and conquer and iterative refinement. Divide and conquer is the process by which a large problem is broken into two or more smaller problems that are easier to solve and then the solutions for the smaller pieces are combined to create an answer to the problem. Iterative refinement is the process by which a solution to a problem is gradually made better–like the drafts of an essay. Mastering these techniques are essential to becoming a good problem solver and programmer. The book is divided in five parts. Part I focuses on the basics. It starts with how to write expressions and subsequently leads to decision making and functions as the basis for problem solving. Part II then introduces compound data of finite size, while Part III covers compound data of arbitrary size like e.g. lists, intervals, natural numbers, and binary trees. It also introduces structural recursion, a powerful data-processing strategy that uses divide and conquer to process data whose size is not fixed. Next, Part IV delves into abstraction and shows how to eliminate repetitions in solutions to problems. It also introduces generic programming which is abstraction over the type of data processed. This leads to the realization that functions are data and, perhaps more surprising, that data are functions, which in turn naturally leads to object-oriented programming. Part V introduces distributed programming, i.e., using multiple computers to solve a problem. This book promises that by the end of it readers will have designed and implemented a multiplayer video game that they can play with their friends over the internet. To achieve this, however, there is a lot about problem solving and programming that must be learned first. The game is developed using iterative refinement. The reader learns step-by-step about programming and how to apply new knowledge to develop increasingly better versions of the video game. This way, readers practice modern trends that are likely to be common throughout a professional career and beyond. Table of ContentsPart I: The Basics of Problem Solving with a Computer.- 1. The Science of Problem Solving.- 2. Expressions and Data Types.- 3. The Nature of Functions.- 4. Aliens Attack Version 0.- 5. Making Decisions.- 6. Aliens Attack Version 1.- Part II: Compound Data of Finite Size.- 7. Structures.- 8. Defining Structures.- 9. Aliens Attack Version 2.-10. Structures and Variety.- 1.1 Aliens Attack Version 3.- Part III: Compound Data of Arbitrary Size.- 12. Lists.- 13. List Processing.- 14. Natural Numbers.- 15. Interval Processing.- 16. Aliens Attack Version 4.- 17. Binary Trees.- 18.- Mutually Recursive Data.- 19.- Processing Multiple Inputs of Arbitrary Size.- Part IV: Abstraction.- 20. Functional Abstraction.- 21. Encapsulation.- 22. Lambda Expressions.- 23. Aliens Attack Version 5.- 24. For-Loops and Pattern Matching.- 25. Interfaces and Objects.- Part V: Distributed Programming.- 26. Introduction to Distributed Programming.- 27. Aliens Attack Version 6.- 28. Aliens Attack Version 7.- 29. Aliens Attack Version 8.- Part VI: Epilogue.- 30. Advice for Future Steps.

    15 in stock

    £24.99

  • Springer Nature Switzerland AG Advances in Practical Applications of Agents, Multi-Agent Systems, and Social Good. The PAAMS Collection: 19th International Conference, PAAMS 2021, Salamanca, Spain, October 6–8, 2021, Proceedings

    15 in stock

    Book SynopsisThis book constitutes the proceedings of the 19th International Conference on Practical Applications of Agents and Multi-Agent Systems, PAAMS 2021, held in Salamanca, Spain, in October 2021. The 27 regular and 13 short papers presented in this volume were carefully reviewed and selected from 56 submissions. They deal with the application and validation of agent-based models, methods, and technologies in a number of key applications areas, including: advanced models and learning, agent-based programming, decision-making, education and social interactions, formal and theoretic models, health and safety, mobility and the city, swarms and task allocation.

    15 in stock

    £64.99

  • Springer Nature Switzerland AG Automated Technology for Verification and Analysis: 19th International Symposium, ATVA 2021, Gold Coast, QLD, Australia, October 18–22, 2021, Proceedings

    15 in stock

    Book SynopsisThis book constitutes the refereed proceedings of the 19th International Symposium on Automated Technology for Verification and Analysis, ATVA 2021, held in Gold Coast, Australia in October 2021. The symposium is dedicated to promoting research in theoretical and practical aspects of automated analysis, verification and synthesis by providing an international venue for the researchers to present new results. The 19 regular papers presented together with 4 tool papers and 1 invited paper were carefully reviewed and selected from 75 submissions. The papers are divided into the following topical sub-headings: Automata Theory; Machine learning for Formal Methods; Theorem Proving and Tools; Model Checking; Probabilistic Analysis; Software and Hardware Verification; System Synthesis and Approximation; and Verification of Machine Learning.Table of ContentsInvited Paper.- Linear Temporal Logic ­ – From Infinite to Finite Horizon.- Automata Theory.- Determinization and Limit-determinization of Emerson-Lei automata.- Automatic discovery of fair paths in infinite-state transition systems.- Certifying DFA Bounds for Recognition and Separation.- Machine Learning for Formal Methods.- AALpy: An Active Automata Learning Library.- Learning Linear Temporal Properties from Noisy Data: A MaxSAT-based Approach.- Mining Interpretable Spatio-temporal Logic Properties for Spatially Distributed Systems.- Theorem Proving and Tools.- A Formal Semantics of the GraalVM Intermediate Representation.- A Verified Decision Procedure for Orders in Isabelle/HOL.- PJBDD: A BDD Library for Java and Multi-Threading.- Model Checking.- Live Synthesis.- Faster Pushdown Reachability Analysis with Applications in Network Verification.- Verifying Verified Code.- Probabilistic Analysis.- Probabilistic causes in Markov Chains.- TEMPEST - Synthesis Tool for Reactive Systems and Shields in Probabilistic Environments.- AQUA: Automated Quantized Inference for Probabilistic Programs.- Software and Hardware Verification.- Proving SIFA Protection of Masked Redundant Circuits.- Verification by Gambling on Program Slices.- Runtime Enforcement of Hyperproperties.- System Synthesis and Approximation.- Compositional Synthesis of Modular Systems.- Event-B Refinement for Continuous Behaviours Approximation.- Incorporating Monitors in Reactive Synthesis without Paying the Price.- Verification of Machine Learning.- pyNever: a Framework for Learning and Verification of Neural Networks.- Property-Directed Verification and Robustness Certification of Recurrent Neural Networks.

    15 in stock

    £64.99

  • Springer Nature Switzerland AG Fundamentals of Software Engineering: 9th International Conference, FSEN 2021, Virtual Event, May 19–21, 2021, Revised Selected Papers

    15 in stock

    Book SynopsisThis book constitutes the thoroughly refereed post-conference proceedings of the 9th International Conference on Fundamentals of Software Engineering, FSEN 2021, held virtually and hosted by IPM in May 2021.The 12 full papers and 4 short papers presented in this volume were carefully reviewed and selected from 38 submissions. The topics of interest in FSEN span over all aspects of formal methods, especially those related to advancing the application of formal methods in the software industry and promoting their integration with practical engineering techniques. The papers are organized in topical sections on coordination, logic, networks, parallel computation, and testing.Table of ContentsCoordination.- Protocol Scheduling.- Automated Replication of Tuple Spaces via Static Analysis.- Incremental Refinement of Goal Models with Contracts.- Logic.- Proof Calculi for Epistemic Logics with Structured Knowledge.- Introducing Intervalar differential dynamic logic.- A Program Logic for Fresh Name Generation.- Event-Driven Temporal Logic Pattern for Control Software Requirements Specification.- Extending OCL with map and function types.- Networks.- Deadlock in packet switching networks.- Runtime Monitoring Processes Across Blockchains.- Solving Systems of Bilinear Equations for Transition Rate Reconstruction.- Parallel Computation.- Term Rewriting on GPUs.- Promise Plus: Flexible Synchronization for Parallel Computations on Arrays.- Testing.- Towards Test Case Generation for Industrial Software Systems Based on Functional Specifications.- Compressing Automatically Generated Unit Test Suites through Test Parameterization.- Systematic Extraction of Test Cases from Object-oriented Programs.

    15 in stock

    £59.99

  • Springer Nature Switzerland AG Model Checking, Synthesis, and Learning: Essays Dedicated to Bengt Jonsson on The Occasion of His 60th Birthday

    15 in stock

    Book SynopsisThis Festschrift, dedicated to Bengt Jonsson on the occasion of his 60th birthday, contains papers written by many of his friends and collaborators.Bengt has made major contributions covering a wide range of topics including verification and learning. His works on verification, in finite state systems, learning, testing, probabilistic systems, timed systems, and distributed systems reflect both the diversity and the depth of his research. Besides being an excellent scientist, Bengt is also a leader who has greatly influenced the careers of both his students and his colleagues. His main focus throughout his career has been in the area of formal methods, and the research papers dedicated to him in this volume address related topics, particularly related to model checking, temporal logic, and automata learning.Table of ContentsModel Checking, Synthesis, and Learning.- From Linear Temporal Logics to Büchi Automata: The Early and Simple Principle.- Cause-Effect Reaction Latency In Real-Time Systems.- Quantitative Analysis of Interval Markov Chains.- Regular Model Checking: Evolution and Perspectives.- Regular Model Checking Revisited.- High-Level Representation of Benchmark Families for Petri Games.- Towards Engineering Digital Twinsby Active Behaviour Mining.- Never-Stop Context-Free Learning.- A Taxonomy and Reductions for Common Register Automata Formalisms.

    15 in stock

    £54.99

© 2026 Book Curl

    • American Express
    • Apple Pay
    • Diners Club
    • Discover
    • Google Pay
    • Maestro
    • Mastercard
    • PayPal
    • Shop Pay
    • Union Pay
    • Visa

    Login

    Forgot your password?

    Don't have an account yet?
    Create account