leadership release management continuous integration
TRANSCRIPT
2
Significant Semester Requirements
§ 15% Participation:in-class,atmeetings,setupmeetingsintimelymanner,weeklystatusreports(individualgrade)
§ 15% Writing:executivesummary,projectplan,designdocumentation(teamgrade)
§ 15% Deadlines:sprintdeadlinesmetandmeetingplanningdoneintimelymanner(teamgrade)
§ 15% UserTesting:evidenceusershavetested,feedbackreport(teamgrade)
§ 15% UserFriendlyDesign:easy,non-programming,wayforusertochangeclientdata(teamgrade)
§ 25% ClientSatisfaction:clientconsistentlyreportsgoodprogress(teamgrade)
3
Discussion Topics§ Pre-SprintPlanning§ Definetasks/storiesandestimates
§ SprintPlanning§ManagementvsLeadership§ SoftwareReleaseManagement§ContinuousIntegration
4
Pre-Sprint PlanningBeforeSprintPlanningcanbegin,theteamneedstohavethetasks/storiesdefinedandestimated.Thisisdoneaspartofpre-sprintplanning.
§BreakRequirementsintoTasks§ GothrougheachProductBacklogitemselectedfortheSprint.Breaktherequirementsintotasks.
§ShrinkTaskstoImprovetheTask-BasedBurndown.§ Agood,informativetask-basedburndownchartdependsontherebeingmanysmalltaskstoburndown.
5
Sprint PlanningThepurposeofSprintPlanningisfortheProductOwnerandtheteamtonegotiatewhatshouldbeaccomplishedduringthesprint.§SettheSprintBudget§ Firstcalculatetheteam’sSprintBudget.ThisistheavailablenumberofhourstheteamhastoworkontheSprint.
§ Then,makeanyreasonabledeductionsfortimethatteammemberswillnotbeabletospendworkingontheSprint.Deductholidays,anyknownmeetings,anytimelikelytobespentworkingonotherprojects,etc.Basedonpastexperience,deductareasonableamountoftimeforsupport,ifappropriate.
§EstablishStableVelocity§ Useyournormalsprintplanningprocessforeachsprintuntilyoucandemonstratestablevelocity.
§BuildtheSprint§ AddtaskstosatisfytheSprintBudgetandvelocity.§ Identifystretchtaskstocovertimeswhentheteamunder-commitsorover-estimates.
Calculating VelocityVelocityishowfastyouaredevelopingyoursoftware.
InScrum,VelocityishowmuchproductbacklogeffortateamcanhandleinoneSprint.
Let'sconsiderthefollowingexample.
Ateamof5developersworkedontheprojectweareestimating.TheSprintlengthis2weeks.InthisSprinttheycommittedtocompleting25storypoints.
TeamMember HoursWorked
Julie 16
Adam 10
Sam 14
Mary 16
Ann 14
Sum: 70
Theteamdeliveredsoftwareworth25storypointsin70hours.
7
Management vs LeadershipWhatistheDifferenceBetweenManagementandLeadership?
§ Leadershipandmanagementmustgohandinhand.
§ Workersneedtheirmanagersnotjusttoassigntasksbuttodefinepurpose.
§ Managersmustorganizeworkers,notjusttomaximizeefficiency,buttonurtureskills,developtalentandinspireresults.
8
Management vs Leadership§ Themanagermaintains;theleaderdevelops.
§ Themanagerfocusesonsystemsandstructure;theleaderfocusesonpeople.
§ Themanagerreliesoncontrol;theleaderinspirestrust.
§ Themanagerhasashort-rangeview;theleaderhasalong-rangeperspective.
§ Themanageraskshowandwhen;theleaderaskswhatandwhy.
§ Themanagerhashisorhereyealwaysonthebottomline;theleader’seyeisonthehorizon.
§ Themanagerimitates;theleaderoriginates.
§ Themanageracceptsthestatusquo;theleaderchallengesit.
§ Themanageristheclassicgoodsoldier;theleaderishisorherownperson.
§ Themanagerdoesthingsright;theleaderdoestherightthing.
9
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ Helpsmakesoftwarebuildssimple,quickandreliable
§ Helpstakecareofconfigurationmanagement.
§ Helpsdrivesoftwarequality.
§ HelpsoptimizedevelopmentandQAtime.
§ Speedsuptimetomarket.
13
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ Helpsmakesoftwarebuildssimple,quickandreliable.§ Thisisachievedbyemployingthebesttoolsforthejob.Thismeansunderstandingallthevariousbuildtools,seeinghowtheyintegratewiththesystemsthatalreadyexistintheworkplace,andmakinganinformedchoice.
14
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ Helpstakecareofconfigurationmanagement.§ Softwareconfigurationmanagement(SCM)isthetaskoftrackingandcontrollingchangesinthesoftware,partofthelargercross-disciplinefieldofconfigurationmanagement.”
§ SCMpracticesincluderevisioncontrol andtheestablishmentofbaselines.Ifsomethinggoeswrong,SCMcandeterminewhatwaschangedandwhochangedit.
§ Ifaconfigurationisworkingwell,SCMcandeterminehowtoreplicateitacrossmanyhosts.
15
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ HelpsoptimizedevelopmentandQAtime.§ Bygivingthedevteamthefeedbackonthequalityoftheircodeandtellingthemwherethey’regoingrightandgoingwrong,we’rehelpingthemtargettheirefforts.
§ Byprovidingthesesolutionsforthem,doingthebuilds,configurationsandreleases,thedeveloperscangetbusydoingthestuffthey’reskilledatdoing.
§ FortheQAteam,we’refindingdefectsandfailingreleasesbeforethereleasesevengettothem.
16
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ Speedsuptimetomarket.§ Makingbuildsquicker,easierandmorereliable,acceleratestheprocessoffinetuningcodequality.§ ThisalsohelpsidentifydefectsbeforeQAstartsandtheprocessofreleasingthesoftwareintoproductionquickerandsimpler.
§ Thissavessignificantdevelopment,QAandoperationsandsoournew,higherqualitysoftware,canbereleasedefficientlyintoproduction.
17
Software Release ManagementSoftwarereleasemanagementencompassestheidentification,packaging,anddeliveryoftheelementsofaproduct.Thisincludesexecutableprogram,documentation,releasenotes,andconfigurationdata.
Benefits§ Helpsdrivesoftwarequality.§ ThankstotheContinuousIntegrationprocess,andthetoolsthathavebeenbuiltaroundit,it’snowpossibleforustobuildsoftwareeverysingletimeapieceofcodeischeckedin,runasuiteofunittests,analyzethecodeforlazyprogrammingandreportontheamountoftestcoverageaprojecthas.
§ Jenkins isanopen-sourcecontinuousintegration softwaretoolwrittenintheJava programminglanguagefortestingandreportingofdefectsinanautomatedfashion.
18
Continuous IntegrationContinuousintegration(CI)isthepractice,insoftwareengineering,ofmergingalldeveloperworkingcopieswithasharedmainline severaltimesaday.Itsprimarypurposeistopreventintegrationproblems.
ContinuousIntegrationwithautomatedtestexecutionhasseenbroadadoptioninrecentyears.TheideasbehindContinuousIntegrationhavechangedhowcompanieslookatBuildManagement,ReleaseManagement,DeploymentAutomation,andTestOrchestration.
JenkinsisapopularindustryCItoolwhichprovidesaneasy-to-usecontinuousintegrationsystem,makingiteasierfordeveloperstointegratechangestotheproject,andmakingiteasierforuserstoobtainafreshbuild.Theautomated,continuousbuildincreasestheproductivity.