Application Lifecycle Management Solutions

Total Page:16

File Type:pdf, Size:1020Kb

Application Lifecycle Management Solutions MASARYK UNIVERZITY FACULTY OF INFORMATICS Master’s Thesis Application Lifecycle Management Solutions Bc. Martin Procháska Brno, 2012 Declaration I declare that this thesis is my original copyrighted work, which I developed alone. All resources, sources, and literature, which I used in preparing or I drew on them, I quote in the thesis properly with stating the full reference to the source. In Brno, 8th January, 2012 …………………………..…. Bc. Martin Procháska Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. V Brně, 8. ledna, 2012 …………………………..…. Bc. Martin Procháska Acknowledgment Firstly I would like to express my gratitude to my supervisor, RNDr. Ondřej Skřehota, for his valuable comments and remarks which he provided me with during the numerous consultations. Secondly, I would like to also thank to Mr. Andreas Schmidt, Quality Manager for Siemens AG ICMOL CTE ITS R&D, who was willing to consult my thesis externally. Lastly, I would like to thank to my girlfriend and family for being supportive. Dedication I dedicate my work to Mr. President Václav Havel, who brought democracy to Czech Republic and enabled us to live, work and study freely. We will never be able to thank him enough. 5. 10. 1936 - 18. 12. 2011 Abstract This thesis presents the Application Lifecycle Management /ALM/ concept and maps the related areas of software development as well as their specific requirements for ALM solution. It discusses the aspects of ALM solution software implementation and also outlines the possible adoption process together with connected issues. In the second part, the current software market is sought for notable ALM software products. The selected products are analyzed for their structure and integration possibilities based on publically available information. Shrnutí Tato práce prezentuje koncept zvaný „Application Lifecycle Management“ a mapuje relevantní oblasti softwarového vývoje včetně specifických požadavků pro ALM řešení. Dále jsou diskutovány aspekty softwarových implementací ALM řešení a je nastíněn proces osvojení spolu s možnými problémy. V druhé části práce jsou uvedeny významné ALM produkty nalezené na základě průzkumu trhu a je analyzována jejich struktura a možnosti integrace. Keywords Application Lifecycle Management, ALM, Software Development, Software Development Lifecycle, Software Development Support, Software Project Management, Agile Development, Compliance, Traceability, Integration Klíčová slova Application Lifecycle Management, ALM, softwarový vývoj, životní cyklus softwarového vývoje, podpora softwarového vývoje, řízení softwarového projektu, agilní vývoj, shoda, sledovatelnost, integrace Contents 1. Introduction ................................................................... 11 1.1. Chapter Overview......................................................................... 12 1.2. Objective ..................................................................................... 12 2. Software Development History and Evolution .................. 13 2.1. Beginnings ................................................................................... 13 2.2. Software Development Lifecycle ................................................... 13 2.3. Waterfall Methodology ................................................................ 13 2.4. Iterative and Incremental Development ....................................... 14 2.5. Agile Methodologies .................................................................... 15 2.6. The Necessity of Global Concept ................................................... 15 2.6.1. Connecting the Companies’ Universe ..................................... 16 2.6.2. Keeping the Agile Under Control ............................................ 16 3. Application Lifecycle Management Goals ......................... 17 3.1. Addressed Issues .......................................................................... 17 3.1.1. Poor Traceability between Related Work Artifacts .................. 17 3.1.2. The Lack of a Broader View .................................................... 18 3.1.3. Insufficient Communication and Poor Knowledge Gathering ... 18 3.1.4. Inflexible Synchronization of Dependent Tasks ....................... 18 3.1.5. Difficult Collaboration ............................................................ 19 3.2. Key Goals of ALM ......................................................................... 19 4. Areas Covered by ALM .................................................... 20 4.1. Project and Portfolio Management ............................................... 20 4.2. Reporting ..................................................................................... 21 4.3. Requirements Management ......................................................... 22 4.4. Development / Implementation .................................................... 22 4.5. Software Configuration Management ........................................... 23 4.6. Test Management, Test Automation and Quality Management ..... 25 4.7. Defect Tracking and Product/ Service Support .............................. 26 4.8. Customer Relationship Management ............................................ 27 4.9. Documentation / Collaboration .................................................... 27 4.10. Build and Release Management / Continuous Integration ............. 28 5. ALM Software Implementations ...................................... 30 5.1. Solution Architecture ................................................................... 30 5.1.1. Monolithic ............................................................................. 30 5.1.2. Point-to-Point Integration ...................................................... 31 5.1.3. ALM Integration Hub .............................................................. 31 5.1.4. ALM Framework ..................................................................... 32 5.2. ALM Solution Product Aspects ...................................................... 33 5.2.1. Single-Vendor and Multi-Vendor ............................................ 33 5.2.2. Software as a Service ............................................................. 33 5.2.3. Open Source .......................................................................... 33 5.3. Integration ................................................................................... 35 5.3.1. Integration Attributes ............................................................ 35 5.3.2. Integration Technologies ........................................................ 36 6. ALM Adoption ................................................................ 37 6.1. Motivation for ALM Adoption ....................................................... 37 6.2. Pitfalls of ALM Adoption ............................................................... 38 6.3. Rollout Strategies ......................................................................... 39 6.3.1. “Rip and Replace” .................................................................. 39 6.3.2. Migration ............................................................................... 39 6.3.3. Integration ............................................................................. 40 6.4. Goals of ALM Adoption ................................................................. 40 6.5. ALM Adoption Process.................................................................. 40 7. Comparison of Selected ALM Solutions ............................ 42 7.1. Comparison Profile ....................................................................... 42 7.1.1. Focused ALM Customers ........................................................ 42 7.1.2. Selection Criteria ................................................................... 42 7.1.3. Comparison Criteria ............................................................... 42 7.1.4. Data Actuality Disclaimer ....................................................... 42 7.2. Selected ALM Solutions ................................................................ 43 7.2.1. Atlassian JIRA, Confluence, FishEye and Bamboo .................... 44 7.2.2. CollabNet TeamForge and ScrumWorks Pro ............................ 46 7.2.3. HP Application Lifecycle Management 11.00 .......................... 48 7.2.4. IBM Rational Solution for Collaborative Lifecycle Mgmt. ......... 50 7.2.5. IkanALM ................................................................................ 52 7.2.6. Kovair ALM Studio and Omnibus Integrations Middleware ...... 54 7.2.7. Microsoft Visual Studio Application Lifecycle Management .... 56 7.2.8. OpsHub Integration Manager & Analytics Manager ................ 58 7.2.9. Parasoft Concerto .................................................................. 60 7.2.10. Polarion ALM ......................................................................... 62 7.2.11. PTC MKS Integrity .................................................................. 64 7.2.12. Rally Unlimited Edition ........................................................... 66 7.2.13. Rocket Aldon ALM products ................................................... 68 7.2.14. Seapine ALM .......................................................................... 70 7.2.15. Serena Orchestrated Application Delivery .............................. 72 7.2.16. SmartBear
Recommended publications
  • PTC Integrity™ Lifecycle Manager™
    PTC Integrity ™ Lifecycle Manager™ The PTC Integrity product family helps organizations accelerate product innovation by reducing complexity, improving collaboration, and automating best practices for software and systems engi- neering. PTC Integrity Lifecycle Manager, a member of the Integrity family, is a flexible, process-based ALM (Application Lifecycle Management) platform that helps teams deliver higher quality, more innovative software with less risk. In today’s world, the demand for smarter, more With seamless, collaborative management of all activi- connected products is increasingly fulfilled through ties and assets, the PTC Integrity Lifecycle Manager software. Software – whether embedded in a product platform helps software engineering teams achieve or providing supporting functionality – is key to driving greater transparency, better productivity and shorter product differentiation and profitability. PTC Integrity cycle times across the entire development lifecycle. Lifecycle Manager provides a global software devel- opment platform that supports all activities and What Makes Integrity Different? assets associated with the engineering and delivery of applications and embedded software. Business All too often, organizations struggle to gain an end- analysts, architects, engineers, developers, quality to-end view of software assets that span multiple managers, testers, partners/suppliers and other tools, with meta-data stored in multiple, disjointed stakeholders all use PTC Integrity Lifecycle Manager repositories. The result is a lack of visibility and as the means for collaboration and control over the traceability across the lifecycle, higher defects and end-to-end development lifecycle. longer development cycles. Our solution provides a unified, global software development platform that supports all activities and assets associated with the engineering and delivery of applications and products.
    [Show full text]
  • How to Select a Suitable Tool for a Software Development Project
    HowtoSelect aSuitable Tool foraSoftwareDevelopment Project: Three Case Studies and the Lessons Learned Mark Kibanov, Dominik J. Erdmann, Martin Atzmueller Knowledge and Data Engineering Group, University of Kassel, Germany {kibanov, erdmann, atzmueller}@cs.uni-kassel.de Abstract: This paper describes aframework for evaluating and selecting suitable soft- ware tools for asoftware project, which is easily extendable depending on needs of the project. Foranevaluation, we applied the presented framework in three different projects. These projects use different software development methods (from classical models to Scrum) in different environments (industry and academia). We discuss our experiences and the lessons learned. 1Introduction With the growth of the software industry the number of software products (programs, tools, frameworks) with similar functions has also increased. Therefore, the process of selection of the required software has also become more complex. In this paper,weintroduce a general three-step framework for selecting suitable software for the current project and environment. Furthermore, we describe the application of the framework to three different software projects: These use different software development methods and environments. All three case studies showpromising results and indicate the possibility to apply the suggested framework for awide range of different projects. In these contexts, we discuss our experiences and the lessons learned. The rest of the paper is structured as follows: Section 2discusses related work. After that, Section 3presents the framework, its advantages, disadvantages and the three distinct steps of selecting the software tools. Section 4describes three case studies where we applied the framework and the results we obtained during these case studies. 2Related Work Starting in 1980 with [Saa80], Thomas L.
    [Show full text]
  • Webnet 2000 World Conference on the WWW and Internet Proceedings (San Antonio, Texas, October 30-November 4Th, 2000)
    DOCUMENT RESUME ED 448 744 IR 020 507 AUTHOR Davies, Gordon, Ed.; Owen, Charles, Ed. TITLE WebNet 2000 World Conference on the WWW and Internet Proceedings (San Antonio, Texas, October 30-November 4th, 2000) . INSTITUTION Association for the Advancement of Computing in Education, Charlottesville, VA. ISBN ISBN-1-880094-40-1 PUB DATE 2000-11-00 NOTE 1005p.; For individual papers, see IR 020 508-527. For the 1999 conference, see IR 020 454. AVAILABLE FROM Association for the Advancement of Computing in Education (AACE), P.O. Box 3728, Norfolk, VA 23514-3728; Web site: http://www.aace.org. PUB TYPE Collected Works Proceedings (021) EDRS PRICE MF07/PC41 Plus Postage. DESCRIPTORS *Computer Uses in Education; Courseware; Distance Education; *Educational Technology; Electronic Libraries; Electronic Publishing; *Information Technology; Internet; Multimedia Instruction; Multimedia Materials; Postsecondary Education; *World Wide Web IDENTIFIERS Electronic Commerce; Technology Utilization; *Web Based Instruction ABSTRACT The 2000 WebNet conference addressed research, new developments, and experiences related to the Internet and World Wide Web. The 319 contributions of WebNet 2000 contained in this proceedings comprise the full and short papers accepted for presentation at the conference, as well as poster/demonstration abstracts. Major topics covered include: commercial, business, professional, and community applications; education applications; electronic publishing and digital libraries; ergonomic, interface, and cognitive issues; general Web tools and facilities; medical applications of the Web; \personal applications and environments;, societal issues, including legal, standards, and international issues; and Web technical facilities. (MES) Reproductions supplied by EDRS are the best that can be made from the original document. Web Net 2 World Conference Alb U.S.
    [Show full text]
  • List of New Applications Added in ARL #2603
    List of New Applications Added in ARL #2603 Application Name Publisher DataConnect 11.5 Actian Source Sans Pro 1.0 Adobe PDF Broker Process for Internet Explorer 21.1 Adobe Creative Suite CS6 Standard Adobe Collaboration Synchronizer 20.1 Adobe Collaboration Synchronizer 21.1 Adobe Connect 2020.12 Adobe AD Group Manager 1.1 Albus Bit AD Group Manager 1.2 Albus Bit Query Reporter 3.3 Allround Automations Monarch 13.0 Classic Altair Engineering IMAGEPro 1.1 AMETEK CrystalControl 2.1 AMETEK NekoHTML 1.9 Andy Clark Sherlock 6.2 Ansys Flash Banner Maker 1.0 Anvsoft Any Video Converter 5.5 Anvsoft TomeePlus 9.0 Apache Software Foundation Falcon 0.1 Apache Software Foundation JaxMe 0.5 Apache Software Foundation A-PDF Split A-PDF.com WealthTrack 9.0 Applied Systems Call Status Report 1.0 Aspect Software Inbound 7.3 Aspect Software CLIQ Web Manager 9.2 ASSA ABLOY CLIQ Web Manager 8.0 ASSA ABLOY Centerprise Data Integrator 7.6 Astera Software Bitbucket 2.0 Atlassian Jira Capture Chrome 1.0 Atlassian AudaEnterprise 4.0 Audatex Encode And Decode Files - Base64 1.0 Automation Anywhere Expert PDF 14.0 Avanquest Software ASG Plugin Avaya Discovery Tool 3.3 AvePoint DocAve 6.6 AvePoint DocAve 6.12 AvePoint DocAve 6.11 AvePoint DocAve 6.3 AvePoint DocAve 6.8 AvePoint DocAve 6.9 AvePoint FLY 4.5 AvePoint Wonderware Application Server Client 2020 AVEVA Group Cloud for Business On-Premises 2.0 Axure Software Solutions Automator 4.5 Axway Convene 5.8 Azeus Zulu 8.50 Azul Systems Zulu 11.35 Azul Systems Zulu 8.48 Azul Systems Zulu 15.28 Azul Systems Zulu
    [Show full text]
  • Command Line Interface
    Command Line Interface Squore 21.0.2 Last updated 2021-08-19 Table of Contents Preface. 1 Foreword. 1 Licence. 1 Warranty . 1 Responsabilities . 2 Contacting Vector Informatik GmbH Product Support. 2 Getting the Latest Version of this Manual . 2 1. Introduction . 3 2. Installing Squore Agent . 4 Prerequisites . 4 Download . 4 Upgrade . 4 Uninstall . 5 3. Using Squore Agent . 6 Command Line Structure . 6 Command Line Reference . 6 Squore Agent Options. 6 Project Build Parameters . 7 Exit Codes. 13 4. Managing Credentials . 14 Saving Credentials . 14 Encrypting Credentials . 15 Migrating Old Credentials Format . 16 5. Advanced Configuration . 17 Defining Server Dependencies . 17 Adding config.xml File . 17 Using Java System Properties. 18 Setting up HTTPS . 18 Appendix A: Repository Connectors . 19 ClearCase . 19 CVS . 19 Folder Path . 20 Folder (use GNATHub). 21 Git. 21 Perforce . 23 PTC Integrity . 25 SVN . 26 Synergy. 28 TFS . 30 Zip Upload . 32 Using Multiple Nodes . 32 Appendix B: Data Providers . 34 AntiC . 34 Automotive Coverage Import . 34 Automotive Tag Import. 35 Axivion. 35 BullseyeCoverage Code Coverage Analyzer. 36 CANoe. 36 Cantata . 38 CheckStyle. ..
    [Show full text]
  • Meister® Insight Enterprise Development and Lifecycle Challenges
    Meister ® Take Control of Your Build Process ® ® OpenMake Meister enables development teams to control the software build process, providing standardization, acceleration, and auditing. Meister delivers speed, transparency, consistency and repeatability across the soft- ware development lifecycle. Meister saves time and money by shortening development cycles and consolidating time consuming redundant tasks. With Meister, organizations have a simplified process for managing the applica- tion build across diverse languages and platforms. Standardized Build Best Practices Meister is the only solution that gives you complete Meister Build Automation control over the software build. It manages depen- dencies, automatically generates build scripts, exe- cutes accelerated, incremental builds, and provides Build Acceleration detailed audit reports. Meister replaces expensive By directing calculating and managing software de- to maintain homegrown and open source build sys- pendencies, Meister accelerates builds, enabling tems with standardized build services for integrating, teams to implement agile and other fast-moving compilers, linkers, archive tools and other common development processes. Builds are further acceler- development tools into a seamless distributed life- ated by Meister, which can determine which build cycle management system. Teams benefit by imple- tasks can be run in parallel – taking full advan- menting build best practices in a standardized way tage of separate processors on multi-core machine across all languages and platforms. Meister is also hardware. With Meister, agile teams can achieve a programmable environment, so build engineers 10 minute incremental builds for most projects, en- can use the Meister API to develop custom Build suring that continuous integration and unit testing Services that tightly integrate their particular combi- runs smoothly and efficiently for maximum benefit.
    [Show full text]
  • Udeploy® Administration Guide 4.8.5 Udeploy Administration Guide: 4.8.5
    uDeploy® Administration Guide 4.8.5 uDeploy Administration Guide: 4.8.5 Publication date August 2013 Copyright © 2011, 2013 UrbanCode, an IBM Company, Inc. About ............................................................................................................................... 1 Product Documentation ............................................................................................... 1 Product Support ......................................................................................................... 1 Document Conventions ................................................................................................ 1 Documentation notices for IBM uDeploy ................................................................................ 2 Installing and Upgrading Servers and Agents .......................................................................... 5 Installation Recommendations ....................................................................................... 6 System Requirements .................................................................................................. 6 Server Minimum Installation Requirements ............................................................. 6 Recommended Server Installation .......................................................................... 6 Agent Minimum Requirements ............................................................................. 7 32- and 64-bit JVM Support ................................................................................
    [Show full text]
  • ® Voke Research
    voke Research MARKET MOVER ARRAY™ REPORT: Service Virtualization By Theresa Lanowitz, Lisa Dronzek | September 26, 2018 Vendor Excerpt The completeclients publication at www.vokeinc.com is available to voke. Research ® Moving markets beyond the status quo! voke Research MARKET MOVER ARRAY™ REPORT: Service Virtualization By Theresa Lanowitz, Lisa Dronzek | September 26, 2018 ~ SUMMARY ~ TABLE OF CONTENTS Service virtualization is a powerful, Executive Overview 2 proven, and collaborative technology • Business Context 2 that enables software engineering • Technology Overview 2 teams to more accurately model • Market Status 3 the real-life behavior of software Market Mover Array Methodology 4 prior to production. By removing Market Mover Array Chart 6 the constraints and wait time for Market Mover Array Vendors 6 assets to be complete and available, • CA Technologies 9 service virtualization solutions deliver • IBM 11 on the promise of better business • Micro Focus 13 outcomes. Your teams can work • Parasoft 15 faster, release more • SmartBear 17 reliable software, • Tricentis 19 and delight the Related Research 21 business. • Market Specific 21 • Vendor Specific 21 • Book 21 © 2018 voke media, llc. All rights reserved. voke is a trademark of voke media, llc. and is registered in the U.S. All other trademarks are the property of their respective companies. Reproduction or distribution of this document except as expressly provided in writing by voke is strictly prohibited. Opinions reflect judgment at the time and are subject to change without notice. voke disclaims all warranties as to the accuracy, completeness or adequacy of information and shall have no liability for errors, omissions or inadequacies in the information contained or for interpretations thereof.
    [Show full text]
  • A Framework and Tool Supports for Generating Test Inputs of Aspectj Programs
    A Framework and Tool Supports for Generating Test Inputs of AspectJ Programs Tao Xie Jianjun Zhao Department of Computer Science Department of Computer Science & Engineering North Carolina State University Shanghai Jiao Tong University Raleigh, NC 27695 Shanghai 200240, China [email protected] [email protected] ABSTRACT 1. INTRODUCTION Aspect-oriented software development is gaining popularity with Aspect-oriented software development (AOSD) is a new tech- the wider adoption of languages such as AspectJ. To reduce the nique that improves separation of concerns in software develop- manual effort of testing aspects in AspectJ programs, we have de- ment [9, 18, 22, 30]. AOSD makes it possible to modularize cross- veloped a framework, called Aspectra, that automates generation of cutting concerns of a software system, thus making it easier to test inputs for testing aspectual behavior, i.e., the behavior imple- maintain and evolve. Research in AOSD has focused mostly on mented in pieces of advice or intertype methods defined in aspects. the activities of software system design, problem analysis, and lan- To test aspects, developers construct base classes into which the guage implementation. Although it is well known that testing is a aspects are woven to form woven classes. Our approach leverages labor-intensive process that can account for half the total cost of existing test-generation tools to generate test inputs for the woven software development [8], research on testing of AOSD, especially classes; these test inputs indirectly exercise the aspects. To enable automated testing, has received little attention. aspects to be exercised during test generation, Aspectra automati- Although several approaches have been proposed recently for cally synthesizes appropriate wrapper classes for woven classes.
    [Show full text]
  • Parasoft Dottest REDUCE the RISK of .NET DEVELOPMENT
    Parasoft dotTEST REDUCE THE RISK OF .NET DEVELOPMENT TRY IT https://software.parasoft.com/dottest Complement your existing Visual Studio tools with deep static INCREASE analysis and advanced PROGRAMMING EFFICIENCY: coverage. An automated, non-invasive solution that the related code, and distributed to his or her scans the application codebase to iden- IDE with direct links to the problematic code • Identify runtime bugs without tify issues before they become produc- and a description of how to fix it. executing your software tion problems, Parasoft dotTEST inte- grates into the Parasoft portfolio, helping When you send the results of dotTEST’s stat- • Automate unit and component you achieve compliance in safety-critical ic analysis, coverage, and test traceability testing for instant verification and industries. into Parasoft’s reporting and analytics plat- regression testing form (DTP), they integrate with results from Parasoft dotTEST automates a broad Parasoft Jtest and Parasoft C/C++test, allow- • Automate code analysis for range of software quality practices, in- ing you to test your entire codebase and mit- compliance cluding static code analysis, unit testing, igate risks. code review, and coverage analysis, en- abling organizations to reduce risks and boost efficiency. Tests can be run directly from Visual Stu- dio or as part of an automated process. To promote rapid remediation, each problem detected is prioritized based on configur- able severity assignments, automatical- ly assigned to the developer who wrote It snaps right into Visual Studio as though it were part of the product and it greatly reduces errors by enforcing all your favorite rules. We have stuck to the MS Guidelines and we had to do almost no work at all to have dotTEST automate our code analysis and generate the grunt work part of the unit tests so that we could focus our attention on real test-driven development.
    [Show full text]
  • Altova Umodel 2012 User & Reference Manual
    User and Reference Manual Altova UModel 2012 User & Reference Manual All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the written permission of the publisher. Products that are referred to in this document may be either trademarks and/or registered trademarks of the respective owners. The publisher and the author make no claim to these trademarks. While every precaution has been taken in the preparation of this document, the publisher and the author assume no responsibility for errors or omissions, or for damages resulting from the use of information contained in this document or from the use of programs and source code that may accompany it. In no event shall the publisher and the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or indirectly by this document. Published: 2012 © 2012 Altova GmbH UML®, OMG™, Object Management Group™, and Unified Modeling Language™ are either registered trademarks or trademarks of Object Management Group, Inc. in the United States and/or other countries. Table of Contents 1 UModel 3 2 Introducing UModel 6 3 What's new in UModel 8 4 UModel tutorial 14 4.1 Starting UModel................................................................................................................. 16 4.2 Use cases ................................................................................................................
    [Show full text]
  • Code Review Is an Architectural Necessity
    Code review is an architectural necessity Colin Dean @colindean 1 @ColinDean Software Engineer Organizer, Abstractions.io Wearer of many hats 2 My words are my own and not my employer(s), past or present. Please save questions until the end of the presentation. 3 Agenda • Quick anecdote • What is code review? • What problems does code review solve? • Quality attributes code review ensures • Tips for code reviews • Limitations 4 5 Agenda • Quick anecdote • What is code review? • What problems do code review solve? • Quality attributes code review ensures • Tips for code reviews • Limitations 6 What is code review? 7 Code review is the process by which those who maintain a software codebase evaluate a proposed change to that codebase, regardless of the source of the proposed change. 8 Code review is systematic examination of computer source code. Code Review, Wikipedia 9 Peer Review 10 Code Review 11 Code Review Vocabulary • Change - an individual unit of work altering what exists • Submission - a collection of changes • Submitter - the person proposing the submission • Reviewer - the people evaluating the submission • Annotation - remarks or ratings bestowed upon the submission 12 The submitter proposes changes in a submission, which is evaluated by a reviewer, who annotates or accepts it. 13 Most formal Least formal Team Pair Peer Inspection Walkthrough Ad-hoc review review programming deskcheck, passaround Wiegers’ peer review formality spectrum 14 Most formal Least formal Team Pair Peer Inspection Walkthrough Ad-hoc review review programming deskcheck, passaround Wiegers’ peer review formality spectrum 15 16 Agenda • Quick anecdote • What is code review? • What problems does code review solve? • Quality attributes code review ensures • Tips for code reviews • Limitations 17 Aside from the primary goal of reducing defects, Code review solves two major problems.
    [Show full text]