New Idea In Waterfall Model For Real Time Software Development

Similar documents
Software Verification and Validation. Prof. Lionel Briand Ph.D., IEEE Fellow

UNIT VIII SYSTEM METHODOLOGY 2014

Introduction to Software Engineering (Week 1 Session 2)

Requirements Gathering using Object- Oriented Models

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007

Information Systemss and Software Engineering. Computer Science & Information Technology (CS)

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli

Systems Requirements: Once Captured, are Slaughtered

Distilling Scenarios from Patterns for Software Architecture Evaluation A Position Paper

SWEN 256 Software Process & Project Management

Chapter 8: Verification & Validation

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING

Towards Integrated System and Software Modeling for Embedded Systems

Systems Engineering Presented at Stevens New Jersey Community College Strategic Partnership 27 th September, 2005

THE APPLICATION OF SYSTEMS ENGINEERING ON THE BUILDING DESIGN PROCESS

Introduction to adoption of lean canvas in software test architecture design

Assessment of Software Interfaces using a Usability Evaluation Based Software Model

FM p.i-xxii 4/2/04 11:39 AM Page v. Preface

DESIGN AND IMPLEMENTATION OF ADAPTIVE ECHO CANCELLER BASED LMS & NLMS ALGORITHM

Avoiding the Problems

Object-Oriented Design

Design and Implementation of High Speed Carry Select Adder

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process.

DESIGN OF LOW POWER CMOS LOW NOISE AMPLIFIER USING CURRENT REUSE METHOD-A REVIEW

Object-oriented Analysis and Design

Software Engineering Principles: Do They Meet Engineering Criteria?

ABSTRACT I. INTRODUCTION

The Evolution Tree: A Maintenance-Oriented Software Development Model

Software Maintenance Cycles with the RUP

Design and Implementation Options for Digital Library Systems

Software Engineering. Slides copyright 1996, 2001, 2005, 2009, 2014 by Roger S. Pressman. For non-profit educational use only

SPICE: IS A CAPABILITY MATURITY MODEL APPLICABLE IN THE CONSTRUCTION INDUSTRY? Spice: A mature model

Design of 16-bit Heterogeneous Adder Architectures Using Different Homogeneous Adders

TELEMETRY SOFTWARE DEVELOPMENT LIFE CYCLE

An introduction to software development. Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University

Testing in the Lifecycle

Requirements Analysis aka Requirements Engineering. Requirements Elicitation Process

APPLYING A NEW HYBRID MODEL OF EMBEDDED SYSTEM DEVELOPMENT METHODOLOGY ON A FLOOD DETECTION SYSTEM

DESIGN FOR POKA-YOKE ASSEMBLY AN APPROACH TO PREVENT ASSEMBLY ISSUES

STATISTIC ANALYZER S21

ANALYSIS AND EVALUATION OF COGNITIVE BEHAVIOR IN SOFTWARE INTERFACES USING AN EXPERT SYSTEM

An Integrated Framework for Assembly-Oriented Product Design and Optimization

Playware Research Methodological Considerations

Prof Manjula R 1, Chakradhar Raju M 2, Sai Chand M 3 Computer Science Department, VIT University

Design of 32-bit Carry Select Adder with Reduced Area

INNOVATIVE APPROACH TO TEACHING ARCHITECTURE & DESIGN WITH THE UTILIZATION OF VIRTUAL SIMULATION TOOLS

1. Historical Development of SSDMs

ANALYSIS OF DEFECT ISSUES (FAULT INJECTION) IN SOFTWARE BUSINESS APPLICATION DEVELOPMENT

A Spiral Development Model for an Advanced Traffic Management System (ATMS) Architecture Based on Prototype

Preservation Costs Survey. Summary of Findings

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved.

Using Program Slicing to Identify Faults in Software:

Explicit Domain Knowledge in Software Engineering

Automated Driving Systems with Model-Based Design for ISO 26262:2018 and SOTIF

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters

TIES: An Engineering Design Methodology and System

Pervasive Services Engineering for SOAs

A Reconfigurable Citizen Observatory Platform for the Brussels Capital Region. by Jesse Zaman

FPGA Implementation of Area Efficient and Delay Optimized 32-Bit SQRT CSLA with First Addition Logic

DESIGN AND IMPLEMENTATION OF AREA EFFICIENT, LOW-POWER AND HIGH SPEED 128-BIT REGULAR SQUARE ROOT CARRY SELECT ADDER

Essence for Systems Engineering (Systems Engineering Essence) INCOSE Russian Chapter

PROGRAM UNDERSTANDING TASK IN THE CONTEXT OF PSP

Baker s Dozen of Inconvenient Truths about Software Engineering Tom Feliz

Model Based Design Of Medical Devices

Introduction to Software Requirements and Design

Design and Implementation of High Speed Carry Select Adder Korrapatti Mohammed Ghouse 1 K.Bala. 2

ANALOG-TO-DIGITAL CONVERTER FOR INPUT VOLTAGE MEASUREMENTS IN LOW- POWER DIGITALLY CONTROLLED SWITCH-MODE POWER SUPPLY CONVERTERS

WNR Approach: An Extension to Requirements Engineering Lifecycle

SPI in a Very Small Team: a Case with CMM

Proposed Curriculum Master of Science in Systems Engineering for The MITRE Corporation

Biometric Recognition: How Do I Know Who You Are?

2 Assoc Prof, Dept of ECE, George Institute of Engineering & Technology, Markapur, AP, India,

This is a preview - click here to buy the full publication

International Journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online

A MODIFIED ALGORITHM FOR ATTENDANCE MANAGEMENT SYSTEM USING FACE RECOGNITION

Central Pollution Control Board Parivesh Bhawan, East Arjun Nagar, Delhi

Intelligent, Rapid Discovery of Audio, Video and Text Documents for Legal Teams

A VLSI Implementation of Fast Addition Using an Efficient CSLAs Architecture

INFORMATION TECHNOLOGY ACCEPTANCE BY UNIVERSITY LECTURES: CASE STUDY AT APPLIED SCIENCE PRIVATE UNIVERSITY

Objectives. Designing, implementing, deploying and operating systems which include hardware, software and people

CONCURRENT ENGINEERING

Scope of OOSE. A. Starts. CMPSC 487 Lecture 01 Topics: Schach - Chap 1. The Scope of Object-Oriented Software Engineering

Category: Data/Information Keywords: Records Management, Digitization, Imaging, Image capture, Scanning and Indexing

Strategy for a Digital Preservation Program. Library and Archives Canada

TOWARDS CUSTOMIZED SMART GOVERNMENT QUALITY MODEL

! Role of RE in software and systems engineering! Current techniques, notations, methods, processes and tools used in RE

Software processes, quality, and standards Static analysis

Continuously Variable Bandwidth Sharp FIR Filters with Low Complexity

USER RESEARCH: THE CHALLENGES OF DESIGNING FOR PEOPLE DALIA EL-SHIMY UX RESEARCH LEAD, SHOPIFY

RISE OF THE HUDDLE SPACE

CSC2106S Requirements Engineering

Design and Technology Subject Outline Stage 1 and Stage 2

A New Approach to the Design and Verification of Complex Systems

Introduction to Software Engineering

Low Power and Area EfficientALU Design

Rotorcraft Systems Engineering and Simulation Center

Stanford Center for AI Safety

JOURNAL OF INTERNATIONAL ACADEMIC RESEARCH FOR MULTIDISCIPLINARY Impact Factor 1.393, ISSN: , Volume 2, Issue 3, April 2014

Our Acquisition Challenges Moving Forward

Transcription:

New Idea In Waterfall Model For Real Time Software Development Unnati A. Patel a, Niky K. Jain b a Assistant Professor, M.Sc (IT) Department, ISTAR, Vallabh Vidya Nagar, Gujarat b Assistant Professor, M.Sc (IT) Department, ISTAR, Vallabh Vidya Nagar Abstract: This article presents modification in Waterfall Model for Software Development. Waterfall model is base software development model which is most used to develop a software in software development companies. In this paper, the brief definition of waterfall model is given. Many problems have been faced by software companies by using this model. Therefore, the main objective of this research is to represent some modifications to the model, which correct most of the problems, connected with the waterfall model. Commonly accepted problems are for example to survive with change and that defects all too often are detected too late in the software development process. Another problem is related to prototype i.e. user can only view the proposed system after testing. If users are not satisfied with the proposed system then it is too late to redesign it and the time and cost for implementation and testing is totally wasted on selected design. Keywords- software development process, software development model, software development, SDLC (Software Development Life Cycle), SE (Software Engineering), V&V (Verification & Validation), QA (Quality Assurance) 1. INTRODUCTION 1.1 Introduction to SE SE is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. SE processes are composed of many activities, especially the following: 1. Requirements Analysis & Specification 2. Software architecture 3. Implementation 4. Testing 5. Training and Support 6. Maintenance 115 114

A software development process, also known as a SDLC shown by figure 1, is a structure imposed on the development of a software product. It is often considered as a subset of system development life cycle. There are several models for such processes, each describing approaches to a variety of activities that take place during the process. E.g. Waterfall Model. Figure 1: Life Cycle for Software Engineering For large systems, each activity can be extremely complex and methodologies and procedures are needed to perform it efficiently and correctly. Furthermore, each of the basic activities itself may be so large that it cannot be handled in single step and must be broken into smaller steps. Problem solving in software consists of these activities: Understanding the problem Deciding a plan for a solution Coding the planned solution Testing the actual program 1.2 Introduction to Waterfall Model The first publication on the waterfall model is credited to Walter Royce s article in 1970. New models were developed and older ones were criticized and modified. The standard waterfall model for systems development is an approach and based on the assumption that big decisions have to be made before the coding begins, since cost of development rises exponentially by phases. 116 115

Waterfall approach was first Process Model to be introduced and followed widely in SE to ensure success of the project. In "The Waterfall" approach, the whole process of software development is divided into separate process phases. The phases in Waterfall model are: 1. Requirement Specifications phase (Identification and Analysis of the system requirements) 2. Software Design (High Level Design & Detail Level Design) 3. Implementation (Coding, Debugging and Unit Testing) 4. Testing (Integration Testing and System Testing) 5. Maintenance. (System is deployed, ready for operation and Maintained if needed) 1. Requirement Specifications phase Business requirements are gathered in this phase. This phase is the main focus of the project managers and stake holders. Meetings with managers, stake holders and users are held in order to determine the requirements like; Who is going to use the system? How will they use the system? What data should be input into the system? What data should be output by the system? These are general questions that get answered during a requirements gathering phase. After requirement gathering these requirements are analyzed for their validity and the possibility of incorporating the requirements in the system to be development is also studied. Finally, a Requirement Specification document is created which serves the purpose of guideline for the next phase of the model. 2. Software Design In this phase the system and software design is prepared from the requirement specifications which were studied in the first phase. System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture. The system design specifications serve as input for the next phase of the model. 3. Implementation On receiving system design documents, the work is divided in modules/units and actual coding is started. Since, in this phase the code is produced so it is the main focus for the developer. This is the longest phase of the SDLC. 4. Testing After the code is developed it is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase. During this phase unit testing, integration testing, system testing, acceptance testing are done. 5. Maintenance After successful testing the product is delivered / deployed to the customer for their use. After deployment maintenance phase is started. All these phases are cascaded to each other so that second phase is started as and when defined set of goals are achieved for first phase and it is signed off, so the name "Waterfall Model". 117 116

Figure 2 : Original Waterfall Model 2. Criticism Of The Waterfall Model Since the waterfall model has been around for over 30 years, it has been tested, to the large extent, and number of problems has surfaced. Critics complain that the waterfall model is 1. Unstable - since client requirements have to be fixed before the development process begins any requirement changes destabilizes the whole development process. 2. Impossible to view the model user can only view the system after implementation. 3. Too expensive - since requirement inconsistencies and missing components are discovered during design and coding phases, increasing the development needs and therefore costs. There is also a widely voiced opinion that the idea of Requirement Fixing before the design and coding starts is too idealistic and therefore impractical. 3. Proposed Waterfall Model The key to successful use of these new features is rigorous validation of requirements, and verification (including testing) of each version of the software against those requirements after each phase of the model. Each phase starts with a design goal and ends with the client (who may be internal) reviewing the progress thus far. 118 117

This modified waterfall model has the following strengths: 1. In real industry situation, client requirements may vary at any stages of development. Our proposed modification can allow changing the client requirement at any stage. After each stage there is a review by user, if there is any change in requirement then user can start from the requirement phase for requirement change cycle. 2. User can view the system model before development of the actual system and just after the design phase, so that if there is any change in the model then it can be handled in early phase of development. drawback of original waterfall model. It is of a certain interest to industry, since this model aims Figure 3: Proposed Waterfall Model 3. User can review the ongoing system after each stage, so that if there is any change then it can be incorporated at early stage as soon as it is observed so it saves the cost and time both. 4. Conclusion After analysis of waterfall model, it has been found that the original water fall model is used by various big companies for their internal projects. Since in the big companies, most of the time clients may change requirements at later phase after partial development of the system, this is the problematic situation for the development team. Proposed water fall model overcome the to solve most of the critical problems that there in the standard waterfall system. 119 118

5. References: 1. A. M. Davis, H. Bersoff, E. R. Comer, A Strategy for Comparing Alternative Software Development Life Cycle Models, Journal IEEE Transactions on Software Engineering,Vol. 14, Issue 10, 1988 2. Chan, D.K.C. Leung, K.R.P.H, Software development as a workflow process, 2-5 Page(s): 282 291, Dec. 1997. 3. Royce, W.: Managing the development of large software systems: Concepts and techniques. In: Proc. IEEE WESCOM. IEEE Computer Society Press, Los Alamitos (1970) 4. Pfleeger, S.L., Atlee, J.M.: Software engineering: theory and practice, 3rd edn. Prentice Hall, Upper Saddle River (2006) 5. Jones, C.: Patterns of Software Systems: Failure and Success. International Thomson Computer Press (1995) 6. Ian Sommerville, "Software Engineering", Addison Wesley, 7th edition, 2004. 7. Steve Easterbrook, "Software Lifecycles", University of Toronto Department of Computer Science, 2001. 8. Rlewallen, "Software Development Life Cycle Models", 2005,http://codebeter.com. 9. CTG. MFA 003, "A Survey of System Development Process Models", Models for Action Project: Developing Practical Approaches to Electronic Records Management and Preservation, Center for Technology in Government University at Albany / Suny,1998. 120 119