Stephan Goericke Editor the Future of Software Quality Assurance the Future of Software Quality Assurance Stephan Goericke Editor

Total Page:16

File Type:pdf, Size:1020Kb

Stephan Goericke Editor the Future of Software Quality Assurance the Future of Software Quality Assurance Stephan Goericke Editor Stephan Goericke Editor The Future of Software Quality Assurance The Future of Software Quality Assurance Stephan Goericke Editor The Future of Software Quality Assurance Editor Stephan Goericke iSQI GmbH Potsdam Germany Translated from the Dutch Original book: ‘AGILE’, © 2018, Rini van Solingen & Manage- ment Impact – translation by tolingo GmbH, © 2019, Rini van Solingen ISBN 978-3-030-29508-0 ISBN 978-3-030-29509-7 (eBook) https://doi.org/10.1007/978-3-030-29509-7 This book is an open access publication. © The Editor(s) (if applicable) and the Author(s) 2020 Open Access This book is licensed under the terms of the Creative Commons Attribution 4.0 Inter- national License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence and indicate if changes were made. The images or other third party material in this book are included in the book’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the book’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors, and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations. This Springer imprint is published by the registered company Springer Nature Switzerland AG. The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland Foreword In June 2002 David Parnas, one of the pioneers of software engineering, wrote1: Software is well known for low reliability and lack of trustworthiness. In part this is attributable to the difficulty of dealing with the complexity of today’s software systems, but the inadequate knowledge, skills, and professionalism of many of the practitioners also contributes to this problem. Moreover, we can thank the inadequately qualified people who produced today’s software for the unreliability and complexity of the products that serve as support software for new products. Dave sees the inadequate education of the people involved in software develop- ment as a major problem. In the field of software, lifelong education and training is essential to keep up to date with the rapid evolution. iSQI has been dealing with this problem for 15 years now and has certainly contributed in many areas to improving the education of people and thus the quality of the software. The many contributions in this book clearly reflect the numerous ways software quality assurance can play a critical role in multiple areas. About 75 years ago, the first electronic computers were used to calculate mathematical problems—also from the military sector. In the following years, computers increasingly took over routine tasks and tasks that required a high degree of precision. Due to technical progress and the associated speed of the systems, large amounts of data can now be processed and evaluated in a short time. The computer now dominates our everyday lives. It has become indispensable, because without it our life today would no longer be possible. Today we are at a radical turning point. (So-called) artificial intelligence is used in more and more software systems, be it automatic speech processing, autonomous driving or machine learning. In many areas we no longer use software exclusively to make life easier, but also as a tool to help us make decisions or simply delegate decision-making tasks to the software itself. 1https://en.wikipedia.org/wiki/David_Parnas Citation from David Parnas’s preface to the German book Spillner/Linz “Basiswissen Softwaretest”. v vi Foreword So far many of these systems have been used as decisive aids; helping a person to make a more substantiated decision. For example, a physician can have an X-ray image analysed by a system and use the information obtained to make his or her decision. The question arises or will arise: “When is the decision completely left to the system, since the system results show a higher reliability of correctness of the diagnosis than diagnoses of doctors?” In other areas, such as autonomous driving, some decisions have to be made so quickly that they can only be made by the system itself. In fact, it is not the system that decides, but the person who has programmed the system accordingly. At least that’s how it has been so far. When artificial intelligence is used, however, this is no longer definite. With neural networks and deep learning, the results are no longer predictable and therefore no longer depend directly on the programming. These few examples already show how crucial the quality of the systems is and thus the education of the people responsible for the development and testing of these systems. This is why iSQI will continue to be a sought-after partner for further training and certification in the coming years. In addition to well-founded specialist knowledge, ethical issues will have to be the focus of attention in the coming years. How do we as a society—even as humankind—want to deal with the fact that autonomous weapons themselves decide which people are being killed? We must all ask ourselves the question: “Which decisions must still be taken by people and which can we delegate to software systems?” We, as participants in the development of software systems, have a particularly high responsibility for what the near future will look like and where it will go in the coming years. I hope that we will take our responsibility and shape the future positively. GTB, Hochschule Bremen, Bremen, Germany Andreas Spillner July 2019 Preface A Question of Quality Software testing is not a regulated profession. In principle, anybody can become a tester. This was always the case and remains so today. However, there are standards that should apply to all testing professionals and which are a prerequisite for anyone wishing to be taken seriously as a software tester. An early version of a standardized syllabus was developed in 1998 known as the “Certified Tester”. Four years later Austria, Denmark, Finland, Germany, Sweden, Switzerland, the Netherlands and the UK established the International Software ® Qualification Board (ISTQB ) to define and promote a body of knowledge for the profession of software tester. It is one matter to create a set of regulations; it is quite another to ensure that the regulations are observed. This is where a certifying body has a crucial role to play, and hence the International Software Quality Institute (iSQI). Exactly 15 years ago a working group known as ASQF (Arbeitskreis Software-Qualität und -Fortbildung e.V.) established iSQI as an independent body to serve as a safety net and guarantee for an uncompromising and consistent level of quality in the training and certification of specialists throughout the world. In the following 15 years the quality of the profession of software tester has improved immensely. Today there ® are almost 650,000 ISTQB -certified software testers worldwide. Quality Standards Are an Imperative It is the standards maintained by specialists at every level of software production that accelerate improvements in quality. Both functional and non-functional ‘quality’ can only be achieved when people have a sense of what the term ‘quality’ really means and they know what they have to do to achieve this. Yet how can they do this when they have to deal with complicated testing in a limited time? And how vii viii Preface does this work when teams are working all over the globe, in different time zones? How can tests be scheduled, if results have to be delivered within an agile working regime or during the development phase? The testing profession has changed considerably in the last 15 years, and today it faces enormous new challenges. Automation and the use of artificial intelligence have brought changes to methods and to core areas. Here further improvements must be made in training and continuing professional development to develop general and specialist testing skills and competence. The Future Is Before Us Fundamental changes are emerging that will have significant impact on our society in the coming years, and in some cases have already changed it. The response capacity of machines will continue to increase sharply. They will exceed human possibilities many times over. Machines will process data faster, be more mobile and more flexible. Robot axes are already moving autonomously in Phoenix, USA; in Heidelberg, Germany, a trained artificial intelligence system recognizes skin cancer on photographs better than most doctors with average levels of experience. Information is being processed by ever more powerful devices. The results are becoming ever more complex. How can today’s massive data volumes be monitored and controlled by humans? Or, to put it another way, how can a human test a robot that is more ‘intelligent’ than the tester him/herself? The need for continuing professional development will continue to increase.
Recommended publications
  • Agile Methodologies and Extreme Programming Corso Di Laurea
    Agile Methodologies and EXtreme Programming Lecturer: Giuseppe Santucci (Some slides taken from slideshare.net) Outline • Development Methodologies • Agile Development (12 Key Practices) • Extreme Programming (XP) – How does it work ? 2 What is a SE Methodology? • A SE methodology is a rigorously defined process (or set of practices) for creating software – A set of rules you have to follow – A set of conventions the organization decides to follow – A systematical, engineered approach for organizing software projects 3 Agile Development Agile Manifesto “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software“ [Manifesto for Agile] 5 The agile spirit • Incremental – Working software over comprehensive documentation • Cooperation – Customer collaboration over contract negotiation • Straightforward – Individuals and interactions over processes and tools • Adaptive – Responding to change over following a plan 6 Agile Methodologies • eXtreme Programming (XP) • Scrum • Crystal family of methodologies • Feature-Driven Development (FDD) • Adaptive Software Development (ASD) • Dynamic System Development Model (DSDM) • Agile Unified Process (AUP) 7 The XP inventor: Kent Beck • eXtreme Programming – The most prominent agile development methodology Kent Beck 8 The 12 Key Practices 1. Metaphor 2. The Planning Game 3. Test-Driven Development 4. Pair Programming 5. Refactoring 6. Simple Design 7. Collective Ownership 8. Continuous Integration 9. On-site Customer 10. Small Releases 11. 40-Hour Workweek
    [Show full text]
  • Revealing the Secrets of David Parnas
    Revealing the Secrets of David Parnas H. Conrad Cunningham Department of Computer and Information Science University of Mississippi March 7, 2014 Those of us in the fast-changing field of computing often dismiss anything writ- ten more than five years ago as obsolete. Yet several decades-old papers by David L. Parnas [1, 4, 5, 6, 7, 8] are as timely as those published in recent issues of the top journals. Parnas articulates the timeless software design concepts known as information hiding and abstract interfaces. Most programmers would describe a module as a unit of code such as a sub- routine or class. Parnas focuses on the programmers rather than the programs. He defines a module as \a work assignment given to a programmer or group of programmers" as a part of a larger software development project [7]. His goals are to enable programmers to develop each module independently, change one module without affecting other modules, and comprehend the overall system by examining one module at a time [5]. Programmers often design a software system by breaking the required pro- cessing into steps and making each step a module. Instead, Parnas uses in- formation hiding to decompose the system into modules that satisfy his goals (2); each module keeps its own secreta design decision about some aspect of the system (e.g., choice of a data structure). A modules design decision can change but none of the other modules should be affected. If some aspect is unlikely to change, the design can distribute this knowledge across several modules and the interfaces among them.
    [Show full text]
  • Standards Analysis Ict Sector Luxembourg
    Version 6.0 – June 2016 ISSN 2354-483X STANDARDS ANALYSIS ICT SECTOR LUXEMBOURG · V5.0/09.2015 LUXEMBOURG LUXEMBOURG ICT SECTOR ICT CONTACT : ILNAS & ANEC STANDARDS ANALYSIS ANALYSIS STANDARDS Southlane Tower I · 1, avenue du Swing · L-4367 Belvaux Tel. : (+352) 24 77 43 -70 · Fax : (+352) 24 79 43 -70 E-mail : [email protected] ANS/AN03 www.portail-qualite.lu 2015 · © ILNAS/ANEC September Executive summary In 2012 the “Institut Luxembourgeois de la Normalisation, de l’Accréditation, de la Sécurité et qualité des produits et services” (ILNAS) initiated an analysis of European and international standards in the Information and Communication Technology (ICT) sector. The aim of this analysis is to develop an information and exchange network for ICT standardization knowledge in the Grand Duchy of Luxembourg. Since 2013, this analysis has been carried out in the frame of the implementation of the “Luxembourg’s policy on ICT technical standardization” (which was last updated in 2015)1. The ICT sector is already an active sector at the national standardization level with 65 national delegates currently registered by ILNAS2. These delegates are involved in standardization technical committees to participate actively and follow closely the work performed at international level and have the task of ensuring that the views and positions of Luxembourg are understood and known by the technical committees. ILNAS is convinced that this sector could be even more active, especially since some ICT subsectors do not yet benefit from a sufficient representation of national delegates (e.g.: Internet of Things, Cloud Computing, Big Data, Smart Cities). Thus, the purposes of this analysis are firstly, to provide useful information to national stakeholders regarding standardization activities in the field of ICT and secondly, to involve them into an integrated and innovative approach of standardization.
    [Show full text]
  • Agile Practices in Commercial Saas Teams
    SAMINT-MILI 2036 Master’s Thesis 30 credits May 2020 Agile Practices in Commercial SaaS Teams A case study on the adoption of agile practices in non-software teams Bruno Petersen Master’s Programme in Industrial Management and Innovation Masterprogram i industriell ledning och innovation Abstract Agile Practices in Commercial SaaS Teams Bruno Petersen Faculty of Science and Technology Agile software development methods have seen great success in software Visiting address: Ångströmlaboratoriet teams. Research on the topic of adopting agile methods in development teams Lägerhyddsvägen 1 is extensive. In the literature key enabling factors are identified and numerous House 4, Level 0 benefits of agile ways of working are named. Less attention has been payed to Postal address: the non-software functions in software development organizations, though. Box 536 Moreover, little is known about how well the enabling factors and benefits for 751 21 Uppsala software teams translate to other teams in the organization. The goal of this Telephone: study is to evaluate what benefits agile methods provide to non-software teams, +46 (0)18 – 471 30 03 whether the enabling factors are similar and what the challenges and drawbacks Telefax: for adopting agile methods in commercial teams are. Using the case of the +46 (0)18 – 471 30 00 Swedish Software-as -a-Service company Funnel, which introduced agile Web page: practices into their commercial teams, these questions are tackled. The study http://www.teknik.uu.se/student-en/ finds that knowledge transfer and governance are core areas that need to be engaged in during the adoption process. With decisions being made more autonomously ensuring the exchange of relevant information is crucial.
    [Show full text]
  • Agile-Methodologies-And-Extreme
    Agile Development and Extreme Programming Rouhollah Rahmati & Sina Khankhajeh Department of Computer Engineering Sharif University of Technology Agenda • Development Methodologies • Agile Development • Extreme Programming (XP) • In Practise • Develop Your Own Methodology Development Methodologies What is a Methodology? • A methodology is a formalized process or set of practices for creating software • A set of rules you have to follow • A set of conventions the organization decides to follow • unlike method • which systematically details a given procedure or process • Software development methodology • framework acts as a basis for applying specific approaches to develop and maintain software The Waterfall Development Process The Waterfall Process • The traditional development process: Software Requirements Analysis Design Implementation • Or at worst … Testing maintenance • But this always ends up happening! Agile Development Agile Manifesto “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software“ [Manifesto for Agile] principles underlie the Agile Manifesto • Welcome changing requirements, even late in development • Working software is delivered frequently (weeks rather than months) • Working software is the principal measure of progress • Close, daily co-operation between business people and developers principles underlie the Agile Manifesto (continued) • Face-to-face conversation is the best form of communication (co-location) • Projects are built around motivated individuals, who
    [Show full text]
  • Standards Analysis Ict Sector Luxembourg
    Version 5.0 – September 2015 ISSN 2354-483X STANDARDS ANALYSIS ICT SECTOR LUXEMBOURG · V5.0/09.2015 LUXEMBOURG LUXEMBOURG ICT SECTOR ICT CONTACT : ILNAS & ANEC STANDARDS ANALYSIS ANALYSIS STANDARDS Southlane Tower I · 1, avenue du Swing · L-4367 Belvaux Tel. : (+352) 24 77 43 -70 · Fax : (+352) 24 79 43 -70 E-mail : [email protected] ANS/AN03 www.portail-qualite.lu 2015 · © ILNAS/ANEC September Executive summary The “Institut Luxembourgeois de la Normalisation, de l’Accréditation, de la Sécurité et qualité des produits et services” (ILNAS) has inititated in 2012 an analysis of European and international standards in the Information and Communication Technology (ICT) sector. This analysis intends to develop an information and exchange network for ICT standardization knowledge in the Grand Duchy of Luxembourg. Since 2013, this analysis has been carried out in the frame of the implementation of the “Luxembourg’s policy on ICT technical standardization” (which was last updated in 2015)1. The ICT sector is already an active sector at the national standardization level with 53 national delegates currently registered by ILNAS. These delegates are involved in standardization technical committees to participate actively and follow closely the work performed at international level and have the task of ensuring that the views and positions of the country are understood and known by the technical committees. ILNAS is convinced that this sector could be even more active, especially since some ICT subsectors do not yet have national delegates (e.g.: Sensor Networks, Internet of Things). Thus, the purposes of this analysis are firstly, to provide useful information to national stakeholders regarding standardization activities in the field of ICT and secondly, to involve them into an integrated and innovative approach of standardization.
    [Show full text]
  • Keeping Secrets Within a Family: Rediscovering Parnas
    Keeping Secrets within a Family: Rediscovering Parnas H. Conrad Cunningham Cuihua Zhang Yi Liu Computer Science Computer & Information Systems Computer Science University of Mississippi Northwest Vista College University of Mississippi University, MS, 38677 San Antonio, TX 78251 University, MS 38677 Abstract of related programs. The motivation for product lines and frameworks is to take advantage of the David Parnas wrote several papers in the 1970’s commonalities among the members of the product line and 1980’s that are now considered classics. The to lower the overall cost of producing and maintaining concepts he advocated such as information hiding and a group of related software systems. use of abstract interfaces are generally accepted as Since the foundation of software product lines and the appropriate way to design nontrivial software frameworks is what Parnas proposed in his papers, an systems. However, not all of what he proposed has examination of the concepts in these papers (collected been fully appreciated and assimilated into our in [5]) can still reveal much of value to current-day practices. Many of his simple, elegant ideas have software developers and researchers. Many of the been lost amongst the hype surrounding the lessons taught in these works should also be technologies and methods that have arisen in the past incorporated into our college-level teaching. two decades. This paper examines Parnas’s ideas, This paper examines several of the lessons on the especially his emphasis on program families, and design of program families taught by Parnas that are proposes that college-level computing science and still important for contemporary students to learn.
    [Show full text]
  • Industrial Automation
    ISO Focus The Magazine of the International Organization for Standardization Volume 4, No. 12, December 2007, ISSN 1729-8709 Industrial automation • Volvo’s use of ISO standards • A new generation of watches Contents 1 Comment Alain Digeon, Chair of ISO/TC 184, Industrial automation systems and integration, starting January 2008 2 World Scene Highlights of events from around the world 3 ISO Scene Highlights of news and developments from ISO members 4 Guest View ISO Focus is published 11 times Katarina Lindström, Senior Vice-President, a year (single issue : July-August). It is available in English. Head of Manufacturing in Volvo Powertrain and Chairman of the Manufacturing, Key Technology Committee Annual subscription 158 Swiss Francs Individual copies 16 Swiss Francs 8 Main Focus Publisher • Product data – ISO Central Secretariat Managing (International Organization for information through Standardization) the lifecycle 1, ch. de la Voie-Creuse CH-1211 Genève 20 • Practical business Switzerland solutions for ontology Telephone + 41 22 749 01 11 data exchange Fax + 41 22 733 34 30 • Modelling the E-mail [email protected] manufacturing enterprise Web www.iso.org • Improving productivity Manager : Roger Frost with interoperability Editor : Elizabeth Gasiorowski-Denis • Towards integrated Assistant Editor : Maria Lazarte manufacturing solutions Artwork : Pascal Krieger and • A new model for machine data transfer Pierre Granier • The revolution in engineering drawings – Product definition ISO Update : Dominique Chevaux data sets Subscription enquiries : Sonia Rosas Friot • A new era for cutting tools ISO Central Secretariat • Robots – In industry and beyond Telephone + 41 22 749 03 36 Fax + 41 22 749 09 47 37 Developments and Initiatives E-mail [email protected] • A new generation of watches to meet consumer expectations © ISO, 2007.
    [Show full text]
  • Continuous Delivery
    Continuous Quality Improvement Vijay kumar Vankamamidi Joseph Eapen Ebin John Poovathany Delivery Quality Goal Faster Time to Market Reduce Risk Build software that is production ready at all times Frequent, low risk Fast feedback, Built-in Software visibility and Quality releases control 2 Agile development philosophy > The process for releasing/deploying software must be repeatable and reliable. > Build quality in! > Automate everything! > Done means “potentially shippable”. - Complete PSR > Everybody has responsibility for quality. > Improve continuously. 3 Continuous Quality Improvement People, Process & Systems Communities of practice for continuous learning (Design, Coding, Testing) Software Craftsmanship Product Business Functional B A / Developer Field / IT Ops Customer Director Analyst Architect Tester Product Design, Coding Customer Release and Customer Need Requirement Requirement High level Testing Director and testing Validation deployment Collection Analysis Design Validation Agile Methodologies DevOps ( Development, IT Operations, and Support) Standardize the frameworks Hygiene factors like Definition of Done Establish a standard Continuous Continuous Improvement culture Integration Framework 4 Agile Methodologies Focus on People & Process 5 Quality through Agile > Standardize the frameworks (Scrum, Kanban and Scrumban) - Bring in common understanding of Agile - Informal learning opportunities > Hygiene practices - Constructive partnership with customer • Product vision and Requirement clarity - Definition of Done • User
    [Show full text]
  • Automated Software Process Performance Analysis and Improvement Recommendation
    FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO Automated Software Process Performance Analysis and Improvement Recommendation Mushtaq Raza MAP-i Doctoral Program in Computer Science Supervisor: João Pascoal Faria June 27, 2017 c Mushtaq Raza, 2017 Automated Software Process Performance Analysis and Improvement Recommendation Mushtaq Raza MAP-i Doctoral Program in Computer Science Dissertation submitted to the Faculty of Engineering, University of Porto in partial fulfillment of the requirements for the degree of Doctor of Philosophy Approved by: President: Dr. Eugénio da Costa Oliveira Referee: Dr. António Manuel Ferreira Rito da Silva Referee: Dr. Paulo Jorge dos Santos Gonçalves Ferreira Referee: Dr. Fernando Manuel Pereira da Costa Brito e Abreu Referee: Dr. Ademar Manuel Teixeira de Aguiar Supervisor: Dr. João Pascoal Faria June 27, 2017 Abstract Software development processes can generate significant amounts of data that can be periodically analyzed to identify performance problems, determine their root causes and devise improvement actions. However, there is a lack of methods and tools for helping in that kind of analysis. Con- ducting the analysis manually is challenging because of the potentially large amount of data to analyze, the effort and expertise required and the lack of benchmarks for comparison. Hence, the goal of this dissertation is to develop methods, models and tools for automating the analysis of process performance data and identifying and ranking performance problems and their root causes, reducing effort and errors and improving user satisfaction as compared to previous approaches. The main contributions of the dissertation are a novel method for process performance analysis and improvement recommendation (the ProcessPAIR method), a support tool (the ProcessPAIR tool), and a performance model for instantiating ProcessPAIR for the Personal Software Process (the ProcessPAIR model for the PSP).
    [Show full text]
  • Artificial Intelligence Standardization White Paper (2018 Edition) 2018
    Translation The following government-issued white paper describes China's approach to standards-setting for artificial intelligence. Appendices list all of China's current (as of January 2018) and planned AI standardization protocols, and provide examples of applications of AI by China's leading tech companies. Title Artificial Intelligence Standardization White Paper (2018 Edition) 2018 Author China Electronics Standardization Institute (CESI; ; ) is the "compiling unit" () for this white paper. The 2nd Industrial Department () of the Standardization Administration of China (SAC; ) is the "guidance unit" () for this white paper. Source CESI website, January 24, 2018. CESI is a think tank subordinate to the PRC Ministry of Industry and Information Technology (MIIT; ); CESI is also known as the 4th Electronics Research Institute (; ) of MIIT. SAC is a component of the PRC State Administration for Market Regulation (), a ministry-level agency under China's cabinet, the State Council. The Chinese source text is available online at: http://www.cesi.cn/images/editor/20180124/20180124135528742.pdf Translation Date Translator Editor May 12, 2020 Etcetera Language Group, Inc. Ben Murphy, CSET Translation Lead Contributing institutions (in no particular order) China Electronics Standardization Institute Shanghai Development Center of Computer (CESI) Software Technology Institute of Automation, Chinese Academy Shanghai Xiao-i Robot Technology Co., Ltd. of Sciences Beijing Institute of Technology Beijing iQIYI Technology Co., Ltd. Tsinghua University Beijing Yousheng Zhiguang Technology Co., Ltd. (mavsyin) Peking University Extreme Element (Beijing) Intelligent Technology Co., Ltd. Renmin University of China Beijing ByteDance Technology Co., Ltd. Beihang University Beijing Sensetime Technology Development Co., Ltd. iFLYTEK Co., Ltd. Zhejiang Ant Small and Micro Financial Services Group Co., Ltd.
    [Show full text]
  • Systems Development Life Cycle
    Systems Development Life Cycle From Wikipedia, the free encyclopedia Jump to: navigation, search For other uses, see SDLC (disambiguation). Model of the Systems Development Life Cycle with the Maintenance bubble highlighted. The Systems Development Life Cycle (SDLC), or Software Development Life Cycle in systems engineering, information systems and software engineering, is the process of creating or altering systems, and the models and methodologies that people use to develop these systems. The concept generally refers to computer or information systems. In software engineering the SDLC concept underpins many kinds of software development methodologies. These methodologies form the framework for planning and controlling the creation of an information system[1]: the software development process. Contents y 1 Overview y 2 History y 3 Systems development phases o 3.1 Requirements gathering and analysis o 3.2 Design o 3.3 Build or coding o 3.4 Testing o 3.5 Operations and maintenance y 4 Systems development life cycle topics o 4.1 Management and control o 4.2 Work breakdown structured organization o 4.3 Baselines in the SDLC o 4.4 Complementary to SDLC y 5 Strengths and weaknesses y 6 See also y 7 References y 8 Further reading y 9 External links [edit] Overview Systems and Development Life Cycle (SDLC) is a process used by a systems analyst to develop an information system, including requirements, validation, training, and user (stakeholder) ownership. Any SDLC should result in a high quality system that meets or exceeds customer expectations, reaches completion within time and cost estimates, works effectively and efficiently in the current and planned Information Technology infrastructure, and is inexpensive to maintain and cost-effective to enhance.[2] Computer systems are complex and often (especially with the recent rise of Service-Oriented Architecture) link multiple traditional systems potentially supplied by different software vendors.
    [Show full text]