How do I launch a Software Startup Development

So you are a stage were you have solidified your Idea and concept. You have formed your team and you have have pitched your idea to a audience and/or to a mentor. You have done your market survey or research and now are ready to start working on the your product and bring it to life-"Online"

You now need a plan to execute your project and you can do it in 3 steps.

Don't keep a deadline on the Release, just plan your iteration and keep on track for your current Iterations deliverables.

User Stories

There a numerous online content on User Stories. A good User Story should have enough information for a developer to pick up the Item and start working on it. A one liner User Story or a line like "Just implement the Login like how it works in Facebook" is not enough and does not help the developer under the full scope of what you are trying to implement.

Example
  • User Login - The User must be able to login using his Email and password. if email id and or password is not found then throw a User not found error and display an error message. If the Login is successful give User access to the website and redirect the User to User Home Page. Lock the account after 5 unsuccessful logins.
    Priority - High
    Business Value - High


  • The User must be able to register at the acme.com. The website will collect email id, first name, last name, password, confirm password and zip code. The email should be unique to the system. System validations
    • Standard email validation should
    • First name should be alpha only not mandatory
    • Last name should be alpha only not mandatory
    • Password should be 6 character long and should have 1 special character

    Priority - Medium
    Business Value - High


  • Forgot Password - The user must be to click a link and enter email id to reset their password. The system must send an email to the User with a link or temporary password which the user can use to reset the password and login in the system.
    Priority - High
    Business Value - Low(All the Initial User will be test users they can call us to reset their password)

Iteration Modeling

Read about Iteration. Make sure to pick up an Iteration cycle, These 3 are the best time cycle used by the Industry - 2 weeks, 3 weeks or 4 weeks) Make sure you have all your User Stories ordered by priority and Business Value. . Iteration Modeling is simply the science of picking these User Stories and allocating them to the an Iteration.

Example - Iteration Cycle for 2 weeks
  • Iteration 1(from 1st to 12th)
    • User Login
    • The User be able to login


Modeling an Agile Iteration

When you decide to use Lean principles to develop your startup project, your team decide how much time are you going to take to execute a set goal. Typically for a smaller size project it is 2 weeks and for large size project 4 weeks again these are are not set in stone and you can chose a time frame which works best with your team and project.

Your Project should begin with a list of Items to work on otherwise called as Backlog. Read this to find out how to Jump Start your Project
Once you have decided your time frame (let's says for the benefit of this blog 2 weeks) Typically every Iteration begins with a list of Items to work on , these can be new Items, Enhancement, Bugs and Other Changes to the System.

The modeling for an Iteration is critical at this stage to decide what all items can be picked up in current Iteration.

The modeling exercise will help your team explore through the detailed requirements and design and help you team to run through an iteration in a Agile manner. The modeling exercise help the team to focus on these Area.
  • Drill down to the detailed requirement.
  • Formulate accurate estimates.
  • Sets the roadmap for an Iteration.
  • Helps Test Driven development.
  • More information can be found here

    http://agilemodeling.com/essays/iterationModeling.htm
    https://en.wikipedia.org/wiki/Iteration

    Test Driven Development

    Agile development model promotes test driven development and hence places a large part of the quality of the product on the developer. In a test driven development the developers write Unit test modules to cover the code that has been written or modified.The basic facet of Agile encourages the team to test early and test the code often. The Teams use various tool like Junit to provide code coverage.To provide effective testing during development you need to have the test case written in parallel to the requirement.

    Agile Test driven development

    1. Test early and test as often as possible.
    2. About 30% of developer time should be spent on writting Unit Test modules and reviewing Test cases.
    3. Create test case as early as possible, preferably before the Iteration Modeling takes place within the team .
    4. Effective Testcase management will ensure proper code coverage.

    Some Test tools that will help in your Development and Testing

    1. Runscope
    2. Rest Assured
    3. JMeter

    More Information

    http://agiledata.org/essays/tdd.html
    http://theleanstartup.com/principles


    Retrospective Meeting

    What

    This is meeting which you will host at the end of every Iteration/Development cycle to understand

    • What are you doing wrong?
    • What are you doing right?
    • How can you improve your next Iteration?

    Why

    Well to tell you the truth I have really don't have any solid logic why you should have a retrospective meeting. Should you wait till the end of of the development cycle to talk about all the issue? How open should you be? This is where team play comes? If you have co-founders as developers this is when you will know how strong is your understanding of your team's skill, these meeting will make or break your project.

    How

    Just huddle up, thats it. Just make a informal group in a meeting room get all the personnel involved in the project in a meeting room and just go clockwise or anti clockwise and take turn in listing what you think you are doing right, you were doing wrong and what you can do to improve the Development cycle. Documents the stuff your team just discussed and then pass out the action items in a memo.

    Just Something Extra.....

    This meeting is a good time to pass out credits and also the time to take out all resentments.