INFO415 Approaches to System Development: Part 1

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

Iterative, Evolutionary, and Agile You should use iterative developmen only on projects that you want to succeed. - Martin Fowler.
Chapter 2: Approaches to System Development
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
Systems Analysis and Design in a Changing World, 6th Edition
CS487 Software Engineering Omar Aldawud
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Overview Traditional systems development life cycle (SDLC)
Chapter 2 Approaches to System Development
Systems Analysis and Design in a Changing World, 6th Edition
Approaches to Systems Development
Software Process Models
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
1 The Database Application Development Process The Database Application Development Process.
Fundamentals of Information Systems, Second Edition
IMS1805 Systems Analysis Topic 6: Analysis as a process within a process.
Systems Analysis and Design in a Changing World, Fifth Edition
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
SDLC and Related Methodologies
Software Development Overview CPSC 315 – Programming Studio Spring 2008.
Introduction to Systems Analysis and Design
Lesson 1 Week01.
CIS 321—IS Analysis & Design
Chapter 2: Approaches to System Development
1 CMPT 275 Software Engineering Software life cycle.
2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the purpose and various phases of the traditional systems development.
Chapter 2 The process Process, Methods, and Tools
2 Systems Analysis and Design in a Changing World, Fourth Edition.
INFO415 An overview of systems development
Satzinger Chp. 2 Part Part 4 of 4 2 Object-Oriented Analysis and Design with the Unified Process Testing Testing is critical discipline Testing activities.
Chapter 1: Introduction to Systems Analysis and Design
Topic 1: Approaches to System Development
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 8 - Approaches to System Development.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Content The system development life cycle
Approaches to Systems Development
Rational Unified Process Mr Hisham AlKhawar. Iterative versus Waterfall  We need to use a life cycle model in order to approach developing a system easily,
2 Systems Analysis and Design in a Changing World, Fifth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Lecture 2 –Approaches to Systems Development Method 10/9/15 1.
Systems Analysis and Design in a Changing World, 6th Edition
System Development 1 u Systems development life cycle (SDLC) l Provides overall framework for managing system development process u Two main approaches.
Developed by Reneta Barneva, SUNY Fredonia The Process.
2 Systems Analysis and Design in a Changing World, Fourth Edition.
Stand Up Comedy Project/Product Management
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Software Engineering Process Models Models for Guiding the Development of Software.
2 Systems Analysis and Design in a Changing World, Fourth Edition.
Workflows Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Engineering CE 501 Prepared by : Jay Dave.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 8 Approaches to System Development.
Systems Analysis and Design in a Changing World, 6th Edition
2 Systems Analysis – ITEC 3155 Systems Analysis Tasks.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Introduction to Systems Analysis and Design
Chapter 1: Introduction to Systems Analysis and Design
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 1 (pages 4-9); Overview of SDLC
System DEVELOPMENT LIFE CYCLE MODELS
Software Process Models
Chapter 1: Introduction to Systems Analysis and Design
Systems development life cycle (SDLC)
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 1: Introduction to Systems Analysis and Design
Presentation transcript:

INFO415 Approaches to System Development: Part 1

Ajax, Pinnacle and Consolidated Based on experience of 3 IS grads Recap the experience of Kim (Ajax), Mary (Consolidated) and Bob (Pinnacle) in their first positions. When a new grad enters a new company, what are some issues they might encounter regarding systems development approaches?

Systems Analysis and Design in a Changing World, 6th Edition Overview Chapter 1 demonstrated a system development project that used an iterative and agile system development life cycle (SDLC) Now we return to look at the SDLC and related concepts in more detail Predictive versus Adaptive SDLC variations Activities and Tasks of System Support Models, Methodologies, Tools and Techniques Impacts of Traditional versus OO development Agile Development

The System Development Life Cycle (SDLC) Systems Analysis and Design in a Changing World, 6th Edition The System Development Life Cycle (SDLC) There are two general approaches to the SDLC Predictive Approach Waterfall model Assumes the project can be planned in advance and that the information system can be developed according to the plan Requirements are well understood and/or low technical risk Adaptive Approach to the SDLC Iterative model (as see in this text) Assumes the project must be more flexible and adapt to changing needs as the project progresses Requirements and needs are uncertain and/or high technical risk

The System Development Life Cycle (SDLC) Systems Analysis and Design in a Changing World, 6th Edition The System Development Life Cycle (SDLC) Most projects fall on a continuum between Predictive and Adaptive

Traditional Predictive SDLC Systems Analysis and Design in a Changing World, 6th Edition Traditional Predictive SDLC Earlier approach based on engineering Typically have sequential Phases Phases are related groups of development activities, such as planning, analysis, design, implementation, and deployment Waterfall model SDLC that assumes phases can be completed sequentially with no overlap or iteration Once one phase is completed, you fall over the waterfall to the next phase, no going back

Traditional Predictive SDLC Systems Analysis and Design in a Changing World, 6th Edition Traditional Predictive SDLC

Newer Overlapping Phases Predictive SDLC Systems Analysis and Design in a Changing World, 6th Edition Newer Overlapping Phases Predictive SDLC More flexibility, but still assumes predictive planning and sequential phases

Systems Analysis and Design in a Changing World, 6th Edition Newer Adaptive SDLC Emerged in response to increasingly complex requirements and uncertain technological environments Always includes iterations where some of design and implementation is done from the beginning Many developers claim it is the only way to develop information systems Many IS managers are still sceptical

First Adaptive Approach to the SDLC Based on spiral model Project cycles through development activities over and over until project is complete Prototype created by end of each cycle Focuses on mitigating risk Iteration – Work activities are repeated Each iteration refines previous result There are a series of mini projects for each iteration

Iterative Model Popular Way to Represent Adaptive SDLC Systems Analysis and Design in a Changing World, 6th Edition Iterative Model Popular Way to Represent Adaptive SDLC

The Adaptive SDLC used in this Text Systems Analysis and Design in a Changing World, 6th Edition The Adaptive SDLC used in this Text Shows core processes, not phases, plus iterations in a sequence for management checkpoints Based on the Unified Process SDLC (see chapter 14)

Additional Adaptive Concepts Systems Analysis and Design in a Changing World, 6th Edition Additional Adaptive Concepts Incremental Development An approach that completes portions of the system in increments A system is implemented and partially deployed in steps during the project Gets part of working system into users’ hands sooner Walking Skeleton An approach in which the complete system structure is built early, but with bare-bones functionality

Systems Analysis and Design in a Changing World, 6th Edition The SDLC Support Phase All information systems need to be supported once completed Predictive SDLCs typically include support as a project phase Adaptive SDLCs treat support as a separate project Support Activities Activities whose objective is to maintain and enhance the system after it is installed and in use

Systems Analysis and Design in a Changing World, 6th Edition Support Activities Maintaining the system Fix problems/error Make minor adjustments Update for changes in operating systems or environments Enhancing the system Add desired functionality Add or change functionality to comply with regulations or legislation Supporting the users Ongoing user training Help desk

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques Methodologies Provides guidelines for every facet of system development: What to do when, why and how Specifies an SDLC with activities and tasks Specifies project planning and project management models and reporting Specifies analysis and design models to create Specifies implementation and testing techniques Specifies deployment and support techniques Other term used is System Development Process

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques Model An abstraction of an important aspect of the real world. Makes it possible to understand a complex concept by focusing only on a relevant part Each model shows a different aspect of the concept Crucial for communicating project information In IS, some models are of system components Some models are used to manage the development process

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques Tools: software applications that assists developers in creating models or other components required for a project

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques Technique: a collection of guidelines that help an analyst complete an activity or task Learning techniques is the key to having expertise in a field

Methodologies, Models, Tools, and Techniques Systems Analysis and Design in a Changing World, 6th Edition Methodologies, Models, Tools, and Techniques A Methodology includes a collection of techniques that are used to complete activities and tasks, including modelling, for every aspect of the project Analysts use tools to complete activities and to generate models (among other things)

Build vs. Buy Activities associated with Design and Implementation are very different if we build a system from scratch vs. buying a package Build: Low level design is developing specifications for UI, DB, business rules. Implementation is coding and testing Buy: Low level design is choosing among all configuration options and developing specs for any extensions to package Implementation is configuring and testing configurations Both: High Level Design is similar.