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
This book provides a high-level description, together with a mathematical and an experimental analysis, of Java and of the Java Virtual Machine (JVM), including a standard compiler of Java programs to JVM code and the security critical bytecode verifier component of the JVM. The description is structured into language layers and machine components. It comes with a natural executable refinement (written in AsmGofer and provided on CD ROM) which can be used for testing code. The method developed for this purpose is based on Abstract State Machines (ASMs) and can be applied to other virtual machines and to other programming languages as well. The book is written for advanced students and for professionals and practitioners in research and development who need a complete and transparent definition and an executable model of the language and of the virtual machine underlying its intended implementation.The CD ROM contains the entire text of the book and numerous examples and exercises.
* Targests readers with a background in programming, interested in an introduction/refresher in statistical hypothesis testing * Uses Python throughout * Provides the reader with the opportunity of using the book whenever needed rather than following a sequential path.
The work presented in this book is based on empirical study undertaken as a case study to understand the challenges faced in massively open online course (MOOC) based learning and experimentation to understand the challenges for presenting theoretical and practical courses. The book proposes a flexible online platform. This solution provides flexibility in distance learning processes including course enrollment, learning, evaluation, and outcome of degrees. The proposed system not only gives students freedom to choose their courses in accordance with their needs but also use earned credit towards online degrees of any university of their choice.
Software is one of the most important products in human history and is widely used by all industries and all countries. It is also one of the most expensive and labor-intensive products in human history. Software also has very poor quality that has caused many major disasters and wasted many millions of dollars. Software is also the target of frequent and increasingly serious cyber-attacks. Among the reasons for these software problems is a chronic lack of reliable quantified data. This reference provides quantified data from many countries and many industries based on about 26,000 projects developed using a variety of methodologies and team experience levels. The data has been gathered between 1970 and 2017, so interesting historical trends are available. Since current average software productivity and quality results are suboptimal, this book focuses on "best in class" results and shows not only quantified quality and productivity data from best-in-class organizations, but also the technology stacks used to achieve best-in-class results. The overall goal of this book is to encourage the adoption of best-in-class software metrics and best-in-class technology stacks. It does so by providing current data on average software schedules, effort, costs, and quality for several industries and countries. Because productivity and quality vary by technology and size, the book presents quantitative results for applications between 100 function points and 100,000 function points. It shows quality results using defect potential and DRE metrics because the number one cost driver for software is finding and fixing bugs. The book presents data on cost of quality for software projects and discusses technical debt, but that metric is not standardized. Finally, the book includes some data on three years of software maintenance and enhancements as well as some data on total cost of ownership.
In business, driving value is a key strategy and typically starts at the top of an organization. In today's digital age, driving software value is also an important, and often overlooked, key strategy. Executives, and the corporate board, need to expect the highest level of business value from the software the organization is developing, buying, and selling. In today's digital transformation marketplace, it is imperative that organizations start driving business value from software development initiatives. For many years, the cost of software development challenged organizations with questions such as: How do we allocate software development costs? Should these costs be considered an overhead expense? Are we getting the most value possible for our investment? A fundamental problem has been built into these questions - the focus on cost. In almost every other part of the organization, maximizing profit or, in the case of a not-for-profit, maximizing the funds available, provides a clear focus with metrics to determine success or failure. In theory, simply aligning software spending with the maximizing profit goals should be sufficient to avoid any questions about value for money. Unfortunately, this alignment hasn't turned out to be so simple, and the questions persist, particularly at the strategic or application portfolio level. In this book, Michael D.S. Harris describes how a software business value culture-one where all stakeholders, including technology and business-have a clear understanding of the goals and expected business value from software development. The book shows readers how they can transform software development from a cost or profit center to a business value center. Only a culture of software as a value center enables an organization to constantly maximize business value flow through software development. If your organization is starting to ask how it can change software from a cost-center to a value-center, this book is for you.
While emerging technologies create massive opportunity, especially for investors and companies that seek more adaptable forms of economic growth than currently available, value is held inert by traditional approaches, patents, and other closed systems. Yet, open data, content, and information may be the key to mass innovation for future technologies, although they bring difficult challenges to private-industry models that depend on the established ideas of intellectual property. It is from this foundational observation that OpenXFORM (a blending of the words Open and the engineering abbreviation for Transformation) was developed and is explored and described in this book. The intent of the model design is to synthesize an approach to the process of innovation, inspired by natural systems and human-centric design processes. OpenXFORM describes how an open system of innovation can adapt to the unregulated world of information, data, and content; can decompose its own information to release to the open world; and can discover ways to find the points of synergy among the studied and tested methodologies that put human relationships first. This book presents an explicit innovation process that shows how to move from a breakthrough idea through a process that encourages innovative thinkers to test their assumptions, validate hypotheses, and tune and tweak their ideas, not only to drive solutions for users but also to meet the strategic goals of their companies. The anatomy of innovation through OpenXFORM contains the process for moving ideas from a flight of fancy to an explicit concept that is ready to produce.
Software analysis patterns play an important role in reducing the overall cost and compressing the time of software project lifecycles. However, building reusable and stable software analysis patterns is still considered a major and delicate challenge. This book proposes a novel concept for building analysis patterns based on software stability and is a modern approach for building stable, highly reusable, and widely applicable analysis patterns. The book also aims to promote better understanding of problem spaces and discusses how to focus requirements analysis accurately. It demonstrates a new approach to discovering and creating stable analysis patterns (SAPs). This book presents a pragmatic approach to understanding problem domains, utilizing SAPs for any field of knowledge, and modeling stable software systems, components, and frameworks. It helps readers attain the basic knowledge that is needed to analyze and extract analysis patterns from any domain of interest. Readers also learn to master methods to document patterns in an effective, easy, and comprehensible manner. Bringing significant contributions to the field of computing, this book is a unique and comprehensive reference manual on SAPs. It provides insight on handling the understanding of problem spaces and supplies methods and processes to analyze user requirements accurately as well as ways to use SAPs in building myriad cost-effective and highly maintainable systems. The book also shows how to link SAPs to the design phase thereby ensuring a smooth transition between analysis and design.
This book provides techniques for offshore center managers and head office managers to motivate and manage globally distributed teams, which are spread across the offshore center and the head office, and thereby achieve higher productivity. Readers learn how to integrate the offshore center with the head office to make the offshore team an extension of the head office. While integrating teams with the head office, offshore center managers can still retain independence and authority to meet team aspirations. The book provides insight into devising new organizational structures to balance the authority and responsibilities of offshore center and head office managers. Head office managers responsible for managing globally distributed projects learn how to achieve a higher success rate on their projects and be better rewarded for their efforts in offshoring. Head office managers also learn techniques to make more significant contributions in their expatriate assignments to the offshore center. This book guides both the offshore center managers and the head office managers to fully realize the potential of the offshore center, which can result in higher revenues and profitability.
Going where no book on software measurement and metrics has previously gone, this critique thoroughly examines a number of bad measurement practices, hazardous metrics, and huge gaps and omissions in the software literature that neglect important topics in measurement. The book covers the major gaps and omissions that need to be filled if data about software development is to be useful for comparisons or estimating future projects. Among the more serious gaps are leaks in reporting about software development efforts that, if not corrected, can distort data and make benchmarks almost useless and possibly even harmful. One of the most common leaks is that of unpaid overtime. Software is a very labor-intensive occupation, and many practitioners work very long hours. However, few companies actually record unpaid overtime. This means that software effort is underreported by around 15%, which is too large a value to ignore. Other sources of leaks include the work of part-time specialists who come and go as needed. There are dozens of these specialists, and their combined effort can top 45% of total software effort on large projects. The book helps software project managers and developers uncover errors in measurements so they can develop meaningful benchmarks to estimate software development efforts. It examines variations in a number of areas that include: Programming languages Development methodology Software reuse Functional and nonfunctional requirements Industry type Team size and experience Filled with tables and charts, this book is a starting point for making measurements that reflect current software development practices and realities to arrive at meaningful benchmarks to guide successful software projects.
Written for those starting a career in IT or whose career is well advanced, this career guide shows how to blaze a path to success through the jungle of modern IT. With a career spanning five decades, the author shares lessons he learned the hard way so readers do not have to learn them the hard way. By emphasizing the importance of business processes and applications to IT, this book explains how to understand the value and positioning of hardware and software technology in order to make appropriate decisions. It addresses the importance of IT architecture and the roles service and systems management play. It also explains service level agreements (SLAs) and provides sample SLAs. Readers learn how to conduct IT assessments using SWOT (strengths, weaknesses, opportunities, and threats) analysis. It also shows how to use root-cause analysis (RCA) to detect the sources of failure and poor performance. An overview of risk management and the steps involved in developing a business continuity plan are also included. The book looks at all facets of an IT professional's career. It explains how to build an IT team and examines the roles and responsibilities within the team. It shows how to provide professional customer care to IT clients. Business executives recognize the importance of IT, and this book shows technology professionals how to thrive in the business world. It covers: Making effective presentations Report and proposal writing Negotiating and persuasion skills Running productive meetings Time and stress management The book also discusses such important career skills as listening, continual and incremental learning, and communicating at all levels. From its templates and checklists to its comprehensive and holistic view of a successful IT career, this book is an indispensable guide for every professional working in IT today and tomorrow.
The increasing penetration of IT in organizations calls for an integrative perspective on enterprises and their supporting information systems. MERODE offers an intuitive and practical approach to enterprise modelling and using these models as core for building enterprise information systems. From a business analyst perspective, benefits of the approach are its simplicity and the possibility to evaluate the consequences of modeling choices through fast prototyping, without requiring any technical experience. The focus on domain modelling ensures the development of a common language for talking about essential business concepts and of a shared understanding of business rules. On the construction side, experienced benefits of the approach are a clear separation between specification and implementation, more generic and future-proof systems, and an improved insight in the cost of changes. A first distinguishing feature is the method's grounding in process algebra provides clear criteria and practical support for model quality. Second, the use of the concept of business events provides a deep integration between structural and behavioral aspects. The clear and intuitive semantics easily extend to application integration (COTS software and Web Services). Students and practitioners are the book's main target audience, as both groups will benefit from its practical advice on how to create complete models which combine structural and behavioral views of a system-to-be and which can readily be transformed into code, and on how to evaluate the quality of those models. In addition, researchers in the area of conceptual or enterprise modelling will find a concise overview of the main findings related to the MERODE project. The work is complemented by a wealth of extra material on the author's web page at KU Leuven, including a free CASE tool with code generator, a collection of cases with solutions, and a set of domain modelling patterns that have been developed on the basis of the method's use in industry and government.
Driving innovation can reduce costs for companies, institutions, military programs, and successful businesses. Quality is key to successful innovation. Delivery of complex products must have high quality to reduce customer problems and defects. This book explains how to integrate Quality Assurance processes to produce compliant product management and gap analysis. It shows how Quality Assurance provides a common operating framework in which best practices, improvements, and cost avoidance activities can be shared. Effective Processes for Quality Assurance emphasizes improving process execution and reducing operational costs. It also focuses on how Quality Assurance personnel must support companies, institutions, military programs, and successful businesses by encouraging a cooperative, proactive approach and ensure compliance through management and team member participation. Lean and Agile can provide a competitive advantage, and this practical reference explains how to implement these two principles to deliver products that have fewer defects. It also explains: Quality Assurance methods Measuring benefits of Quality Assurance process improvement Quality Assurance performance and improvement Risk management Quality Assurance improvement with metrics Effective processes for Quality Assurance Quantitative process performance and commitments Quality Assurance plans Quality Assurance for customers and suppliers Supporting software configuration Effective Processes for Quality Assurance covers the critical issues for implementing Quality Assurance processes that can deliver high-quality products successfully.
The aim of this book is to provide a platform to academicians, practitioners, and researchers to understand current and future trends in software reliability growth modeling. Emphasis will be on qualitative work relevant to the theme with particular importance given to mathematical modeling for software reliability and various methods and applications of multi attributed decision making in governing the software performance. Presents software quality and security models Offers reliability analysis, assurance techniques for software systems Covers methodologies, tools, and practical applications of software reliability modeling and testing resources Includes robust reliability design techniques, diagnostic, and decision support Discusses stochastic modelling for software systems
The book describes how to manage and successfully deliver large, complex, and expensive systems that can be composed of millions of line of software code, being developed by numerous groups throughout the globe, that interface with many hardware items being developed by geographically dispersed companies, where the system also includes people, policies, constraints, regulations, and a myriad of other factors. It focuses on how to seamlessly integrate systems, satisfy the customer's requirements, and deliver within the budget and on time. The guide is essentially a "shopping list" of all the activities that could be conducted with tailoring guidelines to meet the needs of each project.
This book is concerned with the importance of Human Computer Interaction (HCI), Usability, user participants, and Sustainability in the Information Communication Technology (ICT) industry throughout the world. ICTs have become a crucial instrument for communication, entertainment, commerce and research and this increased usage is presenting new environmental and sustainability issues as we try and meet the ever-growing needs of both businesses and individuals. Sustainability and sustainable design must become central to the design of new technologies to make a concerted effort to tackle the environmental concerns we face now and in the future. Development frameworks, tools and models are used and explored, and the New Participative Methodology for Sustainable Design (NPMSD) is introduced as a way of identifying key factors needed in developing more sustainable systems including new smart technology and portable devices. In this book, the sustainable step in the design stage is evaluated and assessed by 11 countries: namely, Australia, Brazil, China, Germany, India, Norway, Singapore, South Korea, Sweden, UK, and USA. The new results are generated confirming that sustainable design awareness should be considered by designers, and users to minimize and reduce the carbon emissions, raw materials usage, and global warming, since these problems should be tackled soon, otherwise, it will be too late to solve it. Further research is needed in the future to implement and assess the sustainable design step with large IT companies to ensure compliance with environmental standards and rules for sustainable systems. Sustainable Design is an invaluable resource for students and researchers, designers and business managers who are interested in the human-centered, environmental concerns of sustainable technologies.
Solid requirements engineering has increasingly been recognized as the key to improved, on-time, and on-budget delivery of software and systems projects. New software tools are emerging that are empowering practicing engineers to improve their requirements engineering habits. However, these tools are not usually easy to use without significant training. Requirements Engineering for Software and Systems, Fourth Edition is intended to provide a comprehensive treatment of the theoretical and practical aspects of discovering, analyzing, modeling, validating, testing, and writing requirements for systems of all kinds, with an intentional focus on software-intensive systems. It brings into play a variety of formal methods, social models, and modern requirements writing techniques to be useful to practicing engineers. The book is intended for professional software engineers, systems engineers, and senior and graduate students of software or systems engineering. Since the first edition, there have been made many changes and improvements to this textbook. Feedback from instructors, students, and corporate users was used to correct, expand, and improve the materials. The fourth edition features two newly added chapters: "On Non-Functional Requirements" and "Requirements Engineering: Road Map to the Future." The latter provides a discussion on the relationship between requirements engineering and such emerging and disruptive technologies as Internet of Things, Cloud Computing, Blockchain, Artificial Intelligence, and Affective Computing. All chapters of the book were significantly expanded with new materials that keep the book relevant to current industrial practices. Readers will find expanded discussions on new elicitation techniques, agile approaches (e.g., Kanpan, SAFe, and DEVOps), requirements tools, requirements representation, risk management approaches, and functional size measurement methods. The fourth edition also has significant additions of vignettes, exercises, and references. Another new feature is scannable QR codes linked to sites containing updates, tools, videos, and discussion forums to keep readers current with the dynamic field of requirements engineering.
* Provides simple, conceptual descriptions of everyday technologies * Includes clear examples and diagrams that demonstrate the principles and techniques, not just a "how-to" punch list * Covers advanced topics for readers who want to dive into the deep end of the technology pool * Avoids jargon-where terminology does appear, the text will provide clear, concise definitions
Features Teaches software design by showing programmers how to build the tools they use every day. Each chapter includes exercises to help readers check and deepen their understanding. All the example code can be downloaded, re-used, and modified under an open license.
This book addresses the challenges in the software engineering of variability-intensive systems. Variability-intensive systems can support different usage scenarios by accommodating different and unforeseen features and qualities. The book features academic and industrial contributions that discuss the challenges in developing, maintaining and evolving systems, cloud and mobile services for variability-intensive software systems and the scalability requirements they imply. The book explores software engineering approaches that can efficiently deal with variability-intensive systems as well as applications and use cases benefiting from variability-intensive systems.
1. Provides a toolkit of templates for common VR interactions, as well as practical advice on when to use them and how to tailor them for specific use cases; 2. Includes case studies detailing the practical application of interaction theory discussed in each chapter; 3. Presents tables of guidelines for practicing VR developers, for reference during software development; 4. Covers procedures for Interface Evaluation - formulas and testing methodologies to ensure that VR interfaces are effective, efficient, engaging, error-tolerant, and easy to learn; 5. Non-linear organisation - chapters of the book on different concepts can be read to gain knowledge on a single topic, without requiring other chapters to be read beforehand; 6. Includes ancillaries - PowerPoint slides, 3D models, videos, and a teacher's guide
Effective Data Science Infrastructure is a hands-on guide to assembling infrastructure for data science and machine learning applications. It reveals the processes used at Netflix and other data driven companies to manage their cutting edge data infrastructure. As you work through this easy-to-follow guide, you'll set up end-to end infrastructure from the ground up, with a fully customizable process you can easily adapt to your company. You'll learn how you can make data scientists more productive with your existing cloud infrastructure, a stack of open source software, and idiomatic Python. Throughout, you'll follow a human-centric approach focused on user experience and meeting the unique needs of data scientists. About the Technology Turning data science projects from small prototypes to sustainable business processes requires scalable and reliable infrastructure. This book lays out the workflows, components, and methods of the full infrastructure stack for data science, from data warehousing and scalable compute to modeling frameworks.
Business managers have long known the power of the Balanced Scorecard in executing corporate strategy. Implementing the Project Management Balanced Scorecard shows project managers how they too can use this framework to meet strategic objectives. It supplies valuable insight into the project management process as a whole and provides detailed explanations on how to effectively implement the balanced scorecard to measure and manage performance and projects. The book details a tactical approach for implementing the scorecard approach at the project level and investigates numerous sample scorecards, metrics, and techniques. It examines recent research on critical issues such as performance measurement and management, continuous process improvement, benchmarking, metrics selection, and people management. It also explains how to integrate these issues with the four perspectives of the balanced scorecard: customer, business processes, learning and innovation, and financial. Filled with examples and case histories, the book directly relates the scorecard concept to the major project management steps of determining scope, scheduling, estimation, risk management, procurement, and project termination. It includes a plethora of resources on the accompanying downloadable resources-including detailed instructions for developing a measurement program, a full metrics guide, a sample project plan, and a set of project management fill-in forms.
Lankhorst and his co-authors present ArchiMate (R) 3.0, enterprise modelling language that captures the complexity of architectural domains and their relations and allows the construction of integrated enterprise architecture models. They provide architects with concrete instruments that improve their architectural practice. As this is not enough, they additionally present techniques and heuristics for communicating with all relevant stakeholders about these architectures. Since an architecture model is useful not only for providing insight into the current or future situation but can also be used to evaluate the transition from 'as-is' to 'to-be', the authors also describe analysis methods for assessing both the qualitative impact of changes to an architecture and the quantitative aspects of architectures, such as performance and cost issues. The modelling language presented has been proven in practice in many real-life case studies and has been adopted by The Open Group as an international standard. So this book is an ideal companion for enterprise IT or business architects in industry as well as for computer or management science students studying the field of enterprise architecture. This fourth edition of the book has been completely reworked to be compatible with ArchiMate (R) 3.0, and it includes a new chapter relating this new version to other standards. New sections on capability analysis, risk analysis, and business architecture in general have also been introduced. |
You may like...
Writing Better Requirements - Writing…
Ian Alexander, Richard Stevens
Paperback
R2,122
Discovery Miles 21 220
|