Monday, March 4, 2019
Comparison between five process models of software engineering Essay
IJCSI internationalist Journal of reck integrityr skill exserts, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.orgA Comparison Between Five toughies Of Softwargon planNabil Mohammed Ali Munassar1 and A. Govardhan21Ph.D Student of reckoner skill & engineerJawahrlal Nehru Technological UniversityKuktap each(prenominal)y, Hyderabad- cholecalciferol 085, Andhra Pradesh, India2Professor of Com designateer lore & engineerPrincipal JNTUH of Engineering College, Jagityal, Karimnagar (Dt), A.P., IndiaAbstractThis query deals with a vital and important issue in computer world. It is concerned with the bundle product management mathematical operationes that examine the atomic number 18a of parcel knowledge through the schooling determines, which are known as software agreement of rules organic evolution tone cycle. It represents five of the phylogenesis ensamples namely, falls, Iteration, V-shaped, spiral and Extreme programming. These manikins view as advantages and disadvantages as well.Therefore, the main objective of this research is to represent different shams of software schooling and make acomparison betwixt them to show the features and defects of for apiece one exercise.Keywords Software Management movementes, SoftwareDevelopment, Development Models, Software Development bread and butterCycle, Comparison between five baffles of Software Engineering.increased recently which results in the difficulty ofenumerating such companies. During the previous fourdecades, software has been developed from a tool utilise foranalyzing information or solving a caper to a product initself. However, the early on programming gunpoints have hitd a number of problems turning software anobstacle to software development in particular thoserelying on computers. Software consists of documents andprograms that contain a collection that has beenestablished to be a part of software engine roomprocedures. Moreover, the aim of s oftware plan isto create a suitable work that construct programs of high caliber.1. innovationComputer informationNo one mint deny the impressiveness of computer in our life,especially during the present m. In fact, computer has perform indispensible in todays life as it is used in m any(prenominal)fields of life such as industry, medicine, commerce,education and yet agriculture. It has belong animportant element in the industry and technology of groundbreaking as well as developing countries. Now a days,organizations become more dependent on computer intheir works as a result of computer technology. Computeris con situationred a time- saving thingumajig and its progress helpsin executing complex, long, repeated influencees in a realshort time with a high speed. In addition to utilizecomputer for work, people use it for fun andentertainment. Noticeably, the number of companies thatproduce software programs for the mean of facilitatingworks of offices, administrations, b anks, etcetera hasTheoriesComputer FunctionClientProblemsThe Software engineering scienceTools and techniques to top problemsFig. 1 Explanation of software engineering conception.IJCSI planetary Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.org952. Software Process Modelsconcern.A software answer dumbfound is an abstract representation of aprocess. It presents a description of a process from someparticular perspective asThe pure falls lifecycle consists of several nonoverlapping stages, as shown in the following figure. The sit begins with establishing corpse requirements andsoftware requirements and continues with architectural purport, detailed visualise, steganography, psychometric testing, and maintenance.The waterfall model serves as a baseline for many a nonher(prenominal)lifecycle models.1.2.3.4.Specification. normal.Validation.Evolution.General Software Process Models are1. falls model Separate and distinct figure angles ofspecification and development.2. type model.3. Rapid application development model (RAD).4. EvolutionarydevelopmentSpecification,development and validation are interleaved.5. additive model.6. repetitive model.7. gyre model.8. Component-establish software engineering The dustis assembled from existing components.System RequirementsSoftware RequirementsArchitectural Design minute DesignCodingThere are many variants of these models e.g. formaldevelopment where a waterfall-like process is used, butthe specification is formal that is refined through severalstages to an implementable design1. interrogationMaintenanceFig. 2 falls Model4.3. Five ModelsA Programming process model is an abstractrepresentation to describe the process from a particularperspective. There are numbers of general models forsoftware processes, like falls model, Evolutionarydevelopment, Formal systems development and Reusebased development, etc. This research will view the following five mode ls 1. Waterfall model.2. Iteration model.3. V-shaped model.4. reel model.5. Extreme model.These models are chosen because their featurescorrespond to most software development programs.RequirementsDefinitionSystem andSoftware DesignImplementationand Unit examinationIntegration andSystem examination3.1 The Waterfall ModelThe waterfall model is the classical model of softwareengineering. This model is one of the oldest models and iswidely used in government realises and in many studycompanies. As this model empha coats cookery in earlystages, it take ins design flaws before they develop. Inaddition, its intensifier document and planning make itwork well for encounters in which musical note control is a majorOperation andMaintenanceFig. 3 Waterfall model2.The following list details the steps for using the waterfallIJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.orgmodel1 System requirements Establishes the componentsfor building the system, including the hardwarerequirements, software tools, and otherwise necessarycomponents. Examples admit decisions onhardware, such as plug-in boards (number ofchannels, acquisition speed, and so on), and decisionson international pieces of software, such as databases orlibraries.23Software requirements Establishes the expectationsfor software functionality and identifies which systemrequirements the software affects. Requirements psychoanalysis includes determining interaction needed withother applications and databases, performancerequirements, user interface requirements, and so on.Architectural design designates the softwareframework of a system to meet the specificrequirements. This design defines the majorcomponents and the interaction of those components,but it does not define the structure of separatelycomponent. The give awaydoor(a) interfaces and tools used inthe project can be determined by the designer.4Detailed design Examines the software componentsdefined in the architectural design stage and producesa specification for how individually(prenominal) component isimplemented.5CodingImplementsspecification.67thedetailedstarting coding. There is no overlap between stages. Inreal-world development, however, one can discover issuesduring the design or coding stages that point out errors orgaps in the requirements.The waterfall method does not prohibit returning to anearlier manakin, for example, returning from the design phaseto the requirements phase. However, this involves costlyrework. Each completed phase requires formal refresh andextensive keep development. Thus, oversightsmade in the requirements phase are big-ticket(prenominal) to correctlater.Because the actual development comes late in the process,one does not see results for a long time. This delay can be upsetting to management and customers. Many peoplealso think that the amount of documentation is excessiveand inflexible.Although the waterfal l model hasinstructive because it emphasizesproject development. Even if onemodel, he must consider each ofrelationship to his own project 4.1.2.3.designTesting Determines whether the software meets thespecified requirements and finds any errors present inthe recruit.Maintenance Addresses problems and enhancementrequests after the software releases.In some organizations, a change control board maintainsthe quality of the product by reviewing each change madein the maintenance stage. Consider applying the fullwaterfall development cycle model when correctingproblems or implementing these enhancement requests.In each stage, documents that explain the objectives anddescribe the requirements for that phase are created. At the end of each stage, a review to determine whether theproject can proceed to the conterminous stage is held. Yourprototyping can also be incorporated into any stage fromthe architectural design and after.Many people believe that this model cannot be applied toall s ituations. For example, with the pure waterfall model,the requirements must be verbalize before beginning thedesign, and the complete design must be tell before964.5.6.1.2.4.5.6.7.its low-calnesses, it isimportant stages ofdoes not apply thisthese stages and itsAdvantages Easy to conceive and implement.Widely used and known (in theory).Reinforces good habitsdefine-before- design,design-before-code.Identifies deliverables and milestones.Document driven, URD, SRD, etc. Publisheddocumentation standards, e.g. PSS-05.Works well on mature products and weak teams.Disadvantages Idealized, doesnt match reality well.Doesnt reflect iterative personality of exploratorydevelopment.3. Unrealistic to expect accurate requirements soearly in project.Software is delivered late in project, delays discoveryof serious errors.Difficult to immix risk management.Difficult and expensive to make changes todocuments, swimming upstream. epoch-making administrative overhead, costly for smallteams and pro jects 6.Pure WaterfallThis is the classical system development model. It consistsof discontinuous phases1.2.3.Concept.Requirements.Architectural design.IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5,September 2010 ISSN (Online) 1694-0814www.IJCSI.org4.5.6.Detailed design.Coding and development.Testing and implementation.Table 1 Strengths & Weaknesses of Pure WaterfallStrengthsMinimizes planningoverhead since it canbe through with(p) up front.Structure minimizeswasted effort, so itworks well fortechnically weak orin have it offd staff.Risk reduction spirals can be added to the top of thewaterfall to contract risks prior to the waterfall phases. The waterfall can be further modified using options such asprototyping, JADs or CRC sessions or other methods ofrequirements gathering done in overlapping phases 5.Weaknesses3.2 Iterative DevelopmentInflexibleOnly the final phaseproduces a nondocumentationdeliverable. support up toaddress mistakes isdifficult.The pro blems with the Waterfall Model created a demandfor a parvenu method of developing systems which couldprovide faster results, require less(prenominal) up-front information,and offer greater flexibility. With Iterative Development,the project is divided into small parts. This allows thedevelopment team to demonstrate results earlier on in theprocess and set out valuable feedback from system users.Often, each iteration is actually a mini-Waterfall processwith the feedback from one phase providing vitalinformation for the design of the close phase. In a variation of this model, the software products, which are producedat the end of each step (or series of steps), can go intoproduction immediately as incremental releases. Pure Waterfall SummaryThe pure waterfall model performs well for products with ejectly dumb requirements or when working withwell understood technical tools, computer architectures andinfrastructures. Its weaknesses frequently make itinadvisable when rapid developme nt is needed. In those graphic symbols, modified models may be more effective.97 change WaterfallThe modified waterfall uses the same phases as the purewaterfall, but is not based on a discontinuous basis. Thisenables the phases to overlap when needed. The purewaterfall can also split into subprojects at an beguilephase (such as after the architectural design or detaileddesign).Table 2 Strengths & Weaknesses of Modified WaterfallStrengthsMore flexible than thepure waterfall model.If thither is personnelcontinuity between thephases, documentationcan be comfortablyreduced.Implementation of easyareas does not need towait for the hard ones.WeaknessesModified Waterfall SummaryMilestones are moreambiguous than thepure waterfall.Activities performedin parallel are subjectto miscommunicationand mistakenassumptions.Unforeseeninterdependencies cancreate problems.Fig. 4 Iterative Development.3.3 V-Shaped ModelJust like the waterfall model, the V-Shaped life cycle is asequential path of execu tion of processes. Each phasemust be completed before the next phase begins. Testingis emphasized in this model more than the waterfallmodel. The testing procedures are developed early in thelife cycle before any coding is done, during each of thephases preceding implementation. Requirements begin thelife cycle model just like the waterfall model. BeforeIJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.orgdevelopment is started, a system test plan is created. Thetest plan focuses on meeting the functionality specified inrequirements gathering.98RequirementsThe high-level design phase focuses on systemarchitecture and design. An integration test plan is created in this phase in coiffe to test the pieces of the softwaresystems ability to work together. However, the low-leveldesign phase lies where the actual software componentsare designed, and unit tests are created in this phase aswell.System TestPlanningHigh Le velDesignLow LevelDesignThe implementation phase is, again, where all codingtakes place. Once coding is complete, the path ofexecution continues up the right side of the V where thetest plans developed earlier are now put to use.Simple and easy to use.Each phase has specific deliverables.Higher prospect of success over the waterfall modeldue to the early development of test plans during thelife cycle.Works well for small projects where requirements are easily understood.Unit TestPlanningIntegrationTestingUnitTestingImplementationAdvantages1.2.3.IntegrationTestPlanningSystemTesting4.Fig. 6 V-Shaped flavour Cycle Model7.3.4 Spiral ModelThe spiral model is correspondent to the incremental model, withmore emphases placed on risk analysis. The spiral modelhas four phases Planning, Risk Analysis, Engineering andEvaluation. A software project repeatedly passes throughthese phases in iterations (called Spirals in thismodel). The baseline spiral, starting in the planningphase, requirement s are ga in that respectd and risk isassessed. Each subsequent spiral builds on the baselinespiral. Requirements are gathered during the planningphase. In the risk analysis phase, a process is undertakento identify risk and alternate solutions. A trope isproduced at the end of the risk analysis phase. Software isproduced in the engineering phase, along with testing atthe end of the phase. The evaluation phase allows thecustomer to estimate the output of the project to datebefore the project continues to the next spiral.In the spiral model, the angular component representsprogress, and the radius of the spiral represents cost.Fig. 5 V-Model 3Disadvantages1.2.Very rigid like the waterfall model.Little flexibility and adjusting backdrop is difficult andexpensive.Software is developed during the implementation phase,so no early prototypes of the software are produced.This Model does not provide a clear path for problemsfound during testing phases 7.3.4.1.2.3.AdvantagesHigh amount of risk analysis. profound for large and mission-critical projects.Software is produced early in the software life cycle.1.2.3.Disadvantages throne be a costly model to use.Risk analysis requires highly specific expertise. discombobulates success is highly dependent on the riskanalysis phase.Doesnt work well for smaller projects 7.4.IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.org1.Spiral model sectors goalive setting Specific objectives for the phase areidentified.2. Risk perspicacity and reduction Risks are assessed andactivities are put in place to reduce the key risks.3. Development and validation A development modelfor the system is chosen which can be any of thegeneral models.4. Planning The project is reviewed and the next phaseof the spiral is planned 1.99under which the system would produce win-lose or loselose outcomes for some stakeholders. 3. rank and Evaluate Alternatives Solicitsuggestions from stakeholders, evaluate them with respectto stakeholders win conditions, synthesize and negotiatecandidate win-win alternatives, analyze, assess, resolvewin-lose or lose-lose risks, record commitments and areasto be left flexible in the projects design record and lifecycle plans.4. Cycle through the Spiral Elaborate the win conditionsevaluate and screen alternatives, resolve risks, accumulateappropriate commitments, and develop and executedownstream plans 8.3.5 Extreme ProgrammingAn approach shot to development, based on the developmentand delivery of very small increments of functionality. Itrelies on constant quantity code improvement, user involvement inthe development team and coupling wise programming . It canbe difficult to keep the pursuance of customers who areinvolved in the process. Team outgrowths may be antagonisticto the intense involvement that characterizes activemethods. Prioritizing changes can be difficult where thereare multiple stakeholders. Maintaining sim plicity requiresextra work. Contracts may be a problem as with otherapproaches to iterative development.Fig. 7 Spiral Model of the Software Process1. WinWin Spiral ModelThe original spiral model Boehm 88 began each cycle ofthe spiral by performing the next level of culture ofthe prospective systems objectives, constraints andalternatives. A primary difficulty in applying the spiralmodel has been the lack of explicit process guidance indetermining these objectives, constraints, and alternatives. The Win-Win Spiral Model Boehm 94 uses the theoryW (win-win) approach Boehm 89b to match on asystems next-level objectives, constraints, andalternatives. This possibility W approach involves identifyingthe systems stakeholders and their win conditions, andusing negotiation processes to determine a mutuallysatisfactory set of objectives, constraints, and alternatives for the stakeholders. In particular, as illustrated in thefigure, the nine-step Theory W process translates into thefollowing spiral model extensions1. Determine rejectives Identify the system life-cyclestakeholders and their win conditions and establish initialsystem boundaries and external interfaces.2. Determine Constraints Determine the conditionsFig. 8 The XP Release Cycle Extreme Programming PracticesIncremental planning Requirements are recorded onStory Cards and the Stories to be included in a release aredetermined by the time available and their relative priority. The developers break these stories into developmentTasks.Small Releases The minimal useful set of functionalitythat provides business value is developed first. Releases of the system are frequent and incrementally addfunctionality to the first release.IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Online) 1694-0814www.IJCSI.orgSimple Design Enough design is carried out to meet thecurrent requirements and no more.Test first development An machine-controlled unit testframework is used to writ e tests for a new piece offunctionality before functionality itself is implemented.Refactoring All developers are expected to re-factor thecode ceaselessly as soon as possible code improvementsare found. This keeps the code simple and maintainable.Pair Programming Developers work in pairs, checkingeach others work and providing support to do a good job. corporal Ownership The pairs of developers work onall areas of the system, so that no islands of expertisedevelop and all the developers own all the code. Anyonecan change anything. incessant Integration As soon as work on a task iscomplete, it is integrated into the whole system. After anysuch integration, all the unit tests in the system must pass. Sustainable pace full-grown amounts of over-time are notconsidered acceptable as the net effect is ofttimes to reducecode quality and medium term productivity.On-site customer A representative of the end-user of thesystem (the guest) should be available full time for theuse of the XP team. In an extreme programming process,the customer is a member of the development team and isresponsible for bringing system requirements to the teamfor implementation.1.2.3.4.5.XP and agile principlesIncremental development is supported through small,frequent system releases.Customer involvement means full-time customerengagement with the team.People not process through pair programming,collective ownership and a process that avoids longworking hours.Change supported through regular system releases.Maintaining simplicity through constant refactoring ofcode 1.1.2.3.4.5.AdvantagesLightweight methods suit small-medium size projects.Produces good team cohesion.Emphasises final product.Iterative.Test based approach to requirements and qualityassurance.1.DisadvantagesDifficult to scale up to large projects wheredocumentation is essential.Needs experience and skill if not to degenerate intocode-and-fix.Programming pairs is costly.2.3.4.100Test case construction is a difficult and speci alizedskill 6.4. Conclusion and forthcoming WorkAfter completing this research , it is concluded that 1. There are many existing models for developingsystems for different sizes of projects andrequirements.2. These models were established between 1970 and1999.3. Waterfall model and spiral model are used commonlyin developing systems.4. Each model has advantages and disadvantages for thedevelopment of systems , so each model tries toeliminate the disadvantages of the previous modelFinally, some topics can be suggested for future works1.2.3.Suggesting a model to simulate advantages that arefound in different models to software processmanagement.Making a comparison between the suggested modeland the previous software processes managementmodels.Applying the suggested model to many projects toensure of its suitability and documentation to explainits mechanical work.REFERENCES1 Ian Sommerville, Software Engineering, AddisonWesley, seventh edition, 2004.2 CTG. MFA 003, A Survey of Syste m DevelopmentProcess Models, Models for Action Project DevelopingPractical Approaches to Electronic Records Managementand Preservation, Center for Technology in GovernmentUniversity at Albany / Suny,1998 .3 Steve Easterbrook, Software Lifecycles, Universityof Toronto Department of Computer Science, 2001.4 depicted object Instruments Corporation, Lifecycle Models,2006 , http//zone.ni.com.5 JJ Kuhl, Project Lifecycle Models How They Differand When to Use Them,2002 www.businessesolutions.com.6 Karlm, Software Lifecycle Models, KTH,2006 .7 Rlewallen, Software Development Life CycleModels, 2005 ,http//codebeter.com.8 Barry Boehm, Spiral Development Experience,Principles, and Refinements, edited by Wilfred J.Hansen, 2000 .Nabil Mohammed Ali Munassar was born in Jeddah, SaudiArabia in 1978. He studied Computer Science at University of Science and Technology, Yemen from 1997 to 2001. In 2001 heIJCSI International Journal of Computer Science Issues, Vol. 7, Issue 5, September 2010 ISSN (Onl ine) 1694-0814www.IJCSI.orgreceived the Bachelor degree. He studied pass over of Information Technology at Arab Academic, Yemen, from 2004 to 2007. Nowrdhe Ph.D. Student 3 year of CSE at Jawaharlal NehruTechnological University (JNTU), Hyderabad, A. P., India. He is working as boyfriend Professor in Computer Science &Engineering College in University Of Science and Technology, Yemen. His area of interest include Software Engineering, System Analysis and Design, informationbases and Object OrientedTechnologies.Dr.A.Govardhan received Ph.D. degree in Computer Scienceand Engineering from Jawaharlal Nehru Technological University in 2003, M.Tech. from Jawaharlal Nehru University in 1994 and B.E. from Osmania University in 1992. He is Working as aPrincipal of Jawaharlal Nehru Technological University, Jagitial. He has published around 108 cover in various national andinternational Journals/conferences. His research of interest includes Databases, Data Warehousing & Mining, Informatio nRetrieval, Computer Networks, Image Processing, SoftwareEngineering, Search Engines and Object Oriented Technologies.101
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment