1 A Software Development Simulation Model of a Spiral Process ABSTRACT: There is a need for simulation models of software development processes other than the waterfall because processes such as spiral development are becoming more and more popular. The use of a spiral process can make the inherently difficult job of cost and schedule estimation even more challenging due to its evolutionary nature, but this allows for a more flexible process that can better meet customers' needs. This paper will present a discrete event simulation model of spiral development that can be used to analyze cost and schedule effects of using such a process in comparison to a waterfall process. About the Authors Carolyn Mizell is a NASA employee at the Kennedy Space Center where she has served as a project manager for over 10 years. She is presently working on her PhD in Industrial Engineering at the University of Central Florida. Contact: Carolyn A. Mizell, NASA EA-C, Kennedy Space Center, FL 32899; phone: ; Linda Malone is a professor at the University of Central Florida. She is a Fellow of the American Statistical Association. Software simulation models based on the traditional waterfall process exist as discrete event models and system dynamics models, but the literature points out the need to develop simulation models of other lifecycle processes. Since the traditional waterfall lifecycle development method has its drawbacks, other lifecycle approaches are gaining popularity, especially for large and complex software development projects. Of particular interest is the spiral development lifeycle which is gaining popularity for use in large government and military projects. The goal of this work is to
2 provide a new discrete event simulation model of a spiral development lifecyle and to use the new model to analyze the cost and schedule estimation effects of using such a development approach. This work is new because discrete event simulation models have not been used for comparison of cost and schedule estimation differences between the waterfall and the spiral development lifecycles. The benefits of performing such a comparison are important because experience with the waterfall process shows that only one-third of software development projects that follow a waterfall process are completed successfully within budget and schedule(brooks 1998). Also, it is not realistic to assume that large and complex software development projects can follow a once-through sequential process like the waterfall process. Most large projects that attempt to follow a waterfall process end up being evolutionary and iterative in nature as requirements change and evolve, and this has a substantial impact on cost and schedule estimates. The spiral development model was developed by Barry Boehm and is based on experience with large government software projects (Boehm 1988). The goal was to provide a model with greater flexibility that could better serve these types of projects. Boehm describes the spiral development model as a risk-driven process model generator that consists of a cyclic approach to incrementally implementing a system while decreasing the degree of risk (Boehm 2000). The waterfall model is the traditional lifecycle development approach that was introduced by Winston Royce in 1970 (Royce 1970). This model consists of a sequential cycle of activities that include requirement analysis, design, coding, testing, and support. The spiral model can be thought of as a repeating waterfall model that emphasizes risk
3 assessment and that is executed in an incremental fashion. Each pass through the spiral model consists of risk assessment, requirements analysis, design, coding, testing, delivery, and evaluation. Figure 1 shows a graphical representation of a single increment of a spiral model. Per Increment )ject Planningj Planning/Requirements Concept of I tassessmentl Analysis, Design, Codin Operations Testing, Delivery Lessons d Figure 1: Spiral Development Model This piocess has been shown to be successful in a variety of environments, including NASA's Marshall Space Flight Center (Hendrix and Schneider 2002). Figure 1 depicts the fact that the waterfall phases of requirements analysis, design, coding, testing and delivery are accomplished for each increment along with additional phases of risk assessment and lessons learned. Initial overall project planning and development of a concept of operations is accomplished prior to the first increment to establish high level requirements and the overall conceptual framework for the product. Detailed requirements evolve during the spiral portion of the lifecycle. The number of spiral passes that must occur for each increment depends on the areas of risk and the development state of the product. The goal of the increments is to provide the customer with limited, but useable operational capability. The customer will eventually get full operational capability after several increments.
4 A key difference between the waterfall and spiral models is that the waterfall model considers requirements to be fixed from the beginning of the project with fixed documents being produced as a result of each phase of the lifecycle. Therefore, this process is not flexible enough for some projects, especially when requirements are not known at the beginning of a project. Changes in requirements later in the process lead to major cost and schedule overruns, especially for very large projects. This approach can lead to other problems such as: delayed integration, late risk resolution, and focus on documents and review meetings as opposed to tangible increments of the product (Royce 1998). Therefore, more and more software development projects are following lifecycle models other than the waterfall model. The spiral model is designed to be flexible and to evolve into other types of models such as evolutionary or even waterfall based on the results of risk assessments and where key risks exist (Boehm and Belz 1990). It is also considered product driven rather than document driven like the waterfall process (Royce 1998). The government and military are using this process more often in order to overcome the limitations of the more traditional processes. The US Dept. of Defense has determined that the spiral development model is the preferred method/process for software-intensive development lifecycles (Surber 2004). Disadvantages of the spiral model include continual deferral of planned functionality in order to stay on schedule and within budget. The deferral of work can accumulate until an insurmountable amount of work is left for the end of project. This is known as the "Death Spiral " (Brown 2004). Projects that follow this type of
5 development process will most likely cost more and take longer but should better meet customers' needs and expectations. A discrete event process simulation model of the spiral development lifecycle process will allow for evaluating different scenarios in projects using this type of approach. A process model for spiral development can also enable analysis of the effects of using this type of approach versus the traditional approach in terms of effort and schedule. The waterfall approach assumes all requirements are known up front and yet this is often unrealistic. Changes to requirements will affect size and therefore, the cost and schedule of the project. In order to handle changes that occur as a project evolves, NASA's Manager's Handbook for Software Development recommends that a minimum of five re-estimates should be made after the initial estimate at key life cycle phase points (SEL 1990). This will allow for more accurate estimates to be developed as the project progresses and as more information becomes available. The handbook states that the uncertainty of an estimate will decrease from completely uncertain at the initial estimate to almost certain with the sixth estimate after system test. Cost estimation is an especially difficult area of software development project management. The impacts of uncertainty in key areas such as product size, productivity, and defect injection rates can dramatically affect a project's cost and schedule. The job of estimating becomes even more difficult when requirements are allowed to evolve throughout a project as is the case for a spiral lifecycle process. The same unknowns of size, productivity, and defect injection rates exist, but there is also the additional unknown of the number of spirals that will need to be completed before an incremental product is delivered. The evolutionary nature of the process allows requirements to
6 change and this makes the job of estimating size even more difficult and uncertain. Since most software development projects do undergo changes, it is beneficial to consider the ijmpacts on cost and schedule which can be used to develop a more realistic estimate. Figure 2 shows the layout for a typical software development process simulation model of a waterfall type project. Independent Verification and Validation Process Requirements Architecture & Coding & Integration & Installation & Implementation Analysis * Detailed Unit Testing Qualification Acceptance Design Testing System Integration/Planning Figure 2: Waterfall Process Simulation Model An existing software development process simulation model will serve as the core for the spiral process simulation model. The Process Analysis Tradeoff Tool, PATT, is a discrete event process simulation model that was developed for NASA to assess the benefits of Independent Verification and Validation (IV&V) on the IEEE software development process which is a waterfall type process and which is represented by Figure 2 (Raffo and Wakeland 2003). The model typically uses industry average data for input variables such as product size, productivity (LOCIHr), and defects (per KSLOC).
7 The user provides number of resources, % of overall effort that should be allocated to each process step, and the number of desired staff for each step. The model outputs the size, effort, rework effort, entire process duration, average duration, number of injected defects, detected defects, and corrected defects. Model Development The approach to developing the spiral model was to add steps to the existing PATF waterfall model and to repeatedly run through the steps to represent increments for the entire project. Figure 3 shows how PATT serves as the core of the spiral model. Each Increment PATE Repeat for Each Spiral Add Risk Planning, Process Implement,Detailed Design, Code jintnite&test & Unit Test. lnstlalion & Acceptance Support Add Lesns Learned Et tem Figure 3: Use of PATT for Spiral Model Mode! Inputs The following information is input to either the IEEE PATI model or the spiral model: size of product (lines of code), number of resources, productivity (lines of
8 code/hour), defect injection rate (defects/ksloc), % of overall effort for each process step, and desired staff for each process step. Industry averages or theoretical probability distributions can be used for productivity and defect injection rate. The following table provides guidelines for percentage of effort by phase that is based on several literature sources (Boehm 1981; SEL 1993; Boehm, Abts et at. 2000; Hendrix and Schneider 2002). Table 1: Percentage of Effort by Phase for Waterfall and Spiral Processes Waterfall Activity % Effort (Boehm 2000) % Effort (SEL) Spiral Activity % Effort Plan/Requirements 8% 12% Risk Assessment 5% Product Design 18% 8% Planning/Requirements 5% Analysis Detailed Design 25% 15% Product Design 20% Coding/Unit Test 26% 40% Detailed Design 17% Integration/Testing 31% 25% Coding/Unit Test 26% Integration/Testing 22% Lessons Learned 5% Note that the % effort for a waterfall process based on data found in Estimating with COCOMO II totals to 108%. This is due to the assumption that all plans and requirements for a waterfall approach will be completed prior to the beginning of a project. Data in the second % Effort column for waterfall is based on Software Engineering Laboratory data and totals to 100%. Data from Table 1 will serve as the % of overall effort input for the models. Industry averages from the literature suggest an average productivity of 3.6 LOC/Hr (Jones 2000) and defect injection rates of 60 defects per thousand lines of code (CeBASE 2004). For this work, data from the NASA environment was used to populate the model for analysis. Productivity and defect injection rates tend to be lower for the NASA environment with an average productivity of about 3.2 LOG/Hr (SEL 1993) and
9 defect injection rates of approximately 30 errors per KSLOC (CeBASE 2004). Since productivity and defect injection rates are affected by project factors that are very dynamic, the use of average values does not adequately account for the range of values of these key parameters. In order to better represent the range of values that can occur for productivity and defect injection rates in a similar development environment, probability distributions were developed and used in the models. These distributions are based on data collected during the 25 year history of the Software Engineering Laboratory (SEL 1993; CeBASE 2005). The following provides the distributions and parameter values used as inputs to the models for defect injection rates: Table 2: Defect Injection Rates by Phase Requirements Lognormal (2.62, 7.1) Design Lognormal (17.13, 73.35) Coding Weibull (28.39, 0.81) Testing Exponential (40.9) A distribution of Erlang (1.36, 3) was used for productivity. Analysis In general, large NASA soffware development projects begin with a bottoms-up estimate prior to the start of a project. For this analysis, assume a staff of 350 was available. The bottoms-up estimate included size estimates for each increment that added up to Million LOC. Funding was provided based on a total size of 3.8 Million LOC, 1400 labor years, and a schedule of five years. At this point, a Concept of Operations with high level requirements was completed. The goal was to follow an
10 incremental development process that consisted of 10 increments and allowed requirements to evolve during the project. Of interest is the question of how does a waterfall approach compare with a spiral approach, especially when developing early estimates. First, the IEEE process model and the spiral model will be run with the same input data so that the output effort and duration data from each can be compared. For this first analysis, the assumption will be that the size estimate is accurate (which would be highly unlikely at the beginning of a project and thus favors the waterfall model), so a total size of 3425 KSLOC will be input to the IEEE model. Table 3 provides size for each increment of the spiral model: Table 3: Size Estimate Per Increment Increment Number Size The spiral development approach assumes that there will often be more than one pass through the development phases. Therefore, the discrete event spiral simulation
11 model will include an additional probability distribution for the number of spirals that must be completed within each increment. This will be set to a Uniform [1, 3] distribution for this analysis. Table 4 provides the output data from each type of model: Table 4: Comparison of Outputs for Waterfall and Spiral Models Output Waterfall Spiral Mean Duration 5.9 years 8.27 years Mean Effort 1391 labor years 1520 labor years This data shows that a budget of 1400 labor years and a schedule of five years are very risky for this project, even if a waterfall process is followed. This data also shows that a spiral process will take longer than a waterfall process and this should be expected, although it may not be considered when preparing a budget. The spiral process should take longer and cost more because the process is repeated and has additional process steps. The analysis of the spiral process may actually lead to a more realistic estimate since software projects historically have evolving requirements and phases of development. This makes a one time estimate done at the beginning of a project very impractical. A rough estimate can be developed, but detailed phased funding should be considered so that more accurate estimates can be developed based on an incremental basis rather than for the entire project. The intended benefit of spending more time and money on such a process is that the user will get a better product and will get incremental functionality with each delivery. Size growth due to requirements changes and unknowns can be extensive. The literature points out that very early size estimates are likely to be much lower than the
12 actual final size of the project due to requirements changes and unknowns(sel 1994; Boehm, Abts et al. 2000). This is often the case with either the waterfall or spiral process, even though requirements should not drastically change in a true theoretical waterfall lifecycle. Requirements evolution is a key part of a spiral process and therefore, plans for accommodating size changes should be considered when estimating a project that will follow such a process. This is a more realistic view of the situation for large, complex projects than a theoretical waterfall process. Since the project was set up for ten increments, each increment will have a uniform size distribution with parameters: (Increment Size Estimate, 2 X Increment Size Estimate) LOC. The uncertainty in the size at this point in the project when only high level requirements are understood is based on data from the literature (Boehm, Abts et al. 2000). Table 4 provides the size inputs to the model for each increment: Table 5: Incremental Size Distributions Increment Size (KSLOC) 1 Uniform [100, 200] 2 Uniform [250,500] 3 Uniform [675,1350] 4 Uniform [700,1400] 5 Uniform [650,1300] 6 Uniform [200,400] 7 Uniform [325,650] 8 Uniform [300,600] 9 Uniform[175,350} 10 Uniform [50,100] At the beginning of each increment, a draw will be taken from a probability distribution for the number of spirals that are to be completed and the total increment size will be divided by the number of spirals to provide the size for each spiral. This will be compared to the waterfall model. For this analysis, the waterfall model will be run with a
13 size distribution of Uniform [3425, 6850] and the % of effort in Table 2 that totals to 100% to represent a more realistic waterfall where requirements analysis is done as part of the project. Table 6: Comparison of Spiral Model to Waterfall Model with Uncertain Requirements Waterfall Spiral Mean Duration 9.89 years years Mean Effort 2356 labor years labor years This data also shows that the spiral process should cost more and take longer than a waterfall approach. This is expected since a waterfall process theoretically proceeds sequentially through each phase one time with no substantial changes in requirements. The spiral process, however, is more representative of the typical iterative nature that most software development projects actually follow. Therefore, the process of developing cost and schedule estimates that consider uncertainty in a development process that is iterative in nature should lead to a more realistic estimate. The analysis also shows the significant impact size uncertainty has on a project's cost and schedule for either lifecycle approach. A benefit of following a spiral process that consists of multiple spirals per increment is that particular risk areas can be resolved by expending only a portion of the increment's budget. The spirals serve as a risk resolution plan that should enable deliverable functionality for each increment. The fact that this type of process will provide benefits but may take longer and cost more must be considered when developing estimates for a project that will follow this approach.
14 Summary This work has developed a new software development process model that enables assessment of an incremental or spiral lifecycle approach. This provides a new insight into the effects of developing cost and schedule estimates for an iterative development process that is a more realistic representation of most large software development projects. The waterfall process provides for a structured sequential process, but this is often not realistic since requirements tend to evolve and phases of the lifecycle may need to be repeated. This article presents a unique approach to developing initial estimates and has demonstrated some of the differences in estimating between a waterfall approach and a spiral approach. Because software development can be very complex and uncertain, the iterative spiral lifecycles are gaining popularity and provide a more realistic estimate that has not been developed using existing estimating tools and techniques that are based on the waterfall process.. Using estimation data from the NASA environment, this work has analyzed a project's early cost and schedule estimate using both a waterfall and spiral approach. The results show that the cost and schedule estimates for a spiral process may be higher than for a waterfall process and this is in agreement with military experiences (Brown 2004). This type of process should provide a quality product that better meets users' needs by allowing evolution of requirements and by providing functionality with each increment. This process emphasizes risk management and is designed to be flexible. This should lead to more realistic budgetary planning since it is obvious that requirements will change and cost and schedule will be affected throughout the project. This work also shows that uncertainty in areas such as size, productivity, and defects should be accounted for when developing an estimate, no matter which lifecycle is
15 selected. The spiral process model can be used throughout a project to analyze the project as more information becomes available. For instance, data from early increments can serve as inputs to the model and an estimate to complete based on this data can be assessed. More work can be done to refine the spiral model based on other projects' expenences.
16 References Boehm, B. (2000). Spiral Development: Experience, Principles and Refinements, Spiral Development Workskhop SEI Report. W. J. Hansen. Pittsburgh, Carnegie-Mellon University, Software Engineering Institute: 49. Boehm, B. and F. Belz (1990). "Experiences with the spiral model as a process model generator." IEEE: Boehm, B. W. (1981). Software Engineering Economics. Englewood Cliffs, Prentice Hall. Boehm, B. W. (1988). "A spiral model of software development and enhancement." IEEE Computer 21(5): Boehm, B. W., C. Abts, et al. (2000). Software Cost Estimation with COCOMO II. Upper Saddle River, Prentice Hall PTR. Brooks, A. (1998). "Estimating cost with project management software can boost efficiency." Computing Canada 24: 34. Brown, D. (2004). Evolutionary Acquisition and Spiral Development, Defense Acquisition University: 34. CeBASE. (2004). "eworkshop on Software Inspections and Pair Programming." from CeBASE. (2005). "Software Engineering Laboratory Data." from Hendrix, D. T. and M. Schneider, P. (2002). "NASA's TReK Project: A Case Study in Using the Spiral Model of Software Development." Communications of the ACM 45: Jones, C. (2000). Software Assessments, Benchmarks, and Best Practices. Boston, Addison-Wesley. Raffo, D. and W. Wakeland (2003). Assessing IV&V Benefits Using Simulation. 28th Annual NASA Goddard Software Engineering Workshop. Royce, W. (1970). Managing the Development of Large Software S ystems: Concepts and Techniques. Wescon. Royce, W. (1998). Software Project Management: A Unified Framework, Addison- Wesley.
17 SEL (1990). Manager's Handbook for Software Development. Software Engineering Laboratory Series. Greenbelt. SEL (1993). Cost and Schedule Estimation Study Report. Software Engineering Laboratory Series. Greenbelt: 3-3. SEL (1994). An Overview of the Software Engineering Laboratory, Software Engineering Laboratory: 55. Surber, D. C. (2004). Spiral Evolution Applied to Legacy Avionics Systems. IEEE A&E Systems Magazine. 19: 3-9.
A Project Management Approach to Using Simulation for Cost Estimation on Large, Complex Software Development Projects Abstract: It is very difficult for project managers to develop accurate cost and schedule
QUANTITATIVE ASSESSMENT OF SOFTWARE DEVELOPMENT PROJECT MANAGEMENT ISSUES USING PROCESS SIMULATION MODELING WITH SYSTEM DYNAMICS ELEMENTS by CAROLYN BARRETT MIZELL B.S. Clemson University, 1989 M.S. University
Lifecycle Models: Waterfall / Spiral / EVO Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2011 Lifecycle The sequence of actions that must be performed in order to build a software
1 Software Engineering Lecture 2: Software Life Cycles Stefan Hallerstede Århus School of Engineering 25 August 2011 2 Contents Naive Software Development Code & Fix Towards A Software Process Software
CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality
Optimizing IV&V Benefits Using Simulation David M. Raffo, Ph.D. School of Business Administration Portland State University Motivation There is a critical need for cost effective IV&V Key Questions: What
The ROI of Systems Engineering: Some Quantitative Results Barry Boehm Center for Systems and Software Engineering University of Southern California email@example.com Ricardo Valerdi Lean Aerospace Initiative,
Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This
Software Engineering Objectives Designing, building and maintaining large software systems To define software engineering and explain its importance To discuss the concepts of software products and software
Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there
2009 International Conference on Computer Engineering and Applications IPCSIT vol.2 (2011) (2011) IACSIT Press, Singapore Umbrella: A New Component-Based Software Development Model Anurag Dixit and P.C.
A Review of Risk Management in Different Software Development Methodologies Haneen Hijazi Hashemite University Zarqa, Jordan Thair Khdour Al Balqa Applied University Salt, Jordan Abdulsalam Alarabeyyat
The Spiral Model and Risks Dror Feitelson Basic Seminar on Software Engineering Hebrew University 2009 Barry Boehm Prof. Software engineering, Univ. Southern California Worked at General Dynamics, Rand,
International Journal of Research in Information Technology (IJRIT) www.ijrit.com ISSN 2001-5569 A Comparison between Five Models of Software Engineering Surbhi Gupta, Vikrant Dewan CSE, Dronacharya College
SOFTWARE DEVELOPMENT METHODOLOGIES, TRENDS, AND IMPLICATIONS Xihui Zhang University of North Alabama firstname.lastname@example.org Hua Dai University of Wisconsin-La Crosse email@example.com Tao Hu King College firstname.lastname@example.org
PROCESS OF MOVING FROM WATERFALL TO AGILE PROJECT MANAGEMENT MODEL Sanja Vukićević 1, Dražen Drašković 2 1 Faculty of Organizational Sciences, University of Belgrade, email@example.com 2 Faculty
Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both
Various Software Development Life Cycle Models Sahil Jindal, Puneet Gulati, Praveen Rohilla Dronacharya College of Engineering, India Abstract:An SDLC model is a conceptual framework describing different
Spiral Model for Software Product Development: A Method Engineering Approach Jorien van Ginkel Utrecht University Method: Spiral model Paper: A spiral model of software development and enhancement Authors:
Discrete-Event Simulation Prateek Sharma Abstract: Simulation can be regarded as the emulation of the behavior of a real-world system over an interval of time. The process of simulation relies upon the
Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study S. Vijayakumar firstname.lastname@example.org School of Computer and Information Science University of South Australia,
CS4507 Advanced Software Engineering Lectures 2 & 3: Software Development Lifecycle Models A O Riordan, 2015 Some diagrams from Sommerville, some notes from Maciaszek/Liong Lifecycle Model Software development
CIMCA 2008, IAWTIC 2008, and ISE 2008 Comparing Agile Software Processes Based on the Software Development Project Requirements Malik Qasaimeh, Hossein Mehrfard, Abdelwahab Hamou-Lhadj Department of Electrical
Development models R. Kuiper and E.J. Luit 1 Introduction We reconsider the classical development models: the Waterfall Model [Bo76], the V-Model [Ro86], the Spiral Model [Bo88], together with the further
System/Software Development Life Cycle Anurag Srivastava Associate Professor ABV-IIITM, Gwalior Why Life Cycle Approach for Software? Life cycle is a sequence of events or patterns that are displayed in
What is a system? Software Engineering Software Processes A purposeful collection of inter-related components working together to achieve some common objective. A system may include software, mechanical,
CS1Ah Lecture Note 7 Introduction to Software Engineering In this note we provide an overview of Software Engineering. The presentation in this lecture is intended to map out much of what we will study
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
Module 2 Software Life Cycle Model Lesson 4 Prototyping and Spiral Life Cycle Models Specific Instructional Objectives At the end of this lesson the student will be able to: Explain what a prototype is.
Improving Software Project Management Skills Using a Software Project Simulator Derek Merrill and James S. Collofello Department of Computer Science and Engineering Arizona State University Tempe, AZ 85287-5406
Hamid Faridani (email@example.com) March 2011 Introduction Methodologies like Waterfall, RUP and Agile have all become key tools for software developers and project manager s to aid them in delivering
INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal Research Article ISSN 2277 9140 ABSTRACT Analysis and tabular comparison
Development/Maintenance/Reuse: Software Evolution in Product Lines Stephen R. Schach Vanderbilt University, Nashville, TN, USA Amir Tomer RAFAEL, Haifa, Israel Abstract The evolution tree model is a two-dimensional
Prepared by: Ahmed Abdelmalik Mohammed Ahmed Ali Ann Joseph Duaa Jasim Submitted to T.Mona Introduction What is the spiral model? Steps of the spiral development model When to use Spiral model Advantages
Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation
International Journal of Soft Computing and Engineering (IJSCE) ISSN: 2231-2307, Volume-3, Issue-1, March 2013 Evolving a New Software Development Life Cycle Model SDLC-2013 with Client Satisfaction Naresh
272 A Process Model for Software A. Rama Mohan Reddy Associate Professor Dr. P Govindarajulu Professor Dr. M M Naidu Professor Department of Computer Science and Engineering Sri Venkateswara University
94 A Comparison Between Five Models Of Software Engineering Nabil Mohammed Ali Munassar 1 and A. Govardhan 2 1 Ph.D Student of Computer Science & Engineering Jawahrlal Nehru Technological University Kuktapally,
International Journal of Electronics and Computer Science Engineering 700 Available Online at www.ijecse.org ISSN- 2277-1956 An Assessment between Software Development Life Cycle Models of Software Engineering
Agile Processes and Methodologies: A Conceptual Study Sheetal Sharma Amity School of Engineering & Technology Amity University Noida Sheetal.firstname.lastname@example.org Darothi Sarkar Amity School of Engineering &
1.1 Methodology Research 1.1.1 Spiral Model The Spiral development model is a risk-driven process model generator. It is used to guide multi-stakeholder concurrent engineering of software-intensive systems.
The Spiral Model of Software Development and Enhancement Barry W. Boehm, TRW Defense Systems Group 1988 Outline Introduction Previous Models The Spiral Model TRW-SPS Application Advantages and Difficulties
Process Models and Metrics PROCESS MODELS AND METRICS These models and metrics capture information about the processes being performed We can model and measure the definition of the process process performers
RESEARCH ARTICLE International Journal of Computer Techniques - Volume 2 Issue 4, July - Aug Year Evolving a Ultra-Flow Software Development Life Cycle Model Divya G.R.*, Kavitha S.** *(Computer Science,
3.0 Methodology 3.1 Introduction In this chapter, five software development life cycle models are compared and discussed briefly. The most suitable system methodology for the proposed system is drawn out.
Chapter 2 WHY THE WATERFALL MODEL DOESN T WORK M oving an enterprise to agile methods is a serious undertaking because most assumptions about method, organization, best practices, and even company culture
Preempting ERP Project Failure Project Assurance through Collaborative Intervention The Prinzo Group, December 2010 Overview Preempting enterprise resource planning (ERP) project failure could well become
4 Software Development Life Cycle M MAJOR A J O R T TOPICSO P I C S Objectives... 52 Pre-Test Questions... 52 Introduction... 53 Software Development Life Cycle Model... 53 Waterfall Life Cycle Model...
N ft n il Ionel CRITICAL ANALYSYS OF THE SCRUM PROJECT MANAGEMENT METHODOLOGY The Academy of Economic Studies Bucharest, Management Faculty, 6 Romana Square, Sector 1, Bucharest, Management Chair, E-mail:
Software Processes CSC 221 Introduction to Software Engineering software processes extract from Sommerville s chapter 3 slides Alan Dix Coherent sets of activities for specifying, designing, implementing
6. Software Lifecycle Models A software lifecycle model is a standardised format for planning organising, and running a new development project. Hundreds of different kinds of models are known and used.
International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) International Journal of Engineering, Business and Enterprise
ASSESSMENT OF SOFTWARE PROCESS MODELS Akhilesh Research Scholar, Department of Computer Science, Manav Bharti University, Solan (H.P.) ABSTRACT The field of software engineering is related to the development
Christina Wallin ABB Corporate Research Department of Industrial IT 721 78 Västerås +46 (0)21 34 50 74 email@example.com Software Development Lifecycle Models The Basic Types Rikard Land Mälardalens
Software Process Models Xin Feng Questions to Answer in Software Engineering? Questions to answer in software engineering What is the problem to be solved? Definition What are the characteristics of the
Earned Value and Agile Reporting Anthony Cabri, Mike Griffiths Quadrus Development Inc. Abstract This paper reviews the concepts of Earned Value Management established in traditional project management,
Foundations of software engineering Waterfalls, V s and Spirals: Standard SE Methodologies Dr. Julie Greensmith G51 Objectives To introduce three of the major software process models: Waterfall methods
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
TEXAS DEPARTMENT OF INFORMATION RESOURCES System Development Life Cycle Guide Version 1.1 30 MAY 2008 Version History This and other Framework Extension tools are available on Framework Web site. Release
Software Development Process A software development process, also known as software development lifecycle, is a structure imposed on the development of a software product. Similar terms include software
Processing Models Of SDLC Mrs. Nalkar Sanjivani Baban Asst. Professor, IT/CS Dept, JVM s Mehta College,Sector 19, Airoli, Navi Mumbai-400708 Nalkar_sanjivani@yahoo.co.in Abstract This paper presents an
A Cynical View on Agile Software Development from the Perspective of a new Small-Scale Software Industry Apoorva Mishra Computer Science & Engineering C.S.I.T, Durg, India Deepty Dubey Computer Science
General Problem Solving Model Software Development Methodology These focus on understanding what the problem is about Chapter 2A Concerned with understanding more about the nature of the problem and possible
Questions What is the life cycle of a software product? Why do we need software process models? What are the goals of a software process and what makes it different from other industrial processes? Software
On Project Management Scheduling where Human Resource is a Critical Variable 1 Valentina Plekhanova Macquarie University, School of Mathematics, Physics, Computing and Electronics, Sydney, NSW 2109, Australia
Fundamentals: Software Engineering Dr. Rami Bahsoon School of Computer Science The University Of Birmingham firstname.lastname@example.org www.cs.bham.ac.uk/~rzb Office 112 Y9- Computer Science Unit 1. Introduction
Timeboxing: A Process Model for Iterative Software Development Pankaj Jalote, Aveejeet Palit Priya Kurien, V. T. Peethamber Infosys Technologies Limited Electronics City Bangalore - 561 229; India Fax:
Security Considerations for the Spiral Development Model Loye Lynn Ray University of Maryland University College 3501 University Blvd East Adelphi, MD 20783 Loye.email@example.com 717-718-5727 Abstract
ATHABASCA UNIVERSITY Selecting a Software Development Methodology based on Organizational Characteristics BY Adrienne Farrell An essay submitted in partial fulfillment Of the requirements for the degree
CHAPTER Software Process Models 4 Chapter Objectives Introduce the generic concept of software engineering process models. Discuss the three traditional process models. Waterfall Incremental Spiral Discuss
2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:
Example Software Development Process. The example software development process is shown in Figure A. The boxes represent the software development process kernels. The Software Unit Testing, Software Component
A Comparative Study of Iterative Prototyping vs. Waterfall Process Applied To Small and Medium Sized Software Projects by Eduardo Málaga Chocano B.S., System Engineering (1996) National University of Engineering,
Software Life Cycle Models Waterfall model Prototyping models Rapid prototyping Incremental prototyping Evolutionary prototyping Spiral model 1 Waterfall Model Like liquid flows down stair steps... the
Session # 3 Contents Systems Analysis and Design 2 1 Tiers of Software Development 10/4/2013 Information system development project Realistic behavior 3 Information system development project System Development
Software Engineering for Software-Intensive Systems: III The Development Life Cycle Assistant Professor Dr. Room E 3.165 Tel. 60-3321 Email: firstname.lastname@example.org Outline I Introduction II Foundations III The Development
U.S. Dept. of Defense Systems Engineering & Implications for SE Implementation in Other Domains Mary J. Simpson System Concepts 6400 32 nd Northwest, #9 Seattle, WA 98107 USA Joseph J. Simpson System Concepts
Chapter 1: Introduction to Rapid Application Development (RAD) 1. Introductions RAD refers to a development life cycle designed to give much faster development and higher quality systems than the traditional
Unit I Introduction Product Life Cycles Products also have life cycles The Systems Development Life Cycle (SDLC) is a framework for describing the phases involved in developing and maintaining information
Should NASA Embrace Agile Processes? Jefferey Smith, Tim Menzies Lane Department of Computer Science West Virginia University PO Box 69, Morgantown WV, 656-69, USA; email@example.com,firstname.lastname@example.org
Reaching CMM Levels 2 and 3 with the Rational Unified Process Rational Software White Paper TP174 Table of Contents INTRODUCTION... 1 LEVEL-2, REPEATABLE... 3 Requirements Management... 3 Software Project
Agile Development and Software Architecture: Understanding Scale and Risk Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Robert L. Nord SSTC, April 2012 In collaboration