Research Article / Paper / Case Study Available online at: Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India

Similar documents
Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at

Pertemuan 2. Software Engineering: The Process

A New Divide & Conquer Software Process Model

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

SDLC Models- A Survey

Introduction to Software Engineering

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

03. Perspective Process Models

SWE 211 Software Processes

1) Introduction to Information Systems

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Introduction to Systems Analysis and Design

Software Development Life Cycle:

BASICS OF SOFTWARE TESTING AND QUALITY ASSURANCE. Yvonne Enselman, CTAL

LIFE-CYCLE MODELS AND PROCESS. Software Engineering 1/9/2008. CHAPTER 1, 2, and 3. Stephen R. Schach

V Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects

The Top Thrill Dragster

Chapter 3 Software Process Model

Spiral Increment Reuse (SIR) Software Model

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis

Sistemi ICT per il Business Networking

Chapter 2: The Project Management and Information Technology Context

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016

Object-Oriented and Classical Software Engineering

SOFTWARE ENGINEERING

Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3.

System and Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

Subject : Computer Science. Paper : Software Quality Management. Module : Quality Management Activities Module No: CS/SQM/15

Extreme Programming, an agile software development process

Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan

Part 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software?

Confident Software Development Process Model

Information Systems Development

7. What is planning? It is an act of formulating a program for a definite course of action. Planning is to decide what is to be done.

Software Testing Life Cycle

Installation and Maintenance of Health IT Systems

SE420 Software Quality Assurance

Joined-up Requirements: Business Goals to System Tests

The Product Creation Process

Software Life Cycle. Main Topics. Introduction

Systems Engineering Concept

Chapter 1 Systems Development in an Organization Context

THE ADVANTAGES OF AGILE METHODOLOGIES APPLIED IN THE ICT DEVELOPMENT PROJECTS

Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model

A SDLC Software Development Lifecycle It s a set of tools, artifacts, and work practices an organization uses to create software.

Kapil Sharma 3 Department of Computer Science & Engineering Delhi Technological University Delhi India

Reducing Business Risk

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014

Rekayasa Perangkat Lunak 2 (IN043): Pertemuan 10. * Construction, Installation and Operations * Agile Method Software Development

Business Alignment Through the DevOps Loop

Chapter. Redesigning The Organization With Information Systems

SE420 Software Quality Assurance

TABLE OF CONTENTS ABBREVIATIONS 1.0 DEFINITIONS PURPOSE AND SCOPE GUIDELINES FOR PRACTICE REFERENCES AND RELATED DOCUMENTS 12

Applying Lean Principles to Software Product Development

Learning Objectives. Agile Modeling and. Major Topics. Prototyping. Patched Up Prototype. Agile Modeling, but First. Prototyping

Flexibility on what is delivered High

LOADING AND SEQUENCING JOBS WITH A FASTEST MACHINE AMONG OTHERS

SAP BUSINESS GROUP AGILE FOR SAP SOLUTIONS

CMMI-DEV V1.3 CMMI for Development Version 1.3 Quick Reference Guide

AGILE methodology- Scrum

Some Well Known Software Development Life Cycle Models

Achieving Balance: The New Pivotal Points of Software Development

PROJECT MANAGEMENT KNOWLEDGE RETRIEVAL: PROJECT CLASSIFICATION

Establishing Architecture for Large Enterprise Solutions in Agile Environment

Chapter 6: Software Evolution and Reengineering

Continuous Quality Assurance

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

ICS 52: Introduction to Software Engineering

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016

Microservices: Embracing the Unix mantra Do one thing and do it well

Chapter 15: Asset Management System

Introduction to Agile/Extreme Programming

Agile Development Doesn t Have to Mean Fragile Enterprise Processes

Fundamentals of Business Analysis including BCS Requirements Engineering

DRAFT. Effort = A * Size B * EM. (1) Effort in person-months A - calibrated constant B - scale factor EM - effort multiplier from cost factors

Software Inspections and Their Role in Software Quality Assurance

SYSTEME ANALYSIS AND DESIGN

Lean Agile Methodologies Accentuate Benefits of Cloud Computing Yash Talreja, President, The Technology Gurus

Challenges of Managing a Testing Project: (A White Paper)

Comparative Study of Various Process Model in Software Development Life Cycle

IMPLEMENTATION, EVALUATION & MAINTENANCE OF MIS:

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

Test Management: Leading Your Team To Success 12/10/2011. Test Management: Leading Your Team To Success (extract)

On the efficiency of domain-based COTS product selection method. - Karl R.P.H. Leung and Hareton K.N. Leung.

approach to successful project

SRI LANKA AUDITING STANDARD 300 PLANNING AN AUDIT OF FINANCIAL STATEMENTS CONTENTS

Analyze, Design, and Develop Applications

Project Management Context Outline

CHAPTER 2 PROBLEM STATEMENT

Best Practices for Enterprise Agile Transformation

Adopting to Agile Software Development

CHAPTER 2: IMPLEMENTATION PHASES AND OFFERINGS

Digital Industries Apprenticeship: Occupational Brief. Software Tester. March 2016

software development lifecycle (sdlc) models & agile methods

LOGISTICAL ASPECTS OF THE SOFTWARE TESTING PROCESS

CONSUMER DATA MANAGEMENT. ABSTRACT Foundational consumer data management is the key to a successful localization strategy.

Manchester Digital Level 4 Software Developer Apprenticeship

Transcription:

ISSN: 2321-7782 (Online) Volume 2, Issue 3, March 2014 International Journal of Advance Research in Computer Science and Management Studies Research Article / Paper / Case Study Available online at: www.ijarcsms.com Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India Abstract: Software Engineering (SE) is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software because it integrates significant mathematics, computer science and practices whose origins are in Engineering. Various processes and methodologies have been developed over the last few decades to improve software quality, with varying degrees of success. Keywords: Build and Fix model, Iterative model, Prototype model, Spiral model I. INTRODUCTION A software development process also known as software development life cycle is a structure imposed on the development of software products. There are several models for software to a variety of task or activities that take during the process. SDLC stands for Software Development Life Cycle. SDLC is the process consisting of a series of planned activities to develop or alter the software products. It is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process. II. SDLC MODEL I - BUILD AND FIX MODEL It is a simple two phase model: The phase is to write code. The next phase is to fix it. Fixing in this context may be error correction or addition of further functionality. Figure 1: Build and Fix Model 2014, IJARCSMS All Rights Reserved 235 P a g e

III. SDLC MODEL II - WATERFALL MODEL This is of the simplest known as the linear sequential life cycle model. In a waterfall model, each phase must be completed before moving onto the next. This model has five phases: Requirement analysis and specification phase- The goal of this phase is to understand the exact of the customer and to document them properly. Design phase-the goal of this phase is to transform the requirement specification into a structure that is suitable for implementation in some programming language. Implementation and unit testing-design is implemented, small modules are tested in isolation from the rest of the software products. Integration and system testing phase-this is very important phase. It is also a very expensive and consumes one third to one half of the cost of a typical development project. Operation and maintenance-software maintenance is very broad activity includes : Error correction Enhancement of capabilities Deletion of capabilities and optimization The purpose of this phase is to preserve the value of software overtime Figure 2: Waterfall Model IV. SDLC MODEL III - PROTOTYPING MODEL This model is used to overcome the limitation of waterfall model. In this model instead of freezing the before coding or testing or design, a prototype is built to clearly understand the. This prototype is built based on the e current. Through examining this prototype, the clients get a better understanding of the features of the final product. The prototype may be a usable program, but is not suitable as the final software product. 2014, IJARCSMS All Rights Reserved ISSN: 2321-7782 (Online) 236 P a g e

Figure 3: Prototype Model V. SDLC MODEL IV ITERATIVE ENHANCEMENT MODEL The iterative model can be thought of as a multi waterfall cycle. Cycles are divided into smaller and easily managed iterations. Each iteration passes through a series of phases, so after each cycle you will get working software. This model delivers an operational quality of product at each release but one that satisfies only a subset of the customer s. The complete product is divided into reeases and the developer delivers the product release by Figure 4: Iterative Model VI. SDLC MODEL V EVOLUTIONARY DEVELOPMENT MODEL This model resembles iterative enhancement model. It does not require a useable product at the end of each cycle. In evolutionary development, are implemented by category rather than by priority.this are useful for projects using new technology that is not well understood. This is also used for complex projects where all functionality must be delivered at one time, but the are unstable or not well understood at the beginning. 2014, IJARCSMS All Rights Reserved ISSN: 2321-7782 (Online) 237 P a g e

VII. SDLC MODEL VI SPIRAL MODEL The spiral model is similar to iterative model but places more emphasis on risk analysis. The system are defined in as much as possible by involving various users so as to identify the various aspects of the system. The preliminary design is created. This is the most crucial step in the spiral model as it helps in developing cost effective strategies for working on a project. Using the preliminary design, a prototype for the new system is developed this is a scaled down system, which represents an approximate characteristics of final product /output. Each loop of the spiral represents one phase. One phase is split roughly into four sectors of major activities: Planning Risk analysis Development Assessment Figure 5: Spiral Model VIII. COMPARISON OF STRENGTH AND WEAKNESS OF SDLC SDLC MODEL STRENGHTS WEAKNESSES TYPES OF PROJECTS BUILD AND FIX MODEL 1. No time spent on overhead tasks such as planning, 1. Fundamental flaws in approach do not show up quickly 1. Small projects and programming exercises like documentation, quality assurance, 2. Rarely produces useful results proof of concept, demos and standards, enforcement and other non-coding activities. 3. Dangerous as there is no way to access progress, quality or risk prototypes 2. Requires little experience 4. Reworking and maintenance are costly WATERFALL MODEL 1. Simple, easy to execute, intuitive and logical 2. Controllable 1. Inflexible and does not support iterations 2. Delivers results late 1. For wellunderstood problems 2. Short duration 2014, IJARCSMS All Rights Reserved ISSN: 2321-7782 (Online) 238 P a g e

results in the development projects 3. Consistent with cycle 3. Automation of many technology 3. Addressing existing manual practices mistakes is difficult system 4. Minimizes task planning 4. User feedbacks are overhead not taken during 5. Minimizes wasted development effort PROTOTYPING 1. Benefits from user input 2. As a working model of the system is provided, user gets a better understanding of the system that is being developed 3. Errors and risks can be detected at a much earlier stage, as the system is developed using a prototypes 1. Increases complexity of the overall system 2. Involves higher risks 3. Involves implementing and then repairing the way a system is built so errors are an inherent part of the development process 4. Disallows later changes 1. System with novice users 2. When there are uncertainties in ITERATIVE MODEL 1. Produces working software early during the lifecycle 2. More flexible as scope and changes can be implemented at low cost 3. Allows user feedbacks 4. Testing and debugging is easier, as the iterations are small 5. Low risks factor as the risks can be identified and resolved during each iteration EVOLUTIONARY MODEL 1. This model can be used even the cannot or will not be specified 2. The user can experiment with the system to improve the 1. This model has phases that are very rigid and do not overlap 2. Not all the are gathered before starting the development; this could lead to problems related to system architecture at later iterations. 3. Each iteration can have planning overhead 1. Constitutes high risk and strong management is required 2. This method is used as an excuse for hacking to avoid documenting the or design, even if they are well 1. For businesses where time is of essence 2. Where risk of a long project cannot be taken 3. Where are not known 1. System early are not known in advance 2. Creating fundamentally new software 3. Developers are not confident in software architecture and 2014, IJARCSMS All Rights Reserved ISSN: 2321-7782 (Online) 239 P a g e

understand algorithms SPIRAL MODEL 1. Almost reflects reality of software development 2. Reports of usage quite positive 3. Minimizes risks at early stage thereby prevents collapse 4. Lowest total cost 5. Each iteration of the spiral can be tailored to suit the needs of the whole project 1. Complex and intricate 2. Requires extensive management infrastructure 3. Without attentive and knowledgeable management, it fails 1. Only for major multimillion dollar efforts 2. Ill suited for small efforts IX. CONCLUSION After analysis of all models, it has been found that the original water fall model is used by various big companies for their internal projects.prototype model used to develop online systems for transaction processing. Evolutionary model is useful when system are not known in advance or when creating fundamentally new software. Spiral model is used for development of large, complicated and expensive projects like scientific Projects.Since spiral model approach enables the project term to address the highest risk at the lowest total cost. References 1. P.K. Agarwal and Manoj Kumar, Consumer Behaviour An Indian Perspective, Pragati Prakashan, Meerut, 2011, p.60. 2. Software Engineering -Sommerville 3. Software Engineering - Jibitesh Mishra 4. Essentials of Software Engineering -Frank F. Tsui AUTHOR(S) PROFILE Shikha Verma Completed the MCA degree in Computer Applications from Guru Gobind Sing Indraprastha University and received B.A degree in Computer Applications from Delhi University in 2013 and 2010, respectively. 2014, IJARCSMS All Rights Reserved ISSN: 2321-7782 (Online) 240 P a g e