Lecture note Business system development - Lecture 2: Systems Development Life Cycle (SDLC)

In this lecture we will continue our discussion on SDLC. Precisely, we will talk about the problems with the existing waterfall approach. We will also see some other SDLC: Methodologies. | Business System Development CSC581 Lecture No. 2: Systems Development Life Cycle (SDLC) Summary of the previous lecture We introduced the course and its content in our previous lecture. We talked about an Information System (IS) and more specifically we talked about the Systems Analysis & Design. We have also seen different types of IS and briefly talked about the SDLC Outlines Systems development life cycle Identify the four phases How it came about Methodology alternatives Alternatives to Traditional Waterfall SDLC Objectives To understand the need of a formal process To understand and distinguish between Alternatives to Traditional Waterfall SDLC Why do we need a formal process? Systems Development Life Cycle (SDLC) Traditional methodology for developing, maintaining, and replacing information systems Phases in SDLC: 1. Planning 2. Analysis 3. Design 4. Implementation 5. Maintenance Standard and Evolutionary Views of SDLC SDLC Planning Phase SDLC Analysis Phase SDLC Design Phase SDLC Implementation Phase SDLC Maintenance Phase The Heart of the Systems Development Process Current practice combines analysis, design, and implementation into a single iterative and parallel process of activities Traditional Waterfall SDLC Problems with Waterfall Approach System requirements “locked in” after being determined (can't change) Limited user involvement (only in requirements phase) Too much focus on milestone deadlines of SDLC phases to the detriment of sound development practices Alternatives to Traditional Waterfall SDLC Prototyping CASE tools Joint Application Design (JAD) Rapid Application Development (RAD) Agile Methodologies eXtreme Programming Prototyping CASE Tools Computer-Aided Software Engineering Software tools providing automated support for systems development Project dictionary/workbook: system description and specifications Diagramming tools Example products: Oracle Designer, Rational Rose Joint Application Design (JAD) Structured process involving users, analysts, and managers Several-day intensive workgroup sessions Purpose: to specify or review system requirements Rapid Application Development (RAD) Methodology to decrease design and implementation time Involves: prototyping, JAD, CASE tools, and code generators Agile Methodologies Motivated by recognition of software development as fluid, unpredictable, and dynamic Three key principles 1. Adaptive rather than predictive 2. Emphasize people rather than roles 3. Self-adaptive processes eXtreme Programming Short, incremental development cycles Automated tests Two-person programming teams Coding and testing operate together Advantages: Communication between developers High level of productivity High-quality code Object-Oriented Analysis and Design Based on objects rather than data or processes Object: a structure encapsulating attributes and behaviors of a real-world entity Object class: a logical grouping of objects sharing the same attributes and behaviors Inheritance: hierarchical arrangement of classes enable subclasses to inherit properties of superclasses Summary of Today’s Lecture We overviewed the course outlines We discusses and revised important concepts of Software Engineering We overviewed What is Software Quality Engineering Overview of Next lecture We will continue our discussion on overview and basics of Software Quality Engineering Precisely, we will talk about the quality assurance The End

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.