![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Software engineering
Written by two very experienced instructors, with more than thirty years of teaching experience between them; Presents material that is grounded in practical applications that are representative of the problems researchers encounter in real life; Teaches readers the core features of modern JavaScript; Covers programming with callbacks and promises; Describes how to build data services and data visualization;
In areas such as military, security, aerospace, and disaster management, the need for performance optimization and interoperability among heterogeneous systems is increasingly important. Model-driven engineering, a paradigm in which the model becomes the actual software, offers a promising approach toward systems of systems (SoS) engineering. However, model-driven engineering has largely been unachieved in complex dynamical systems and netcentric SoS, partly because modeling and simulation (M&S) frameworks are stove-piped and not designed for SoS composability. Addressing this gap, Netcentric System of Systems Engineering with DEVS Unified Process presents a methodology for realizing the model-driven engineering vision and netcentric SoS using DEVS Unified Process (DUNIP). The authors draw on their experience with Discrete Event Systems Specification (DEVS) formalism, System Entity Structure (SES) theory, and applying model-driven engineering in the context of a netcentric SoS. They describe formal model-driven engineering methods for netcentric M&S using standards-based approaches to develop and test complex dynamic models with DUNIP. The book is organized into five sections: Section I introduces undergraduate students and novices to the world of DEVS. It covers systems and SoS M&S as well as DEVS formalism, software, modeling language, and DUNIP. It also assesses DUNIP with the requirements of the Department of Defense's (DoD) Open Unified Technical Framework (OpenUTF) for netcentric Test and Evaluation (T&E). Section II delves into M&S-based systems engineering for graduate students, advanced practitioners, and industry professionals. It provides methodologies to apply M&S principles to SoS design and reviews the development of executable architectures based on a framework such as the Department of Defense Architecture Framework (DoDAF). It also describes an approach for building netcentric knowledge-based contingency-driven systems. Section III guides graduate students, advanced DEVS users, and industry professionals who are interested in building DEVS virtual machines and netcentric SoS. It discusses modeling standardization, the deployment of models and simulators in a netcentric environment, event-driven architectures, and more. Section IV explores real-world case studies that realize many of the concepts defined in the previous chapters. Section V outlines the next steps and looks at how the modeling of netcentric complex adaptive systems can be attempted using DEVS concepts. It touches on the boundaries of DEVS formalism and the future work needed to utilize advanced concepts like weak and strong emergence, self-organization, scale-free systems, run-time modularity, and event interoperability. This groundbreaking work details how DUNIP offers a well-structured, platform-independent methodology for the modeling and simulation of netcentric system of systems.
"Helps explain some of the knowledge gaps between enthusiastic new graduates and grouchy old gray beards like myself." - Joe Ivans Practical techniques for writing code that is robust, reliable, and easy for team members to understand and adapt. Good code or bad code? The difference often comes down to how you apply the conventions, style guides, and other established practices of the software development community. In Good Code, Bad Code you'll learn how to boost your effectiveness and productivity with code development insights normally only learned through years of experience, careful mentorship, and hundreds of code reviews. In Good Code, Bad Code you'll learn how to: - Think about code like an effective software engineer - Write functions that read like a well-structured sentence - Ensure code is reliable and bug free - Effectively unit test code - Identify code that can cause problems and improve it - Write code that is reusable and adaptable to new requirements - Improve your medium and long-term productivity - Save you and your team's time about the technology Coding in a development team requires very different skills to working on personal projects. Successful software engineers need to ensure that their code is reusable, maintainable, and easy for others to understand and adapt. about the book Good Code, Bad Code is a shortcut guide to writing high-quality code. Your mentor is Google veteran Tom Long, who lays out lessons and mindsets that will take your code from "junior developer" to "senior engineer." This instantly-useful book distils the principles of professional coding into one comprehensive and hands-on beginner's guide. You'll start with a jargon-free primer to coding fundamentals that teaches you to think about abstractions, consider your fellow engineers, and write code that can recover from errors. Next, you'll dive into specific techniques and practices. You'll run through common coding practices to learn when to apply the right technique to your problem-and which might be best avoided! All practices are illustrated with annotated code samples written in an instantly recognizable pseudocode that you can relate to your favourite object-oriented language. By the time you're done, you'll be writing the kind of readable, reusable, and testable code that's the mark of a true software professional. about the reader For coders looking to improve their experience in professional software development. about the author Tom Long is a software engineer at Google. He works as a tech lead, mentoring and teaching professional coding practices to new graduates and beginner software engineers.
OCUP 2 Certification Guide: Preparing for the OMG Certified UML 2.5 Professional 2 Foundation Exam both teaches UML (R) 2.5 and prepares candidates to become certified. UML (R) (Unified Modeling Language) is the most popular graphical language used by software analysts, designers, and developers to model, visualize, communicate, test, and document systems under development. UML (R) 2.5 has recently been released, and with it a new certification program for practitioners to enhance their current or future career opportunities. There are three exam levels: Foundation, Intermediate, and Advanced. The exam covered in this book, Foundation, is a prerequisite for the higher levels. Author Michael Jesse Chonoles is a lead participant in the current OCUP 2 program-not only in writing and reviewing all the questions, but also in designing the goals of the program. This book distills his experience in modeling, mentoring, and training. Because UML (R) is a sophisticated language, with 13 diagram types, capable of modeling any type of modern software system, it takes users some time to become proficient. This effective resource will explain the material in the Foundation exam and includes many practice questions for the candidate, including sample problems similar to those found in the exam, and detailed explanations of why correct answers are correct and why wrong answers are wrong.
Whatever your programming language, whatever your platform, you
probably tap into linker and loader functions all the time. But do
you know how to use them to their greatest possible advantage? Only
now, with the publication of Linkers & Loaders, is there an
authoritative book devoted entirely to these deep-seated
compile-time and run-time processes.
It's your first day on the job. You've got the programming chops, you're up on the latest tech, you're sitting at your workstation...now what? Give your career the jolt it needs to get going: essential industry skills to help you apply your raw programming talent and make a name for yourself. Programming commercially in the modern workplace requires skills and experience that you can't get from school or from working on your own. You need the hard-won lessons of years of experience in the workplace. Joshua D. Carter give you his. Programming at this level requires new skills---you'll build programs that dwarf anything you've done on your own. This book introduces you to practices for working on large, long-lived programs with a professional level of quality. Along the way, you'll learn tips for working efficiently with your tools, and discover new tools not often used by the student or hobbyist. Living in the corporate working environment requires its own savvy. You'll learn how to understand and navigate the business, the office, and how to deal with other people outside of your department. You'll understand where you fit into the big picture and how you contribute to the company's success. You'll also get a candid look at the tougher aspects of the job: stress, conflict, and office politics. Finally, programming is a job you can do for the long haul. This book helps you look ahead to the years to come, and your future opportunities---either as a programmer or in another role you grow into. There's nothing quite like the satisfaction of shipping a product and knowing, "I built that." Whether you work on embedded systems or web-based applications, in trendy technologies or legacy systems, this book helps you get from raw skill to an accomplished professional.
Software is important because it is used by a great many people in companies and institutions. This book presents engineering methods for designing and building software. Based on the author's experience in software engineering as a programmer in the defense and aerospace industries, this book explains how to ensure a software that is programmed operates according to its requirements. It also shows how to develop, operate, and maintain software engineering capabilities by instilling an engineering discipline to support programming, design, builds, and delivery to customers. This book helps software engineers to: Understand the basic concepts, standards, and requirements of software engineering. Select the appropriate programming and design techniques. Effectively use software engineering tools and applications. Create specifications to comply with the software standards and requirements. Utilize various methods and techniques to identify defects. Manage changes to standards and requirements. Besides providing a technical view, this book discusses the moral and ethical responsibility of software engineers to ensure that the software they design and program does not cause serious problems. Software engineers tend to be concerned with the technical elegance of their software products and tools, whereas customers tend to be concerned only with whether a software product meets their needs and is easy and ready to use. This book looks at these two sides of software development and the challenges they present for software engineering. A critical understanding of software engineering empowers developers to choose the right methods for achieving effective results. Effective Methods for Software Engineering guides software programmers and developers to develop this critical understanding that is so crucial in today's software-dependent society.
With multicore processors now in every computer, server, and embedded device, the need for cost-effective, reliable parallel software has never been greater. By explaining key aspects of multicore programming, Fundamentals of Multicore Software Development helps software engineers understand parallel programming and master the multicore challenge. Accessible to newcomers to the field, the book captures the state of the art of multicore programming in computer science. It covers the fundamentals of multicore hardware, parallel design patterns, and parallel programming in C++, .NET, and Java. It also discusses manycore computing on graphics cards and heterogeneous multicore platforms, automatic parallelization, automatic performance tuning, transactional memory, and emerging applications. As computing power increasingly comes from parallelism, software developers must embrace parallel programming. Written by leaders in the field, this book provides an overview of the existing and up-and-coming programming choices for multicores. It addresses issues in systems architecture, operating systems, languages, and compilers.
Data structure and software engineering is an integral part of computer science, which, as a whole, is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems. This new book presents new approaches and methods to knowledge sharing, brain mapping, data integration, data storage, managing an organizations business process and domain data, new software and hardware testing methods, and a game development framework used as a learning aid in a software engineering at the university level. The book also features a review of social software engineering metrics, methods for processing business information, and using Pegasys to create and manage sequence analysis workflows in biology.
This book will focus on utilizing statistical modelling of the software source code, in order to resolve issues associated with the software development processes. Writing and maintaining software source code is a costly business; software developers need to constantly rely on large existing code bases. Statistical modelling identifies the patterns in software artifacts and utilize them for predicting the possible issues.
Improve your understanding of Scrum through the proven experience and collected wisdom of experts around the world. Based on real-life experiences, the 97 essays in this unique book provide a wealth of knowledge and expertise from established practitioners who have dealt with specific problems and challenges with Scrum. You'll find out more about the rules and roles of this framework, as well as tactics, strategies, specific patterns to use with Scrum, and stories from the trenches. You'll also gain insights on how to apply, tune, and tweak Scrum for your work. This guide is an ideal resource for people new to Scrum and those who want to assess and improve their understanding of this framework. Learn tips and tricks from some of the world's leading experts on Scrum Understand how leading practitioners deal with real-life problems Explore essays that address product ownership, collaboration, mastership, and the impact of Scrum on an organization Apply the solutions in this book to your own problems with Scrum
This volume contains thirty revised and extended research articles written by prominent researchers participating in an international conference in engineering technologies and physical science and applications. The conference serves as good platforms for the engineering community to meet with each other and to exchange ideas. The conference has also struck a balance between theoretical and application development. The conference is truly international meeting with a high level of participation from many countries. Topics covered include chemical engineering, circuits, communications systems, control theory, engineering mathematics, systems engineering, manufacture engineering, and industrial applications. The book offers the state of art of tremendous advances in engineering technologies and physical science and applications, and also serves as an excellent reference work for researchers and graduate students working with/on engineering technologies and physical science and applications.
- This book covers the production of dissertations in an area where students are much more comfortable writing code than writing academically. - With practical examples of bachelor dissertations and practical research methods utilised in the field of computer science and computer games such as survey methodologies, experimental methodologies, case studies, analysis techniques and reporting techniques, this book will break down the sometimes complicated-seeming nature of the dissertation. - Written to be concise yet comprehensive and with easily accessible language and examples, this book will take the mystery out of undergraduate dissertations in this field.
Very large scale integrated (VLSI) circuits nowadays contain many millions of components, and cannot be designed without the aid of design automation tools. This book provides an insight into the algorithms used inside these computer-aided design (CAD) tools, and will be a good starting point for designers who want to specialize in building CAD tools themselves. Highlights of the book include:
Accurate software engineering reviews and audits have become essential to the success of software companies and military and aerospace programs. These reviews and audits define the framework and specific requirements for verifying software development efforts. Authored by an industry professional with three decades of experience, Software Engineering Reviews and Audits offers authoritative guidance for conducting and performing software first article inspections, and functional and physical configuration software audits. It prepares readers to answer common questions for conducting and performing software reviews and audits, such as: What is required, who needs to participate, and how do we ensure success in all specified requirements in test and released configuration baselines? Complete with resource-rich appendices, this concise guide will help you: * Conduct effective and efficient software reviews and audits * Understand how to structure the software development life cycle * Review software designs and testing plans properly * Access best methods for reviews and audits * Achieve compliance with mandatory and contractual software requirements The author includes checklists, sample forms, and a glossary of industry terms and acronyms to help ensure formal audits are successful the first time around. The contents of the text will help you maintain a professional setting where software is developed for profit, increase service quality, generate cost reductions, and improve individual and team efforts.
From small start-ups to major corporations, companies of all sizes have embraced cloud computing for the scalability, reliability, and cost benefits it can provide. It has even been said that cloud computing may have a greater effect on our lives than the PC and dot-com revolutions combined. Filled with comparative charts and decision trees, Implementing and Developing Cloud Computing Applications explains exactly what it takes to build robust and highly scalable cloud computing applications in any organization. Covering the major commercial offerings currently available, it provides authoritative guidance through the implementation process. It puts cloud computing into historical context and considers how cloud computing affects project management, budgeting, and lifecycle management in your organization. It also explains how to: * Choose the best combination of platforms, tools, and services * Develop new cloud applications from scratch * Migrate legacy software * Prevent lock-in to a single vendor * Estimate costs and benefits * Address reliability, availability, and security concerns * Use interclouding, Cloud Brokers, and other techniques for safely deploying in public, private, and hybrid clouds * Take advantage of the latest developments, including OpenStack From software and testing tools to best practices and service providers, this book considers the entire cloud application environment. It details the platforms currently available, tools that facilitate development, as well as the costs involved. Designed specifically for software developers and their managers, this complete resource includes case studies that illustrate the latest cloud computing technologies, implementation issues, and recently developed solutions. It also provides access to a blog to help keep you current on the latest developments in cloud computing.
Whether you re already in the cloud, or determining whether or not it makes sense for your organization, Cloud Computing and Software Services: Theory and Techniques provides the technical understanding needed to develop and maintain state-of-the-art cloud computing and software services. From basic concepts and recent research findings to future directions, it gathers the insight of 50 experts from around to present a global perspective on the range of technical topics related to cloud computing and Software as a Service (SaaS). The book also: Reviews real cases and applications of cloud computing Witten in a manner that makes this complex subject easy to understand, this is an ideal one-stop reference for anyone interested in cloud computing. The accessible language and wealth of illustrations also make it suitable for academic and research-oriented settings. The comprehensive coverage supplies you with the understanding of cloud computing technologies and trends in parallel computing needed to establish and maintain effective and efficient computing and software services. Praise for: a must for professionals and executives as each chapter is
contributed by a team of highly accomplished and acclaimed
researchers, pundits, and professors.
In this comprehensive introduction to software measurement, Ebert and Dumke detail knowledge and experiences about the subject in an easily understood, hands-on presentation. The book describes software measurement in theory and practice as well as provides guidance to all relevant measurement tools and online references. In addition, it presents hands-on experience from industry leaders and provides many examples and case studies from Global 100 companies. Besides the many practical hints and checklists, readers will also appreciate the large reference list, which includes links to metrics communities where project experiences are shared.
Currently, we see a variety of tools and techniques for specifying and implementing business processes. The problem is that there are still gaps and tensions between the different disciplines needed to improve business process execution and improvement in enterprises. Business process modeling, workflow execution and application programming are examples of disciplines that are hosted by different communities and that emerged separately from each other. In particular, concepts have not yet been fully elaborated at the system analysis level. Therefore, practitioners are faced again and again with similar questions in concrete business process projects: Which decomposition mechanism to use? How to find the correct granularity for business process activities? Which implementing technology is the optimal one in a given situation? This work offers an approach to the systematization of the field. The methodology used is explicitly not a comparative analysis of existing tools and techniques - although a review of existing tools is an essential basis for the considerations in the book. Rather, the book tries to provide a landscape of rationales and concepts in business processes with a discussion of alternatives.
This textbook provides a progressive approach to the teaching of software engineering. First, readers are introduced to the core concepts of the object-oriented methodology, which is used throughout the book to act as the foundation for software engineering and programming practices, and partly for the software engineering process itself. Then, the processes involved in software engineering are explained in more detail, especially methods and their applications in design, implementation, testing, and measurement, as they relate to software engineering projects. At last, readers are given the chance to practice these concepts by applying commonly used skills and tasks to a hands-on project. The impact of such a format is the potential for quicker and deeper understanding. Readers will master concepts and skills at the most basic levels before continuing to expand on and apply these lessons in later chapters.
In this truly unique technical book, today's leading software architects present valuable principles on key development issues that go way beyond technology. More than four dozen architects -- including Neal Ford, Michael Nygard, and Bill de hOra -- offer advice for communicating with stakeholders, eliminating complexity, empowering developers, and many more practical lessons they've learned from years of experience. Among the 97 principles in this book, you'll find useful advice such as: Don't Put Your Resume Ahead of the Requirements (Nitin Borwankar)Chances Are, Your Biggest Problem Isn't Technical (Mark Ramm)Communication Is King; Clarity and Leadership, Its Humble Servants (Mark Richards)Simplicity Before Generality, Use Before Reuse (Kevlin Henney)For the End User, the Interface Is the System (Vinayak Hegde)It's Never Too Early to Think About Performance (Rebecca Parsons) To be successful as a software architect, you need to master both business and technology. This book tells you what top software architects think is important and how they approach a project. If you want to enhance your career, 97 Things Every Software Architect Should Know is essential reading.
Be a Better Developer and Deliver Better Code Despite advanced tools and methodologies, software projects continue to fail. Why? Too many organizations still view software development as just another production line. Too many developers feel that way, too-and they behave accordingly. In The Software Craftsman: Professionalism, Pragmatism, Pride, Sandro Mancuso offers a better and more fulfilling path. If you want to develop software with pride and professionalism; love what you do and do it with excellence; and build a career with autonomy, mastery, and purpose, it starts with the recognition that you are a craftsman. Once you embrace this powerful mindset, you can achieve unprecedented levels of technical excellence and customer satisfaction. Mancuso helped found the world's largest organization of software craftsmen; now, he shares what he's learned through inspiring examples and pragmatic advice you can use in your company, your projects, and your career. You will learn Why agile processes aren't enough and why craftsmanship is crucial to making them work How craftsmanship helps you build software right and helps clients in ways that go beyond code How and when to say "No" and how to provide creative alternatives when you do Why bad code happens to good developers and how to stop creating and justifying it How to make working with legacy code less painful and more productive How to be pragmatic-not dogmatic-about your practices and tools How to lead software craftsmen and attract them to your organization What to avoid when advertising positions, interviewing candidates, and hiring developers How developers and their managers can create a true culture of learning How to drive true technical change and overcome deep patterns of skepticism Sandro Mancuso has coded for startups, software houses, product companies, international consultancies, and investment banks. In October 2013, he cofounded Codurance, a consultancy based on Software Craftsmanship principles and values. His involvement with Software Craftsmanship began in 2010, when he founded the London Software Craftsmanship Community (LSCC), now the world's largest and most active Software Craftsmanship community, with more than two thousand craftsmen. For the past four years, he has inspired and helped developers to organize Software Craftsmanship communities throughout Europe, the United States, and the rest of the world.
Comprehensive and up-to-date, it covers the most vital part of software development, independent verification and validation. Presents a variety of methods that will ensure better quality, performance, cost and reliability of technical products and systems. Features numerous hints, tips and instructions for better interaction between verification and validation personnel, development engineers and managers. Includes 8 case histories ranging from major engineering systems through information systems. Many of the principles involved also apply to computer hardware as well as the fields of science and engineering.
Maintaining compatibility among all affected network and application interfaces of modern enterprise systems can quickly become costly and overwhelming. This handbook presents the knowledge and practical experience of a global group of experts from varying disciplines to help you plan and implement enterprise integration projects that respond to business needs quickly and are seamless to business users. The Handbook of Enterprise Integration brings together the latest research and application results to provide infrastructure engineers, software engineers, software developers, system designers, and project managers with a clear and comprehensive understanding of systems integration technologies, architectures, applications, and project management techniques involved in enterprise system integration. The text includes coverage of mobile communications, standards for integrated manufacturing and e-commerce, RFID, Web-based systems, and complete service-oriented enterprise modeling and analysis. Practitioners will benefit from insights on managing virtual teams as well as techniques for introducing complex technology into businesses. Covering best practices in enterprise systems integration, the text highlights applications across various business enterprises to help you: Bring together existing systems for business processes improvement Design and implement systems that can be reconfigured quickly and easily in response to evolving operational needs Establish procedures for achieving smooth migrations from legacy systems-with minimal disruption to existing operations Complete with case studies, this book illustrates the current state of the art in the context of user requirements and integration and provides the up-to-date understanding required to manage today's complex and interconnected systems. |
You may like...
Data Prefetching Techniques in Computer…
Pejman Lotfi-Kamran, Hamid Sarbazi-Azad
Hardcover
R3,923
Discovery Miles 39 230
The Blockchain Technology for Secure and…
Neeraj Kumar, Shubhani Aggarwal, …
Hardcover
R3,960
Discovery Miles 39 600
Research Anthology on Architectures…
Information R Management Association
Hardcover
R12,630
Discovery Miles 126 300
Essential Java for Scientists and…
Brian Hahn, Katherine Malan
Paperback
R1,266
Discovery Miles 12 660
Hardware Accelerator Systems for…
Shiho Kim, Ganesh Chandra Deka
Hardcover
R3,950
Discovery Miles 39 500
Dark Silicon and Future On-chip Systems…
Suyel Namasudra, Hamid Sarbazi-Azad
Hardcover
R3,940
Discovery Miles 39 400
|