live source - an agile toolkit

Post on 01-Dec-2014

2.130 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Software development, by its nature, is a series of translations and compromises. What the end user wants, what the customer is willing to pay for, and what is technically feasible rarely combine to form a unified set of features. A deeper understanding between technical and non-technical people is needed, in particular at the communication divide between stakeholders and developers. We will show you how to develop a domain-specific, ubiquitous language and how to use your code base as the central source for your requirements and documentation, to improve communication for the whole team.

TRANSCRIPT

Live Source

an AGILE TOOLKIT

Alline Watkins & June Clarke

alline.oliveira@gmail.com

joonspoon@joonspoon.com

Getting the most of your source code

Does your software source code lack knowledge?

If someone on your development team left work now, would others be able to make sense of it?

Is it a multiple lined mess, impossible to understand even for the one who wrote it?

is a new technology for your software, clarifying the darkness of programming into an easy to read, step by step summary of the content.

Live Source

And also ...

Creates a medium that helps both stakeholders and programmers to work together on code in a high-level manner.

Integrates user stories and tasking more tightly with codebase.

Objectives

• Source Code as a Live Documentation

• Source Code as a Communication Channel

• Source Code as a Planning Tool

• Source Code as a Software Metric

The advantages...

Faster communication

Less risk of miscommunication

Knowledge of domain will reside in codebase

Overhearing

Code is easier to understand (maintainability, extensibility)

Healthier code

Better response to change

What else you get:- Keeps the intention of the project in mind.

- Higher quality work. (published code is likely to be much better)

- Managers understand the repercussions of what they are asking for.

- Live documentation much closer to an User Manual than javadocs.

- Easier for programmers to argue for their needs. (like time for refactoring, to study,...)

Where this fits with Agile

Agile manifesto: Working software over comprehensive documentation

Values: transparency & unity

XP Practices:

feedback, pairing, refactoring, ...

SNAPSHOTS

&

DEMO VIDEOS

Ok, Now the Toolkit!

DEMO VIDEO:

http://www.screencast.com/t/tO2yuhyZuVI

http://sourceagile.appspot.com

It is available online for demonstration an executable version of the Toolkit at the Google Cloud. Feel free to play as much as you want with our Tic Tac Toe Demo project.

How to access the Toolkit

VIDEO: http://www.screencast.com/t/msSJvzWrMKL

Loading the source code inside the Toolkit

After choosing a project and login to the Toolkit, the first thing that happens is all the source code that is stored in the remote repository of this project is loaded into the system.

VIDEO: http://www.screencast.com/t/9yNXs1k79Pon

Showing the source code in an easy-to-read way

The important information in the source code are extracted by the Toolkit and displayed in an easy to read manner. Stakeholders or any non-technical person in the development team will be able to understand its meaning.

VIDEO: http://www.screencast.com/t/l5YBpbVtDahR

Editing the documentation of the source code

In addition, stakeholders or a non-technical person can easily edit the documentation of a feature in the Toolkit. This documentation will not be stored in paper documents or outdated databases, but straight into the source code as a comment .

VIDEO: http://www.screencast.com/t/VA1FCmzY4Gj

http://tictactoe4j.appspot.com

Before continuing, let's take a look at the actual Tic Tac Toe game that we loaded within the Toolkit.

The Tic Tac Toe Game

VIDEO: http://www.screencast.com/t/C9XAJ9ipbytb

You can go further in your documentation and actually send messages to programmers very precisely straight inside the source code. This way they can more effectively identify bug reports and change requests.

The Planning Tool

VIDEO: http://www.screencast.com/t/wtGNmcDVO

Helping with Unit Testing

The Toolkit can check if there are Unit Tests created in your source code. If they are not created yet, the Toolkit can help you create them.

VIDEO: http://www.screencast.com/t/innoj1ydQ

Tagging and Filtering the source code

The Toolkit can filter all the classes in the source code according to the tag that has been attributed to them at the Development phase; including Architecture, Main Feature and Entity Model.

VIDEO: http://www.screencast.com/t/VUwtdMS6

The Specification Portal

The Toolkit can automatically generated some documentation for your software totally based on the source code; like the Specification Portal and the User Manual.

VIDEO: http://www.screencast.com/t/xv1J98L35

Automatically generated User Manual

http://helpagile.appspot.com/?project=TicTacToe

VIDEO: http://www.screencast.com/t/5UmiTLHD

Software Metrics

INSTRUCTIONS

How the Toolkit works

DEMO VIDEO:

http://www.screencast.com/t/RwMporlpt

The Login page

- Enter http://sourceagile.appspot.com in your browser to access the Toolkit live demonstration.

- Type your Email at the Login form.

- Select the project Tic Tac Toe DEMO.

- You don’t need to type a password to access the Demo project.

- Click at the Log In button.

VIDEO: http://www.screencast.com/t/9yNXs1k79Pon

Loading the source code inside the Toolkit

- Select the Development button at the top of the Home page.

- Select the Source view at the top left corner.

- Select any Source File from the list that shows up at your left.

- The Source Code of the file will show up in the middle of the page.

VIDEO: http://www.screencast.com/t/gS0vg4IZb

Showing the source code in an easy-to-read way

- Still at the Development option, select the Feature View on your top left corner.

- Open the Feature Items that shows up on your left.

- Choose a specific item you want to see detailed.

- The Feature Description will show up at the center of the page.

- You can compare the Feature Description with the Source Code using the icons that show on your top right of the page.

VIDEO: http://www.screencast.com/t/l5YBpbVtDahR

Editing the documentation of the source code

- After selecting a specific feature in the Feature view, you can click on the Edit button on the top right of the page.

- Type any documentation you desire for your feature.

- Click on the Save button.

- The text you typed will be saved on the source code of this feature as a comment and stored back on the remote repository file.

VIDEO: http://www.screencast.com/t/VA1FCmzY4Gj

- Before proceeding, check the real Tic Tac Toe game working online, also in the Google Cloud.

http://tictactoe4j.appspot.com

- Play with the game until one player (X or O) wins.

- After you win, click one more time at the game grid so you can see the winning message show up.

VIDEO: http://www.screencast.com/t/C9XAJ9ipbytb

The Tic Tac Toe Game

- To send a request to the development team you can select the Feature you want in the Development View, and click on the button Edit on the top right of the page.

- Type any message you desire for your Feature.

- Select the To Do box on the top right of the Feature and them click the Save button.

- Now, select the Planning button on top of the page.

- You will see your new request showing up in the Task List.

VIDEO: http://www.screencast.com/t/wtGNmcDVO

The Planning Tool

- On the Development View, click on the specific class that you want to verify if there is a Unit Test created in the Toolkit.

- Then, click in the Test Icon at the rigth top of the page.

- If there is no Unit Test created a “Create a New Test Class” button will show at the center of the page and you can click on it to create your new Test class.

- When a Test class is created the description of it appears at the center of the page.

Helping with Unit Testing

VIDEO: http://www.screencast.com/t/innoj1ydQ

!!

THANK YOU !!

alline.oliveira@gmail.com

joonspoon@joonspoon.com

http://www.slideshare.net/allineoliveira/live-source-an-agile-toolkit

top related