Upload
alline-oliveira
View
2.130
Download
1
Tags:
Embed Size (px)
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.
Citation preview
Live Source
an AGILE TOOLKIT
Alline Watkins & June Clarke
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 !!
http://www.slideshare.net/allineoliveira/live-source-an-agile-toolkit