If you like this presentation – show it...
The $6K Software Startup How to Launch your Startup on a Budget
Case Study TrainAsYouGo.com – V1 cloud training platform developed for <$6k All development was outsourced through ELance Learning Self Service Platform focused on online help, FAQs, Ask a Question and Customer Notifications
About Me – Crystal Taggart, MBA Technologist and Entrepreneur CEO and Founder TrainAsYouGo.com 18 years of design, development, leadership experience
Identify your Business Model How does your company make money? Who are competitors in the market? What is the target market? Before beginning – verify that your product isn’t saturated, your product is differentiated and there’s not a ton of ‘free’ competitors in this space.
Common Business Models
The Software Development Process
Prototyping Tools Axure RP Pro Recommended http://axure.com Easy to use, looks like an app but doesn’t require coding Creates documents that can be sent to a development team (Pro is worth it!) Create.ly Allows you to create wireframes Easy to use Doesn’t create documentation (must be done in Word or another tool)
Two Rules when Designing Software Developers are smart, but they don’t understand your business and can’t read your mind. If you want it coded, write it down.
CRUD – Where the ‘magic’ happens For any entity (or item) in the system, remember CRUD: Create: How is the data created Read: How does someone view or search for the data Update: How does someone update data (and WHO can update the data) Delete: How does someone delete the data (or CAN they delete?)
Testing Your Business Model The Lean Startup Methodology is about building the smallest possible product to test the market. Don’t waste money on ideas that aren’t profitable.
Requirements Requirements in ‘tech-speak’ is how the developers know what to code. These contain all the screen definitions, error messages, and any non-functional requirements (such as response time or security requirements)
Documenting Requirements Create a swimlane with the high-level process This gives developers a summary view of how it works Create a functional prototype (again, we recommend Axure RP Pro) Document the screen rules (items on the form and what their requirements are) Document business rules (what are the rules for the application, i.e. once the data is saved on the screen, what happens next)
Technical Specifications Include Non-Functional requirements Browser versions, App versions, Security considerations, page speed, responsive, email, expected number of users Define your technology stack Database – what technology will store your data UI/Middle Tier – what technology will be used to display/capture the data
Database Pros/Cons Oracle: Scalable but expensive Microsoft SQL server: Scalable but expensive Microsoft SQL express: Free but only stores 10 GB MySQL: free and scalable Mongo/Hadoop: Free “Big Data” databases
Development Languages Pros/Cons Not an all-inclusive list I’m not starting a Holy War on the best development language) – only focused on three commonly used languages Technically – Any language can do pretty much anything you need it to
PHP Pros Cons Cheap hosting on Linux Free IDE Hard to find quality developers in a sea of hacks
.Net Pros Cons Generally a talented development pool Lots of training and resources available from Microsoft More expensive developers than other technologies Have to pay for Visual Studio IDE
Java Pros Cons Good pool of developers Many free tools Very open source, which means it’s hard to find the ‘right’ libraries that are commonly used/supported by the community
Hosting/Source Control Ask your developers to check in their code into a third-party source control system such as Github Use a scalable hosting service such as Amazon Web Services or Azure
Documenting Document your database model Document your system architecture Document any third-party integrations required (i.e. for payment) Document major features in the system that aren’t otherwise covered i.e. scheduled jobs that send information
Hiring a Developer Select your top 3 companies using Elance or Odesk Provide a summary of the system, the technology requirements, number of screens, and any third-party integrations to get an initial estimate Once you select the top 3, get an NDA signed and provide the detailed specifications and ask for a fixed-bid estimate and team structure
Managing the Project It won’t happen unless you follow-up regularly with the team Set up weekly meetings (at a minimum) to review status and progress
WordPress setup Use WordPress – it’s the easiest and best website content management system around Find a hosting provider such as HostGator or Bluehost who have tools that automatically install WordPress for you
Wordpress – Select a Theme Buy a theme that provides the look and feel for your site and customize it for your look and feel
Wordpress – Clean it up Delete Sample Pages/Posts Update the security (out of the gate everyone has comment access to your site) Delete Plugins that you don’t need Add useful plugins such as Yoast SEO, Google Analytics, Revolution Slider
Testing your software Scalability/Load Testing – how many users does the site support Stress Testing – how many users until it crashes and burns UAT testing – pre-deployment testing with actual users Beta Testing – testing with initial users
Budget (My Actual Budget)
Helpful resources Learn more in the book The $6k Startup on Amazon.com http://steveblank.com - king of lean startup http://atlas-innovations.com - consulting services http://trainasyougo.com - support and training Content Management System for your software solution http://startupweekend.org/ - launch a startup in a weekend email@example.com