Develop apps in the cloud with DevOps Services

Comments

Setting the scene

MeterPal is a fictitious, Kickstarter-funded startup that offers a new approach to metered parking that is mobile and social. Phil and 5 college classmates launched MeterPal. They enter an agreement with JKE Banking to handle their micropayment transactions. In return, they participate in the fictitious Money that Matters charitable program. When someone pays for a parking meter charge, they can round up the payment to the nearest dollar and have it go to their preselected charity.

The Mayor of Innovationville wants to deploy their smarter meter parking solution.

Phil and his team are driven to deliver their solution to market quickly and they start getting users. They choose to follow an agile development process in which Phil is the product owner and Sarah is the scrum master. In the past, the team used mostly whiteboards with sticky notes to capture project information. They never found the time to adopt, install, and configure an agile collaborative tool to support their development.

During Innovate, the IBM® technical summit in Orlando, Sarah, the scrum master, heard about DevOps Services (JazzHub). She participated in an open DevOps Services Live lab and was impressed by the simplicity of the tool.

Teams that adopt DevOps Services can focus on what really matters: product development and delivery.

Sarah knows that Phil, the product owner, will be a bit worried about adopting a new application because the release date for the MeterPal project is 12 weeks from now. Phil wants to deliver as much business value as possible in the early sprints. Therefore, Sarah presents how the DevOps Services features support collaborative development. DevOps Services helps the team:

  • Continue to use the scrum agile practice because DevOps Services aids agile development by including a scrum template
  • Be flexible in working with Uma, a member of the development team who works from home occasionally. A tool in the cloud makes it possible for Uma to collaborate with the team even when she is not in the office.
  • Become productive quickly because the web-based DevOps Services can be accessed from a web browser, with no need to install software locally.

Back in the office, Sarah convinces the team to try DevOps Services for their project and the team starts the MeterPal project using DevOps Services.

Use DevOps Services to develop and Bluemix to deploy

When the first sprint for project MeterPal starts, Sarah asks the scrum team to go to DevOps Services and register. They complete the task in less than three minutes because the registration form requires only a valid email address, a user ID, a password, and some basic information.

Sarah accesses DevOps Services, logs in with her account, and is ready to create a project. As shown in Figure 1, she types in a project name (MeterPal), makes it publicly visible (public projects are free on DevOps Services), selects the scrum process, and goes to IBM Bluemix to deploy their application. Sarah also selects the Jazz™ source control option because the team decides to store their source code on the DevOps Services cloud.

Figure 1. Create a public scrum project on DevOps Services
Add features for scrum, deploy to BlueMix
Add features for scrum, deploy to BlueMix

A few seconds later, the MeterPal project is created on the cloud. Sarah invites other team members to join the project now. They receive an email notification that is sent by DevOps Services to register or sign in to the MeterPal project as team members.

In no time, Sarah created the MeterPal project on DevOps Services. The team has access, through a web browser, to a simple, yet powerful cloud environment for:

  • Agile project planning
  • Epics, stories, and task tracking
  • Source control
  • Deployment in the cloud

Configure a DevOps Services project

Now Sarah wants to configure the MeterPal project on DevOps Services. She adds a description and cool graphics. Sarah creates a timeline that is aligned with the project objectives (release is planned in 12 weeks). Sarah enters a project start date and the number and length for the sprints, as shown in Figure 2. The different sprints are automatically created with a corresponding start and end date.

Figure 2. Create sprints on DevOps Services
Start and end times for each sprint
Start and end times for each sprint

Then, Sarah creates a sprint backlog for the first iteration, which she calls Sprint 1, as shown in Figure 3.

Note: DevOps Services automatically creates a product backlog.

Figure 3. Plans for agile projects on DevOps Services
Sprint 1 backlog on Plans tab
Sprint 1 backlog on Plans tab

Sarah started to use DevOps Services less than 5 minutes ago. At this stage, no further configuration is needed. The MeterPal project in the cloud is ready for the team to use in support of their agile collaborative work.

In-context collaboration on the cloud

With the MeterPal project configured on DevOps Services, Phil, the product owner, can add new Epics and Stories to the product backlog. The team can conduct typical scrum activities, such as backlog ranking and refinement, sprint planning, or decomposition of Stories into tasks. DevOps Services also helps connect the source code to the plans. With such traceability, it is easier to understand how each Story is implemented. The home page for the MeterPal project includes a project description, files, and members.

Figure 4. The home page for the MeterPal project
Page that includes description, files, members
Page that includes description, files, members

Darryl, a developer, grabs a task from the sprint backlog. The objective is to create a new page for the MeterPal website.

Darryl opens the Code tab on DevOps Services. From his web browser, he creates a new HTML file, as shown in Figure 5. The DevOps Services online editor supports development and syntax highlighting for JavaScript, HTML, CSS, or Java™ programming languages. Darryl can also create a stylesheet that uses the web editor but he decides to import an existing file from another project.

Figure 5. Source code editor on DevOps Services
Contents of MeterPal.html
Contents of MeterPal.html

Developers can work from their web browser. They can also choose to develop from an Eclipse® or Microsoft® Visual Studio IDE if they prefer. Applications that are developed on DevOps Services can be pushed and tested on the Bluemix run time in the cloud.

When Uma works from home, her productivity is not affected because she can remotely access the project on the cloud. From her web browser, she collaborates with the team and works on Stories and tasks. Uma can even access project information from her mobile device and she is notified by email when someone mentions her in a work item.

Early on, Phil, the product owner, is reluctant to adopt a new tool for the MeterPal project. His concern is that the team will spend too much time on learning DevOps Services instead of focusing on Stories implementation. But Phil can now attest that the productivity of the team is not affected when they adopt DevOps Services. And with a backlog accessible on the web, Phil is able to collaborate more efficiently with stakeholders, even with remote ones.

DevOps Services supports in-context collaboration on the cloud to help the MeterPal team build better products. Project information is centralized and available from real-time dashboards. People can start discussions on Epics, Stories, or tasks. They can conduct reviews and access implementation code. For the MeterPal team, the DevOps Services environment reduces the time that it takes to get a product to market.

Summary

Other teams at MeterPal often contact Sarah, the scrum master. Everyone has heard about the success of the MeterPal project with DevOps Services. No long learning curve, no painful installation and configuration. With its simple web interface, DevOps Services supports the team for task tracking, agile planning, source control, and deployment. Team members can focus on what really matters: product development and delivery. Many other teams are interested in adopting DevOps Services for their initiatives.


Downloadable resources


Related topics


Comments

Sign in or register to add and subscribe to comments.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=DevOps, Rational, Cloud computing
ArticleID=968419
ArticleTitle=Develop apps in the cloud with DevOps Services
publish-date=06272014