Advanced Software Engineering Ch. 2 – SE as Engineering Science

Slides:



Advertisements
Similar presentations
Lecture # 2 : Process Models
Advertisements

Object-Oriented Software Development CS 3331 Fall 2009.
Prescriptive Process Models Developed to bring order and structure to the software development process. To get away from the chaos of most development.
CS487 Software Engineering Omar Aldawud
1 Chapter 3 Prescriptive Process Models Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
Chapter 3 Process Models
Chapter 2 Software Process Models
SE382 Software Engineering Lecture 04 Process Models (1)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering Process
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
April 30, April 30, 2015April 30, 2015April 30, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
Chapter 2 Process Models
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Chapter 3 Critical Systems (cont.). 2 Safety Safety is a property of a system that reflects the system’s ability to operate, normally or abnormally,
CIS 321—IS Analysis & Design
INTROSE Introduction to Software Engineering Raymund Sison, PhD College of Computer Studies De La Salle University Software: Definitions,
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 4 Slide 1 Chapter 1 The Systems Development Environment.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
1/23 Prescriptive Process Models. 2/23 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive.
Chapter 4 프로세스 모델 Process Models
Chapter 4 Process Models Chapter 4 Process Models Moonzoo Kim KAIST 1.
Software Engineering - Abdul Majeed. What is software? Definition of Software Engineering Software Process Generic view of Software Engineering Software.
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
SWE311_Ch03 (071) Software & Software Engineering Slide 1 Chapter 3 Prescriptive Process Models.
Software Engineering Emphasis for Engineering Computing Courses William Hankley Computing & Information Sciences Kansas State University.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
3.1 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering If prescriptive process models strive for structure.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Model Process
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Software Engineering I. Introduction to Software Engineering Software models Formal Specification using ASML (Abstract State Machines Language) Software.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Software Process Models The slides and the material of this chapter is adopted from: 1. “Software Engineering”, by I. Somerville, 7th Ed., “Software.
Software Development Process includes: all major process activities all major process activities resources used, subject to set of constraints (such as.
Chapter 4 & Chapter 5 Important Concepts
Chapter 4 Process Models: Prescriptive Models vs
Chapter 3 Prescriptive Process Models
TIM 58 More on Chapter 1: Introduction to Systems Analysis and Design
IS301 – Software Engineering V:
Complexity Time: 2 Hours.
Process Models.
Rapid Application Development Model
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Introduction to Software Engineering
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
مدل‌هاي فرايند پيشنهادي
Lecture 2 Revision of Models of a Software Process
CIS 210 Systems Analysis and Development
Process Models Coming up: Prescriptive Models.
Chapter 2 Process Models
Chapter 2 Process Models
Chapter 2 Process Models
Computer Science & Engineering Electrical Engineering
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Chapter 2 Process Models.
Chapter 4 Process Models
Chapter 2 Process Models
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
The Waterfall Model Also known as: classic life cycle, the waterfall model, the linear model Rarely projects are sequential (allows iteration indirectly)
Chapter 2 Process Models
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Advanced Software Engineering Ch 1 – Engineering Science
Presentation transcript:

Advanced Software Engineering Ch. 2 – SE as Engineering Science Prof. Said Ghoul Software Engineering Department Research Laboratory on Bio-inspired Software Engineering Philadelphia University Amman, Jordan CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

Advanced Software Engineering Ch. 2 – SE as Engineering Science Layout Software Engineering Case study Conventional Processes Tutorial CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Requirements Problem – High abstraction level Software Product – Null abstraction level Deep Gulf High Quality Low Cost CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Conventional Solution ! Requirements Problem Methodology /Process Software Product CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Conventional Solution ! Requirements Problem Ascending Descending Methodology/Process Software Product CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Conventional Solution ! Requirements Problem Methodology /Process = {activity} U {Coordination rules} - Definition languages - kernel of Software Engineering Activity : supported by a method implemented by tool Coordination rules: Activity control Software Product CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Conventional Solution ! Requirements Problem Methodology/Process Software Product CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Conventional Solution ! Requirements Problem Methodology/Process Software Product CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Dream Solution ! Requirements Problem Software Product Old, current, and Future Human Computing Dream CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Dream Solution ! Software Engineer Top Down Bottom Up CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Dream Solution ! Bottom Up: Abstracting Requirements Languages  Design Languages  HPL  Binary Languages CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Software Engineering Problem ? Dream Solution ! Top down: Detailing Requirements Languages  Design Languages  HPL  Binary Languages CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

Software Processes Evolution Software Process Case study CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview Prescriptive process models advocate an orderly approach to software engineering That leads to a few questions … If prescriptive process models strive for structure and order, are they inappropriate for a software world that thrives on change? Yet, if we reject traditional process models (and the order they imply) and replace them with something less structured, do we make it impossible to achieve coordination and coherence in software work?  Dynamic Process Model CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Water fall Process CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Incremental Process CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – RAD Process CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Evolutionary Process: Prototype CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Evolutionary Process: Spiral CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Evolutionary Process: Concurrent CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Other Process Component based development—the process to apply when reuse is a development objective Formal methods—emphasizes the mathematical specification of requirements AOSD—provides a process and methodological approach for defining, specifying, designing, and constructing aspects Unified Process—a “use-case driven, architecture-centric, iterative and incremental” software process closely aligned with the Unified Modeling Language (UML) CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Other Process: UP CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Other Process: UP CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Other Process: UP CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Agile Process Extreme Programming (XP) CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Agile Process Adaptive Software Development CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Agile Process Adaptive Software Development CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Dynamic Process Dynamic Methodology /Process = {Dynamic Activity} + {Dynamic CR} Software Process design pattern and meta modeling CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

CS PhD Advanced SE Pr S. Ghoul, 2018 Software Engineering Conventional Process overview – Tutorial Seminar on Software Processes CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)

SE as Engineering Science Thank you CS PhD Advanced SE Pr S. Ghoul, 2018 Graziano & Raulin (2007)