Software development processes Life-cycle Models
|
|
|
- Gwen Martin
- 10 years ago
- Views:
Transcription
1 Software development processes Life-cycle Models Lecture 2 Kari Systä TIE-21100&21106/K.Systä 1
2 About weekly exercises TUE TC131 Free space TUE TC131 full WED TC163 Free space WED TC131 full WED TC128 full WED TB207 cancelled THU TC163 full THU TC163 Free space Possible questions to TIE-21100&21106/K.Systä 2
3 About project / assignment Will be done in groups of 4 IDLE for registering will be opened 20.1 and deadline is Groups fixed by 31.1 If you do not have complete group, you should still register. The staff will combine. Project will run in 4 Sprints Instructions (still under preparation) TIE-21100&21106/K.Systä 3
4 For those who are on one of the last courses Are you looking for a master thesis topic with ambition to post grad studies after thesis, or are you graduated and want to aim at doctoral studies? Are your a skillful SW developer? Do you know basics Web and Cloud? Interested in working on International ITEA2 project EASI-CLOUDS and collaborate Finnish and European partners. In case of 4xYES, please send your application to [email protected] with the following data You CV Study records Initial research plan for your post grad studies Statement on why you want to join the project and what kind of tasks you want to take in the project.
5 Learning goals of today and the whole course What are process models and why they exists? Know basics of a few well-known process models And what are the motivations behind the models To behave better (Some day) to select life-cycle model for your organization Know how to participate in the work efficiently TIE-21100&21106/K.Systä 5
6 Initial content of lectures Introduction Life-cycle models, their background Project management, product management, project planning in general management aspects Scrum in details Kanban, Customer Development and DevOps details Requirement definition, requirement management, requirements prioritization Version management, configuration management, continuous integration Architecture issues, role of architect, architectural quality attributes, product families,. (TIE will go deeper) Testing and quality assurance (TIE will go deeper) Quality systems and process improvement Embedded and real-time systems (other courses will go deeper) Safety-critical and dependable systems Effort estimation Software business, software start-ups Recap TIE-21100/
7 Life-cycle models A software life cycle model is either a descriptive or prescriptive characterization of how software is or should be developed. Guideline to organize, plan, staff, budget, schedule and manage software project work over organizational time, space, and computing environments. Prescriptive outline for what documents to produce for delivery to client. Basis for determining what software engineering tools and methodologies will be most appropriate to support different life cycle activities. Framework for analyzing or estimating patterns of resource allocation and consumption during the software life cycle (Boehm 1981) Basis for conducting empirical studies to determine what affects software productivity, cost, and overall quality TIE-21100&21106/K.Systä 7
8 Software Process Models In contrast to software life cycle models, software process models often represent a networked sequence of activities, objects, transformations, and events that embody strategies for accomplishing software evolution. Such models can be used to develop more precise and formalized descriptions of software life cycle activities TIE-21100&21106/K.Systä 8
9 Life-cycle model and process model Often seen as synonyms. For example wikipedia.org/wiki/software_development_process writes: A software development process, also known as a software development life-cycle (SDLC), is a structure imposed on the development of a software product. Lifecycle models: Phases in the life of an artifact, e.g., a system Process models: Activities performed on artifacts, e.g., development activities TIE-21100&21106/K.Systä 9
10 Don t PANIC We mostly do not care about the possible difference in this course TIE-21100&21106/K.Systä 10
11 Need/idea Prestudy From needs to software Develop Order project Buy Forget Requirements Select supplier Tailor Design Implement. Test Deployment Maintenance Closure TIE-21100&21106/K.Systä 11
12 Waterfall model - simplified Specification Design Implementation Testing TIE-21100&21106/K.Systä 12
13 Royce, 1970 ( TIE-21100&21106/K.Systä 13
14 Principles of waterfall Waterfall is often understood as one-directional flow, but Royce considered iterations as a crucial part of the model. (mainly between consecutive steps) Waterfall is a plan-driven approach Move from step to next is a decision and often involves reviews, re-planing, budget decisions etc. Proper design and plan prevents extra work (and cost) in next steps The earlier the mistake is done, the more expensive it is Waterfal is consistent with other engineering processes TIE-21100&21106/K.Systä 14
15 Documentation is a crucial part of waterfall (on possible example) System requirements Requirement Specification Software requirements Architecture design Interface design Analysis Detailed design Program design Coding Test plan Maintenance Final design (as built) Testing Test report Operations TIE-21100&21106/K.Systä 15
16 Old and classic joke TIE-21100&21106/K.Systä
17 Problems with waterfall Does not support division of the software to distinct stages It is difficult to take out and use partial functionality Difficult to respond to changing customer requirements Management and motivation challenges of developers Does not utilize full talent and motivation of talented and highly trained software developers Does not show trust and empowerment Usually, waterfall is considers suitable for projects where Requirements can be know in advance Milestone reviews and audits are needed for example by security standards, TIE-21100&21106/K.Systä 17
18 For example TIE-21100&21106/K.Systä 18
19 Prototyping Motivations: Get feedback Ensure that selected technology works Gain commitment Evolutionary prototype Stepwise development towards product Throw-away prototype Allows optimization Can be combined with waterfall TIE-21100&21106/K.Systä 19
20 Precursor of interative models: Spiral Model (picture from: TIE-21100&21106/K.Systä 20
21 Fundamentals of spiral model Spiral model is a risk-driven process and handling risks is explicit Each loop is split to four sectors 1) Objective setting 2) Risk assessment and reduction 3) Development and validation 4) Planning Spiral model is not a series of waterfalls! (A common misconception) TIE-21100&21106/K.Systä 21
22 Rational Unified Process (RUP) Derived from UML and Unified Software Development Process Large and complex, but the purpose is not that all companies adopt all practices Three views Dynamic: phases over time Static: process activities Practice TIE-21100&21106/K.Systä 22
23 Phases in RUP Inception Elaboration Construction Transition Inception: business case and stakeholders Elaboration: spec, design, plan Construction: the real work Transition: to users TIE-21100&21106/K.Systä 23
24 Iterative model: RUP (Rational Unified Process) TIE-21100&21106/K.Systä 24
25 Key points so far Software processes is set of activities in SW production; software process model is abstract representation General process models describe organization of the process Requirements engineering develops software specification Design and implementation transfer specification to executable software Validation checks that confirms specification and real user requirements Evolution changes software to meet new requirements Process should include activities to cope with the change TIE-21100&21106/K.Systä 25
26 Now a break and then we put the previous discussion into context introduction to agile TIE-21100&21106/K.Systä 26
27 Different projects - product Vendor specification Implem. validation ppackaging research Sales Customer TIE-21100&21106/K.Systä
28 Different project customer specific Vendor research Implem. validation bid specification deployment specification deployment Call for tender Customer TIE-21100&21106/K.Systä
29 Different project customer specific Vendor Vendor research Implement. validation Specificat. bid bid delployment deployment Order spec Tender call order Customer TIE-21100&21106/K.Systä
30 Will that work? Assumption 1: good requirements can be written if enough effort is put on them But: customer needs change over the time even during the project But: software is abstract until it is seen and tried Assumption 2: changes are small But: they are not (and address surprising parts) Assumption 3: Integration is as easy as glueing components together But: the components are implemented by humans Assumption 4: schedule is followed Actually very seldom TIE-21100&21106/K.Systä 30
31 Iterative, agile Vendor research imp imp imp imp bid Spec. test demo test demo test demo test Deploym. spec. demo demo demo Deploym. Tender call Customer Bid a. Demo means that customer and vendor investigate together. If possible, software can be taken into use TIE-21100&21106/K.Systä
32 Agile -manifest February inventors We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more TIE-21100&21106/K.Systä 32
33 Manifesti Suomeksi Me etsimme parempia keinoja ohjelmistojen kehittämiseen tekemällä sitä itse ja auttamalla siinä muita. Tässä työssämme olemme päätyneet arvostamaan Yksilöitä ja vuorovaikutusta enemmän kuin prosesseja ja työkaluja Toimivaa sovellusta enemmän kuin kokonaisvaltaista dokumentaatiota Asiakasyhteistyötä enemmän kuin sopimusneuvotteluita Muutokseen reagoimista enemmän kuin suunnitelman noudattamista. Vaikka oikeallakin puolella on arvoa, me arvostamme vasemmalla olevia asioita enemmän TIE-21100&21106/K.Systä 33
34 Five principles of Agile Customer involvement Incremental delivery People not process Embrace change Maintain simplicity Through the project. Provide and prioritize requirements, evaluate iterations Customer specifies the increments Skill recognized and exploited; Team should decide on ways of working Plan and design for change Both in process and software TIE-21100&21106/K.Systä 34
35 Plan-driven vs. agile specification Requirements engineering Requirements specification Design and implementation Requirements engineering Design and implementation TIE-21100&21106/K.Systä 35
36 Problems in realizing Agile Getting customer commitment and trust is difficult Some team members do not have suitable personalities Prioritizing changes is difficult especially if there are many stakeholders Maintaining simplicity requires extra work Cultural changes through the company (Agile training should start from management) TIE-21100&21106/K.Systä 36
37 Extreme programming Well-known method developed by Kent Beck (only briefly covered by Haikala&Mikkonen, but internet is full of resources) Requirements are expressed as scenarios called User Stories which are implemented directly as series of tasks Programmers work in pairs and develop tests for each task before writing the code All tests must be successfully executed when new code is integrated TIE-21100&21106/K.Systä 37
38 XP release cycle Select User Stories for this sprint Break down stories to task Plan release Evaluate System Release software Develop/ Integrate/ Test TIE-21100&21106/K.Systä 38
39 XP (Extreme programming) TIE-02300/Kari Systä 39
40 Practice/principle Description Incremental planning XP Practices Small releases Simple design Test-driven development Refactoring Pair programming Collective ownership Continuous integration Sustainable pace On-site customer Minimun useful is implemented first; frequent releases Spend enough time in design Test written before code, automated tests All team members should refactor code to keep simple and maintainable Check each others work; support No islands of responsibilities; every body can change everything Whenever something is ready it is integrated; always test Large amounts of overtime is not sustainable Continuous access to customer TIE-21100&21106/K.Systä 40
41 About pair-programming Supports collective ownership and responsibility Informal review because each line of code has been seen more than one person Supports refactoring Fosters learning from colleaques Research on productivity gives mixed results TIE-21100&21106/K.Systä 41
42 Scrum Framework for agile and iterative developmet Jeff Sutherland, John Scumniotales, and Jeff McKenna OOPSLA TIE-21100&21106/K.Systä 42
43 Pigs Scrum master Product owner Team members Chicken Stakeholders (customer,.) Managers Scrum-rooles TIE-21100&21106/K.Systä 43
44 XP vs Scrum XP has typically shorter iterations (1-2w instead of 2-4w) Scrum does not allow changes into sprints XP is work in strict priority order Scrum does not prescribe any engineering practices Scrum focuses more on management aspects TIE-21100&21106/K.Systä 44
45 Learning goals of today and the whole course What are process models and why they exists? Know basics of a few well-known process models And what are the motivations behind the models To behave better (Some day) to select life-cycle model for your organization Know how to participate in the work efficiently TIE-21100&21106/K.Systä 45
46 Initial content of lectures Introduction Life-cycle models, their background Project management, product management, project planning in general management aspects Scrum in details Kanban, Customer Development and DevOps details Requirement definition, requirement management, requirements prioritization Version management, configuration management, continuous integration Architecture issues, role of architect, architectural quality attributes, product families,. (TIE will go deeper) Testing and quality assurance (TIE will go deeper) Quality systems and process improvement Embedded and real-time systems (other courses will go deeper) Safety-critical and dependable systems Effort estimation Software business, software start-ups Recap TIE-21100/
47 Links and further reading Managing the Development of Large Software Systems(Royce, 1970) Walt Scacchi, Process Models in Software Engineering, in Encyclopedia of Software Engineering, 2 nd Edition, John Wiley and Sons, Inc, Dec Competing lecture: Spiral model revisited by Barry Boehm him self: RUP best practices by IBM: /1251_bestpractices_TP026B.pdf Lot of good material about agile methods: TIE-21100&21106/K.Systä 47
48 The following slides postponed to next lecture TIE-21100&21106/K.Systä 48
49 Done -> 100% done Burndown -Chart Velocity -> The velocity is calculated by counting the number of units of work completed in a certain interval (sprint in case of Scrum) When task is done value in chart is reduced If the task grows value is increased TIE-21100&21106/K.Systä 49
50 Timeboxing A timebox is a previously agreed period of time during which a person or a team works steadily towards completion of some goal. Rather than allow work to continue until the goal is reached, and evaluating the time taken, the timebox approach consists of stopping work when the time limit is reached and evaluating what was accomplished TB1 TB2 TB3 Ways to manage risks Fast response Makes requirement management more rigid TIE-21100&21106/K.Systä 50
51 Iron triangle Scope/features Resources Quality Time/ Schedule TIE-21100&21106/K.Systä 51
Topics 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
Agile Development Overview
Presented by Jennifer Bleen, PMP Project Services Practice of Cardinal Solutions Group, Inc. Contact: Agile Manifesto We are uncovering better ways of developing software by doing it and helping others
Software Development Methodologies
Software Development Methodologies Jonathan Hoyle Eastman Kodak Thursday, June 2, 2005 Overview Predictive Methodologies Waterfall Other Predictive Methodologies Agile Methodologies Extreme Programming
Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution
Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Not this life cycle SE, Software Lifecycle, Hans van Vliet, 2008 2 Introduction software development
Classical Software Life Cycle Models
Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation
Agile 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
Quality Assurance Software Development Processes
Quality Assurance Software Development Processes Part II - Lecture 3 1 The University of Auckland New Zealand 254 12/09/ /2012 The FBI Virtual Case File 254 12/09/ /2012 Database application developed
CSE 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
Software 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
Software 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
Software 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
How To Understand The Software Process
Ingegneria del Software Corso di Laurea in Informatica per il Management Software process model Davide Rossi Dipartimento di Informatica Università di Bologna The task of the software development team
COMP 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: [email protected] Winter 2015 Course
Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal [email protected]
Using Simulation to teach project management skills Dr. Alain April, ÉTS Montréal [email protected] Agenda of the workshop 1 The software project management theory overview (40 minutes) 2 Why use SDLC
Software 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
CS4507 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
A 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
EPL603 Topics in Software Engineering
Lecture 3 Agile Software Development EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer [email protected] Office FST-B107, Tel. ext. 2740 Topics covered Agile methods
Software 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
Gé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
SE464/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
Agile 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
6. Software Lifecycle Models. A software lifecycle model is a standardised format for planning organising, and running a new development project.
6. Software Lifecycle Models A software lifecycle model is a standardised format for planning organising, and running a new development project. Hundreds of different kinds of models are known and used.
Software 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
Agile 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 [email protected]
Software 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
Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1
Rapid software development Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Objectives To explain how an iterative, incremental development process leads to faster delivery of
CS 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
Introduction 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
The most suitable system methodology for the proposed system is drawn out.
3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.
Web 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
Development Methodologies
Slide 3.1 Development Methodologies Prof. Dr. Josef M. Joller [email protected] Development Methodologies Prof. Dr. Josef M. Joller 1 Session 3 Slide 3.2 SOFTWARE LIFE-CYCLE MODELS Development Methodologies
Quality Assurance in an Agile Environment
Quality Assurance in an Agile Environment 1 Discussion Topic The Agile Movement Transition of QA practice and methods to Agile from Traditional Scrum and QA Recap Open Discussion www.emids.com 2 What is
Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.
THE AGILE PROJECT LEADER S DICTIONARY This dictionary attempts to de-mystify the jargon around the world of Agile projects. Part 1 translates common Agile terms into more traditional words. Part 2 translates
Introduction 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)
D25-2. Agile and Scrum Introduction
D25-2 Agile and Scrum Introduction How to Use this Download This download is an overview of a discussion Intertech has with clients on Agile/Scrum This download has an overview of Agile, an overview of
Introduction to Software Engineering: Overview and Methodologies
Introduction to Software Engineering: Overview and Methodologies John T. Bell Department of Computer Science University of Illinois, Chicago Based on materials from Bruegge & DuToit, Object Oriented Software
Basic 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
Agile 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. [email protected] (210) 572-4400 Copyright 2006 - The OWASP Foundation Permission
Software 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...
Modern practices 2.3.2015 02.03.2015 TIE-21100/21106 1
Modern practices 2.3.2015 1 Today s lecture Learn what some modern SW engineering topics are about A peek to some research topic of our department 2 3 4 5 6 How the lectures continue? 02.03 Modern practices
Lifecycle Models: Waterfall / Spiral / EVO
Lifecycle Models: Waterfall / Spiral / EVO Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2011 Lifecycle The sequence of actions that must be performed in order to build a software
Waterfall to Agile. DFI Case Study By Nick Van, PMP
Waterfall to Agile DFI Case Study By Nick Van, PMP DFI Case Study Waterfall Agile DFI and Waterfall Choosing Agile Managing Change Lessons Learned, Sprints Summary Q and A Waterfall Waterfall Waterfall
Unit 1 Learning Objectives
Fundamentals: Software Engineering Dr. Rami Bahsoon School of Computer Science The University Of Birmingham [email protected] www.cs.bham.ac.uk/~rzb Office 112 Y9- Computer Science Unit 1. Introduction
SOFTWARE 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
CSSE 372 Software Project Management: More Agile Project Management
CSSE 372 Software Project Management: More Agile Project Management Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: [email protected] Learning Outcomes: Plan Create a plan for
TRADITIONAL 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
Agile 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
Models 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
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
Agile 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
Development. Lecture 3
Software Process in Modern Software Development Lecture 3 Software Engineering i Practice Software engineering practice is a broad array of principles, concepts, methods, and tools that must be considered
Agile-Fall Process Flow Model A Right Candidate for Implementation in Software Development and Testing Processes for Software Organizations
www.ijcsi.org 457 Agile-Fall Process Flow Model A Right Candidate for Implementation in Software Development and Testing Processes for Software Organizations Prakash.V SenthilAnand.N Bhavani.R Assistant
Agile Projects 7. Agile Project Management 21
Contents Contents 1 2 3 Agile Projects 7 Introduction 8 About the Book 9 The Problems 10 The Agile Manifesto 12 Agile Approach 14 The Benefits 16 Project Components 18 Summary 20 Agile Project Management
Rapid Software Development
Software Engineering Rapid Software Development Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain how an iterative, incremental development process leads to faster delivery
Extreme 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
Kanban vs Scrum Making the most of both
Kanban vs Scrum Making the most of both JAOO, Aarhus Oct 6, 2009 Henrik Kniberg Agile/Lean coach @ Crisp, Stockholm Board of directors [email protected] +46 70 4925284 Purpose of this presentation
Singhania University, Jhunjhunu, Rajasthan, India. 2 Department of Information Technology King Abdul Aziz University, Jeddah, Saudi Arabia
www.ijcsi.org 441 A Comprehensive Study of Commonly Practiced Heavy and Light Weight Software Methodologies 1 Asif Irshad Khan, 2 Rizwan Jameel Qurashi and 3 Usman Ali Khan 1 Department of Computer Science
Gé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:
How 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
Unit I. Introduction
Unit I Introduction Product Life Cycles Products also have life cycles The Systems Development Life Cycle (SDLC) is a framework for describing the phases involved in developing and maintaining information
Life 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.
Leveraging 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
Software 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
In 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
White Paper IT Methodology Overview & Context
White Paper IT Methodology Overview & Context IT Methodologies - Delivery Models From the inception of Information Technology (IT), organizations and people have been on a constant quest to optimize the
System development lifecycle waterfall model
Slide 6.1 System development lifecycle waterfall model Figure 6.1 The waterfall model of system development lifecycle Slide 6.2 The b model Figure 6.2 The b model Source: N D Birrell and M A Ould, A Practical
Hamid Faridani ([email protected]) March 2011
Hamid Faridani ([email protected]) March 2011 Introduction Methodologies like Waterfall, RUP and Agile have all become key tools for software developers and project manager s to aid them in delivering
Agile Scrum Training. Nice to meet you. Erik Philippus. Erik Philippus (1951) www.improvement-services.nl www.agile-architecting.com.
Erik Philippus IMPROVEMENT BV [email protected] 1 IMPROVEMENT BV Nice to meet you Erik Philippus (191) IMPROVEMENT BV 3 years of experience in industrial automation Foxboro, ESA, Philips Medical,
Agile methods. Objectives
Agile methods CMSC435-1 Objectives To explain how an iterative, incremental development process leads to faster delivery of more useful software To discuss the essence of agile development methods To explain
Extreme 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
Outline. Agile Methods. Converse of Conway s Law. The Silver Bullet Fantasy (Brooks, 1986)
Agile Methods Barry Boehm, CS 510 Lecture Fall 2001 ([email protected]) (http://sunset.usc.edu) Outline Silver bullets and lead bullets Information technology trends The dwindling lead-bullet niche
Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. [email protected] www.coveros.
Transitioning Your Software Process To Agile Jeffery Payne Chief Executive Officer Coveros, Inc. [email protected] www.coveros.com 1 About Coveros Coveros helps organizations accelerate the delivery
XP & Scrum. extreme Programming. XP Roles, cont!d. XP Roles. Functional Tests. project stays on course. about the stories
XP & Scrum Beatrice Åkerblom [email protected] extreme Programming XP Roles XP Roles, cont!d! Customer ~ Writes User Stories and specifies Functional Tests ~ Sets priorities, explains stories ~ May or
Agile 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. [email protected] (210) 572-4400 Copyright 2006 - The OWASP Foundation
RUP for Software Development Projects
RUP for Software Development Projects George Merguerian www.bmc-online.com 1 Specialists in Global Project Management Brussels Frankfurt Houston Istanbul Milan Ottawa Shanghai Singapore Warsaw Washington
Agile Project Management: Adapting project behaviors to the software development environment
Agile Project Management: Adapting project behaviors to the software development environment with Bill Doescher, PMP, CSM PrincipalConsultant and Product Development Director Business Management Consultants
1. Software Process Models (Sommerville Chapters 4, 17, 19, 12.4)
1. Software Process Models (Sommerville Chapters 4, 17, 19, 12.4) A software process model is a standardised format for planning organising, and running a development project. 1 Hundreds of different models
Development models. 1 Introduction. 2 Analyzing development models. R. Kuiper and E.J. Luit
Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further
Software Requirements and Specification
Software Requirements and Specification Agile Methods SE3821 - Jay Urbain Credits: Beck, K. (1999). Extreme Programming Explained: Embrace Change. Boston, MA: Addison-Wesley. Beck, Kent; et al. (2001).
Agile and lean methods for managing application development process
Agile and lean methods for managing application development process Hannu Markkanen 27.01.2012 1 Lifecycle model To support the planning and management of activities required in the production of e.g.
Mastering the Iteration: An Agile White Paper
Rally Software Development Corporation Whitepaper Mastering the Iteration: An Agile White Paper Dean Leffingwell Abstract: The heartbeat of Agile development is the iteration the ability of the team to
What is a life cycle model?
What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each
CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
CS435: Introduction to Software Engineering! " " " " " " " "Dr. M. Zhu! Chapter 3! Agile Development! Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman
Agile 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
CMMI - The AGILE Way By Hitesh Sanghavi
CMMI - The AGILE Way By Hitesh Sanghavi 1 The Maturity Levels 5 Focus on process improvement Optimizing 3 4 2 Process measured and controlled Process characterized for the organization and is proactive
Chapter 2 Software Processes
Chapter 2 Software Processes Chapter 2 Software Processes Slide 1 Topics covered Software processes and process models Generic models: Waterfall Incremental development Reuse-oriented software engineering
1. Software Process Models (Sommerville Chapters 4, 17, 19, 12.4)
1. Software Process Models (Sommerville Chapters 4, 17, 19, 12.4) A software process model is a standardised format for planning organising, and running a development project. 1 Hundreds of different models
Principles 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
SOFTWARE ENGINEERING CSC 423 B - MWF 11-12 EXTREME PROGRAMMING
SOFTWARE ENGINEERING CSC 423 B - MWF 11-12 EXTREME PROGRAMMING TO: Dr. Khaldoun El Khalidi FROM: Lamia Nassif, Jessy, Nadine Ghanem, & Pedro Maroun Eid Due: 20 March 2002 1 Table of Contents I. ABSTRACT...3
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
Agile Project Management
Agile Project Management Projekt-Kick-Off-Tage Hochschule Augsburg Martin Wagner, 15. März 2011 TNG Technology Consulting GmbH, http://www.tngtech.com Agile project management with Scrum Agenda Software
Software Engineering Reference Framework
Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of
LEAN AGILE POCKET GUIDE
SATORI CONSULTING LEAN AGILE POCKET GUIDE Software Product Development Methodology Reference Guide PURPOSE This pocket guide serves as a reference to a family of lean agile software development methodologies
Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan
Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering Shvetha Soundararajan Thesis submitted to the faculty of the Virginia Polytechnic Institute and State University
