This comprehensive reference uses a formal and standard evaluation technique to show the strengths and weakness of more than 60 software development methodologies such as agile, DevOps, RUP, Waterfall, TSP, XP and many more. Each methodology is applied to an application of 1000 function points using the Java language. Each methodology produces a characteristic set of results for development schedules, productivity, costs, and quality. The intent of the book is to show readers the optimum kinds of methodologies for the projects they are concerned with and to warn them about counter indications and possible harm from unsuitable methodologies.
Software is the essential enabler for the new economy and science. It creates new markets and new directions for a more reliable, flexible, and robust society. It empowers the exploration of our world in ever more depth. However, software often falls short behind our expectations. Current software methodologies, tools, and techniques remain expensive and not yet reliable for a highly changeable and evolutionary market. Many approaches have been proven only as case-by-case oriented methods. This book presents a number of new trends and theories in the direction in which we believe software science and engineering may develop to transform the role of software and science in tomorrow’s information society. This publication is an attempt to capture the essence of a new state of art in software science and its supporting technology. Is also aims at identifying the challenges such a technology has to master.
"This book presents current, effective software engineering methods for the design and development of modern Web-based applications"--Provided by publisher.
"This book aims to advance scientific knowledge on research approaches used in systems engineering, software engineering, and information systems and to update,integrate, disperse and valuable knowledge on research approaches"--
An emerging topic in software engineering and data mining, specification mining tackles software maintenance and reliability issues that cost economies billions of dollars each year. The first unified reference on the subject, Mining Software Specifications: Methodologies and Applications describes recent approaches for mining specifications of sof
Software is an essential enabler for science and the new economy, but current software methodologies, tools, and techniques are often still not sufficiently robust or reliable for the constantly changing and evolving market, and many promising approaches have proved to be no more than case-oriented methods that are not fully automated. This book presents the proceedings of SoMeT_23, the 22nd International Conference on New Trends in Intelligent Software Methodology, Tools, and Techniques, held from 20–22 September 2023 in Naples, Italy. The conference brings together researchers and practitioners to share original research and practical development experience in software science and related new technologies, and is an opportunity for the software-science community to take stock of where they are today and consider future directions. The 25 papers included here were carefully selected from the many high-quality submissions received after a rigorous review process, with each paper typically being reviewed by 3 or 4 reviewers. Topics covered range from research practices, techniques and methodologies to the solutions required by global business. SoMeT_23 focused in particular on intelligent software, the application of artificial intelligence techniques in software development, and tackling human interaction in the development process for better high-level interface, with an emphasis on human-centric software methodologies, end-user development techniques, and emotional reasoning for an optimum performance between design tool and user. Exploring trends, theories, and challenges in the integration of software and science for tomorrow’s global information society, the book captures a new state-of-the-art in software science and its supporting technology and will be of interest to all those working in the field.
Software has become ever more crucial as an enabler, from daily routines to important national decisions. But from time to time, as society adapts to frequent and rapid changes in technology, software development fails to come up to expectations due to issues with efficiency, reliability and security, and with the robustness of methodologies, tools and techniques not keeping pace with the rapidly evolving market. This book presents the proceedings of SoMeT_19, the 18th International Conference on New Trends in Intelligent Software Methodologies, Tools and Techniques, held in Kuching, Malaysia, from 23–25 September 2019. The book explores new trends and theories that highlight the direction and development of software methodologies, tools and techniques, and aims to capture the essence of a new state of the art in software science and its supporting technology, and to identify the challenges that such a technology will have to master. The book also investigates other comparable theories and practices in software science, including emerging technologies, from their computational foundations in terms of models, methodologies, and tools. The 56 papers included here are divided into 5 chapters: Intelligent software systems design and techniques in software engineering; Machine learning techniques for software systems; Requirements engineering, software design and development techniques; Software methodologies, tools and techniques for industry; and Knowledge science and intelligent computing. This comprehensive overview of information systems and research projects will be invaluable to all those whose work involves the assessment and solution of real-world software problems.
This book provides guidelines for practicing design science in the fields of information systems and software engineering research. A design process usually iterates over two activities: first designing an artifact that improves something for stakeholders and subsequently empirically investigating the performance of that artifact in its context. This “validation in context” is a key feature of the book - since an artifact is designed for a context, it should also be validated in this context. The book is divided into five parts. Part I discusses the fundamental nature of design science and its artifacts, as well as related design research questions and goals. Part II deals with the design cycle, i.e. the creation, design and validation of artifacts based on requirements and stakeholder goals. To elaborate this further, Part III presents the role of conceptual frameworks and theories in design science. Part IV continues with the empirical cycle to investigate artifacts in context, and presents the different elements of research problem analysis, research setup and data analysis. Finally, Part V deals with the practical application of the empirical cycle by presenting in detail various research methods, including observational case studies, case-based and sample-based experiments and technical action research. These main sections are complemented by two generic checklists, one for the design cycle and one for the empirical cycle. The book is written for students as well as academic and industrial researchers in software engineering or information systems. It provides guidelines on how to effectively structure research goals, how to analyze research problems concerning design goals and knowledge questions, how to validate artifact designs and how to empirically investigate artifacts in context – and finally how to present the results of the design cycle as a whole.
This book presents current methods for dealing with software reliability, illustrating the advantages and disadvantages of each method. The description of the techniques is intended for a non-expert audience with some minimal technical background. It also describes some advanced techniques, aimed at researchers and practitioners in software engineering. This reference will serve as an introduction to formal methods and techniques and will be a source for learning about various ways to enhance software reliability. Various projects and exercises give readers hands-on experience with the various formal methods and tools.
Software programs are formal entities with precise meanings independent of their programmers, so the transition from ideas to programs necessarily involves a formalisation at some point. The first part of this graduate-level introduction to formal methods develops an understanding of what constitutes formal methods and what their place is in Software Engineering. It also introduces logics as languages to describe reasoning and the process algebra CSP as a language to represent behaviours. The second part offers specification and testing methods for formal development of software, based on the modelling languages CASL and UML. The third part takes the reader into the application domains of normative documents, human machine interfaces, and security. Use of notations and formalisms is uniform throughout the book. Topics and features: Explains foundations, and introduces specification, verification, and testing methods Explores various application domains Presents realistic and practical examples, illustrating concepts Brings together contributions from highly experienced educators and researchers Offers modelling and analysis methods for formal development of software Suitable for graduate and undergraduate courses in software engineering, this uniquely practical textbook will also be of value to students in informatics, as well as to scientists and practical engineers, who want to learn about or work more effectively with formal theories and methods. Markus Roggenbach is a Professor in the Dept. of Computer Science of Swansea University. Antonio Cerone is an Associate Professor in the Dept. of Computer Science of Nazarbayev University, Nur-Sultan. Bernd-Holger Schlingloff is a Professor in the Institut für Informatik of Humboldt-Universität zu Berlin. Gerardo Schneider is a Professor in the Dept. of Computer Science and Engineering of University of Gothenburg. Siraj Ahmed Shaikh is a Professor in the Institute for Future Transport and Cities of Coventry University. The companion site for the book offers additional resources, including further material for selected chapters, prepared lab classes, a list of errata, slides and teaching material, and virtual machines with preinstalled tools and resources for hands-on experience with examples from the book. The URL is: https://sefm-book.github.io