260 likes | 306 Views
Software process development life cycle and its various phases.<br>http://qatestingtips.com/
E N D
qatestingtips.com WHATIS PROCESS DEVELOPMENT?
qatestingtips.com PROCESSDEVELOPMENT Process Development is to create activities for performing tasks. In other words, this is todesign stages of work, workflow sequence of software development complete cycle and create activities into phases with standardformat.
Process DevelopmentDesign Process Development design is verychallenging task because activities will be followed according to process and if developed process is great then activities will be performed great else might be some mistakes over there with software system.
SoftwareDevelopmentLifeCycle Software Development Life Cycle, SDLC for short, is a well-defined, structuredsequenceofstagesinsoftwareengineeringtodevelopthe intended software product. However, it also involves multiple steps suchasresearch,designingadataandprocessflow,writingtechnical documentation, comprehensively testing, debugging and pushing it iteratively tolive.
The7stagesoftheSDLC Analysis andPlanning Requirements Design andPrototyping SoftwareDevelopment Testing Deployment Maintenance andUpdates
The 5 best Software Development Processes(andhowtopicktheright one foryou) Waterfall Agile andScrum Incremental andIterative V-Shaped Spiral
Whatisthesoftwaredevelopment lifecycleandwhyisitsoimportant to haveone? Whether you plan it or not, every piece of software goes through a similar path from idea to launch day. Collectively,thestepsofthispatharecalledthesoftwaredevelopmentlifecycle(orSDLCforshort).TheSDLCis thesequenceofstepsthattakeplaceduringthedevelopmentofapieceofsoftware. Traditionally,eachstepcreatesanoutput–whetheranidea,document,diagram,orpieceofworking software–whichisthenusedastheinputforthenextstep.Andsoonuntilyouhityourgoal. Thatbeingsaid,softwareisneverreally“finished.”Eventhereleaseofyourfirstversioncanbeseenasjust anotherstepinthelifecycleofyoursoftware. The importance of having a clear process and knowing your development steps can’t be understated. Even though you can launch software without a clear process in place doesn’t mean you should. Thanks to years of testing,iteration,anddevelopment,modernsoftwaredevelopmentprocessesmakebuildingnewtoolscheaper, more efficient, and lessstressful.
Butmaybeevenmorethanthat,usingaformalizedSDLChasa number of otherbenefits: Createsacommonvocabularyforeachstepalongtheway Definescommunicationchannelsandexpectationsbetweendevelopersandprojectstakeholders Setsclearrolesandresponsibilitiesforyourentireteam(developers,designers,projectmanagers, etc...) Providesanagreed-upon“definitionofdone”foreachsteptostopscopecreepandhelpkeepthe projectmoving Formalizes how to handle bugs, featurerequests, and updates
The7stagesoftheSDLC If you’re a project manager, you’re probably already familiar with the different steps in the SDLC. As the shepherd for a digital project, you have to think about everything from requirements to stakeholder communication,development,andongoingmaintenance.Thesestepsareallprettymuchthesameacross any software development process you use. However, as we’ll go into later, the order and sequence they occurin canchangedependingonyourneeds,goals, andprojectandteamsize(forexample,somesteps might be combined, duplicated, or run inparallel). 1.AnalysisandPlanning Onceacustomerorstakeholderhasrequestedaproject,thefirststepoftheSDLCisplanning. Thisusuallymeanslookinginto: Alignment: How does this project connect to your company’s larger mission and goals? Resourceavailabilityandallocation:Doyouhavethepeopleandtoolsyouneedtotakethison? Projectscheduling:Howdoesthisprojectfitwithinyourcompany’sgoalsandothertasks? Costestimation:Howmuchisitgoingtocost?
The7stagesoftheSDLC 2.Requirements The next step is to understand the technical requirements of this project. Every piece of software— whetherit’sanapp,websiteredesign,ornewfeature—needstosolveacustomerproblem.Asyoumove onfromtheplanningphaseandcontinuetofillouttheSOW,askquestionsaboutthespecificsaround this project, suchas: Whatproblemdoesthissolve? Who’sgoingtouseitandwhy? Whatsortofdatainput/outputisneeded? WillyouneedtointegratewithothertoolsorAPIs? Howwillyouhandlesecurity/privacy?
The7stagesoftheSDLC 3.DesignandPrototyping Withtherequirementsinplace,it’stimetostartdesigningwhatthissoftwarewilllooklikeandhowit willfunction.We’renottalkingaboutaestheticshere,butfunctionalityandflow.AsSteveJobsfamously said: Dependingonthesoftwaredevelopmentprocessyou’refollowing,thisphaseoftheSDLCmightmean youcreatesimplewireframestoshowhowinteractionswillworkinthesoftware,ormakemorefull- fledgedprototypesusingatoollikeMarvelorInVisiontotestwithusers. Alternatively,youmightdecideyouneedmoreuserfeedbackanddoadesignsprinttoquicklygeta featureorideainfrontofyourusers.
The7stagesoftheSDLC 4. SoftwareDevelopment Witheveryoneonboardwiththesoftware’sproposedfunctionalityanddesign,it’stimetobuildit accordingtotherequirementsandSOW. ThisphaseisobviouslythehardestandpotentiallyriskieststageoftheSDLC(andeachofthesoftware developmentprocesseswe’lldiscussbelowhandleitdifferently.) However,whetheryou’reworkinginAgilesprints,buildingoutanMVP,orusingthemoretraditional waterfallmethod,thegoalhereistosticktotheSOW,avoidscopecreep,andbuildclean,efficient software.
The7stagesoftheSDLC 5.Testing Asyourteamisdevelopingthesoftware,you’llmostlikelybesimultaneouslytesting,tracking,and fixingbugs.However,oncethefeaturesarecompleteandtheproductisdeemedreadytogo,you’ll needtodoanotherroundofmorein-depthtesting. ThiscouldmeanreleasingtheproducttoasmallgroupofbetatestersorusingUXtoolstotrackhow usersinteractwithit. WhiletestingcouldbeanotherlongstageoftheSDLC,it’simportanttomakesureyou’renotshipping buggysoftwaretorealcustomers. Aswewroteinourguidetobugtrackingtoolsandworkflows,bugscankillyourreputation,makeyou lose revenue, and, worst of all, take up hours of development time that could’ve been put towards building newfeatures.
The7stagesoftheSDLC 6.Deployment Withtheheavylifting(andcoding)outoftheway,it’stimetolaunchyoursoftwaretoallofyourusers. Whatwe’retalkingabouthereispushingyourcodeintoproduction. Notcomingupwithandimplementingago-to-marketstrategy(that’smoreuptoyoursalesand marketingteams).'' Inmostcompanies,thisstepshouldbeprettymuchautomatedusingacontinuousdeploymentmodel orApplicationReleaseAutomation(ARA)tool.
The7stagesoftheSDLC 7. Maintenanceand Updates TheSDLCisn’toveronceyoursoftwareisinthewild.It’sa“lifecycle”,remember?Theendingofone phase is just the beginning of another,and that goes for post-launch as well.Requirements and customerneedsarealwaysevolving. Andaspeoplebegintouseyoursoftware,they’llundoubtedlyfindbugs,requestnewfeatures,andask formoreordifferentfunctionality.(Nottomentionthebasicupkeepandmaintenanceofyoursoftware toensureuptimeandcustomersatisfaction.) Alloftheserequestsneedtoflowbackintoyourproductbacklogoftasklistsotheycanbeprioritized andbecomepartofyourproductroadmap.
The5bestSoftwareDevelopmentProcesses (andhowtopicktherightoneforyou) WhiletheSDLCweoutlinedabovemightseemlikeastep-by-stepplanfor buildingsoftware,it’sreallymoreofaguideline. Yes,youneedtocheckeachboxtoensureyou’reshippingandmaintaining greatsoftware.Buthowyoucheckthem,when,andinwhatorderisupto you.Overtheyears,anumberofdifferentsoftwaredevelopmentprocesses havebeenformalizedtotacklemoreandmorecomplexprojects.Butwhich oneisrightforyou? Ultimately,whichprocessyouusewillcomedowntoyourgoals,thesizeof theprojectandyourteam,andotherfactors.Tohelpyoudecide,hereare5 ofthebestsoftwaredevelopmentprocesseswithprosandconsforeach.
PhasesofProductDevelopment Activitiesshouldbeclearlydefinedforallphasesthosearerequiredtoexecute during developmentprocess. Workflowsequenceofeachphase:Flowunderstandingisveryimportantbefore implementationsowithworkflowsequenceclarityisneededtobeclearedofeach phase. TaskImplementationFlow:Requirementaboutfeatureimplementationshouldbe verycleartogetproperflowunderstandingaboutfeaturesoneedtodefinetask implementationflowatthisstage. ImplementationMethods:Methoduseisalsoimportanttounderstandprocessfor implementingrequiredtaskbeforestartingimplementation. Standard Guidelines: Software development should be done with standard guidelinestomaintainstandardandqualityofproduct.Standardguidelinesshould alwaysbedefinedandsharedwithteamtoproceedwithstandardguidelines.
TeamResponsibilities:Tasksimplementationaccordingtophasesuchasdesigning, developmentandtestingshouldbedescribedwithteamresponsibilities. DesigningEnvironment:Designimplementationcompleteenvironmentclaritywhatto beuseisneededtodescribeandsharewithdesigningteam. DevelopmentEnvironment:Developmentimplementationcompleteenvironment claritywhattobeuseisneededtodescribeandsharewithdevelopmentteam. TestingEnvironment:Testingprocessexecutioncompleteenvironmentclaritywhat tobeuseisneededtodescribeandsharewithtestingteam. SoftwareRelease:Afteracceptanceofallrequirementssoftwarereleaseprocess comesandtogivereleaseofsoftwareprocessflowshouldbedefinedproperlyto responsibleteamwithalltheacceptancestatus. Software Maintenance: Once software is released to client then software maintenance and maintain standard of software comes according to client. Maintenanceprocesswithrunningbehaviororifwithsomechangesshouldbedefined veryclearlytoresponsibleteamsandqualityteam.
Thankyou Readmoretopics@ qatestingtips.com