![]() |
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
A practical approach to enhancing quality in software models using
UML Version 2.0
This book constitutes the refereed proceedings of the 22nd IFIP WG 5.5 Working Conference on Virtual Enterprises, PRO-VE 2021, held in Saint-Etienne, and virtually in November 2021. The 70 papers (15 full and 55 short) presented with 5 industrial workshop papers were carefully reviewed and selected from 189 submissions. They provide a comprehensive overview of major challenges and recent advances in various domains related to the digital transformation and collaborative networks and their applications with a strong focus on the following areas related to the main theme of the conference: sustainable collaborative networks; sustainability via digitalization; analysis and assessment of business ecosystems; human factors in collaboration 4.0; maintenance and life-cycle management; policies and new digital services; safety and collaboration management; simulation and optimization; complex collaborative systems and ontologies; value co-creation in digitally enabled ecosystems; digitalization strategy in collaborative enterprises' networks; pathways and tools for DIHs; socio-technical perspectives on smart product-service systems; knowledge transfer and accelerated innovation in FoF; interoperability of IoT and CPS for industrial CNs; sentient immersive response network; digital tools and applications for collaborative healthcare; collaborative networks and open innovation in education 4.0; collaborative learning networks with industry and academia; and industrial workshop.
An overview and a critical review of the Conformance Testing Methodology and Framework is provided by this book. This standard, ISO/IEC 9646, describes a methodology for testing implementations of Open System Interconnection (OSI) specifications. It is widely used by protocol and profile specifiers to help them specify their conformance requirements unambiguously and to provide proformas for suppliers to fill in to clarify which capabilities their products support. The standard is also used by test specifiers to define how to specify OSI conformance tests and to give guidance to test system developers. Further, it is used by test laboratories and the relevant accreditation bodies to define how an OSI test service should be operated. Finally, it is used by other testing methodology specifiers to serve as a guide on how to write testing methodology standards. The publication, which will serve as a definitive textbook on the subject, enables readers to understand existing test documents, especially test suites, and aims to assist them in producing their own documents.
Tackles a topic in a concise and accessible way that most believe too advanced to pick up easily. Author has over 40 years teaching and industry experience which they utilize in this book. Contains an appendix with extended code and examples of topics discussed in text.
This book focuses on software sustainability, regarded in terms of how software is or can be developed while taking into consideration environmental, social, and economic dimensions. The sixteen chapters cover various related issues ranging from technical aspects like energy-efficient programming techniques, formal proposals related to energy efficiency measurement, patterns to build energy-efficient software, the role of developers on energy efficient software systems and tools for detecting and refactoring code smells/energy bugs; to human aspects like its impact on software sustainability or the adaptation of ACM/IEEE guidelines for student and professional education and; and an economics-driven architectural evaluation for sustainability. Also aspects as the elements of governance and management that organizations should consider when implementing, assessing and improving Green IT or the relationship between software sustainability and the Corporate Social Responsibility of software companies are included. The chapters are complemented by usage scenarios and experience reports on several domains as cloud applications, agile development or e-Health, among others. As a whole, the chapters provide a complete overview of the various issues related to sustainable software development. The target readership for this book includes CxOs, (e.g. Chief Information Officers, Chief Executive Officers, Chief Technology Officers, etc.) software developers, software managers, auditors, business owners, and quality professionals. It is also intended for students of software engineering and information systems, and software researchers who want to know the state of the art regarding software sustainability.
Enterprise Architecture, Integration, and Interoperability and the Networked enterprise have become the theme of many conferences in the past few years. These conferences were organised by IFIP TC5 with the support of its two working groups: WG 5. 12 (Architectures for Enterprise Integration) and WG 5. 8 (Enterprise Interoperability), both concerned with aspects of the topic: how is it possible to architect and implement businesses that are flexible and able to change, to interact, and use one another's s- vices in a dynamic manner for the purpose of (joint) value creation. The original qu- tion of enterprise integration in the 1980s was: how can we achieve and integrate - formation and material flow in the enterprise? Various methods and reference models were developed or proposed - ranging from tightly integrated monolithic system - chitectures, through cell-based manufacturing to on-demand interconnection of bu- nesses to form virtual enterprises in response to market opportunities. Two camps have emerged in the endeavour to achieve the same goal, namely, to achieve interoperability between businesses (whereupon interoperability is the ability to exchange information in order to use one another's services or to jointly implement a service). One school of researchers addresses the technical aspects of creating dynamic (and static) interconnections between disparate businesses (or parts thereof).
In this popular text for an Numerical Analysis course, the authors introduce several major methods of solving various partial differential equations (PDEs) including elliptic, parabolic, and hyperbolic equations. It covers traditional techniques including the classic finite difference method, finite element method, and state-of-the-art numercial methods.The text uniquely emphasizes both theoretical numerical analysis and practical implementation of the algorithms in MATLAB. This new edition includes a new chapter, Finite Value Method, the presentation has been tightened, new exercises and applications are included, and the text refers now to the latest release of MATLAB. Key Selling Points: A successful textbook for an undergraduate text on numerical analysis or methods taught in mathematics and computer engineering. This course is taught in every university throughout the world with an engineering department or school. Competitive advantage broader numerical methods (including finite difference, finite element, meshless method, and finite volume method), provides the MATLAB source code for most popular PDEs with detailed explanation about the implementation and theoretical analysis. No other existing textbook in the market offers a good combination of theoretical depth and practical source codes.
This comprehensive Guide to Web Development with Java introduces the readers to the three-tiered, Model-View-Controller architecture by using Spring JPA, JSPs, and Spring MVC controllers. These three technologies use Java, so that a student with a background in programming will be able to master them with ease, with the end result of being able to create web applications that use MVC, validate user input,and save data to a database. Topics and features: * Presents web development topics in an accessible, easy-to-follow style, focusing on core information first, and allowing the reader to gain basic understanding before moving forwards * Contains many helpful pedagogical tools for students and lecturers, such as questions and exercises at the end of each chapter, detailed illustrations, chapter summaries, and a glossary * Uses existing powerful technologies that are freely available on the web to speed up web development, such as Spring Boot, Spring MVC, Spring JPA, Hibernate, JSP, JSTL, and Java 1.8 * Discusses HTML, HTML forms, and Cascading Style Sheets * Starts with the simplest technology for web development (JSP) and gradually introduces the reader to more complex topics * Introduces core technologies from the outset, such as the Model-View-Controller architecture * Includes examples for accessing common web services * Provides supplementary examples and tutorials
This open access book presents the outcomes of the "Design for Future - Managed Software Evolution" priority program 1593, which was launched by the German Research Foundation ("Deutsche Forschungsgemeinschaft (DFG)") to develop new approaches to software engineering with a specific focus on long-lived software systems. The different lifecycles of software and hardware platforms lead to interoperability problems in such systems. Instead of separating the development, adaptation and evolution of software and its platforms, as well as aspects like operation, monitoring and maintenance, they should all be integrated into one overarching process. Accordingly, the book is split into three major parts, the first of which includes an introduction to the nature of software evolution, followed by an overview of the specific challenges and a general introduction to the case studies used in the project. The second part of the book consists of the main chapters on knowledge carrying software, and cover tacit knowledge in software evolution, continuous design decision support, model-based round-trip engineering for software product lines, performance analysis strategies, maintaining security in software evolution, learning from evolution for evolution, and formal verification of evolutionary changes. In turn, the last part of the book presents key findings and spin-offs. The individual chapters there describe various case studies, along with their benefits, deliverables and the respective lessons learned. An overview of future research topics rounds out the coverage. The book was mainly written for scientific researchers and advanced professionals with an academic background. They will benefit from its comprehensive treatment of various topics related to problems that are now gaining in importance, given the higher costs for maintenance and evolution in comparison to the initial development, and the fact that today, most software is not developed from scratch, but as part of a continuum of former and future releases.
Purpose of the Book This book presents an approach to improve the standard object-oriented pro gramming model. The proposal is aimed at supporting a larger range of incre mental behavior variations and thus promises to be more effective in mastering the complexity of today's software. The ability of dealing with the evolutionary nature of software is one of main merits of object-oriented data abstraction and inheritance. Object-orientation allows to organize software in a structured way by separating the description of different kinds of an abstract data type into different classes and loosely connecting them by the inheritance hierarchy. Due to this separation, the soft ware becomes free of conditional logics previously needed for distinguishing between different kinds of abstractions and can thus more easily be incremen tally extended to support new kinds of abstractions. In other words, classes and inheritance are means to properly model variations of behavior related to the existence of different kinds of an abstract data type. The support for extensi bility and reuse with respect to such kind-specific behavior variations is among the main reasons for the increasing popularity of object-oriented programming in the last two decades. However, this popularity does not prevent us from questioning the real effec tiveness of current object-oriented techniques in supporting incremental vari ations. In fact, this popularity makes a critical investigation of the variations that can actually be performed incrementally even more important."
Many professionals and students in engineering, science, business, and other application fields need to develop Windows-based and web-enabled information systems to store and use data for decision support, without help from professional programmers. However, few books are available to train professionals and students who are not professional programmers to develop these information systems. Developing Windows-Based and Web-Enabled Information Systems fills this gap, providing a self-contained, easy-to-understand, and well-illustrated text that explores current concepts, methods, and software tools for developing Windows-based and web-enabled information systems. Written in an easily accessible style, the book details current concepts, methods, and software tools for Windows-based and web-enabled information systems that store and use data. It is self-contained with easy-to-understand small examples to walk through concepts and implementation details along with large-scale case studies. The book describes data modeling methods including entity-relationship modeling, relational modeling and normalization, and object-oriented data modeling, to develop data models of a database. The author covers how to use software tools in the Microsoft application development environment, including Microsoft Access, MySQL, SQL, Visual Studio, Visual Basic, VBA, HTML, and XML, to implement databases and develop Windows-based and web-enabled applications with the database, graphical user interface, and program components. The book takes you through the entire process of developing a computer and network application for an information system, highlighting concepts and operation details. In each chapter, small data examples are used to manually walk through concepts and operational details. These features and more give you the conceptual understanding and practical skill required, even if you don't have a computer science background, to develop Windows-based or web-enabled applications for your specialized information system.
This book brings together two important trends: graph algorithms and high-performance computing. Efficient and scalable execution of graph processing applications in data or network analysis requires innovations at multiple levels: algorithms, associated data structures, their implementation and tuning to a particular hardware. Further, programming languages and the associated compilers play a crucial role when it comes to automating efficient code generation for various architectures. This book discusses the essentials of all these aspects. The book is divided into three parts: programming, languages, and their compilation. The first part examines the manual parallelization of graph algorithms, revealing various parallelization patterns encountered, especially when dealing with graphs. The second part uses these patterns to provide language constructs that allow a graph algorithm to be specified. Programmers can work with these language constructs without worrying about their implementation, which is the focus of the third part. Implementation is handled by a compiler, which can specialize code generation for a backend device. The book also includes suggestive results on different platforms, which illustrate and justify the theory and practice covered. Together, the three parts provide the essential ingredients for creating a high-performance graph application. The book ends with a section on future directions, which offers several pointers to promising topics for future research. This book is intended for new researchers as well as graduate and advanced undergraduate students. Most of the chapters can be read independently by those familiar with the basics of parallel programming and graph algorithms. However, to make the material more accessible, the book includes a brief background on elementary graph algorithms, parallel computing and GPUs. Moreover it presents a case study using Falcon, a domain-specific language for graph algorithms, to illustrate the concepts.
This book discusses important topics for engineering and managing software startups, such as how technical and business aspects are related, which complications may arise and how they can be dealt with. It also addresses the use of scientific, engineering, and managerial approaches to successfully develop software products in startup companies. The book covers a wide range of software startup phenomena, and includes the knowledge, skills, and capabilities required for startup product development; team capacity and team roles; technical debt; minimal viable products; startup metrics; common pitfalls and patterns observed; as well as lessons learned from startups in Finland, Norway, Brazil, Russia and USA. All results are based on empirical findings, and the claims are backed by evidence and concrete observations, measurements and experiments from qualitative and quantitative research, as is common in empirical software engineering. The book helps entrepreneurs and practitioners to become aware of various phenomena, challenges, and practices that occur in real-world startups, and provides insights based on sound research methodologies presented in a simple and easy-to-read manner. It also allows students in business and engineering programs to learn about the important engineering concepts and technical building blocks of a software startup. It is also suitable for researchers at different levels in areas such as software and systems engineering, or information systems who are studying advanced topics related to software business.
This book briefly summarizes the current state of the art technologies and solutions for location and tracking (L&T) in wireless sensor networks (WSN), focusing on RSS-based schemes. The authors offer broad and in-depth coverage of essential topics including range-based and range-free localization strategies, and signal path loss models. In addition, the book includes motion models and how state estimation techniques and advanced machine learning techniques can be utilized to design L&T systems for a given problem using low cost measurement metric (that is RSS). This book also provides MATLAB examples to demonstrate fundamental algorithms for L&T and provides online access to all MATLAB codes. The book allows practicing engineers and graduate students to keep pace with contemporary research and new technologies in the L&T domain.
User-Developer Cooperation in Software Development brings together the strengths of task analysis and user participation within an overall software development process, and presents a detailed observation and theoretical analysis of what it is for users and developers to cooperate, and the nature of user-developer interaction. Eamonn O'Neill deals with these issues through the development and application of an approach to task-based participatory development in two real world development projects, and discusses the strengths of task analysis and participatory design methods, and how they complement each other's weaker aspects.
This book is designed for those who manage software development
projects. It explores software and risk management both from a
technology and a business perspective. Issues regarding costs,
schedules, technical performance, and strategies for software
development are discussed.
Complex behavior models (plasticity, cracks, visco elascticity) face some theoretical difficulties for the determination of the behavior law at the continuous scale. When homogenization fails to give the right behavior law, a solution is to simulate the material at a meso scale in order to simulate directly a set of discrete properties that are responsible of the macroscopic behavior. The discrete element model has been developed for granular material. The proposed set shows how this method is capable to solve the problem of complex behavior that are linked to discrete meso scale effects. The first book solves the local problem, the second one presents a coupling approach to link the structural effects to the local ones, this third book presents the software workbench that includes all the theoretical developments.
Software maintenance work is often considered a dauntingly rigid activity - this book proves the opposite: it demands high levels of creativity and thinking outside the box. Highlighting the creative aspects of software maintenance and combining analytical and systems thinking in a holistic manner, the book motivates readers not to blithely follow the beaten tracks of "technical rationality". It delivers the content in a pragmatic fashion using case studies which are woven into long running story lines. The book is organized in four parts, which can be read in any order, except for the first chapter, which introduces software maintenance and evolution and presents a number of case studies of software failures. The "Introduction to Key Concepts" briefly introduces the major elements of software maintenance by highlighting various core concepts that are vital in order to see the forest for the trees. Each such concept is illustrated with a worked example. Next, the "Forward Engineering" part debunks the myth that being fast and successful during initial development is all that matters. To this end, two categories of forward engineering are considered: an inept initial project with a multitude of hard evolutionary phases and an effective initial project with multiple straightforward future increments. "Reengineering and Reverse Engineering" shows the difficulties of dealing with a typical legacy system, and tackles tasks such as retrofitting tests, documenting a system, restructuring a system to make it amenable for further improvements, etc. Lastly, the "DevOps" section focuses on the importance and benefits of crossing the development versus operation chasm and demonstrates how the DevOps paradigm can turn a loosely coupled design into a loosely deployable solution. The book is a valuable resource for readers familiar with the Java programming language, and with a basic understanding and/or experience of software construction and testing. Packed with examples for every elaborated concept, it offers complementary material for existing courses and is useful for students and professionals alike.
A Tour of Data Science: Learn R and Python in Parallel covers the fundamentals of data science, including programming, statistics, optimization, and machine learning in a single short book. It does not cover everything, but rather, teaches the key concepts and topics in Data Science. It also covers two of the most popular programming languages used in Data Science, R and Python, in one source. Key features: Allows you to learn R and Python in parallel Cover statistics, programming, optimization and predictive modelling, and the popular data manipulation tools - data.table and pandas Provides a concise and accessible presentation Includes machine learning algorithms implemented from scratch, linear regression, lasso, ridge, logistic regression, gradient boosting trees, etc. Appealing to data scientists, statisticians, quantitative analysts, and others who want to learn programming with R and Python from a data science perspective.
This book covers a broad range of topics related to digitalization. Specifically, it views digitalization across different organizational levels, such as the level of individuals, teams, processes, firms, and ecosystems. It includes a collection of recent research and reflections on the topic that helps to understand the technological foundations of digitalization and its impacts. It also reflects on the process of digitalization and how it changes established ways of working, collaborating, and coordinating. With this book, the editors and authors honor Professor Dr. Armin Heinzl for his enormous and ongoing contributions to information systems research, education, and practice.
This book constitutes the refereed proceedings of the 23rd IFIP WG 5.5 Working Conference on Virtual Enterprises, PRO-VE 2022, held in Lisbon, Portugal, in September 2022. The 55 papers presented were carefully reviewed and selected from 119 submissions. They provide a comprehensive overview of major challenges and recent advances in various domains related to the digital transformation and collaborative networks and their applications with a strong focus on the following areas related to the main theme of the conference: sustainable collaborative networks; sustainability via digitalization; analysis and assessment of business ecosystems; human factors in collaboration 4.0; maintenance and life-cycle management; policies and new digital services; safety and collaboration management; simulation and optimization; complex collaborative systems and ontologies; value co-creation in digitally enabled ecosystems; digitalization strategy in collaborative enterprises' networks; pathways and tools for DIHs; socio-technical perspectives on smart product-service systems; knowledge transfer and accelerated innovation in FoF; interoperability of IoT and CPS for industrial CNs; sentient immersive response network; digital tools and applications for collaborative healthcare; collaborative networks and open innovation in education 4.0; collaborative learning networks with industry and academia; and industrial workshop. |
You may like...
Online Learning and Assessment in Higher…
Robyn Benson, Charlotte Brack
Paperback
R1,554
Discovery Miles 15 540
Youtube Research Growth Course Guide…
Thegreencabby, Passivecashstacker, …
Paperback
R342
Discovery Miles 3 420
Nonlinear Theory of Pseudodifferential…
Nakao Hayashi, Elena Kaikina
Hardcover
R4,737
Discovery Miles 47 370
Mathematics for Young Learners - A Guide…
Rosalind Charlesworth, Karen Lind, …
Paperback
R812
Discovery Miles 8 120
Research Anthology on Early Childhood…
Information R Management Association
Hardcover
R7,910
Discovery Miles 79 100
|