Agile and Evolutionary Software Development
|
|
- Joella Miller
- 8 years ago
- Views:
Transcription
1 Agile and Evolutionary Software Development Václav Rajlich Wayne State University Department of Computer Science 2015 Václav Rajlich Agile and Evolutionary Software Development 1
2 Contents Staged model of software lifespan Agile and evolutionary development Software change Software maintenance Václav Rajlich Agile and Evolutionary Software Development 2
3 Staged model of nitial development software lifespan first version evolutionary changes Evolution Development evolution stops servicing patches Maintenance (Servicing) servicing discontinued Phase-out switch-off Close-down 2015 Václav Rajlich Agile and Evolutionary Software Development 3
4 nitial development nitial development first version evolutionary changes Evolution Development evolution stops Fundamental project decisions Technologies, architecture, GU design, First (incomplete) version Phases: requirements, design, implementation 2015 Václav Rajlich Agile and Evolutionary Software Development 4
5 nitial development Evolution first version evolutionary changes Evolution Development evolution stops Repeated software changes Each change adds/modifies functionality or property of existing (and running) software 2015 Václav Rajlich Agile and Evolutionary Software Development 5
6 Evolutionary Software Development (ESD) Bulk of development is done in evolution Offers stakeholders regular feedback about the progress of the project Allows the developers to react to the volatility Volatility of requirements, technology, or knowledge 2015 Václav Rajlich Agile and Evolutionary Software Development 6
7 Waterfall Bulk is done in initial development Little or no evolution Suitable for projects without volatility Stable technology and domain Stable knowledge small projects 2015 Václav Rajlich Agile and Evolutionary Software Development 7
8 Contents Staged model of software lifespan Agile and evolutionary development (ESD) Software change Software maintenance 2015 Václav Rajlich Agile and Evolutionary Software Development 8
9 ESD Current mainstream There are numerous ESD processes with track record of success Example: Agile There are other effective ESD processes 2015 Václav Rajlich Agile and Evolutionary Software Development 9
10 terative development terations are milestones with specific goals Volatility is frozen during iteration Allows planning of iteration Stakeholders assess the past iteration and plan the next one teration meeting of all stakeholders Volatilities are taken into account during iteration meeting 2015 Václav Rajlich Agile and Evolutionary Software Development 10
11 Agile development Autonomous decision makings by developers during the iterations Requires intensive communication within the team Very short iterations Suitable for small teams SCRUM, extreme 2015 Václav Rajlich Agile and Evolutionary Software Development 11
12 Safeguarded development Presence of guardians of the code base They accept or disallow code changes Software with high quality expectations Avionics 2015 Václav Rajlich Agile and Evolutionary Software Development 12
13 Open source development Open source development Safeguarded Code ownership Wide community of developers, variable skills nner source development Leverages the experience of open source Practiced within a corporation 2015 Václav Rajlich Agile and Evolutionary Software Development 13
14 Directed development Default process Managers assign tasks to the developers Allows different specialized roles Developers, testers, architects, technology experts, managers, Suitable for large or delocalized projects 2015 Václav Rajlich Agile and Evolutionary Software Development 14
15 Exploratory development Features are establish by trial-and-error Common in research projects 2015 Václav Rajlich Agile and Evolutionary Software Development 15
16 Solo development Single developer More and more common Mobile apps 2015 Václav Rajlich Agile and Evolutionary Software Development 16
17 Success of small projects* Budget of less than $1 M 76 % of small projects are successful Only 4% of small projects are cancelled Historically high success rate *Chaos Manifesto Václav Rajlich Agile and Evolutionary Software Development 17
18 Future directions of ESD Associate individual practices with specific project circumstances Tailor new processes that exactly fit specific project needs 2015 Václav Rajlich Agile and Evolutionary Software Development 18
19 Project circumstances Example Exploratory programming is necessary Gap between programmer capability and expected quality Frequent turnover of developers High volatility of requirements, technologies, or knowledge Low volatility... (we need a very large table)... Practice suitable for the circumstances Developers are domain experts Code guardians, permission to commit Concept location practices Short initial development, short iterations Long initial development 2015 Václav Rajlich Agile and Evolutionary Software Development 19
20 Problem with large projects* Budget larger than $10 M Low (10%) probability of success 38% of them were cancelled Large financial losses Embarrassment to our community Something needs to be done *Chaos Manifesto Václav Rajlich Agile and Evolutionary Software Development 20
21 Confused debate about processes False dichotomy: waterfall vs. agile Note waterfall is suitable for stable small projects Agile is suitable for small teams Contributing to the low success rate of large projects 2015 Václav Rajlich Agile and Evolutionary Software Development 21
22 Better debate What is the appropriate size of the initial development? Volatility requires small initial development Stability allows large initial development After initial development, which ESD process is the most appropriate? Which combination of ESD practices is the most appropriate? 2015 Václav Rajlich Agile and Evolutionary Software Development 22
23 Contents Staged model of software lifespan Agile and evolutionary development Software change Software maintenance Václav Rajlich Agile and Evolutionary Software Development 23
24 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N Process model for changes with limited impact Enactment of PMSC contains a subset of phases 2015 Václav Rajlich Agile and Evolutionary Software Development 24
25 Phased Model of Software Change (PMSC) nitiation.. Requirements Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N 2015 Václav Rajlich Agile and Evolutionary Software Development 25
26 Phased Model of Software Change (PMSC) nitiation Concept Location.. Requirements.. Finds what needs to change mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N 2015 Václav Rajlich Agile and Evolutionary Software Development 26
27 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N.. Requirements.. Finds what needs to change.. How big is the change? 2015 Václav Rajlich Agile and Evolutionary Software Development 27
28 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N.. Requirements.. Finds what needs to change.. How big is the change?.. Prepare for the change 2015 Václav Rajlich Agile and Evolutionary Software Development 28
29 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N.. Requirements.. Finds what needs to change.. How big is the change?.. Prepare for the change.. Do the change 2015 Václav Rajlich Agile and Evolutionary Software Development 29
30 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N.. Requirements.. Finds what needs to change.. How big is the change?.. Prepare for the change.. Do the change.. Clean up 2015 Václav Rajlich Agile and Evolutionary Software Development 30
31 Phased Model of Software Change (PMSC) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N.. Requirements.. Finds what needs to change.. How big is the change?.. Prepare for the change.. Do the change.. Clean up.. Commit 2015 Václav Rajlich Agile and Evolutionary Software Development 31
32 mpact analysis (A) nitiation Concept Location mpact Analysis Prefactoring Actualization Postfactoring Conclusion V E R F C A T O N A predicts prefactoring and actualization Currently unable to predict postfactoring Postfactoring often resolves technical debt after it accumulates beyond acceptable limit 2015 Václav Rajlich Agile and Evolutionary Software Development 32
33 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 33
34 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 34
35 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 35
36 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 36
37 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 37
38 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 38
39 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 39
40 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 40
41 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 41
42 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 42
43 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 43
44 ncremental A H B E F C A D J G L K Color codes Unknown Changed To be inspected nspected and unchanged 2015 Václav Rajlich Agile and Evolutionary Software Development Propagating 44
45 Eclipse plug-in Java 15,000 LOC 150 Classes Keeps track of marks Changed, Propagating, Unchanged, Next 2015 Václav Rajlich Agile and Evolutionary Software Development 45
46 Research in A Navigates program dependencies Some dependencies propagate the change while others do not Heuristics and tools that identify likely to propagate dependencies - need further attention Heuristics for determining when the incremental impact analysis is completed Hidden dependencies 2015 Václav Rajlich Agile and Evolutionary Software Development 46
47 Seamless DE for PMSC PMSC currently needs multiple uncoordinated tools JRipples for concept location, impact analysis Mylyn for the workflow Tasktop for timing data JUnit for unit tests Abbot for functional tests Refactoring tools... Future DE will provide seamless support 2015 Václav Rajlich Agile and Evolutionary Software Development 47
48 Measuring impact of PMSC ntroducing well-defined process often improves productivity and quality Preliminary data PMSC may improve developer productivity up to 50%! Needs additional measurements Seamless DE may offer additional gains 2015 Václav Rajlich Agile and Evolutionary Software Development 48
49 Contents Staged model of software lifespan Agile and evolutionary development Software change Software maintenance Václav Rajlich Agile and Evolutionary Software Development 49
50 Software maintenance Maintenance evolution!! Maintenance also consists of repeated changes to software Objectives are drastically reduced The only goal is to keep software usable in a cost-effective way No new functionality Software enters maintenance (servicing) stage when it is transferred to users 2015 Václav Rajlich Agile and Evolutionary Software Development 50
51 Parallel evolution and maintenance Several branches One is evolved into new version Other branches (released versions) are just maintained 2015 Václav Rajlich Agile and Evolutionary Software Development 51
52 How does evolution stop: Managerial decision Expensive evolution stops if it is no longer needed Stabilization No longer any volatility Technical debt gets out of hand Code is no longer evolvable Can happen by accident 2015 Václav Rajlich Agile and Evolutionary Software Development 52
53 Future of maintenance Accidental code decay is a serious issue Research: Keep software evolvable, clean technical debt Complementary approach: Extend software evolution (PMSC) to the code that is currently considered non-evolvable 2015 Václav Rajlich Agile and Evolutionary Software Development 53
54 Conclusions Software evolution was historically an unexpected and peripheral phenomenon Moved into the center of software development t gained enormous importance to both developers and researchers 2015 Václav Rajlich Agile and Evolutionary Software Development 54
55 Conclusion We covered Staged model of software lifespan ncludes evolution Evolutionary software development Many processes, some suitable for large projects Phased model of software change For changes that have limited impact Software maintenance Keeping software usable, no new functionality 2015 Václav Rajlich Agile and Evolutionary Software Development 55
56 Book on this topic 56 6/2/2015
7 Impact analysis (IA)
7 Impact analysis (IA) Determines the strategy and impact of change Classes identified in concept location are the initial impact set Class dependencies are analyzed, and impacted classes are added to
More information1 History of software engineering
1 History of software engineering Software is everywhere buying bread, driving car, washing clothes synonyms: programs, applications People, who develop the software software engineers, software developers,
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 informationUnderstanding the Differences between Proprietary & Free and Open Source Software
Understanding the Differences between Proprietary & Free and Open Source Software D Prasad 1 and Dr.Ch.Satyananda Reddy 2 1. Department of Computer Science & Engineering, DVR & Dr HS MIC College of Technology,
More informationProject Management in Software: Origin of Agile
PAGE 1 ios App Development Project Management in Software: Origin of Agile PAGE 2 Learning Outcomes By the end of the unit, you should be able to: 1. Differentiate between Waterfall and Agile process 2.
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 informationAgile Scrum Workshop
Agile Scrum Workshop What is agile and scrum? Agile meaning: Able to move quickly and easily. Scrum meaning: a Rugby play Agile Scrum: It is an iterative and incremental agile software development framework
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 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 Development with Jazz and Rational Team Concert
Agile Development with Jazz and Rational Team Concert Mayank Parikh mayank.parikh.@in.ibm.com Acknowledgements: Thanks to Khurram Nizami for some of the slides in this presentation Agile Values: A Foundation
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 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 informationMethodology: Agile development of safety critical systems Annex D1.1.d to deliverable D1.1
Collaborative Large scale Integrating Project Open Platform for EvolutioNary Certification Of Safety critical Systems Methodology: Agile development of safety critical systems to deliverable D1.1 Work
More informationCS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.
CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping
More informationSOFTWARE PROCESS MODELS
SOFTWARE PROCESS MODELS Slide 1 Software Process Models Process model (Life-cycle model) - steps through which the product progresses Requirements phase Specification phase Design phase Implementation
More informationTesting and Scrum. Agenda. Fall 2007 Scrum Gathering
Testing and Scrum Fall 2007 Scrum Gathering Ralph van Roosmalen Agenda Introduction The Classical Test Approach Organization Test Documentation Test Activities Recruitment Reporting Test Automation Lessons
More informationSoftware Development Going Incremental, Iterative and Agile:
Software Development Going Incremental, Iterative and Agile: Advantages and Challenges An Industrial Case Study Prof. Claes Wohlin, Blekinge Institute of Technology, Sweden Professorial Visiting Fellow,
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 informationThe software process. Generic software process models. Waterfall model. Software Development Methods. Bayu Adhi Tama, ST., MTI. bayu@unsri.ac.
The software process Software Development Methods Bayu Adhi Tama, ST., MTI. bayu@unsri.ac.id A structured set of activities required to develop a software system Specification; Design; Validation; Evolution.
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 informationSE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki
SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software
More informationUnit 1 Learning Objectives
Fundamentals: Software Engineering Dr. Rami Bahsoon School of Computer Science The University Of Birmingham r.bahsoon@cs.bham.ac.uk www.cs.bham.ac.uk/~rzb Office 112 Y9- Computer Science Unit 1. Introduction
More informationTRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
More informationModels of Software Development
October 28, 2015 Verification & Validation In many computer science courses, software is submitted once, graded, and thrown away. In real life, software development is an process. Some attempts to codify
More informationAgile Software Engineering Practice to Improve Project Success
Agile Software Engineering Practice to Improve Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems dietmar.winkler@qse.ifs.tuwien.ac.at
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationIntroduction to Agile and Scrum
Introduction to Agile and Scrum Matthew Renze @matthewrenze COMS 309 - Software Development Practices Purpose Intro to Agile and Scrum Prepare you for the industry Questions and answers Overview Intro
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 informationEnabling Continuous Delivery by Leveraging the Deployment Pipeline
Enabling Continuous Delivery by Leveraging the Deployment Pipeline Jason Carter Principal (972) 689-6402 Jason.carter@parivedasolutions.com Pariveda Solutions, Inc. Dallas,TX Table of Contents Matching
More informationIntroducing Agility into a Phase Gate Process
B E S T P R A C T I C E S W H I T E P A P E R Introducing Agility into a Phase Gate Process Jenny Stuart, Vice President of Consulting, Construx Software Version 1.1, June 2011 Contributors Earl Beede,
More informationNetstar Strategic Solutions Practice Development Methodology
Netstar Strategic Solutions Practice Development Methodology Netstar Corporation Abstract This document contains a high level description of the development methodology used by the Netstar Strategic Solutions
More informationHow Agile methods resolve chaos and unpredictability in software projects
WHITE PAPER How Agile methods resolve chaos and unpredictability in software projects Author: Jack Milunsky Scrum Master and COO Brighstpark3 January 2009 INTRODUCTION This paper attempts to show why an
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 informationSoftware Development Life Cycle at SSPL. An Summary of Methodologies We Offer
Software Development Life Cycle at SSPL An Summary of Methodologies We Offer 10/29/2009 Table of Contents The SSPL Advantage... 2 Commonly Used SDLC Models at SSPL... 2 Waterfall Model... 2 Agile Model...
More informationAgile project management: A magic bullet?
Agile project management: A magic bullet? Prof. Darren Dalcher d.dalcher@mdx.ac.uk Conferencia Iberoamericana de Calidad del Software Prof. Darren Dalcher 1 Outline I. What is agilility? The agile manifesto
More informationThe Structure of a Software Development Team
By Tanya Smeltzer How do you determine how to structure your team? Company needs Will an outside consult be necessary to meet the requirements? Software development people available Different levels of
More informationHow To Be Successful At An Agile Software Engineering
"Agile Software Engineering" Overview for external offering of ASE ABAP Juergen Heymann, CPO Software Engineering There are many ingredients for successful software projects Experienced Developers Domain
More informationIncreasing Development Knowledge with EPFC
The Eclipse Process Framework Composer Increasing Development Knowledge with EPFC Are all your developers on the same page? Are they all using the best practices and the same best practices for agile,
More informationAgile Enterprise Data Warehousing Radical idea or practical concept?
Agile Enterprise Warehousing Radical idea or practical concept? Larissa T. Moss Method Focus Inc. methodfocus@earthlink.net TDWI South Florida Chapter March 11, 2011 Copyright 2011, Larissa T. Moss, Method
More informationSoftware engineers have traditionally considered
RESEARCH FEATURE A Staged Model for the Software Life Cycle While the industry still considers post-delivery work as simply software maintenance, the process actually falls into stages, and both management
More informationComparing Plan-Driven and Agile Project Approaches
Comparing Plan-Driven and Agile Project Approaches A Personal Perspective Presented by: Craig D. Wilson Matincor, Inc. Copyright 2006-2010 2010 Outline Introduction to System Development Methodology Contrasting
More informationwww.pwc.com Scale agile throughout the enterprise A PwC point of view
www.pwc.com Scale agile throughout the enterprise A PwC point of view December 2013 Overview Today it s rare to speak with a company that is not adopting some form of agile development practice. However,
More informationAgile Testing. What Students Learn
Agile Testing Transition sound traditional test practices into an Agile development environment. By using a step-by-step approach, this course documents how to transition from traditional test practices
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 informationLecture 3 Software Development Processes
Lecture 3 Software Development Processes Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 2, 2008 Lecture Overview
More informationWhen is Agile the Best Project Management Method? Lana Tylka
When is Agile the Best Project Management Method? Lana Tylka Staged Incremental Deliveries Prototypes Plan Develop Design Deploy Test Maintain Sequential Steps Multiple Iterations Waterfall Sprints, Spirals
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 informationUse service virtualization to remove testing bottlenecks
Use service virtualization to remove testing bottlenecks Discover integration faults early by pushing integration testing left in the software lifecycle Contents 1 Complex, interconnected applications
More informationProcess Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology
Process Methodology for Wegmans Deli Kiosk Version 1.0 Prepared by DELI-cious Developers Rochester Institute of Technology September 15, 2013 1 Table of Contents 1. Process... 3 1.1 Choice... 3 1.2 Description...
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 informationManaging Software Debt: Continued Delivery of High Values as Systems Age
ARTICLE Managing Software Debt: Continued Delivery of High Values as Systems Age by Chris Sterling July 2008 Many software developers have to deal with legacy code at some point in their careers. Seemingly
More informationAn Agile Project Management Model
Agile Project Management Jim Highsmith Chapter 5 An Agile Project Management Model We improve effectiveness and reliability through situationally specific strategies, processes, and practices. One of the
More informationWhat is BPM? Software tools enabling BPM
What is BPM? BPM, or Business Process Management, is a technology, but it is also more than that. Broadly speaking, one can consider BPM as a management discipline in which processes are valued as assets
More informationSoftware Development with Agile Methods
Case Study Software Development with Agile Methods Introduction: Web application development is a much studied, heavily practiced activity. That is, capturing and validating user requirements, estimating
More informationAccelerating software testing effectiveness using Agile methodologies..
Accelerating software testing effectiveness using Agile methodologies.. How can testing be completed faster, and more efficiently, within short iterations? The Problem It is a painful paradox that while
More informationAGILE vs. WATERFALL METHODOLOGIES
AGILE vs. WATERFALL METHODOLOGIES Introduction Agile and waterfall are two major methodologies that software developers and project managers have the option of using. Some of the goals of developers and
More informationChapter 9 Software Evolution
Chapter 9 Software Evolution Summary 1 Topics covered Evolution processes Change processes for software systems Program evolution dynamics Understanding software evolution Software maintenance Making changes
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 informationCOMP 354 Introduction to Software Engineering
COMP 354 Introduction to Software Engineering Greg Butler Office: EV 3.219 Computer Science and Software Engineering Concordia University, Montreal, Canada Email: gregb@cs.concordia.ca Winter 2015 Course
More informationLaboratório de Desenvolvimento de Software
Laboratório de Desenvolvimento de Software FEUP/MIEIC, 2015/16 Ademar Aguiar Nuno Flores Rui Maranhão Hugo Ferreira Luís Teixeira url: moodle http://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919
More informationSoftware Development Process Models and their Impacts on Requirements Engineering Organizational Requirements Engineering
Software Development Process Models and their Impacts on Requirements Engineering Organizational Requirements Engineering Prof. Dr. Armin B. Cremers Sascha Alda Overview Phases during Software Development
More informationPrinciples of Software Engineering: Software Methodologies. COSI 120b, Spring 2005
Principles of Software Engineering: Software Methodologies COSI 120b, Spring 2005 Overview What are methodologies? The methodologies Traditional Incremental Evolutionary Other Conclusions Way Forward What
More informationA Sponsor Perspective on Validating Regulated Systems
A Sponsor Perspective on Validating Regulated Systems From Traditional Waterfall Approaches to Agile Continuous Improvement Ø Ø PhUSE Wayne PA Single Day Event Nate Blevins, IS Business Relationship Director,
More informationSurveying and evaluating tools for managing processes for software intensive systems
Master Thesis in Software Engineering 30 Credits, Advanced Level Surveying and evaluating tools for managing processes for software intensive systems Anuradha Suryadevara IDT Mälardalen University, ABB
More informationAlternative Development Methodologies
Alternative Development Methodologies The Software Development Process described in the course notes and lecture is a generalized process that been in use for decades. Over this time, scholars in the IT
More informationWhitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan
YOUR SUCCESS IS OUR FOCUS Whitepaper Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan 2009 Hexaware Technologies. All rights reserved. Table of Contents 1. Introduction 2. Subject Clarity 3. Agile
More informationDriving Quality Improvement and Reducing Technical Debt with the Definition of Done
Driving Quality Improvement and Reducing Technical Debt with the Definition of Done Noopur Davis Principal, Davis Systems Pittsburgh, PA NDavis@DavisSys.com Abstract This paper describes our experiences
More informationRequirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK
IBM Software Group Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK Jean-Louis Maréchaux Software IT Specialist IBM Rational
More informationSoftware Engineering. So(ware Evolu1on
Software Engineering So(ware Evolu1on 1 Software change Software change is inevitable New requirements emerge when the software is used; The business environment changes; Errors must be repaired; New computers
More informationMariusz Chrapko. Before: Software Quality Engineer/ Agile Coach, Motorola, Poland. My Public Profile: http://www.linkedin.
Gathering Customer Requirements in an Agile Environment Mariusz Chrapko ReConf 2009, Munich Mariusz Chrapko Now: Process Consultant/ Agile Coach@Kugler Maag CIE, Stuttgart Supported Areas: - CMMI - SPICE/
More informationMobility Strategy Maturity Model
CEB Applications Leadership Council CEB Infrastructure Leadership Council Mobility Strategy Maturity Model Develop a comprehensive strategy for enabling high-value enterprise mobile capabilities. Business
More informationAgile Software Development
E Learning Volume 5 Number 1 2008 www.wwwords.co.uk/elea Agile Software Development SOLY MATHEW BIJU University of Wollongong in Dubai, United Arab Emirates ABSTRACT Many software development firms are
More informationEMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development
EMC PERSPECTIVE Adopting an Agile Approach to OSS/BSS Development Reader ROI The agile software methodology is different from the traditional approach in that requirements gathering and analysis, design,
More informationRisk-based Vendor Audits of Agile Developed Software
Quality Revolution Evolution Risk-based Vendor Audits of Agile Developed Software 22 nd Annual ASQ Audit Conference Session A8: 11 October 2013 Dr. Byron Mattingly ByronMattingly2013@yahoo.com 1 Byron
More informationThe Blending of Traditional and Agile Project Management
1 of 6 The Blending of Traditional and Agile Project Management By Kathleen Hass Traditional project management involves very disciplined and deliberate planning and control methods. With this approach,
More informationScrum includes a social agreement to be empirical as a Team. What do you think an empirical agreement is?
Scrum Discussion Questions For the Facilitator These questions and subsequent discussion points are designed to help you and your Team more efficiently implement Scrum. The following are discussion points
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 informationXP and TDD. Extreme Programming and Test Driven Development. Bertrand Meyer, Manuel Oriol Andreas Leitner. Chair of Software Engineering ETH Zurich
XP and TDD Extreme Programming and Test Driven Development Bertrand Meyer, Manuel Oriol Andreas Leitner ETH Zurich October 27, 2006 Outline Development Processes Overview Extreme Programming Test Driven
More informationPractical Agile Requirements Engineering
Defense, Space & Security Lean-Agile Software Practical Agile Requirements Engineering Presented to the 13 th Annual Systems Engineering Conference 10/25/2010 10/28/2010 Hyatt Regency Mission Bay, San
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 informationSoftware Engineering. What is a system?
What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,
More informationEffektiver Tool-Einsatz
Effektiver Tool-Einsatz für Scrum-Projekte im Java-Umfeld Agile Softwareentwicklung Werte, Prinzipien, Methoden und Prozesse 13. OBJEKTspektrum Information Days 29. April 2010, München Gerhard Müller,
More informationUsing Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca
Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal alain.april@etsmtl.ca Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC
More informationAgile Software Project Management Methodologies
Economy Informatics, 1-4/2005 27 Agile Software Project Management Methodologies Prof. Constanţa-Nicoleta BODEA, PhD Economic Informatics Department, Academy of Economic Studies, Bucharest Successfully
More informationWeb Application Development Process
Web Engineering Web Application Development Process Copyright 2013 Ioan Toma & Srdjan Komazec 1 Where we are? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th March Requirements
More informationCS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
More informationSoftware Development In the Cloud Cloud management and ALM
Software Development In the Cloud Cloud management and ALM First published in Dr. Dobb's Journal, February 2009: http://www.ddj.com/development-tools/212900736 Nick Gulrajani is a Senior Solutions Architect
More informationNetspective Software Development Process
Netspective Software Development Process The process is a tailored evolutionary prototyping-based process with hints of agile development. Evolutionary prototyping is a form of software system creation
More informationSoftware Development Methodology Development Process followed @ Aress
Software Development Methodology Development Process followed @ Aress 1. Development Methodology Software Development at Aress has adopted Agile Software Development methodology and uses it effectively
More informationApplication Lifecycle Management Using Visual Studio 2013 (SCRUM)
Course Code: QAALMS13 Vendor: Microsoft Course Overview Duration: 3 RRP: 2,009 Application Lifecycle Management Using Visual Studio 2013 (SCRUM) Overview This three-day, instructor-led course provides
More informationAgile development. Pedro Cabalar. Departamento de Computación Facultad de Informá;ca University of Corunna, SPAIN
Agile development Pedro Cabalar Departamento de Computación Facultad de Informá;ca University of Corunna, SPAIN Agile Development Main bibliographic source: Agile & Itera,ve Development A Manager s Guide,
More informationHP Application Lifecycle Management
HP Application Lifecycle Management Overview HP Application Lifecycle Management is a software solution expressly designed to allow your team to take control of the application lifecycle while investing
More information4/4/2013. Copyright 2013, Robert Ward
Challenges In Scaling Scrum Robert Ward 3 April 2013 The Agile Manifesto In Context The Manifesto is mostly heuristics, not mandates and not first principles. It aimed to legitimize resistance to conventional
More informationLeveraging RUP, OpenUP, and the PMBOK. Arthur English, GreenLine Systems
Software Project Management Leveraging RUP, OpenUP, and the PMBOK Arthur English, GreenLine Systems GreenLine Systems Inc. 2003 2013 My Background 30+ years of IT project management experience with both
More informationSoftware Development Process
Software Development Process 台 北 科 技 大 學 資 訊 工 程 系 鄭 有 進 教 授 2005 copyright Y C Cheng Software development process Software development process addresses requirements, expectations and realities simultaneously
More informationAgile Data Warehousing
Agile Data Warehousing Chris Galfi Project Manager Brian Zachow Data Architect COUNTRY Financial IT Projects are too slow IT Projects cost too much money I never get what I expected There must be a better
More informationHP Agile Manager What we do
HP Agile Manager What we do Release planning Sprint planning Sprint execution Visibility and insight Structure release Define teams Define release scope Manage team capacity Define team backlog Manage
More informationSoftware Processes. Coherent sets of activities for specifying, designing, implementing and testing software systems
Questions What is the life cycle of a software product? Why do we need software process models? What are the goals of a software process and what makes it different from other industrial processes? Software
More informationINTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal Research Article ISSN 2277 9140 ABSTRACT Analysis and tabular comparison
More information