XP and TDD. Extreme Programming and Test Driven Development. Bertrand Meyer, Manuel Oriol Andreas Leitner. Chair of Software Engineering ETH Zurich
|
|
- Tamsin Suzan Greene
- 8 years ago
- Views:
Transcription
1 XP and TDD Extreme Programming and Test Driven Development Bertrand Meyer, Manuel Oriol Andreas Leitner ETH Zurich October 27, 2006
2 Outline Development Processes Overview Extreme Programming Test Driven Development
3 Outline Development Processes Overview Extreme Programming Test Driven Development
4 Development Processes Overview Traditional Methods Waterfall model V model Spiral model Prototype model Agile Methods Extreme Programming Test Driven Development
5 Waterfall model Figure from: Wikipedia
6 V model
7 Defect Cost 70 Relative cost to correct a defect Requirements Design Code DevelopmentAcceptance Testing Testing Operation Source: Barry W. Boehm, Economics, Prentice Hall, 1981
8 Spiral model Figure from: Ghezzi, Jazayeri, Mandrioli,, 2nd edition, Prentice Hall
9 Project Management Programming competence varies greatly 1:10 in a single group (Sackman, Erikson, Grant) Who introduces more bugs? Experienced Developers Beginners
10 Outline Development Processes Overview Extreme Programming Test Driven Development
11 XP: Motivation Schedule slips Project canceled Systems go sour Defect rate Doesn t solve actual problem Business changes False feature rich Staff turnover
12 XP: Cost of Change
13 XP: Rules The planning game Small Releases Metaphor Simple Design Testing Refactoring Pair programming Collective Ownership Continuous Integration 40h-Week On-Site Customer Coding Standards
14 XP: Programming in the Wild Is XP like programming in the wild?
15 XP: Kinds of Testing Unit testing Integration testing System testing Acceptance testing Regression testing
16 XP: Unit testing 1/2 Tools SUnit Smaltalk (first one) JUnit Java ( cppunit C++ PyUnit Python...
17 Outline Development Processes Overview Extreme Programming Test Driven Development
18 Neil McGovern) (from
19 Neil McGovern) (from
20 Neil McGovern) (from
21 TDD: Overview Evolutionary approach to development Combines Test-first development Refactoring Primarily a method of software design Not just method of testing
22 TDD: The Process
23 TDD = TFD + Refactoring Apply test-first development Refactor whenever you see fit (before next functional modification) Kent Beck s rule: Write new business code only when a test case fails Eliminate any duplication you find
24 TDD and Extreme Programming Easy to give in and skip some test cases Pair-programming can help Writing testable code helps
25 TDD: Consequences Incremental development Development environment must provide rapid response to small changes Components are designed highly cohesive, loosely coupled Developers learn to write good unit tests: Run fast Run in isolation Use data that makes test case easy to read Each test case is step towards overall goal
26 TDD & Documentation Programmers often do not read documentation Instead, they look for examples and play with them Good unit tests can serve as Examples Documentation
27 TDD: pros and cons Pros Reduce gap between decision and feedback Encourage developers to write code that is easily tested Creates a thorough test bed Drawbacks Time taken away from core development Some code is difficult to test
28 References Kent Beck: Agile software development: principles, patterns, and practices. Addision Wesley, 2003 Astels: Test Driven Development: A Practical Guide, Prentice Hall, 2003 Kent Beck: Extreme Programming Explained, Addision Wesley, 2000 Bertrand Meyer: Practice to perfect: the quality first model, IEEE Computer, 30, 5, pages , , 1997 Andrew Hunt: The Pragmatic Programmer: from journeyman to master. Addision Wesley, 2000 Kent Beck: Extreme Programming explained. Addision Wesley, 2000
JUnit. Introduction to Unit Testing in Java
JUnit Introduction to Unit Testing in Java Testing, 1 2 3 4, Testing What Does a Unit Test Test? The term unit predates the O-O era. Unit natural abstraction unit of an O-O system: class or its instantiated
More informationExtreme Programming, an agile software development process
Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled
More informationAgile processes. Extreme Programming, an agile software development process. Extreme Programming. Risk: The Basic Problem
Agile processes Extreme Programming, an agile software development process Perdita Stevens School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development
More informationDevelopment Techniques. CSE301 University of Sunderland Harry R. Erwin, PhD
Development Techniques CSE301 University of Sunderland Harry R. Erwin, PhD Sources Boehm, 1981, Software Engineering Economics, Prentice- Hall. Stephens and Rosenberg, 2003, Extreme Programming Refactored:
More informationExtreme Programming, an agile software development process
Extreme Programming, an agile software development process Paul Jackson School of Informatics University of Edinburgh Recall: Waterfall and Spiral Models Waterfall: Spiral: Split project into controlled
More informationAn Initial Investigation of Test Driven Development in Industry
An Initial Investigation of Test Driven Development in Industry Boby George Department of Computer Science North Carolina State University Raleigh, NC 2795-7534 (+1) 919 01 2922 bobygeorge@ncsu.edu Laurie
More informationAgile processes. Extreme Programming, an agile software development process
Agile processes Extreme Programming, an agile software development process Nigel Goddard School of Informatics University of Edinburgh What the spiral models were reaching towards was that software development
More informationTest-Driven Development
Test-Driven Development An Introduction Mattias Ståhlberg mattias.stahlberg@enea.com Debugging sucks. Testing rocks. Contents 1. What is unit testing? 2. What is test-driven development? 3. Example 4.
More informationIn the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is:
In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is: The period of time that starts when a software product is conceived and ends when the product is no longer
More informationXP and Design. Paulo Caroli & Sudhindra Rao. ThoughtWorks
XP and Design Paulo Caroli & Sudhindra Rao ThoughtWorks XP and Design Where did the Design phase go? About us About us 14 + 6 About us Certified Architect About us Agile Coach / Developer Agenda Agenda
More informationMaking Architectural Design Phase Obsolete TDD as a Design Method
HUT / SoberIT 2004 Spring T-76.650 SQA in Agile Software Development 1 Making Architectural Design Phase Obsolete TDD as a Design Method Marc Josefsson T-76.650 Seminar course on SQA in Agile Software
More informationLearning and Coaching Agile Methods. Görel Hedin Computer Science Lund University, Sweden
Learning and Coaching Agile Methods Görel Hedin Computer Science Lund University, Sweden Background Two undergraduate courses at Lund University XP course (mandatory, 2nd year, around 100 students) Coaching
More informationSoftware Development Life Cycle Models - Process Models. Week 2, Session 1
Software Development Life Cycle Models - Process Models Week 2, Session 1 PROCESS MODELS Many life cycle models have been proposed } Traditional Models (plan-driven) } Classical waterfall model } Iterative
More informationAgile Techniques for Object Databases
db4o The Open Source Object Database Java and.net Agile Techniques for Object Databases By Scott Ambler 1 Modern software processes such as Rational Unified Process (RUP), Extreme Programming (XP), and
More informationSoftware Engineering
1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software
More informationSoftware Development Methodologies
Software Development Methodologies Jonathan Hoyle Eastman Kodak Thursday, June 2, 2005 Overview Predictive Methodologies Waterfall Other Predictive Methodologies Agile Methodologies Extreme Programming
More informationTest Driven Development Part III: Continuous Integration Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download.
Test Driven Development Part III: Continuous Integration Venkat Subramaniam venkats@agiledeveloper.com http://www.agiledeveloper.com/download.aspx Abstract In this final part of the three part series on
More informationAgile and Secure: Can We Be Both?
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Keith Landrus Director of Technology Denim Group Ltd. keith.landrus@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission
More informationTest Driven Development Method in Software Development Process
Test Driven Development Method in Software Development Process Denis Duka, Lovre Hribar Ericsson Nikola Tesla Research & Development Center Split, Croatia denis.duka@ericsson.com; lovre.hribar@ericsson.com
More informationJava course - IAG0040. Unit testing & Agile Software Development
Java course - IAG0040 Unit testing & Agile Software Development 2011 Unit tests How to be confident that your code works? Why wait for somebody else to test your code? How to provide up-to-date examples
More informationSoftware Quality Assurance in XP and Spiral - A Comparative Study
Fifth International Conference on Computational Science and Applications Software Quality Assurance in XP and Spiral - A Comparative Study Sajid Ibrahim Hashmi and Jongmoon Baik Information and Communication
More informationCSE 435 Software Engineering. Sept 16, 2015
CSE 435 Software Engineering Sept 16, 2015 2.1 The Meaning of Process A process: a series of steps involving activities, constraints, and resources that produce an intended output of some kind A process
More informationIntroduction. Introduction. Software Engineering. Software Engineering. Software Process. Department of Computer Science 1
COMP209 Object Oriented Programming System Design Mark Hall Introduction So far we ve looked at techniques that aid in designing quality classes To implement a software system successfully requires planning,
More informationSoftware Development Process
Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software
More informationAgile Software Development Methodologies and Its Quality Assurance
Agile Software Development Methodologies and Its Quality Assurance Aslin Jenila.P.S Assistant Professor, Hindustan University, Chennai Abstract: Agility, with regard to software development, can be expressed
More informationIntroduction to extreme Programming (XP)
Introduction to extreme Programming (XP) Extreme Programming (XP) Kent Beck C3 Project Chrysler Comprehensive Compensation system. XP Values: Communication Courage Feedback Simplicity Established the Twelve
More informationTopics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods
Topics covered Chapter 3 Agile Software Development Agile methods Plan-driven and agile Extreme programming Agile project management Scaling agile methods 1 2 Need for rapid software Rapid software Changing
More informationExtreme Programming - A Model For Agile Software Development
International Journal of Information Technology and Knowledge Management July-December 2010, Volume 3, No. 2, pp. 699-705 EXTREME PROGRAMMING: NEWLY ACCLAIMED AGILE SYSTEM DEVELOPMENT PROCESS Er. Rohini
More informationAgile Testing and Extreme Programming
Agile Testing and Extreme Programming bret@pettichord.com www.pettichord.com March 2003 Copyright 2003 Bret Pettichord. All rights reserved. The Agile Alliance Values We have come to value: Individuals
More informationIntroduction to Agile Software Development. EECS 690 Agile Software Development
Introduction to Agile Software Development EECS 690 Agile Software Development Agenda Research Consent Forms Problem with Software Engineering Motivation for Agile Methods Agile Manifesto Principles into
More informationSoftware Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) Supriyo Bhattacharjee MOF Capability Maturity Model (CMM) A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process
More informationAgile Software Development and Service Science
Agile Software Development and Service Science How to develop IT-enabled Services in an Interdisciplinary Environment Andreas Meier Institute of Applied Information Technology (InIT) Zurich University
More informationXP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories
XP & Scrum Beatrice Åkerblom beatrice@dsv.su.se extreme Programming XP Roles XP Roles, cont!d! Customer ~ Writes User Stories and specifies Functional Tests ~ Sets priorities, explains stories ~ May or
More informationThe Agile approach Extreme Programming (XP) Implementing XP into a software project Introducing HCI design into agile software development Summary
! " # $%&' ()**+ % The Agile approach Extreme Programming (XP) Implementing XP into a software project Introducing HCI design into agile software development Summary , 75% of the enterprise software products
More informationLife Cycle Models. V. Paúl Pauca. CSC 331-631 Fall 2013. Department of Computer Science Wake Forest University. Object Oriented Software Engineering
Life Cycle Models V. Paúl Pauca Department of Computer Science Wake Forest University CSC 331-631 Fall 2013 Software Life Cycle The overall framework in which software is conceived, developed, and maintained.
More informationExtreme Programming. Sergey Konovalov and Stefan Misslinger. May 23, 2006
Extreme Programming Sergey Konovalov and Stefan Misslinger May 23, 2006 1 Contents 1 Introduction 3 2 Why do we need XP? 3 3 Economics of Software Development 4 4 Extreme Programming Values 4 5 Extreme
More informationAgile Software Development and Service Science
DOI V Agile Software Development and Service Science How to develop IT-enabled Services in an Interdisciplinary Environment Andreas Meier, Jenny C. Ivarsson Abstract This paper shows the necessary steps,
More informationAn Introduction to Agile Engineering Practices
An Introduction to Agile Engineering Practices Kane Mar Danube Technologies, Inc 1 The New New Product Development Game - Takeuchi and Nonaka 2 photo: http://www.flickr.com/photos/nicmcphee/ 3 4 From:
More informationUC Santa Barbara. CS189A - Capstone. Christopher Kruegel Department of Computer Science UC Santa Barbara http://www.cs.ucsb.
CS189A - Capstone Christopher Kruegel Department of Computer Science http://www.cs.ucsb.edu/~chris/ How Should We Build Software? Let s look at an example Assume we asked our IT folks if they can do the
More informationTools, Trends and Techniques for Developing Scientific Software
Tools, Trends and Techniques for Developing Scientific Software Tom Clune - NASA GSFC Brice Womack - NASA/NGC-TASC Brian Foote - The Refactory, Inc. Jeffrey Overbey - University of Illinois ASTG Advanced
More informationComparing Agile Software Processes Based on the Software Development Project Requirements
CIMCA 2008, IAWTIC 2008, and ISE 2008 Comparing Agile Software Processes Based on the Software Development Project Requirements Malik Qasaimeh, Hossein Mehrfard, Abdelwahab Hamou-Lhadj Department of Electrical
More informationSelecting a Software Development Methodology based on. Organizational Characteristics. Adrienne Farrell
ATHABASCA UNIVERSITY Selecting a Software Development Methodology based on Organizational Characteristics BY Adrienne Farrell An essay submitted in partial fulfillment Of the requirements for the degree
More informationSoftware Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study
Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study S. Vijayakumar vijsy003@students.unisa.edu.au School of Computer and Information Science University of South Australia,
More informationA Capability Maturity Model (CMM)
Software Development Life Cycle (SDLC) and Development Methods There are some enterprises in which a careful disorderliness is the true method. Herman Melville Capability Maturity Model (CMM) A Capability
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Agile software development
Ingegneria del Software Corso di Laurea in Informatica per il Management Agile software development Davide Rossi Dipartimento di Informatica Università di Bologna The problem Efficiency: too much effort
More informationSOFTWARE DEVELOPMENT METHODOLOGIES, TRENDS, AND IMPLICATIONS
SOFTWARE DEVELOPMENT METHODOLOGIES, TRENDS, AND IMPLICATIONS Xihui Zhang University of North Alabama xzhang6@una.edu Hua Dai University of Wisconsin-La Crosse dai.hua@uwlax.edu Tao Hu King College thu@king.edu
More informationAgile Software Development. Venkat Subramaniam svenkat@cs.uh.edu. Agile Software Development
Agile Software Development Venkat Subramaniam svenkat@cs.uh.edu Agile Software Development - 1 Agile Software Development State of Software Development Agility Planning Daily Activity Conclusion Agile
More informationExtreme Programming and Embedded Software Development
Extreme Programming and Embedded Software Development By James Grenning Every time I do a project, it seems we don t get the hardware until late in the project. This limits the progress the team can make.
More informationThe Role of Software Quality in Agile Software Development Methodologies Osama Sohaib and Khalid Khan Abstract he various agile software development methodologies have promoted since their inception and
More informationAgile So6ware Development
h(p://home.hit.no/~hansha/?page=so6ware_development Agile So6ware Development S. Adams. Dilbert. Available: h(p://dilbert.com Hans- Pe(er Halvorsen, M.Sc. 1 Agile? I ll go up and find out what they need
More informationAgile Processes and Methodologies: A Conceptual Study
Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida Sheetal.meenu@gmail.com Darothi Sarkar Amity School of Engineering &
More informationAdvanced Test-Driven Development
Corporate Technology Advanced Test-Driven Development Software Engineering 2007 Hamburg, Germany Peter Zimmerer Principal Engineer Siemens AG, CT SE 1 Corporate Technology Corporate Research and Technologies
More informationAgile with XP and Scrum
Agile with XP and Scrum Amit Goel National Agile Software Workshop @ Indore Agile India Conference Agile Software Community of India Disclaimer and Credits Most of material in this presentation has been
More informationCPSC 330 Software Engineering
CPSC 330 Software Engineering Lecture 4: Unit ing, JUnit, and Software Development Processes Today Unit ing and JUnit Software Development Processes (as time allows) Reading Assignment Lifecycle handout
More informationIntroduction. Motivational Principles. An Introduction to extreme Programming. Jonathan I. Maletic, Ph.D.
An Introduction to extreme Programming Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University Introduction Extreme Programming (XP) is a (very) lightweight incremental software
More informationSoftware Process. Process: A sequence of activities, subject to constraints on resources, that produce an intended output of some kind.
Software Process Process: A sequence of activities, subject to constraints on resources, that produce an intended output of some kind. Any process has these characteristics: The process prescribes all
More informationXtreme RUP. Ne t BJECTIVES. Lightening Up the Rational Unified Process. 2/9/2001 Copyright 2001 Net Objectives 1. Agenda
Xtreme RUP by Ne t BJECTIVES Lightening Up the Rational Unified Process 2/9/2001 Copyright 2001 Net Objectives 1 RUP Overview Agenda Typical RUP Challenges Xtreme Programming Paradigm Document driven or
More informationContents. 3 Agile Modelling 31 3.1 Introduction 31 3.2 Modelling Misconceptions 31
Contents 1 Introduction 1 1.1 WhyThisBook? 1 1.2 A Bit of History 1 1.3 What Is Agile Software Development? 2 1.4 WhyBe Agile? 3 1.5 What This Book Is About? 3 1.6 Implementation Languages 3 1.7 The Structure
More informationIntroduction to Agile Software Development
Introduction to Agile Software Development Word Association Write down the first word or phrase that pops in your head when you hear: Extreme Programming (XP) Team (or Personal) Software Process (TSP/PSP)
More informationsoftware studio software development processes Daniel Jackson
software studio software development processes Daniel Jackson 1 One of the planning documents for software research revealed --in a parenthetical remark only-- an unchallenged tacit assumption by referring
More informationA Comparison between Five Models of Software Engineering
International Journal of Research in Information Technology (IJRIT) www.ijrit.com ISSN 2001-5569 A Comparison between Five Models of Software Engineering Surbhi Gupta, Vikrant Dewan CSE, Dronacharya College
More informationAgile and Secure Can We Be Both? Chicago OWASP. June 20 th, 2007
Agile and Secure Can We Be Both? Chicago OWASP June 20 th, 2007 The Agile Practitioner s Dilemma Agile Forces: Be more responsive to business concerns Increase the frequency of stable releases Decrease
More informationAgile and Secure: OWASP AppSec Seattle Oct 2006. The OWASP Foundation http://www.owasp.org/
Agile and Secure: Can We Be Both? OWASP AppSec Seattle Oct 2006 Dan Cornell, OWASP San Antonio Leader Principal, Denim Group Ltd. dan@denimgroup.com (210) 572-4400 Copyright 2006 - The OWASP Foundation
More informationHow To Understand The Limitations Of An Agile Software Development
A Cynical View on Agile Software Development from the Perspective of a new Small-Scale Software Industry Apoorva Mishra Computer Science & Engineering C.S.I.T, Durg, India Deepty Dubey Computer Science
More informationHistory of Agile Methods
Agile Development Methods: Philosophy and Practice CPSC 315 Programming Studio Fall 2010 History of Agile Methods Particularly in 1990s, some developers reacted against traditional heavyweight software
More informationHuman Aspects of Software Engineering: The Case of Extreme Programming
1 Human Aspects of Software Engineering: The Case of Extreme Programming Orit Hazzan 1 and Jim Tomayko 2 1 Department of Education in Technology and Science, Technion - IIT, Haifa 32000, Israel oritha@tx.technion.ac.il
More informationExtreme Programming. As software organizations continue to move
Spotlight Extreme Programming Rapid Development for Web-Based Applications Frank Maurer and Sebastien Martel University of Calgary As software organizations continue to move toward Web-based systems development,
More informationAn Efficient Objective Quality Model for Agile Application Development
An Efficient Objective Quality Model for Agile Application Development M.Usman Malik M. Haseeb Nasir Ali Javed UET Taxila UET Taxila UET Taxila Rawalpindi, Pakistan Rawalpindi, Pakistan Rawalpindi, Pakistan
More informationASSESSMENT OF SOFTWARE PROCESS MODELS
ASSESSMENT OF SOFTWARE PROCESS MODELS Akhilesh Research Scholar, Department of Computer Science, Manav Bharti University, Solan (H.P.) ABSTRACT The field of software engineering is related to the development
More informationExtreme Programming: Strengths and Weaknesses
The International Arab Conference on Information Technology (ACIT 2013) Extreme Programming: Strengths and Weaknesses Ahmad dalalah Prep. Year Deanship University of Hail, SA a.dalalah@uoh.edu.sa Abstract:
More informationAgile So)ware Development
Software Engineering Agile So)ware Development 1 Rapid software development Rapid development and delivery is now often the most important requirement for software systems Businesses operate in a fast
More informationIntroduction to Agile Software Development Process. Software Development Life Cycles
Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative
More informationLaunching Extreme Programming at a Process- Intensive Company
focus reports from the field Launching Extreme Programming at a Process- Intensive Company James Grenning, Object Mentor A company that has traditional formal processes launched a project using many Extreme
More informationSoftware Development Process Selection Approaches
The Journal of Applied Science Vol. 11 No. Vol. 2:45-50 11 No. 2 [2012] ISSN 1513-7805 Printed in Thailand Review Article Software Development Process Selection Approaches Phongphan Danphitsanuphan Department
More informationSAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL
SAFETY & RESILIENCE ISSUES IN AUTOMOTIVE SOFTWARE DEVELOPMENT PANEL 1 Safety Panel when 26262 will be issued, enforced? What about 61508? by whom, which authorities? who and how will verify conformance?
More informationComparative Study of Test Driven Development with Traditional Techniques
International Journal of Soft Computing and Engineering (IJSCE) Comparative Study of Test Driven Development with Traditional Techniques Shaweta Kumar, Sanjeev Bansal Abstract - Test-Driven Development
More informationIntroduction to Software Project Management. CITS3220 Software Requirements & Project Management
Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there
More informationGénie Logiciel Avancé Cours 6 Extreme Programming
Génie Logiciel Avancé Cours 6 Extreme Programming Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot - Paris 7 URL http://upsilon.cc/zack/teaching/1112/gla/ Copyright
More informationGénie Logiciel et Gestion de Projets. Software Processes Focus on Extreme Programming
Génie Logiciel et Gestion de Projets Software Processes Focus on Extreme Programming 1 Roadmap Process, Method, Methodology?? What is a software process? Software Process Models Methodologies: RUP Focus
More informationFail early, fail often, succeed sooner!
Fail early, fail often, succeed sooner! Contents Beyond testing Testing levels Testing techniques TDD = fail early Automate testing = fail often Tools for testing Acceptance tests Quality Erja Nikunen
More informationShould NASA Embrace Agile Processes?
Should NASA Embrace Agile Processes? Jefferey Smith, Tim Menzies Lane Department of Computer Science West Virginia University PO Box 69, Morgantown WV, 656-69, USA; jefferey@jeffereysmith.com,tim@menzies.com
More informationSEEM4570 System Design and Implementation Lecture 10 Software Development Process
SEEM4570 System Design and Implementation Lecture 10 Software Development Process Software Development A software development process: A structure imposed on the development of a software product Also
More informationMapping The Best Practices of XP and Project Management: Well defined approach for Project Manager
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/ 103 Mapping The Best Practices of XP and Project Management: Well defined approach for Project Manager Muhammad Javed 1, Bashir Ahmad 1, Shahid Hussain
More informationLarge Scale Systems Design G52LSS
G52LSS Lecture 3 Rapid and Agile Development Rapid Application Development Prototyping CASE Tools Agile Development Extreme Programming Learning outcomes: describe main features of methods for RAD and
More informationContinuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited
Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation
More informationSoftware Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng
Software Development Process and Activities CS 490MT/5555, Fall 2015, Yongjie Zheng Software Process } A set of activities that leads to the production of a software product } What product we should work
More informationNova Software Quality Assurance Process
Nova Software Quality Assurance Process White Paper Atlantic International Building 15F No.2 Ke Yuan Yi Road, Shiqiaopu, Chongqing, P.R.C. 400039 Tel: 86-23- 68795169 Fax: 86-23- 68795169 Quality Assurance
More informationAGILE PRACTICES: A COGNITIVE LEARNING PERSPECTIVE
AGILE PRACTICES: A COGNITIVE LEARNING PERSPECTIVE Mazni Omar 1 and Sharifah Lailee Syed Abdullah 2 1 Universiti Utara Malaysia, Malaysia, mazni@uum.edu.my 2 Universiti Teknologi MARA, shlailee@perlis.uitm.edu.my
More informationAssessing Test-Driven Development at IBM
Assessing Test-Driven Development at IBM E. Michael Maximilien IBM Corp. and NCSU 5505 Six Forks Road Raleigh, NC 27609 maxim@us.ibm.com Abstract In a software development group of IBM Retail Store Solutions,
More informationTamanna Assistant Professor Chandigarh University Gharuan, Mohali,India
Volume 4, Issue 6, June 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com An Agile Methodology
More informationAgile Models. Software Engineering 2004-2005. Marco Scotto (Marco.Scotto@unibz.it) Software Engineering
Agile Models 2004-2005 Marco Scotto (Marco.Scotto@unibz.it) Content Introduction Tame projects & wicked projects Win-Win Spiral software development model XP software development process Enforcing the
More informationAGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä
AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson 23.11.2005 Jyväskylä Fact corner: SME of 250 developers Mobile & desktop sw Products sold globally EXAMPLE OF AN INNOVATIVE
More informationSoftware Development Methodologies
Software Development Methodologies Lecture 5 - Development Processes 2 SOFTENG 750 2013-04-08 Software Development Worst Practices Worst Practices 1 Underestimating Required Effort Estimates often too
More informationGénie Logiciel et Gestion de Projets. Software Processes Focus on Extreme Programming
Génie Logiciel et Gestion de Projets Software Processes Focus on Extreme Programming 1 Roadmap Process, Method, Methodology?? What is a software process? Software Process Models Documentation Methodologies:
More informationPlanned Methodologies vs. Agile Methodologies under the Pressure of Dynamic Market
JKAU: Eng. Sci., Vol. 21 No.1 pp: 19-35 (1431A.H./2010 A.D.) DOI: 10.4197 / Eng. 21-1.2 Planned Methodologies vs. Agile Methodologies under the Pressure of Dynamic Market Faculty of Computer Science and
More informationCSE 4415 / SWE 5415 Software Testing 2 Fall 2004 Olin Engineering Building, Room 128 Credits: 3.00
CSE 4415 / SWE 5415 Software Testing 2 Fall 2004 Olin Engineering Building, Room 128 Credits: 3.00 SOFTWARE TESTING 2. (Catalog description) Explores structural (glass box) methods for testing software.
More informationSoftware Life Cycles and Configuration Management
Theory Lecture Plan 2 Software Configuration Lecture 11 Software Engineering TDDC88/TDDC93 autumn 2008 Department of Computer and Information Science Linköping University, Sweden L1 - Course Introduction
More informationIntroduction to Software Engineering (ESE : Einführung in SE)
Introduction to Software Engineering (ESE : Einführung in SE) Prof. O. Nierstrasz Selected material courtesy of Prof. Serge Demeyer, U. Antwerp ESE Introduction Lecturers Assistants Lectures Exercises
More informationLecture 21 March 7, 2013
ECE155: Engineering Design with Embedded Systems Winter 2013 Lecture 21 March 7, 2013 Patrick Lam version 1 Software Development Lifecycle If you re asked to develop a software project, you re likely to
More informationSoftware Quality and Assurance in Waterfall model and XP - A Comparative Study
Software Quality and Assurance in Waterfall model and XP - A Comparative Study Dr. Sana a Jawdat Khalaf Sana_j_11@hotmail.com Dr. Mohamed Noor Al-Jedaiah m_aljedaiah@ammanu.edu.jo Abstract: -Dealing with
More information