In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani www.sadighim.ir Chapter 1.

Slides:



Advertisements
Similar presentations
Figures-Chapter 2.
Advertisements

آزمایشگاه مهندسی نرم افزار
National Association for Regulatory Administration September 13, 2011 IT’s NOT Like Building a House Mark Parker (800)
SOFTWARE DEVELOPMENT METHODOLOGIES Methodologies Waterfall Prototype model Incremental Iterative V-Model Spiral Scrum Cleanroom RAD DSDM RUP.
SDLC – Beyond the Waterfall
Software development process improvement Ville Wettenhovi Master thesis presentation Supervisor:Professor Jukka Manner Instructor:M.Sc. Markus Aalto Date:23th.
Object-Oriented Software Development CS 3331 Fall 2009.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
CS487 Software Engineering Omar Aldawud
THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)
CHAPTER TWO Object Oriented System Analysis and Design 1.
SOFTWARE ENGINEERING METHODOLOGY / MODEL
29 September Interactions  There is no “right answer”  Typically people and product are fixed  … can adapt process  (which is where we will.
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani Chapter 2.
Software Life Cycles ECE 417/617: Elements of Software Engineering
Chapter 6: Design of Expert Systems
Chapter Extension 19 Alternative Development Techniques © 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke.
Workshop 1 Methodology 13 January Introduction Method can be defined as a systematic and orderly procedure or process for attaining some objective.
CHAPTER 17 Building Software to Support an Agile Organization
Chapter 1 The Systems Development Environment
In the name of God Sharif University of Technology, International Branch, Kish Island Dr. Mohsen Sadighi Moshkenani Chapter 12.
Tsvetelina Kovacheva, Quality Manager Musala Soft June 19, 2007 Implementing Models and Standards for Software Development Benefits and Risks.
Software Development Process
Transforming Organizations
Business Driven Technology Unit 5 Transforming Organizations McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved.
Method comparison: for Situational Method Engineering Mohssen Ali.
Chapter 11 McGraw-Hill/Irwin Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved.
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers Unit 11 Slide 1 Chapter 1 The Systems Development Environment.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 4 Slide 1 Chapter 1 The Systems Development Environment.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification.
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
In the name of God Sharif University of Technology, International Branch, Kish Island Dr. Mohsen Sadighi Moshkenani Chapter 20.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Chapter 1 The Systems Development Environment Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
In the name of God Sharif University of Technology, International Branch, Kish Island Dr. Mohsen Sadighi Moshkenani Chapter 17.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Rational Unified Process  “de facto standard”, framework.
Teaching slides Chapter 2. Chapter 2 Software Engineering Methodologies Introduction Why a methodology? Agile methodologies Waterfall model Rational Unified.
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.
Slide #18-1 Introduction to Assurance CS461/ECE422 Fall 2008 Based on slides provided by Matt Bishop for use with Computer Security: Art and Science.
Chapter 1 Assuming the Role of the Systems Analyst.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
4.2 SOFTWARE DEVELOPMENT METHODOLOGGY PRESENTED BY : AZURA IBRAHIM SYARIFAH SYAZA BTE SEYD ZULKAFLY CS230(5A)
The Software Lifecycle Stuart Faulk. Definition Software Life Cycle: evolution of a software development effort from concept to retirement Life Cycle.
Systems Development Process and Methodologies Dr. T. Ravichandran.
Software Development Methodologies
Software Development.
Teaching slides Chapter 2
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Software: Process and Product
TIM 58 More on Chapter 1: Introduction to Systems Analysis and Design
Chapter 1 The Systems Development Environment
Software Development methodologies
Chapter 2: The Project Management and Information Technology Context
Unified Modeling Language (UML)
Chapter 1 The Systems Development Environment
Introduction to Software Engineering
Chapter 2 Software Processes
مهندسي نرم‌افزار چيست؟
Lecture 2 Revision of Models of a Software Process
Introduction to Software Process Models
ارائه كننده: شاهين انتصاري
Basic SDLC Models SDLC  System Development Life Cycle.
مهندسي نرم‌افزار چيست؟
Lecture 4 Project Management in ICT
Chapter 5: New and Emerging Process Methodologies
Presentation transcript:

In the name of God Toward Better Software Development: Software Engineering Principles By: Mohsen Sadighi Moshkenani Chapter 1

Outline People and their responsibilities Good software Software life cycle; Software process What is SE? Why SE? / Importance Software development model Few related concepts

People and their responsibilities Sponsors: those who pay or decides Users Operators: those who keep a system operational Developers: those who make Maintainers: those who fix errors, change an d upgrade Vendors: those who distribute and sell

Good software For end user For sponsor For maintainer For vendor For developer Mutual effects

Software life cycle; Software process Requirement specification Development Analysis Design Implement Test Deployment Evolution Retirement

What is SE? By definition: Systematic approach to development, operation, maintenance and retirement of software By its goals: Production of good software, on time and on cost. By terms: Software Engineering

Why SE? Historical background Improving role and importance More requests Decreasing hardware costs; increasing hardware power More investments Software attributes (such as invisibility) Expensive and not simple production Lack of human experts

Software development model A model is a symbol of reality (chapter 12) A software development model introduces: Phases and the framework of each phase Products of each phase Criteria for moving from one phase to the other Syntax and semantics for related notations

Water fall model

Spiral model

Fountain model

Object oriented model

V model

Rapid application development model

Capability maturity model سطحنامفرايند 1 بدوي (initial) پراكنده. 2 قابل تكرار (repeatable) موفقيت ‌ هاي توليد قابل تكرار هستند. 3 تعريف شده (defined) به خوبي مشخص و درك شده؛پ تعريف شده در رويه ‌ هاي استاندارد؛ با ابزارها و روش ‌ ها؛ تنها كميت قابل پيش ‌ بيني است. 4 مديريت شده به لحاظ كميت (quantitatively managed) استفاده از اندازه ‌ گيري ‌ هاي دقيق؛ زير فرايندهاي كنترل شده؛ كيفيت قابل پيش ‌ بيني است. 5 بهينه شونده (optimizing) رشد مداوم؛ رشد محصول و رشد فنّاوري؛ هم فرايندهاي تعريف شده و هم مجموعه استانداردهاي سازماني؛ هردو هدفِ فعاليت ‌ هاي رشدِ قابل اندازه ‌ گيري هستند. Table 1-1

Repetitive and incremental

Continuation of activities

Method, methodology and approach Method: instruction and set of steps Methodology: set of documented methods; which may be added by educational plan and contents, workshops and tools Approach: selected model and method or methodology by a person or company

Table 1-2 Agile Unified Process (AUP) Constructionist design methodology (CDM) Dynamic Systems Development Method Enterprise Unified Process (EUP) Extreme Programming (XP) since 1999 Flowcharting ICONIX Process (use case driven object modeling with UML) Information Engineering (IE/IEM) Jackson Structured Programming Metaprogramming, subject of Charles Simonyi's doctoral thesis MPMM Object Oriented Design using Prototype Methodology (OODPM) since 1994 Open Unified Process Praxis Rational Unified Process (RUP) Scrum (development) Structured programming since 1969 Structure System Analysis and Design Method (SSADM) System Development Methodology Top-down programming Virtual finite state machine (VFSM) since 1990's Waterfall model