Presentation is loading. Please wait.

Presentation is loading. Please wait.

FreeNest’s internal development process changes 2006-2013 Presentation 2013 Marko Rintamäki.

Similar presentations


Presentation on theme: "FreeNest’s internal development process changes 2006-2013 Presentation 2013 Marko Rintamäki."— Presentation transcript:

1 FreeNest’s internal development process changes 2006-2013 Presentation 2013 Marko Rintamäki

2 Agenda Original Idea Virtualization ? Development History of The FreeNest Product How development methods has been evolving done during a product lifetime Challenges with product development FreeNest as a service?

3 Idea?

4 Original Idea 2006 TWIKI Bugzilla Testlink ++ www.twiki.net http://www.teamst.orgwww.teamst.org http://www.bugzilla.org/

5 Virtualization as technology Virtualization, in computing, is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system, a storage device or network resources. [1] [1] Virtualization can be viewed as part of an overall trend in enterprise IT that includes autonomic computing, a scenario in which the IT environment will be able to manage itself based on perceived activity, and utility computing, in which computer processing power is seen as a utility that clients can pay for only as needed. The usual goal of virtualization is to centralize administrative tasks while improving scalability and overall hardware-resource utilization. [1]autonomic computing [1] 1970 VAX 1980 IBM PC 2000 2020

6 Virtualization solutions VMWARE http://www.vmware.com/ KVM http://www.linux-kvm.org/page/Main_Page XEN http://en.wikipedia.org/wiki/Xenhttp://en.wikipedia.org/wiki/Xen Windows Image File 1 Virtualization SW Emulated HW with SW RAW copy http://en.wikipedia.org/wiki/Hypervisor Image File 2 Server HW

7 First Image! CENTOS 3.x PC VMWARE

8 2012 Time goes by… 2013 v. 1.3 v. 1.4 V 1.0 V 1.1 V 1.2 V 1.2 rebrand

9 Tasks Defects Knowledge Change Service Desk Project Management Project Management Communication Inventory Reporting Brain storming User Management User Management Risks Survey Testing Database system Database system Version control Customer Dev Team Misc Team More Domains added

10 FreeNest Product Structure

11 TOOL2 Ver X TOOL2 Ver X Integration Operation System Version Integration TOOL4 Ver Å TOOL4 Ver Å TOOL1 Ver Y TOOL1 Ver Y Integration TOOL3 Ver Z TOOL3 Ver Z FreeNest service Look And Feel FreeNest tool/install/backup scripts Feature x1 IMAGE FILE

12 Dog Food Model http://en.wikipedia.org/wiki/Eating_your_own_dog_food 1.0 1.1 1.2 1.3 1.0 1.1 1.0 1.2 1.1 1.3 1.4

13 FreeNest Main Components TWIKI 4 Testlink 1.6.3 TRAC 0.11.x TWIKI 3 FOSWIKI 1.1.5 TRAC 0.12.x Testlink 1.7.4 Testlink 1.9.4 Testlink 1.9.3 Bugzilla 2.x Bugzilla 3.x Bugzilla 4.x CENTOS 4.4 Ubuntu 9.04 Ubuntu 10.04LTS FreeNest 1.0-1.2 FreeNest 1.2+enhanced FreeNest 1.3 FreeNest 1.4 Ubuntu 12.04LTS FOSWIKI 1.1.3 TRAC 0.12.2 Bugzilla 4.0.2 2006 20082009 2012 PhpBB 2.0 PhpBB 3.x Agilo 0.8.5 Agilo 0.9.x Agilo 0.9.5 X X

14 Process Support Knowledge Management Error Management Error Management Test Management Test Management Release Planning Release Planning Agile Project Management Agile Project Management Change Management Change Management 20062007200820092012 ***** ***** **** ** ***** ** *** *** Training Environment Training Environment Version Control

15 Service Cloud? Service Cloud

16 Security?

17 Security?? Identification Authentication Identification Authentication  SANDBOX http://en.wikipedia.org/wiki/DevOps

18 Security - Sandboxing SANDBOX1SANDBOX2SANDBOX3 SANDBOX4SANDBOX5SANDBOX6

19 Separated Service Cloud? Service Cloud (Private/Public) Service Cloud (Private/Public) Company Core Infra Identification Authientication Identification Authientication Identification Authientication Identification Authientication

20 Development Methods & Evolution

21 Me alone! FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE 2006-2009

22 Working ok? Install new packages to Image Install new packages to Image Copy Image as test image Delete Test Image Delete Test Image Copy Baseline Image Copy Baseline Image Create New Baseline Image Create New Baseline Image Test run for test image NO YES One Man Show! 2006-2009

23 New member on team ! FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE 2009-2010 Mentoring/ Discussion Planning Design

24 Working ok? Install packages to Image Install packages to Image Copy Image as test image Delete Test Image Delete Test Image Copy Baseline Image Copy Baseline Image Create New Baseline Image Create New Baseline Image Test run for test image NO YES Another’s Show! 2009-2010 Write integration code

25 Team Size Grows! FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE 2010-2011

26 Working ok? Install packages to Image Install packages to Image Copy Image as test image Delete Test Image Delete Test Image Copy Baseline Image Copy Baseline Image Create New Baseline Image Create New Baseline Image Test run for test image NO YES Group Show! Group Show! 2010-2011 Write integration code Learn to use???

27 Team Size Grows! FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE 

28 What we tried to do? FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE FreeNest Virtual Machine Image FreeNest Virtual Machine Image VMWARE BASELINE VMWARE

29 What we tried to do? FreeNest Virtual Machine Image FreeNest Virtual Machine Image Own Host/VMWARE FreeNest Virtual Machine Image FreeNest Virtual Machine Image Own Host/VMWARE FreeNest Virtual Machine Image FreeNest Virtual Machine Image Own Host/VMWARE BASELINE Own Host/VMWARE 

30 Current Situation Dev Image BASELINE1 KVM Own Test Image Own Test Image System Integration Image System Integration Image BASELINE2 BASELINE 0 Dev Image 16GB/2TB Hard Disk 12 simultaneous vm machines Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story Task/Ticket User Story

31 Current Situation Dev Image BASELINE1 KVM Own Test Image Own Test Image System Integration Image System Integration Image BASELINE2 BASELINE 0 1 23 Task/Ticket User Story Task/Ticket User Story

32 Still problems… Configuration Management! Dev Image2 Dev Image3 Dev Image4 Dev Image1 BASELINE2 Are your sure all fixes are added you “golden image” ?

33 Future TOOL SPECIFIC PACKAGE 4 “DEP” REPO-> DEP FreeNest 1.4 Dev Image GIT Repository GIT Repository TOOL SPECIFIC PACKAGE 3 “DEP” TOOL SPECIFIC PACKAGE 2 “DEP” TOOL SPECIFIC PACKAGE 1 “DEP” System Integration Image System Integration Image Install Patch DEP Update Commit https://publications.theseus.fi/handle/10024/37592

34 Development in cloud Development Cloud GIT Repository GIT Repository Package Server Package Server Development Instance Test Bench Instance Test Bench Instance Deployment Cloud Product Instance Product Instance Test Instance Test Instance Test Instance Test Instance

35 We could still manage… slowly Build 1 Build 64 Build 70 Build 83 Build 30 * * * FreeNest 1.3 Alpha FreeNest 1.3 Beta FreeNest 1.3 Official

36 Challenges in product management

37 Several Component/Solution Providers Value Stream? Integration Module/Plugin Integration Module/Plugin Tool Community #1 PLATFORM Ubuntu PLATFORM Ubuntu Platform Update/Package Platform Update/Package Home Made components Home Made components Community Fix/Problems Community Fix/Problems Solution Image Solution Image Fix

38 Linux Platforms CENTOS 4.4 Ubuntu 9.04 Ubuntu 10.04LTS Ubuntu 12.04LTS FreeNest 1.0-1.2 FreeNest 1.2+enhanced FreeNest 1.3 FreeNest 1.4 Ubuntu 10.04LTS

39 Change of is challenge 200620122015?? 2008 2010

40 Valley of Death situations with selected technology http://foswiki.org/About/WhyThisFork TWIKI conflict FOSWIKI 1.1.4 2008 Centos 4.x 2009 Ubuntu 9.04 2010 Ubuntu 10.04 LTS 2012 Ubuntu 12.04 LTS KVM 0.11 VMWare Open Stack Bexar + 2011

41 Pilots are generating lot of extra work Build 1 Build 64 Build 70 Build 83 Build 30 * * * FreeNest 1.3 Beta FreeNest 1.3 Official Build 18 PILOT1 PILOT2 FreeNest 1.3 Alpha

42 PILOT1 Changes during time? Patching Almost Ok! Patching Ok! Patching ? Nope!! PILOT1

43 Feature Driven Development?

44 FreeNest Product Structure TOOL2 Ver X (Feature) TOOL2 Ver X (Feature) Integration Operation System Version Integration (Feature) TOOL4 Ver Å (Feature) TOOL4 Ver Å (Feature) TOOL1 Ver Y (Feature) TOOL1 Ver Y (Feature) Integration TOOL3 Ver Z (Feature) TOOL3 Ver Z (Feature) FreeNest service Look And Feel FreeNest tool/install/backup scripts (feature) Feature x1 IMAGE FILE

45 In practice! TOOL2 Ver X TOOL2 Ver X Integration Operation System Version Integration TOOL4 Ver Å TOOL4 Ver Å TOOL1 Ver Y TOOL1 Ver Y FreeNest service Look And Feel FreeNest tool/install/backup scripts Feature 1 Release Plan 1.4 (Dec 2012) +Foswiki 1.1.4 Foswiki Freemind Plugin Foswiki Paint Plugin Foswiki Timeline Plugin +Gozerbot Gozer Bugzilla Integration Gozer RSS plugin -Gitolite +Yousource/Gitorious ? +Debian Packages

46 Defining Features

47 Road mapping product?

48 Traceability from Features -> FEATURE Wiki Page FEATURE Wiki Page Postit Trac Task/UserStory DigaBoard Defects/Bugs Test Cases Implementation

49 Defining Product / Release Planning Feature Definitions/List Selected Features For Release Selected Features For Release Tasking Kanban Scrum System Testing Bug fix/support New Development

50 Tool specific Features? FOSWIKI has lot of plugins which are not enabled yet! http://foswiki.org/Extensions IRC BOTs? Several tool integrations available

51 Building a Service for FreeNest How to keep service online?

52 How to keep Cloud running? PUPPET/Fabric Controlling PUPPET/Fabric Controlling Load Monitoring Load Monitoring Patch engine Regenerated service

53 Continuous service update? FreeNest 1.3 Official Baseline FreeNest 1.3 Official Baseline PATCHES Instance Modifications

54 Cloud Service Model Problems? Patch ? ? Own OK ?

55 Competitor Example Atlassian On Demand https://my.atlassian.com/ondemand/overview

56 Draft Service Life Cycle Order Environment Order Environment Accept Price Select Service Plan Select Service Plan Service Online Support Online Support Online Service Startup Usage Period Usage Period Billing Online Billing Online End of Use Export Data


Download ppt "FreeNest’s internal development process changes 2006-2013 Presentation 2013 Marko Rintamäki."

Similar presentations


Ads by Google