Software Engineering
|
|
- Cecilia Anthony
- 6 years ago
- Views:
Transcription
1 Software Engineering Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 41
2 Terms Software Component SW System Organized collection of computer data and instructions Solves isolated task Developed by a single person Multiple components Developed by a team Peter Thiemann (Univ. Freiburg) Software Engineering SWT 2 / 41
3 Programming in the Small Development of a system comprised of a small number of mind-sized components Often clear requirements Sometimes algorithmic aspects Procedure for a single component: Procedural decomposition, top-down stepwise refinement (N. Wirth), Peter Thiemann (Univ. Freiburg) Software Engineering SWT 3 / 41
4 Programming in the Large Development of a software system comprised of many components requirements at first fuzzy Size or complexity dictate... decomposition in a large number of components development in a team size determines duration, but beware of Brook s law! Peter Thiemann (Univ. Freiburg) Software Engineering SWT 4 / 41
5 Brook s law: Adding manpower to a late SW project makes it later Image: Peter Thiemann (Univ. Freiburg) Software Engineering SWT 5 / 41
6 Issues Arising with Programming in the Large Requirements need to be investigated Communication problem customer developer Understanding the problem Design of the system is significant task Decomposition in components (interfaces, contracts) Information hiding (D.L. Parnas) Design for maintenance Long life span High probability of changes (aging) Promising approach: object-oriented analysis and design Construction of components: programming in the small Testing required on many levels Peter Thiemann (Univ. Freiburg) Software Engineering SWT 6 / 41
7 Conclusion Programming in the large is a structured approach to all activities in the development of a software system Unfortunately,... Peter Thiemann (Univ. Freiburg) Software Engineering SWT 7 / 41
8 Conclusion Programming in the large is a structured approach to all activities in the development of a software system Unfortunately,... there are many overall approaches (process models) there are many techniques with similar goals Peter Thiemann (Univ. Freiburg) Software Engineering SWT 7 / 41
9 Process Models Process Model: structured network of activities and artifacts An activity transforms a set of artifacts into new artifacts Given Artifacts Methods Guidelines Conventions Check Lists Patterns Tools Changed or new Artifacts Employee Y Role X Peter Thiemann (Univ. Freiburg) Software Engineering SWT 8 / 41
10 Phases Phases provide structure of process model Description of a phase goals activities roles required/new artifacts patterns, guidelines, and conventions Peter Thiemann (Univ. Freiburg) Software Engineering SWT 9 / 41
11 Desiderata for Process Models The fewer phases, artifacts, roles, the better Artifacts should cover standard case Tool support Quality assurance for each artifact Traceability Peter Thiemann (Univ. Freiburg) Software Engineering SWT 10 / 41
12 The Classic: Waterfall Model Requirements Specification Design Coding Testing Integration Early error correction is cheaper (e.g. after analysis phase 100 times cheaper than after deployment) Hence, after every phase: check of previous phases Potentially return to previous phase Phases may overlap Operation Maintenance Peter Thiemann (Univ. Freiburg) Software Engineering SWT 11 / 41
13 Requirements Analysis tractability cost analysis result: documents: decision on continuation of project (artifacts) Requirement specification (Lastenheft) Cost estimation Project plan Peter Thiemann (Univ. Freiburg) Software Engineering SWT 12 / 41
14 Definition / Specification starting point: vague, incomplete, inconsistent requirements result: documents: complete, consistent, unequivocal, accomplishable requirements System specification (Pflichtenheft) Product model (e.g. OOA) GUI model User manual Peter Thiemann (Univ. Freiburg) Software Engineering SWT 13 / 41
15 Definition / Specification (cont d) Only external behavior of system Analysis of requirements functional / non-functional requirements prioritization Main outcome: system specification fixes the scope of the product serves as basis for contract between customer and contractor basis for final acceptance functionality user interface interfaces to other systems performance (response time, space usage) required hard and software guidelines for documentation time scheduling quality Peter Thiemann (Univ. Freiburg) Software Engineering SWT 14 / 41
16 Design starting point: system specification / product model Decomposition in components / subsystems Logical interfaces of each component Choice of technologies result: Software architecture (with specification of components) Peter Thiemann (Univ. Freiburg) Software Engineering SWT 15 / 41
17 Implementation and Testing starting point: Software architecture Coding of component specifications Compilation to machine language Unit testing up to component level result: implemented components and testing protocols Peter Thiemann (Univ. Freiburg) Software Engineering SWT 16 / 41
18 Integration, system test, and deployment Integration stepwise addition of single components tested with data fixed in advance (functional requirements only) System test entire system (incl. hardware) non-functional requirements (performance, GUI) Deployment transfer of software system to its working environment result: deployed product, protocol of final acceptance Peter Thiemann (Univ. Freiburg) Software Engineering SWT 17 / 41
19 Maintenance Supervision Bug fixes Changes due to changes in requirements (incl. extensions) result: maintained product Peter Thiemann (Univ. Freiburg) Software Engineering SWT 18 / 41
20 Concrete Process Models 1. V-Model 2. Prototyping model 3. Phased models (evolutionary, incremental, spiral) 4. Unified Software Process 5. Agile development techniques Peter Thiemann (Univ. Freiburg) Software Engineering SWT 19 / 41
21 V-Model Entwicklungsstandard für Systeme des Bundes level of abstraction system requirements software requirements system integration acceptance test Analyze and Design preliminary design detailed design software integration component test Test and Integrate code and debug unit test time Peter Thiemann (Univ. Freiburg) Software Engineering SWT 20 / 41
22 V-Model Builds on waterfall model Emphasizes validation connections between late phases and early phases Objectives risk minimization quality assurance cost reduction communication between stakeholders Current instance: V-Model XT Peter Thiemann (Univ. Freiburg) Software Engineering SWT 21 / 41
23 Prototyping Model Lifecycle require ments design prototype build prototype test prototype document requirements design code test integrate Peter Thiemann (Univ. Freiburg) Software Engineering SWT 22 / 41
24 Prototyping - Overview Advantages: understanding the requirements for the user interface improves understanding between developer and client early testing of feasibility, usefulness, performance, etc. Problems: customers treat the prototype as the product a prototype is not a specification significant user involvement Peter Thiemann (Univ. Freiburg) Software Engineering SWT 23 / 41
25 Phased Models Evolutionary Development 1. model core requirements 2. design and implement 3. deploy 4. feedback from customer 5. revise/extend requirements 6. revise/extend design 7. revise/extend implementation 8. iterate from 3 until all requirements met Incremental Development 1. model all requirements 2. design and implement only core requirements 3. deploy 4. feedback from customer 5. revise requirements 6. design further requirements 7. implement further requirements 8. iterate from 3 until all requirements met Peter Thiemann (Univ. Freiburg) Software Engineering SWT 24 / 41
26 Incremental Development (each iteration adds more functionality) release 1 design code test integrate O&M requirements release 2 design code test integrate O&M release 3 design code test integrate O&M release 4 design code test integrate O&M Peter Thiemann (Univ. Freiburg) Software Engineering SWT 25 / 41
27 Evolutionary Development (each iteration incorporates new requirements) version 1 reqts. design code test integrate O&M version 2 reqts. lessons learned design code test integrate O&M lessons learned version 3 reqts. design code test integrate O&M Peter Thiemann (Univ. Freiburg) Software Engineering SWT 26 / 41
28 Spiral Model (Barry Boehm 1988) Determine Goals, Alternatives, Constraints alternatives 4 alternatives 3 constraints4 constraints3 2 2 alternativesconstraints risk analysis 2 risk analysis 1 budget4 budget3 budget2 budget1 prototype1 prototype2 prototype3 prototype4 Plan integration and test plan requirements, lifecycle plan development plan alternatives constr. implementation plan concept of operation risk analysis 3 software validated requirements validated, verified design acceptance test risk analysis 4 requirements system test software design Evaluate Alternatives and Risks unit test code detailed design Develop and Test Peter Thiemann (Univ. Freiburg) Software Engineering SWT 27 / 41
29 Comments on Phased Models Incremental development avoids big bang implementation but assumes all requirements known up-front Evolutionary development allows for lessons from each version to be incorporated into the next but: hard to plan for versions beyond the first; lessons may be learned too late Spiral model primarily targeted at very large projects iterative model that incorporates prototyping and risk analysis but: cannot cope with unforeseen changes not clear how to analyze risk Peter Thiemann (Univ. Freiburg) Software Engineering SWT 28 / 41
30 The Unified Software Process Use-Case Driven Which user-visible processes are implemented by the system? Analysis, design, implementation, and testing driven by use-cases Architecture centric Architecture developed in parallel to use cases (mutual dependency) Iterative and Incremental eliminate risks first checkpoint after each iteration on failure of an iteration step, only current extension needs to be reconsidered small steps speed up project easy stepwise identification of the requirements Peter Thiemann (Univ. Freiburg) Software Engineering SWT 29 / 41
31 Structure of the Unified Software Process sequence of cycles after each cycle: product release with code, manuals, UML models, and test cases Start... End Zeit Cycles (each completing a new version) cycle consists of 4 phases: Inception, Elaboration, Construction, Transition each phase consists of iterations Peter Thiemann (Univ. Freiburg) Software Engineering SWT 30 / 41
32 Cycle Time Inception Elaboration Construction Transition Iteration Iteration Iteration Iteration #1 #2 #n 1 #n... new product versions Peter Thiemann (Univ. Freiburg) Software Engineering SWT 31 / 41
33 Main-Workflows and Phases Core Workflows Inception Elaboration Phases Construction Transition Requirements Analysis Design Implementation Testing It. #1 It. #2 It. #n each phase ends with a mile stone each phase processes all workflows (with varying intensity) Peter Thiemann (Univ. Freiburg) Software Engineering SWT 32 / 41
34 Inception Phase functionality of system from users perspective most important use cases (stakeholder needs) preliminary sketch of suitable architecture project plan and cost identify most important risks (with priorities) plan elaboration phase GOAL: rough vision of the product Peter Thiemann (Univ. Freiburg) Software Engineering SWT 33 / 41
35 Elaboration Phase specify (most) use cases in detail design architecture implement most important use cases result: initial architecture plan activities and resources for remaining project use cases and architecture stable? risk management? GOAL: prototype (proof-of-concept for architecture) Peter Thiemann (Univ. Freiburg) Software Engineering SWT 34 / 41
36 Construction Phase implement system high resource needs small architectural changes GOAL: system ready for customer (small errors acceptable) Peter Thiemann (Univ. Freiburg) Software Engineering SWT 35 / 41
37 Transition Phase deliver beta-version to customer address problems (immediately or in next release) train customer Peter Thiemann (Univ. Freiburg) Software Engineering SWT 36 / 41
38 Agile Development Techniques Extreme Programming (XP, Kent Beck 1999) frequent releases short development cycles pair programming unit testing w tests developed before the code features specified by tests implement features when needed clear progress marks don t spend much time on design stakeholder involvement Peter Thiemann (Univ. Freiburg) Software Engineering SWT 37 / 41
39 Agile Development Techniques Scrum (Hirotaka Takeuchi and Ikujiro Nonaka 1986) Flexible approach to development; incremental process Adaptability to changing requirements Core roles Product owner, Scrum master, Team Ancillary roles Stakeholders, Managers Sprint 2-4 weeks of intense development; goal: working increment that implements the sprint backlog; sprint backlog frozen during a sprint; self organization; burn down chart Sprint Backlog requirements chosen for a sprint Product Backlog as yet unimplemented requirements Peter Thiemann (Univ. Freiburg) Software Engineering SWT 38 / 41
40 The Pig and the Chicken Roles in Scrum Image Peter Thiemann (Univ. Freiburg) Software Engineering SWT 39 / 41
41 Last Word On Agile Development Image http: // Peter Thiemann (Univ. Freiburg) Software Engineering SWT 40 / 41
42 Summary Software has unique problems with far-reaching consequences Creating software systems requires structured process models Classic process phases: waterfall model Commonly used process models: V-model, prototyping, evolutionary, incremental, spiral, unified SW process, agile development Peter Thiemann (Univ. Freiburg) Software Engineering SWT 41 / 41
Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany
Softwaretechnik Lecture 02: Processes Peter Thiemann University of Freiburg, Germany SS 2012 Peter Thiemann (Univ. Freiburg) Softwaretechnik SWT 1 / 34 Terms Software Program SW System organized collections
More informationThe Software Life Cycle
Inception Software Increment Communication Planning Production The Software Life Cycle Software Engineering Deployment Andreas Zeller Saarland University Modelling Elaboration Transition Construction Construction
More informationCMPT 275 Software Engineering
CMPT 275 Software Engineering Software life cycle 1 Software Life Cycle Sequence of processes completed as a software project moves from inception to retirement At beginning of project development, choose
More informationThe Software Life Cycle
Production Inception The Life Cycle Engineering Modelling Andreas Zeller Saarland University Elaboration Transition A Crisis Denver International Airport (DIA) started in 1989 53 sq miles Planned: 1.7
More informationProcesses and Life- Cycles. Kristian Sandahl
Processes and Life- Cycles Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify
More informationIntroduction of RUP - The Rational Unified Process
Introduction of RUP - The Rational Unified Process Jong-Hoon Lee Dependable Software Laboratory Konkuk University References Textbook: The Rational Unified Process Made Easy A Practitioner s Guide to the
More informationV Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects
Lifecycle of Software Projects ECE450 Software Engineering II Lifecycle models are useful to compare project management strategies in abstract terms Birds-eye view strategy Detect strengths and weaknesses...
More informationIntroduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014
Introduction to Software Life Cycles and Agile CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014 1 Goals Present an introduction to the topic of software life cycles concepts and terminology
More informationChapter 3 Software Process Model
Usman Akram COMSATS Institute of information Technology lahore musmanakram@ciitlahore.edu.pk March 8, 2015 About software process model Outline 1 About software process model Build and Fix Model Why Models
More informationIntroduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016
Introduction to Software Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016 1 Goals Present an introduction to the topic of software life cycles concepts and terminology benefits
More informationSoftware Development Life Cycle:
Software Development Life Cycle: The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software
More information18-642: Software Development Processes
18-642: Software Development Processes 9/6/2017 Without requirements and design, programming is the art of adding bugs to an empty text file. Louis Srygley Coding Is Essentially 0% of Creating Software
More informationMajor attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis
Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system development projects Major attributes of the Lifecycle The project Moves systematically
More informationScrum - Introduction. Petri Heiramo. Agile Coach, CST
Scrum - Introduction Petri Heiramo Agile Coach, CST Scrum Started in the Harvard BR. The relay race approach to product development may conflict with the goals of maximum speed and flexibility. Instead
More informationProcess, Models, Methods, Diagrams Software Development Life Cyles. Part - II
Process, Models, Methods, Diagrams Software Development Life Cyles Part - II A bench-mark for measuring the maturity of an organization s software process CMM defines 5 levels of process maturity based
More informationObject-Oriented and Classical Software Engineering
Slide 3.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 3 Slide 3.2 THE SOFTWARE PROCESS Overview Slide 3.3
More informationSoftware Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1
Software Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be
More informationIntroduction to Software Engineering
UNIT I SOFTWARE PROCESS Introduction S/W Engineering Paradigm life cycle models (water fall, incremental, spiral, WINWIN spiral, evolutionary, prototyping, objects oriented) -system engineering computer
More informationTwo Branches of Software Engineering
ENTERPRISE SOFTWARE ENGINEERING & SOFTWARE ENGINEERING IN THE ENTERPRISE Two Branches of Software Engineering 1 Crafting Software Resource Input Code Debug Product Test 2 Engineering Software Resource
More information03. Perspective Process Models
03. Perspective Process Models Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Prescriptive Process Models advocates an orderly approach to software
More informationSoftware Engineering Modern Approaches
Software Engineering Modern Approaches Chapter : Software Process Eric Braude and Michael Bernstein Maintenance Testing The Software Development Lifecycle Implementation Design Phase most relevant to this
More informationIn this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice
In this Lecture you will Learn: Development About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities in the development
More informationAGILE DEVELOPMENT AND ITS IMPACT ON PRODUCTIVITY
AGILE DEVELOPMENT AND ITS IMPACT ON PRODUCTIVITY 2006 International Software Measurement & Analysis Conference David Garmus www.davidconsultinggroup.com Topics Characteristics of Agile Projects Performance
More informationSoftware Processes. Objectives. Topics covered. The software process. Waterfall model. Generic software process models
Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationObjectives. The software process. Topics covered. Waterfall model. Generic software process models. Software Processes
Objectives Software Processes To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationThe software process
Software Processes The software process A structured set of activities required to develop a software system Specification; Design; Validation; Evolution. A software process model is an abstract representation
More informationTopics covered. Software process models Process iteration Process activities The Rational Unified Process Computer-aided software engineering
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
More informationSoftware Development Methodologies. CSC 440: Software Engineering Slide #1
Software Development Methodologies CSC 440: Software Engineering Slide #1 Topics 1. The Waterfall Model 2. Agile Software Development 3. The Unified Process 4. Object-Oriented Analysis and Design 5. The
More informationRational Unified Process
Rational Unified Process Software development Life Cycle The life of a software system can be represented as a series of cycle. A cycle ends with the release of a version of the system to the customers.
More information2 Why is systems development difficult and risky? 3 How do businesses use the systems development life cycle (SDLC) process?
1 What is systems development? 2 Why is systems development difficult and risky? 3 How do businesses use the systems development life cycle (SDLC) process? 4 How do businesses use the rapid application
More informationSistemi ICT per il Business Networking
Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking Requirements Engineering Docente: Vito Morreale (vito.morreale@eng.it) 17 October 2006 1 UP Phases 1. Inception
More informationSoftware Modeling & Analysis. - Fundamentals of Software Engineering - Software Process Model. Lecturer: JUNBEOM YOO
Software Modeling & Analysis - Fundamentals of Software Engineering - Software Process Model Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr What is Software Engineering? [ IEEE Standard 610.12-1990 ] Software
More informationVolume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at
Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info A Study of Software Development Life Cycle Process Models
More information7. Model based software architecture
UNIT - III Model based software architectures: A Management perspective and technical perspective. Work Flows of the process: Software process workflows, Iteration workflows. Check Points of The process
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 informationSelecting Software Development Life Cycles. Adapted from Chapter 4, Futrell
Selecting Software Development Life Cycles Adapted from Chapter 4, Futrell Examples of Software Life Cycle Models Classical Waterfall Waterfall with feedback V-Shaped Prototyping Incremental Spiral Rapid
More informationAgile Software Development
Agile Software Development Lecturer: Raman Ramsin Lecture 3 Scrum Framework 1 Scrum Origins First mentioned as a development method in 1986, referring to a fast and flexible product development process
More informationsoftware development lifecycle (sdlc) models & agile methods
software development lifecycle (sdlc) models & agile methods sdlc how did that happen? by analogy with civil engineering, where you design first, then do construction in software, there is no construction
More informationSWE 211 Software Processes
SWE 211 Software Processes These slides are designed and adapted from slides provided by Software Engineering 9 /e Addison Wesley 2011 by Ian Sommerville 1 Outlines Software process models Process activities
More informationSoftware development activities
Software development activities l Note activities not steps l l Often happening simultaneously Not necessarily discrete 1. Planning: mostly study the requirements 2. Domain analysis: study the problem
More informationObject-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3.
Slide 3.1 CHAPTER 3 Slide 3.2 Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach Overview Slide 3.3 Overview (contd) Slide 3.4
More informationScrum and Agile Processes. Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011
Scrum and Agile Processes Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011 Scrum and Agile Processes: Outline Classical processes and their limitations Agile processes Scrum o Overview o History
More informationDevelopment Process Bennett, McRobb and Farmer 1
Development Process Based on Chapter 5 Bennett, McRobb and Farmer Object Oriented Systems Analysis and Design Using UML 4 th Edition, McGraw Hill, 2010 1 In This Lecture You Will Learn: About the Unified
More informationAgile Essentials Track: Business Services
Agile Essentials Track: Business Services Presenter: Mark Thomas Synopsis Are you a victim of building the wrong solutions slowly? If so, you re not alone, and considering an Agile approach may be the
More informationIntroduction to Agile/Extreme Programming
Introduction to Agile/Extreme Programming Matt Ganis, Senior Technical Staff Member (Certified Scrum Master) IBM Hawthorne, New York ganis@us.ibm.com August 2007 Session 8061 Current slides at: http://webpage.pace.edu/mganis
More informationIntroduction to Systems Analysis and Design
Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.
More informationLectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1
Lectures 2 & 3 Software Processes Software Engineering, COMP201 Slide 1 What is a Process? When we provide a service or create a product we always follow a sequence of steps to accomplish a set of tasks
More informationCopyright Intertech, Inc All Rights Reserved. May 18, 2011
Copyright Intertech, Inc. 2011. All Rights Reserved. May 18, 2011 About Me Dave Schueck Principal Consultant Intertech Dschueck@Intertech.com 20 years experience Variety of technologies, roles, systems,
More informationBased on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems
Software Processes Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems Slide 1 Objectives To introduce software
More informationThe Top Thrill Dragster
EEC 421/521: Software Engineering The Software Process Prescriptive Process Models 1/22/08 EEC 421/521: Software Engineering 1 The Top Thrill Dragster 420 ft tall Max speed over 120 mph World s second
More informationIntroduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016
Introduction to Agile Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016 1 Goals Introduction to Agile Life Cycles The Agile Manifesto and Agile Principles Agile Life Cycles
More informationThe Software Development Process (SDLC)
http://home.hit.no/~hansha/?page=software_development O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com The Software Development Process (SDLC) Hans-Petter Halvorsen IT System B. Lund.
More informationSoftware Life Cycle. Main Topics. Introduction
Software Life Cycle Main Topics Study the different life cycle models Study the difference between software maintenance and evolution Study product line engineering as a design methodology 2 Introduction
More informationSoftware Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 5 Integrated Object-Oriented Methodologies: USDP and EUP 1 Unified Software Development Process (USDP) Also known as Unified Process (UP)
More informationObject-Oriented & Classical Soft Engineering
Object-Oriented & Classical Soft Engineering Seventh Edition Stephen R. Schach Vanderbilt University Higher Education Boston Burr Ridge, IL Dubuque, IA New York San Francisco St. Louis Bangkok Bogota Caracas
More informationSE310 Analysis and Design of Software
SE310 Analysis and Design of Software Lecture 7 REVIEW SM&D Chapters 1 to 11 & Notes February 13, 2018 Sam Siewert Domain Models Use Case Details UML is Universal Modeling Language [OMG, UML.org] Use to
More informationSession 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation
Session 11E Adopting Agile Ground Software Development Supannika Mobasser The Aerospace Corporation The Aerospace Corporation 2017 Overview To look beyond the horizon and to embrace the rapid rate of change
More informationPertemuan 2. Software Engineering: The Process
Pertemuan 2 Software Engineering: The Process Collect Your Project Topic What is Software Engineering? Software engineering is the establishment and sound engineering principles in order to obtain economically
More informationThis tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.
i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give
More informationMODULE Explain briefly the different types of system models that might be created during the system analysis phase. 2. Write short notes on
15CS42: SOFTWARE ENGINEERING QUESTION BANK MODULE 1. 1. What is software? Explain the two fundamental types of software products. 2. What is software engineering? What is the difference between software
More informationAn Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB
An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB Aldo Dagnino ABB US Corporate Research Center 1021 Main Campus Drive Raleigh, NC, USA aldo.dagnino@us.abb.com Abstract
More informationWELCOME TO INTRO TO AGILE PROJECT MANAGEMENT AUBREY KAIGLER, PMP, ITIL. Please configure your audio: Meeting Audio Setup Wizard
WELCOME TO INTRO TO AGILE PROJECT MANAGEMENT AUBREY KAIGLER, PMP, ITIL Please configure your audio: Meeting Audio Setup Wizard Feedback and Interaction Raise your hand Give a thumbs up Give a thumbs down
More informationA New Divide & Conquer Software Process Model
A New Divide & Conquer Software Process Model First A. Hina Gull, Second B. Farooque Azam Third C. Wasi Haider Butt, Fourth D. Sardar Zafar Iqbal Abstract The software system goes through a number of stages
More informationA Sad Story. Info IV IT Project Management. How to Avoid Troubled Projects. Why IT-Projects Fail
Info IV IT Prof. Dr. Peter Müller Software Component Technology Introduction A Sad Story Standish Group Research Study CHAOS 1995 Fully successful (on-time, on-budget, with all features as initially specified
More informationThe Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall
Software Process Models Critique & Defense of the Waterfall Issues in Waterfall Models concurrent development phase transitions and overlap Issues in Evolutionary Models incremental vs. iterative models
More informationInfo IV IT Project Management. A Sad Story. Why IT-Projects Fail. Prof. Dr. Peter Müller. Standish Group Research Study CHAOS 1995
Info IV IT Prof. Dr. Peter Müller Software Component Technology Introduction A Sad Story Standish Group Research Study CHAOS 1995 Fully successful (on-time, on-budget, with all features as initially specified
More informationSoftware Engineering II - Exercise
Software Engineering II - Exercise April 29 th 2009 Software Project Management Plan Bernd Bruegge Helmut Naughton Applied Software Engineering Technische Universitaet Muenchen http://wwwbrugge.in.tum.de
More informationJohanna Rothman. Chapter 1 Why Agile and Lean Approaches Work. Copyright 2017
Johanna Rothman Chapter 1 Why Agile and Lean Approaches Work Copyright 2017 Agile and Lean Approaches Why such approaches exist! Software, we have a problem It was thought you could hand a software team
More informationManaging Projects of Chaotic and Unpredictable Behavior
Managing Projects of Chaotic and Unpredictable Behavior by Richard Dick Carlson Copyright 2013, Richard Carlson; All Rights Reserved 1 Managing Projects of Chaotic and Unpredictable Behavior Dick Carlson,
More informationScrum Team Roles and Functions
Scrum Team Roles and Functions What is a Scrum Team? The purpose of a Scrum team is to deliver products iteratively and incrementally, maximizing opportunities for feedback Scrum teams are comprised by
More informationThe good news. 34% of software projects succeed. Standish Group, CHAOS Report, 2003
The good news 34% of software projects succeed. Standish Group, CHAOS Report, 2003 1 The bad news That means 66% failed! Standish Group, CHAOS Report, 2003 2 Best Practices Develop Iteratively Manage Requirements
More informationScrum. Software Engineering and. The Waterfall model. The Waterfall model - some arguments. The Waterfall model - some arguments. Time.
Software Engineering and Scrum autumn 2010 Department of Computer and Information Science Linköping University, Sweden The Waterfall model Requirements One of the first life-cycle models (Royce, 1970)
More informationAgile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University
Agile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University What is Agile? In simple terms, Agile is a collection of ideas to guide both the
More informationSE420 Software Quality Assurance
SE420 Software Quality Assurance Lecture 2 Software Specification Part-1 January 16, 2017 Sam Siewert SQA LO s (Learning Objectives) Theory and Principles 1. Coverage of Current SQA Theory and Practice
More informationProf. Dr. Liggesmeyer, 1. Quality Management of Software and. Processes and QM. Systems. QMSS Processes and QM
Quality Management of Software and Systems Processes and QM Prof. Dr. Liggesmeyer, 1 Contents V-Model XT Rational Unified Process (RUP) Extreme Programming (XP) Processes Prof. Dr. Liggesmeyer, 2 V-Model
More information3. PLANNING & PROCESSES
The Life Cycle of A Large Project Contract Bid, Ref PLAIG. PLAIG PROCESSES Payment Resource Program Program Resource Project Project Solution Engineering Engineering Criteria Subcontract Subcontract Material
More informationSoftware Engineering Lecture 5 Agile Software Development
Software Engineering Lecture 5 Agile Software Development JJCAO Mostly based on the presentation of Software Engineering, 9ed Exercise Describe the main activities in the software design process and the
More informationSoftware Engineering Fall 2014
Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 09/17/2014 What is next Deliverable? Due: 09/19/2014 1. Problem Statement with Shall statements 2. RTM (4
More informationSDLC Models- A Survey
Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 1, January 2013,
More informationOracle Unified Method (OUM) Using OUM with Agile Techniques. Jan Kettenis Oracle Global Methods Oracle Consulting Netherlands
Oracle Unified Method (OUM) Using OUM with Agile Techniques Jan Kettenis Oracle Global Methods Oracle Consulting Netherlands 1 1 The Agile Manifesto values Individuals and interactions Working software
More informationNon-object-oriented design methods. Software Requirements and Design CITS 4401 Lecture 15
Non-object-oriented design methods Software Requirements and Design CITS 4401 Lecture 15 1 (reminder) Software Design is a creative process no cook book solutions goal driven we create a design for solving
More informationQuality Management of Software and Systems
Quality Management of Software and Systems Processes and QM Prof. Dr. Liggesmeyer, 1 Contents Rational Unified Process (RUP) Extreme Programming (XP) Processes Prof. Dr. Liggesmeyer, 2 Starting point:
More informationWhat is Scrum: An Introduction to the Scrum Framework
What is Scrum: An Introduction to the Scrum Framework Eric Naiburg Vice President of Marketing and Operations eric.naiburg@scrum.org April 4, 2018 @ScrumDotOrg 1 Improving the Profession of Software Delivery
More informationAgile Development Doesn t Have to Mean Fragile Enterprise Processes
Fragile Enterprise Processes An MKS White Paper By: Colin Doyle ALM Strategic Product Manager MKS Inc. The Move to Agile Agile software development methodologies are garnering a lot of interest these days.
More informationAn Agile Projects Introduction Course #PMCurrent-1
An Agile Projects Introduction Course #PMCurrent-1 Aaron MacDaniel, PMP, CSM, MBA Lead Instructor - BetterPM.com An Innate Images, LLC Company 1 Course Agenda About BetterPM.com A typical Waterfall Project
More informationPart 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software?
Software engineering Facts CSC 4181 Compiler Construction Software Engineering Lectures Part 1 Fact: The economies of ALL developed nations are dependent on software. Fact: More and more systems are software
More informationDRAFT. Effort = A * Size B * EM. (1) Effort in person-months A - calibrated constant B - scale factor EM - effort multiplier from cost factors
1.1. Cost Estimation Models Parametric cost models used in avionics, space, ground, and shipboard platforms by the services are generally based on the common effort formula shown in Equation 1. Size of
More informationWeb Application Development Process
Web Engineering Web Application Development Process Copyright 2015 Ioan Toma & Srdjan Komazec & Nelia Lassiera 1 Where are we? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th
More informationAgile Scrum Process Checklist
Agile Scrum Process Checklist To be successful, agile projects require a consistent management process. This checklist provides the various roles involved in agile projects (especially those with limited
More informationAgile Project Management: Best Practices and Methodologies
WHITEPAPER Agile Project Management: Best Practices and Methodologies 1. The Art of Project Management 2. Traditional Project Management Methodologies 3. Agile Project Management Methodology 4. Agile Frameworks
More informationLIFE-CYCLE MODELS AND PROCESS. Software Engineering 1/9/2008. CHAPTER 1, 2, and 3. Stephen R. Schach
Slide 2.1 CHAPTER 1, 2, and 3 Slide 2.2 Object-Oriented Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R. Schach srs@vuse.vanderbilt.edu SOFTWARE LIFE-CYCLE MODELS AND PROCESS Overview Slide
More informationSDLC AND MODEL SELECTION: A STUDY
SDLC AND MODEL SELECTION: A STUDY V. Therese Clara Asst professor of Computer Science, Madurai Kamaraj University College, Madurai, India ABSTRACT In the software industry, the frequency of failure of
More informationHarnessing the power of agile development
Microsoft IT Showcase Harnessing the power of agile development Integrating an acquired business means adjusting business processes, integrating data and technology platforms, and onboarding teams. When
More informationAn Introduction to Scrum
What is Scrum? Even projects that have solid, well-defined project plans encounter some degree of change. Shifting market conditions, budget cuts, staff restructuring, or any number of influences will
More informationBCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2
BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 Friday 30 th September 2016 - Morning Answer any THREE questions
More information[Name] [ ID] [Contact Number]
[Name] [Email ID] [Contact Number] THIS IS ONLY MODEL RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. PROFILE SUMMARY 15+ years of IT experience in Consulting and worked with the Major clients for the
More informationAGILE SOFTWARE DEVELOPMENT. Keith Pine Kumeel Alsmail Parker Li Björn Davis
AGILE SOFTWARE DEVELOPMENT Keith Pine Kumeel Alsmail Parker Li Björn Davis INTRODUCTION TO AGILE What is Agile? Origins of Agile Does Agile Work? Methodologies WHAT IS AGILE? A set of software methodologies
More informationQuality Management of Software and Systems: Processes and QM
Quality Management of Software and Systems: Processes and QM Contents V-Model XT Rational Unified Process (RUP) Extreme Programming (XP) Processes 2 V-Model XT Starting point: V-Model 97 Broadened guideline
More informationAn Oracle White Paper February Oracle Unified Method (OUM) Oracle s Full Lifecycle Method for Deploying Oracle-Based Business Solutions
An Oracle White Paper February 2014 Oracle Unified Method (OUM) Oracle s Full Lifecycle Method for Deploying Oracle-Based Business Solutions Executive Overview... 1 Introduction... 1 Standards Based...
More informationChapter 1 Systems Development in an Organization Context
Systems Development in an Organization Context Learning Objectives Define information systems analysis and design. Describe the information Systems Development Life Cycle (SDLC). Explain Rapid Application
More information