• Like
  • Save

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Agile and Scrum Workshop

  • 1,374 views
Uploaded on

These are the slides I have used for a workshop on agile software development and Scrum.

These are the slides I have used for a workshop on agile software development and Scrum.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,374
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Lösung: Bis zu vier Metern erreichen. Das größte bekannte Exemplar war ein am 4. April 1978 im Damaraland (Namibia) erlegter Bulle, der 4,21 Meter groß und 10,39 Meter lang warQuelle: Wikipedia, http://de.wikipedia.org/wiki/ElefantenBildquellen:http://www.flickr.com/photos/moe/1981942682http://www.flickr.com/photos/travel_aficionado/2200003879/

Transcript

  • 1. Saves the day.Agile and Scrum WorkshopAgile &ScrumRainer Stropeksoftware architects gmbhhttp://www.timecockpit.comrainer@timecockpit.com@rstropekWorkshopWebMailTwitter
  • 2. Agiledevelopment – what‟sdifferent?AgendaScrumbasics – how does itwork?Operationalexcellence – how toget the most our ofScrum?DiscussionOpenSpace, interviewSource: Flickr (Common Creative)Source: MSDNSource:WikipediaSource: Flickr (Common Creative)
  • 3. Agenda Session 1: Basics of Agile Development08:00-09:15Coffee break 09:15-09:30 Session 2: Scrum09:30-11:00Coffee break 11:00-11:15 Session 3: Operational Excellence With Scrum11:15-12:30Lunch 12:30-13:30 Session 4: Discussion, Interview13:30-15:00
  • 4. Workshop Please mute your phones and close mail appsWe will pay attention to time management  breaks for phone calls and/or mails Stay open for new approachesScrum might be different to what you are used to Make it interactiveAsk questions, provide feedbackParticipate in the Open Space discussion in session 4
  • 5. Agiledevelopment – what‟sdifferent?AgendaScrumbasics – how does itwork?Operationalexcellence – how toget the most our ofScrum?DiscussionOpenSpace, interviewSource: Flickr (Common Creative)Source: MSDNSource:WikipediaSource: Flickr (Common Creative)
  • 6. Waterfall ModelTraditional ProcessAgile and Scrum Workshop…or variants of it (e.g. V-Model); read more in WikipediaBig Design Up FrontDetailed Product PlanningRequirements elicitationSoftware DesignCarefully think through and designthe end product.TestingMake sure that implemented productworks how it was designed inproduct planning stageDocumentationReduce dependencies on certainpeople/teamsRequirements SpecificationDesign Design DocumentImplementation Product & DocTesting AcceptanceMaintenanceDocumentation
  • 7. Traditional Process It is simple, logical, and easy to understandBefore you build something, you have to know what to build Save money by emphasizing up-font planning phase„Show me how you started your project and I can tell you how it will end“Bugs found in early project stages are less costly to fixGoal: Predictable, repeatable process
  • 8. Traditional Process Reduce risk by taking enough time to planPredict features, quality, milestones, costs, etc.Well researched techniques for requirements elicitation and management includingprototypes Documentation is very importantSpecification might be part of a contractGet independent of people/teamsGoal: Predictable, repeatable process
  • 9. Traditional Process All good ideas must come at the beginningA great idea in a late process cycle becomes a threat Written documentation only makes us feel safeIt proves that we have worked hard, it preserves knowledge even if people changeWill it be read? Is it complete?“It feels that we are spending more time writing documents than producing software” “Aha” effectBest ideas often appear during first hands-on experiencesDeliver what has been asked for (“written in stone”), not what is neededIt seams logical - what‟s wrong?
  • 10. Traditional Process Times are changingPlanning (or guessing) what the future will bring is hard, if not impossibleRequirements often already change during (extensive) planning phaseThere is a cost in being able to repeat in a world that changes fast It is not much fun for a teamA rigid, change-resistant process destroys team work “If it does not work, we just have to do it better!”It seams logical - what‟s wrong?
  • 11. Stacey‟s Agreement and CertaintyMatrixPlan-drivenApproachAgile and Scrum WorkshopRead more…Needed for highly structuredphysical environmentsE.g. manufacturing, constructionindustriesMight work for simple projectsPredictiveFails for complicated projectsAdaptive neededPrototyping might helpCompletely unsuitable forcomplex projectsResearch projectsExperimental developmentTechnologyClose tocertaintyFar fromcertaintyRequirementsFar fromagreementClose toagreement
  • 12. Targetting Economy of ScopeSoftware FactoryCustom CodeProject ACustom CodeProject BBase Class Library
  • 13. Targetting Economy of ScopeSoftware FactoryCustom CodeProject ACustom CodeProject BBase Class LibraryCommon Components
  • 14. Targetting Economy of ScopeSoftware FactoryCustomComponentProject A Project BBase Class LibraryCommon ComponentsCustomComponentCustomComponentCustomComponentModel, Extensions, Configuration, Scripts Model, Extensions, Configuration, ScriptsPatterns, Practices, Guidelines
  • 15. Software FactoriesMultiple implementations (=Copies) ofthe same design/product Cost per unit of output generallydecreasing with increasing scale asfixed costs are spread out over moreunits of output ExamplesManufacturingSoftware (e.g. shipping versions on DVDs)Economy of ScaleProduction of multiple designs andtheir initial implementations Similar designs based on commontechniques and technologies ExamplesConstruction industry (e.g. bridges, sky scrapers)Custom software in a specific domainEconomy of Scope
  • 16. Traditional Process"There are two approaches, evolutionary and single step [waterfall], to fullcapability. An evolutionary approach is preferred. … [In this] approach, theultimate capability delivered to the user is divided into two or more blocks, withincreasing increments of capability...software development shall follow an iterative spiral development process inwhich continually expanding software versions are based on learning fromearlier development.“ US Department of Defense, Acquisition Strategy Considerations, Source: WikipediaMany organizations are turning away from waterfall
  • 17. Manifesto for Agile Software DevelopmentBasic IdeasAgile and Scrum WorkshopWe are uncovering better ways of developing software by doing itand helping others do it. Through this work we have come to value:• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a planThat is, while there is value in the items on the right, we value theitems on the left more.Source: agilemanifesto.org (2001)Welcome changesResponse flexible and fastLightweight developmentmethodsIterative and incrementaldevelopmentSelf-organizing, cross-functional teams
  • 18. Iterative Approach in AgileDevelopmentIncrementalDevelopmentAgile and Scrum WorkshopSource: MSDNAdaptive PlanningTime-boxed iterationsE.g. Sprints in Scrum,Iterations in XPRegular interactionsE.g. Business anddevelopment,team members
  • 19. Agile Principles Early and continuous delivery of valuable softwareFrequent software delivery (weeks to a couple of months; the shorter the better)Working software is the primary measure of progress Welcome changing requirementsChanges are welcome for the customers competitive advantage Business people and developers work together dailyConvey information preferably by face-to-face conversationCo-location is preferred
  • 20. Agile Principles Build projects around motivated individualsCross-functional, self-organizing team of typically 5-9 peopleSustainable pace avoiding crunch-time and “death marches” Technical excellence and good design enhance agilityThe best architectures, requirements, and designs emerge from self-organizing teams Simplicity is essentialMaximize the amount of work that is not doneThis is what lean development is all about!
  • 21. Agile Principles Regularly reflect on how to become more effectiveTruth in every communicationFacilitate positive conflictsRead more at agilemanifesto.org
  • 22. Adaptive vs. Predictive ProcessRelease PlanningAgile and Scrum WorkshopIterative approach instead of big up front planningVery detailed plan aboutshort-term workShared across entire teamMid-term: Committedstories/featuresRegularly shared/revised withbusinessLong-term: Strategiclevel, range of functionalityContinuously revised throughout theprojectTimeWe know exactlywhat we aregoing to do nextweekWe have an idea ofwhere we are goingto invest time in thefollowing monthWe have a missionstatement for therelease in sixmonths
  • 23. Lean/Agile Methods Lean software development Extreme Programming (XP) Kanban Scrum (more about this later) …
  • 24. XP vs. ScrumScrum XPProduct owner CustomerScrum master XP coachTeam TeamSprint IterationSprint planning meeting Planning game
  • 25. KanbanKanban CoreValuesAgile and Scrum WorkshopSource: E. Brechner: Too much of a good thing? Enter KanbanVisualize your workImmediately identify work that iswaiting and will likely neverbe finishedLimit Work in ProgressConstrain work in progress toreduce cycle times
  • 26. Reduce „Waste“ with Lean OverproductionDon„t produce more than you needToo complex, too general, too extensible, …Solution: Frequently reprioritize work based on business valueImage Source: Lacey M.: The Scrum Field Guide
  • 27. Reduce „Waste“ with Lean Depth first instead of breadth firstSpec, design, code, and test limited number of features completely before moving onStay focused on producing value instead of infrastructureFail early TransportationReduce waiting time between team members and teamsE.g. build times, branching, incompatible office hours MotionKnow how you spend your time and reduce time used to find stuffE.g. bug tracking system instead of emails, source code repository
  • 28. Reduce „Waste“ with Lean Over-processingOver-engineering, e.g. optimize code that is performing adequatelyTDD, SDD InventoryUndelivered work, typical for breadth-first developmentYou can‟t deliver value, you can‟t get feedback WaitingOptimize the flow of features by having the right amount of PMs, Devs, and TestersE.g. Drum-Buffer-Rope concept of Theory of Constraints (TOC)
  • 29. Video: Lucy Candy FactoryRemember TheAgile Values?Agile and Scrum WorkshopSource: YouTubeSelf-organizing, cross-functional teamSustainable pace avoidingcrunch-timeTruth in every communication
  • 30. Reduce „Waste“ with Lean DefectsReduce the need for rework by e.g. TDDDetect architectural issues by doing depth-first development
  • 31. Limits/Problems of Agile Primary Goal: Predictability,stability, and high assuranceCan be based on a contract Scales better to large projectswith many participants Covers a broad spectrumUsed in contracted software development,addresses product line, organizational, andenterprise concerns that span multiple projectsPlan-Driven Approach Primary Goal: Rapid value andresponsiveness to changeNeeds a dedicated, collocated customer Works best for small to mediumsized teams Concentrates on a specificprojectStill need for high-level planning, syncingmilestones across teams, cross-team scenario-focused engineering, …Agile Approach
  • 32. Limits/Problems of Agile One-way, explicitly documentedknowledge Formallycomplete, consistent, traceable,and testable specifications Architecture-based designTake advantage of software reuse e.g. acrossproduct linesPlan-Driven Approach Frequent, person-to-personinteraction Adjustable, informal stories withfrequent reprioritization anditerative refinement Simple designRisk of costly “architecture breakers”Agile Approach
  • 33. Agile Myths Myth #1: Agile = ScrumThere are many agile methods, Scrum is one of them Myth #2: In agile projects there is no planning„What XP teams find valuable is the collaboration, elicitation, and balancing of priorities in theplanning act itself. The plans that result have a short half-life, not because they are bad plans, butbecause their underlying assumptions have a short half-life.”(Kent Beck, co-creator of XP) Myth #3: Agile means no documentationRemember the agile manifesto: “while there is value in the items on the right, we value the itemson the left more”. Essential documentation is still valuable for customers, partners, and cross-teamdependencies
  • 34. Agile Myths Myth #4: Agile means no up-front designTechnical excellence and good design are key. However, value responding to change more thansticking to your original plan.
  • 35. Misconceptions and RealitiesAgile MythsAgile and Scrum WorkshopSource: Boehm B., Turner R.: Balancing Agility and Discipline, Figure 2-3YAGNI = You ain„t gonnaneed it
  • 36. Dimensions Affecting MethodAgile MythsAgile and Scrum WorkshopSource: Boehm B., Turner R.: Balancing Agility and Discipline, Figure 2-2
  • 37. Saves the day.Agile and Scrum WorkshopQ&ARainer Stropeksoftware architects gmbhrainer@timecockpit.comhttp://www.timecockpit.com@rstropekThank your for coming!MailWebTwitter
  • 38. Agiledevelopment – what‟sdifferent?AgendaScrumbasics – how does itwork?Operationalexcellence – how toget the most our ofScrum?DiscussionOpenSpace, interviewSource: Flickr (Common Creative)Source: MSDNSource:WikipediaSource: Flickr (Common Creative)
  • 39. What is Scrum? Scrum is a framework for developingand sustaining complex productsIncluding, but not limited to, softwareRead the Scrum Guide TransparencyProcess must be visible to those responsible for the outcomeCommon understanding of what is being seen (e.g. what means “done”?) InspectionFrequently inspect Scrum artifacts and progress AdaptionProcess or the material being processed might need adjustmentSource: Flickr (Common Creative)
  • 40. The Team Product OwnerCustomer or customer representativeResponsible for maximizing the value of the product and the work of the teamManages the Product Backlog Development TeamSelf-organizing, cross-functional, without hierarchyTypically three to nine people Scrum MasterResponsible for ensuring Scrum is understood and enactedServant-leader for the Scrum TeamBuilding a team of peopleinstead of using a pool ofresources
  • 41. The Team A dedicated personCan represent a committee The only one who manages theproduct backlogBased on the company‟s vision or roadmapCan delegate the work, but is still accountable Clarifies the requirements for thedevelopment team This is a very demanding job!Product Owner A dedicated personIf possible, don‟t mix roles for a single person Builds and maintains the teamLike a coach Coordination, collecting statusE.g. manage daily standup meeting Provide balance against the ProductOwnerSupport and protection of the teamScrum Master
  • 42. The Events – Sprint Time-box(One month or less) during which a“Done”, useable, and potentially releasable productincrement is created Constant sprint goalQuality goals also must not be changed Scope may be clarified and re-negotiated In extreme cases cancel the entiresprint
  • 43. Sprint Planning ToolsToolsAgile and Scrum WorkshopWhiteboard or software?WhiteboardSoftware support forbacklog managementEasier to use if not collocated
  • 44. Agile and Scrum WorkshopWork item management integrated with source control, build, and testTeam Foundation Server/Services
  • 45. Agile and Scrum WorkshopProject managementAtlassian Jira
  • 46. Agile and Scrum WorkshopProject managementRally
  • 47. The Events – Sprint Planning Time-boxedTypically eight hours for a one-month sprint Two partsWhat will be done in the sprint?How will it be done? Input: Ordered Product BacklogDerive Sprint Backlog based on the team‟s velocity Output: Sprint BacklogUser StoriesTask for short-term stories
  • 48. The Events – Daily Scrum 15 Minutes, Time-boxSynchronize, plan next 24 hours GoalsImprove communicationsIdentify and remove impedimentsHighlight and promote quick decision-makingImprove the Dev‟s level of project knowledge Questions to askWhat did you do yesterday?What will you do today?What blocking issues do you have?What is your confidence (1-10) that the teamwill accomplish the goal of this sprint?
  • 49. The Events – Sprint Review Time-boxedTypically four hours for a one-month sprint Demo the work in an environmentas close to production as possibleBuild trust by constantly showing a high-quality product Review Product Backlog
  • 50. The Events – Retrospective Time-boxedTypically three hours for a one-month sprint Opportunity for processimprovementHow do we work together?What works? What does not work?
  • 51. Product Backlog The single source of requirements for any changes to the productRemember YAGNI? Constantly evolves as the product and the environment in which itwill be used evolves Ordered by value, risk, priority, and necessityHigher ordered Product Backlog items are clearer and more detailedThe lower the order, the less detailed Product Backlog groomingProduct Owner and the Development Team collaborate on the details of Product Backlog itemsCan consume up to 10% of the Development Team‟s time
  • 52. Agile and Scrum WorkshopSource: http://www.mitchlacey.comScrum Framework Flow Diagram
  • 53. Definition of „Done“„Done“ ChecklistAgile and Scrum WorkshopSource: Lacey M., How Do We Know When We Are Done?Shared understanding ofwhat it means for workto be completeDefinition of “Done” willexpand to include morestringent criteria forhigher quality over time
  • 54. Saves the day.Agile and Scrum WorkshopQ&ARainer Stropeksoftware architects gmbhrainer@timecockpit.comhttp://www.timecockpit.com@rstropekThank your for coming!MailWebTwitter
  • 55. Agiledevelopment – what‟sdifferent?AgendaScrumbasics – how does itwork?Operationalexcellence – how toget the most our ofScrum?DiscussionOpenSpace, interviewSource: Flickr (Common Creative)Source: MSDNSource:WikipediaSource: Flickr (Common Creative)
  • 56. Engineering PracticesGoal ToolShared Code Ownership Static Code Analysis(e.g. Style Cop, Code Analysis)Framework Design GuidelinesDocumentation(e.g. Sandcastle)Automated Tests Test Driven DevelopmentAutomated Unit Tests(e.g. MS Test, MS Fakes)Automated Integration andAcceptance Tests
  • 57. Engineering PracticesGoal ToolPair Programming, Code Review Automated Code Review Process(e.g. Team Foundation Server)Refactoring Editor Tools in the IDE(e.g. Visual Studio, Re-Sharper)Continuous IntegrationFrequent Check-InsAutomated build, branching strategy(e.g. Team Foundation Server)Enhance Quality Gated check-in(e.g. Team Foundation Server)
  • 58. Engineering Practices Build Engineering into Product BacklogProduct owner must understand and be willing to make the long-term investment Work on your “Done” checklistE.g. code must be checked-in on main branch (gated check-in) If necessary, care for appropriate training
  • 59. Effort Estimation and ScrumPrinciplesAgile and Scrum WorkshopHow long does it take to build something more-or-less unknown?Use story points to expressrelative complexityTry to learn about the team„svelocity„Done“ story points per sprintIf necessary use a smallreference story for velocitypredictionConstantly track project„sprogressUser Stories„As a […]I want to […]so that […]“EstimationRemainingwork inhoursStory Points„T-Shirt Sizing“Use a XS storyas a reference
  • 60. Burndown ChartMonitor ProgressAgile and Scrum WorkshopSource: Lacey M.: The Scrum Field GuideBurndown chart not amandatory artifact inScrumStill popular in manyScrum teams
  • 61. Story DecompositionWhat„s a Story?Agile and Scrum WorkshopSource: Lacey M.: The Scrum Field GuideEpicsImportance of groomingDescribes the smallestaction that a user wouldtypically want to do, or itis the smallest piece offunctionality withbusiness valueTasks should becompleted in no morethan two days
  • 62. How large is an elephant?Fermi MethodAgile and Scrum WorkshopEstimationMaking justified guessesabout quantities thatseem impossible tocompute given limitedavailable information“How many piano tunersare there in Chicago?”3-4m, largest one was4.21m large and 10.39mlong (Source: Wikipedia)
  • 63. Calculate circumference of the earthWhat to measureand/or plan?Agile and Scrum WorkshopEratosthenes (ca. 276-194 B.C.), read more in WikipediaPlan/measure what„simport instead of what„seasyConstantly monitor andupdate your plan
  • 64. Release planningPlanning theUnknownAgile and Scrum WorkshopSource: Lacey M.: The Scrum Field GuideInputsAn estimated, ordered, andprioritized product backlogThe team velocityA sprint timeline
  • 65. Add a Degree of Confidence „We estimate that we will finish the project within twomonths“ “Management wants to launch the product beforeChristmas. We estimate that we can finish the projectuntil then.Our goal is toare committed to finishing
  • 66. Add a Degree of Confidence Our estimation is that the project……will be finished in <= two months (75%)…will take us between two and three months (15%)…will take us more than three months (10%) Use story points, velocity, sprint schedule, andconfidence intervals for release planning and riskmanagement
  • 67. EstimationHow good are you?Agile and Scrum WorkshopHow good do you estimate?Estimate width (“between… and …”) of an AirbusA380 with a confidenceinterval of 90%Estimate the height(“between … and …”)Width of an AirbusA380?Wheel of fortunewhere 9 of 10 fieldswin
  • 68. A house as high as anAirbus A380 is a„Hochhaus“ in GermanySource: Airbus
  • 69. Frage KleinsteSchätzungGrößteSchätzungRichtig?1938 hat eine Englische Dampflokomotive einen Geschwindigkeitsrekordaufgestellt. Wie schnell war sie (in km/h)?In welchem Jahr hat Newton seine Gravitationsgesetze („MathematischePrinzipien der Naturphilosophie“) veröffentlicht?Wie breit (inch) ist eine typische Visitenkarte in den USA?In welchem Jahr wurde das Internet als militärischeKommunikationsinfrastruktur eingeführt (damals als „Arpanet“ bezeichnet)?In welchem Jahr kam Wiliam Shakespeare zur Welt?Wieviele KM Luftlinie liegen zwischen New York und Los Angeles?Wieviel Prozent eines Rechtecks werden durch einen Kreis mit gleicher Breiteabgedeckt?Wie alt war Charlie Chaplin als er starb?Wie hoch ist die Oberflächentemperator der Sonne (in Grad Celsius)?Wie groß ist die Fläche des Kontinents Asien (in km²)?Summe der erreichten Punkte
  • 70. Frage Antwort1938 hat eine Englische Dampflokomotive einen Geschwindigkeitsrekordaufgestellt. Wie schnell war sie (in km/h)?202 km/hIn welchem Jahr hat Newton seine Gravitationsgesetze („MathematischePrinzipien der Naturphilosophie“) veröffentlicht?1685Wie breit (inch) ist eine typische Visitenkarte in den USA? 3.5In welchem Jahr wurde das Internet als militärische Kommunikationsinfrastruktureingeführt (damals als „Arpanet“ bezeichnet)?1969In welchem Jahr kam Wiliam Shakespeare zur Welt? 1564Wieviele KM Luftlinie liegen zwischen New York und Los Angeles? 2.451Wieviel Prozent eines Rechtecks werden durch einen Kreis mit gleicher Breiteabgedeckt?78,5%Wie alt war Charlie Chaplin als er starb? 88Wie hoch ist die Oberflächentemperator der Sonne (in Grad Celsius)? 6.000°CWie groß ist die Fläche des Kontinents Asien (in km²)? 44,39 Mio. km²
  • 71. A 90% confidence interval is more a 30%intervalCognitive BiasAgile and Scrum WorkshopSource: McConnell et al: Aufwandsschätzung bei SoftwareprojektenYou have to train yourability to estimate
  • 72. Estimating CostsHubbard‟s Rule ofFiveAgile and Scrum WorkshopHow to estimate when agile?There is about 93%probability that the median(and mean) of the entirepopulation is between thehighest and the lowestvalues of a sample of fivePrerequisite: GaussiandistributionSource: Hubbard D.: How To MeasureAnythingAverageProbability of anestimation being on thisside of the bell curve?Probability that asecond estimation isalso on this side of thebell curve?Probability that fiveestimations in a row areon this side of the bellcurve?50%50% * 50% = 25%50% * 50% * 50% * 50% * 50% = 3,125%Estimation
  • 73. Estimating CostsStatisticsAgile and Scrum WorkshopHow to estimate when agile?Statistics can bedangerousOperationalCosts/RGU[€]Natural minimumEndless potential for e.g.unforeseen problems
  • 74. MediokristanExtremistanSources:http://www.flickr.com/photos/akc77/3370167184/,http://www.flickr.com/photos/thomashawk/337323578/UnderCreativeCommonsLicense
  • 75. Black SwanBlack SwanAgile and Scrum Workshophttp://www.flickr.com/photos/essjay/224318029/Under Creative Commons LicenseYou cannot predict the futureexactlySmall: HeisenbergBig: ComplexityWe do not live in theasymptote, we live in thereal lifeWe tend to believe instatisticsLook for positive black swans
  • 76. Saves the day.Agile and Scrum WorkshopQ&ARainer Stropeksoftware architects gmbhrainer@timecockpit.comhttp://www.timecockpit.com@rstropekThank your for coming!MailWebTwitter
  • 77. Agiledevelopment – what‟sdifferent?AgendaScrumbasics – how does itwork?Operationalexcellence – how toget the most our ofScrum?DiscussionOpenSpace, interviewSource: Flickr (Common Creative)Source: MSDNSource:WikipediaSource: Flickr (Common Creative)
  • 78. Saves the day.Agile and Scrum WorkshopQ&ARainer Stropeksoftware architects gmbhrainer@timecockpit.comhttp://www.timecockpit.com@rstropekThank your for coming!MailWebTwitter