Presentation is loading. Please wait.

Presentation is loading. Please wait.

COMP 3663 DANIEL L. SILVER, PHD IMPLEMENTATION 2.

Similar presentations


Presentation on theme: "COMP 3663 DANIEL L. SILVER, PHD IMPLEMENTATION 2."— Presentation transcript:

1 COMP 3663 DANIEL L. SILVER, PHD IMPLEMENTATION 2

2 XP = EXTREME PROGRAMMING An agile method intended to improve software quality and responsiveness to changing customer requirements Advocates frequent "releases" in short development cycles Recognizes that requirements will change Intended to improve SE productivity Name is derived from the idea that the beneficial elements of traditional software engineering practices are taken to "extreme" levels. Originally - Newly tested code every day!

3 XP = EXTREME PROGRAMMING Features: Paired programming Extensive code reviews Unit testing Organic flat structure Simplicity and clarity in code Frequent communication with the customer / among programmers Potential drawbacks: Unstable requirements Compromises of user conflicts are lost No overall design specification

4 XP = EXTREME PROGRAMMING Four basic activities: Coding - only truly important product; code should always be clear and concise and have one interpretation Testing - unit, integration, acceptance testing Listening - to what the customer really needs Designing - creating a design structure that organizes the logic in the system; cohension and coupling Four or more values: Communication, Simplicity, Feedback, Courage, Respect Darn near a religion !!

5 XP = EXTREME PROGRAMMING What we wish it meant: https://www.youtube.com/watch?v=Ytu1Hxzr_Bs Strengths and Weaknesses of XP https://www.youtube.com/watch?v=LkhLZ7_KZ5w

6 PAIRED PROGAMMING An agile software development technique Two programmers work together at one workstation Driver - writes code Observer, pointer or navigator – reviews code as typed The two programmers switch roles frequently Observer also considers the "strategic" direction of the work Considers improvements and likely future problems Driver can focus on the "tactical" aspects of current task

7 PAIRED PROGAMMING Economics: Pairs spend about 15% more time versus individuals Results in 15% fewer defects, from 70%-85% (which cost $ as well) Quality: Greater potential to generate more diverse solutions Different experience / knowledge Different search for relevant information Different roles = different perspective Satisfaction: 96% of programmer/ analysts who try it like it 95% more confident in solutions Education: Show me and I may remember, Involve me and I will understand Knowledge shared between paired individuals (logic, coding methods, style) “Promiscuous” pairing - each programmer can work / share with many others

8 PAIRED PROGAMMING Teamwork: Sharing problems / solutions – less chance for hidden agendas Raises communication bandwidth / frequency within the project Increases information flow within the team Watch-out-fors: Silence = lack of collaboration Watch the master = junior person side-lined by senior Withdrawl = down one member most of the time Pairing Combinations: Expert–Expert - high productivity, great results / may yield little insight into solutions and practicses Expert–Novice - many opportunities for mentoring, leads new solutions and ideas / may lead to "watch the master” Novice–Novice low productivity, quality / but significantly better than individuals

9 PAIRED PROGAMMING Video - https://www.youtube.com/watch?v=ET3Q6zNK3Iohttps://www.youtube.com/watch?v=ET3Q6zNK3Io

10 SCRUM An iterative and incremental agile SE framework “A flexible, holistic product development strategy where a development team works as a unit to reach a common goal” [Takeuchi and Nonaka] Enables teams to self-organize by: Encouraging physical co-location or close online collaboration Daily face-to-face communication among all team members A key principle is recognition that change happens Called "requirements churn” Accepts that problem cannot be fully understood or defined Focuses is on: Maximizing the team's ability to deliver quickly on what they know Responding to emerging requirements

11 SCRUM Three core roles: Product Owner, Development Team, Scrum Master Product Owner Communicates between team and steakholders Voice of the customer Face of the team to the stakeholders Ensures that the team delivers value to the business Responsible for “user stories” capturing requirements Empathetic, good at negotiations and collaboration Where does the word scrum come from?

12 SCRUM Three core roles: Product Owner, Development Team, Scrum Master Development Team Deliver potentially shippable increments (PSIs) at the end of each Sprint 3–9 individuals with cross-functional SE skills Self-organizing group Scrum Master Ensures team delivers the product Acts as buffer between the team and any distracting influences Enforces Scrum rules, chairs key meetings, challenges team Not a Project Manager – does not manage people Where does the word scrum come from?

13 SCRUM Sprint Iteration = basic unit of development in Scrum Time-boxed – one to four weeks, two weeks typical Emphasizes working product at end of Sprint integrated, fully tested, end-user documented, and potentially shippable Started by a planning meeting Tasks for the sprint are identified Goal of sprint estimated Ends with review-and-retrospective meeting Progress is reviewed / lessons identified

14 SCRUM Daily scrum meeting Occurs each day – a project team communication meeting All members of team come prepared with the updates Starts precisely on time even if members are missing Same location and same time every day Length is set to 15 minutes All are welcome, but normally only the core roles speak During the meeting, each team member answers three questions: What have you done since yesterday? What are you planning to do today? Any impediments/stumbling blocks? Problems are documented by the Scrum Master. Work towards resolution happens outside meeting. No discussions.

15 SCRUM Scrum of Scrums Technique to scale Scrum up to large development groups (12+) Allows Scrum team reps (ambassadors) to discuss work Focus on areas of overlap and integration Each daily scrum selects a member as "ambassador” The SofS asks four questions: What has your team done since we last met? What will your team do before we meet again? Is anything slowing your team down or getting in their way? Are you about to put something in another team's way?

16 SCRUM Video - Scrum in Under 10 Minutes: https://www.youtube.com/watch?v=XU0llRltyFM&list=PLutqk bLkswNsTZipUX4oF4AKfsblDOuLR https://www.youtube.com/watch?v=XU0llRltyFM&list=PLutqk bLkswNsTZipUX4oF4AKfsblDOuLR Video - Scrum in only 8 Minutes: https://www.youtube.com/watch?v=_QfFu-YQfK4 Video - Scrum in only 2 Minutes:-- Wow !! https://www.youtube.com/watch?v=WxiuE-1ujCM


Download ppt "COMP 3663 DANIEL L. SILVER, PHD IMPLEMENTATION 2."

Similar presentations


Ads by Google