aranyainc's picture
From aranyainc rss RSS  subscribe Subscribe

Documentation We don't need not stinkin' Documentation! 

First, let's consider one very important thing about documentation: it is an INVESTMENT, not a cost.

 

 
 
Tags:  database application development  Java Development  Web Application Development  Android development 
Views:  133
Published:  March 13, 2012
 
0
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
Hire Android Web Developer

Hire Android Web Developer

From: SteveSmith405
Views: 441 Comments: 0
Android Web Development - Android Web Application Developer Company India provides Android Web Development, Hire android web developer for Android Web Application Development/Programming Services.
 
Google Android OS

Google Android OS

From: SteveSmith405
Views: 377 Comments: 0
Android is a Linux kernel based mobile operating system by Google.Used for Rich Mobile Applications Development.Android allows java based environment for the mobile application development. MADI provides Android Application Development, Android Game (more)

 
Android Application

Android Application

From: SteveSmith405
Views: 651 Comments: 0
Android Application Development India - Android App Development Company provides Android application development services by expert Android App developer.Hire Android Application developer from us for custom Google Android Application Development, A (more)

 
Hire Android Web Developers from AADI

Hire Android Web Developers from AADI

From: SteveSmith405
Views: 298 Comments: 0
Android Web Development - Android Web Application Developer Company India provides Android Web Development, Android Web Application Development/Programming Services.

 
Android Web Development from AADI

Android Web Development from AADI

From: SteveSmith405
Views: 581 Comments: 0
Android Web Development - Android Web Application Developer Company India provides Android Web Development, Android Web Application Development/Programming Services.
 
Android Application development

Android Application development

From: Jacobdixon
Views: 153 Comments: 0
Best Application development for Android based hand-held devices is available here at AADI – Android Application development India. We endow with quality Android apps development services with the power of official Android SDK (software development (more)

 
Android Web Development Services

Android Web Development Services

From: SteveSmith405
Views: 714 Comments: 0
Android Web Development - Android Web Application Developer Company India provides Android Web Development, Android Web Application Development/Programming Services.
 
See all 
 
More from this user
Things to Remember and Consider Before Choosing a Programming Language

Things to Remember and Consider Before Choosing a Programming Language

From: aranyainc
Views: 140
Comments: 0

Custom Software development in Kansas City– Are you choosing the right developer company?

Custom Software development in Kansas City– Are you choosing the right developer company?

From: aranyainc
Views: 69
Comments: 0

Why to Integrate Custom Software inKansas Cityfor Your Business?

Why to Integrate Custom Software inKansas Cityfor Your Business?

From: aranyainc
Views: 57
Comments: 0

The Legacy of Flash - How will it Affect You?

The Legacy of Flash - How will it Affect You?

From: aranyainc
Views: 94
Comments: 0

Get Owl’s Wisdom - Get Android Development Team

Get Owl’s Wisdom - Get Android Development Team

From: aranyainc
Views: 572
Comments: 0

How to Dominate the Field of Web Application and Custom Software Development

How to Dominate the Field of Web Application and Custom Software Development

From: aranyainc
Views: 20
Comments: 0

See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
 
 
Notes:
 
Slide 1: Documentation? We don't need not stinkin' Documentation! I hear it all too frequently. "Documentation takes too long" "Documentation costs too much money" "Our project is short, we don't have time for documentation" "We're not big enough to deal with the overhead of documentation" First, let's consider one very important thing about documentation: it is an INVESTMENT, not a cost. What does that mean? The time you spend on documentation, if spent well, will save you more time and money than what you spend on creating the documentation. This is true for all but the very, very small projects. And when I say small, I mean under about 10 hours. So in short, if you put together good documentation, you SAVE yourself time and money AND the end product created is what you were expecting. First, we need to define what it means to have "good documentation". * Minimal - Use the smallest amount of pages having a maximal amount of information. This can be a little tricky and may take some experimentation. What usually turns people off from documentation is that they think it must be thorough and perfect. It doesn't! It should be short, sweet and to the point which means you spend less time on it and the team spends less time looking it over. * Lots of pictures - As always, a picture paints a thousand words. On top of that, it can convey that thousand words at a glance. This reduces the amount of time people spend looking over and understanding what you wrote. And the picture doesn't need to be pretty, it needs to be simple and to the point. * Very few words - Words take time to read. We only add text when the picture cannot quickly and clearly explain the requirements. Then we keep the text very short and usually add it as notes to the visuals created. * Doesn't need to be fancy - You can create white board drawings, pencil and paper sketches or put it into the computer with Gliffy / Visio. We usually start by sketching out on a white board while discussing the requirements with the client. This speeds up the discussion (less time spent defining the project) and then just take pictures with our
Slide 2: phone. Wow, documentation without having to spend additional time documenting! We formalize in the computer only when the project is large or we feel it will start saving time so we don't have to redraw things because of little tweaks. * Must make sense to a person other than the one who wrote the documentation Before unleashing the build team, run the documentation by everyone on the team including the developer, end user and client. This will help you find flaws in the design before sinking time and money into building something that won't work. It also helps you fill in the information you may have forgotten. * Follow industry standards that the team understands - Use notation, vocabulary, drawing and symbols that are common place. This will help reduce the time you have to spend explaining to people what you mean in the documentation. It will also help everyone speak the same language when communicating about the project which eliminates confusion. Good documentation should be something you can put together quickly and easily. It should be something your team easily understands. And it needs to answer at least 90% of the questions you typically have during the build of the project. When building software, the minimum documentation you needs is: * Data diagram - This is an absolute must for the developer and also helps to ensure a great firm foundation for your software project. Whether in memory or in a database, your data is the foundation of your application. Without a firm foundation the software will fall down like a building built on a sink hole. * Screen flows - This diagram gives you a full inventory of all screens in your application and how each one flows into the next. We also like to include brief notes about the business logic as you go through the system. This reduces how many pages of documentation you have and increases how much information you can pack into each page. * Mock-Ups - Mock-ups show what is on each screen, how it lays out and has brief notes on what kind of validation and user interaction may occur. Developers often work from one screen to the next and having the notes right there on the drawing of the screen helps ensure they don't miss important functionality as they build. Additional optional documentation: * Sample data - This is great in spreadsheet format. Sample data quickly shows a developer what to expect. From user input to data output, having sample data reduces build time and gives real concrete data for the developer to test with which reduces bugs and time spent debugging the system. * Test cases - Test cases lay out what a user with do in the system, what they will enter
Slide 3: in and how the system should respond. It includes both normal situations as well as when the user interacts with the system incorrectly. We have to be careful with this one. All too often people preparing documentation go a little overboard here and try to add a test case for everything. You should only supply test cases when there are special cases a developer and test may not consider or when the functionality of that part of generaldatabase application development is complex. * Process flow diagram - Usually your screen flows are enough but sometimes there is an overall process as duties are handed from one person to the next that are not visually demonstrated in the screen flows. An addition of a process flow diagram helps developers and testers see how the system is actually going to be used. We typically use an industry standard process flow diagram or swim lines. What documentation buys you: * Saves you time having to communicate with the team about what you want so you can hand the work off and get back to your job and not have to micro-manage the project. * Gives you a visual of what the final application will do. This aids in usability testing and finding potential problems with how the system flows before you sink a lot of time into the build of an application that has design flaws. It also illicits better feedback from users so design changes can be made before development moves in the wrong direction. * Helps the development team dive in and start coding. The developers spend very little time scratching their heads and wondering what you meant. The development moves quickly and smoothly. Without documentation the developers have to spend a lot of time thinking about what to do or have to frequently stop and ask for clarity which slows them and the whole project down. * Increases the success rate by ensuring the application built is what you expected. * You are not truck sensitive - if someone leaves, you have the knowledge in the documentation so new team members can get up to speed on the project quickly and easily which saves you time and money in the long run. Most people just hate putting together documentation. They find it boring and tedious. They would instead rather just jump in and start working furiously. It feels like they are getting things done. In reality they are spending much longer than they should and the products they deliver are not as accurate to the vision of the client as they could be. This leads to longer development times and higher costs, whether it’s Java Development or Web Application Development. But most people don't see this added cost of time and money. Why not? Because they don't try it both ways to see what works.
Slide 4: Also, most people think documentation means writing a book. They prefer writing no documentation (one extreme) as opposed to writing 100+ pages of detailed specifications (the opposite extreme). What we promote is a healthy balance between these two extremes: writing the least amount of documentation to convey the greatest amount of information. On small 1 - 2 week projects, the documentation may only take an hour or two to assemble. It isn't hard to save an hour or two just in not having to shoot emails back and forth and avoid meetings to clarify what we want. Typically the investment of time in the documentation is between 2% and 10% of the time of the build. I commonly see this save 25% to 50% on the build itself. The savings can be very big, even on small projects. So before you start your next project, ask yourself, do you want to turn your back on savings? Do you want to take more time getting it done? Do you want the final product to be less than you were hoping it could be? If so, skip the documentation. But if you want it done faster, better and at a lower cost, get that simple, minimalist documentation together. And if you would like help getting the biggest bang for your buck for Android development or any development, let us know. We would love to help!

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location