Supplementary Material to ”Software Engineering in Start-Up Companies: Analysis of 88 Experience Reports”
Total Page:16
File Type:pdf, Size:1020Kb
Supplementary material to "Software Engineering in Start-up Companies: Analysis of 88 Experience Reports" E. Klotins1, M. Unterkalmsteiner, T. Gorschek Blekinge Institute of Technology, SERL 1. Coding taxonomy The taxonomy is a combination of Software Engineering Body of Knowledge (denoted with SWEBOK) and several business related categories (denoted with BUSINESS). In the provided list we only describe the top level categories of SWEBOK. Lower level categories follow the same structure and numbering as presented in SWEBOK. SWEBOK 1 Software Requirements Engineering. - Activities regarding elici- tation, analysis, specification, and validation of software requirements as well as the management of requirements during the whole life cycle of the software product. SWEBOK 2 Software Design. - Activities to define the architecture, compo- nents, interfaces, and other characteristics of software. SWEBOK 3 Software Construction. - Activities regarding creation of working software through a combination of coding, verification, integration, testing and debugging. SWEBOK 4 Software Testing. - Activities to verify that software provides ex- pected behaviors. SWEBOK 5 Software Maintenance. - Post-release activities to ensure that the software continue working as expected and evolve along with changing operating environments and user requirements. SWEBOK 6 Software Configuration Management. - Activities regarding iden- tification and the configuration of a system at distinct points in time for the purpose of systematically controlling changes to the configuration and main- taining the integrity and traceability of the configuration. 1Corresponding author: Eriks Klotins, [email protected] Preprint submitted to Elsevier June 13, 2017 SWEBOK 7 Software Engineering Management. - Application of management activities | planning, coordinating, measuring, monitoring, controlling, and reporting to ensure that software products and software engineering services are delivered efficiently, effectively, and to the benefit of stakeholders. SWEBOK 8 Software Engineering Process. - Systematic activities accomplished by software engineers to develop, maintain, and operate software, such as re- quirements, design, construction, testing, configuration management, and other software engineering processes. SWEBOK 9 Software Engineering Models and Methods. - Engineering activities to impose structure on software engineering with the goal of making that activity systematic, repeatable, and ultimately more success-oriented. SWEBOK 10 Software Quality. - Activities to ensure that produced software satisfies stated and implied needs under specified conditions. SWEBOK 11 Software Engineering Professional Practice. - Knowledge, skills, and attitudes that software engineers must possess to practice software engi- neering in a professional, responsible, and ethical manner. SWEBOK 12 Software Engineering Economics. - Activities related to making decisions related to software engineering in a business context. SWEBOK 13 Computing Foundations. - Development and operational environ- ment in which software evolves and executes, e.g. hardware, operating system. SWEBOK 14 Mathematical Foundations. - Fundamental mathematical princi- ples underlaying computer programs, e.g. discrete algebra. SWEBOK 15 Engineering Foundations. - Fundamental engineering principles underlaying engineering process, e.g. experimentation, statistical analysis, root - cause analysis. BUSINESS 1 Develop Vision and Strategy. - Process of developing value propo- sition and strategy to deliver the value BUSINESS 2 Market and sell products and services. - Activities pertaining dis- covery of market opportunities, planning, selecting and using appropriate sales practices. Subcategories are Marketing (price, promotion and sales), Competi- tion, and Sales activities. BUSINESS 3 Manage Customer Service. - Activities pertaining relationships with customers after the sale. BUSINESS 4 Develop and manage human capital. - Activities to develop and manage human capital 2 BUSINESS 5 Manage financial resources. - activities of obtaining, budgeting and spend financial resources. Subcategories are Acquire capital, Manage cash flow, and liquidity. BUSINESS 6 Manage external relationships. - Activities regarding prospecting, establishing, maintaining and closing external relationships. Subcategories are Partnerships, and Takeover & merge activities. BUSINESS 7 Business assistance and training. - Referring to participation in activities such as mentor programs, business incubators and start-up accelera- tors BUSINESS 8 Legal structure and protection. - activities pertaining legal docu- ments and process of creating, maintaining and responding to them. 2. Examples of application of coding techniques 2.1. Provisional coding We use one of the reports (Case #14) to exemplify the provisional coding. Below is the full report and after each paragraph (chunk) we summarize codes describing the chunk. The codes are formatted to show Id#, category from the taxonomy, direction (positive, negative or unknown), and object of impact (business, product, or both). C14-1 :. This post is about my own startup (Disruptive Media) and how we pivoted and where it took us. I have split it into 3 parts, which all describe a specific phase in my company's life. I am not going to go too deeply into all the lessons learned, but instead focus on the story and leave the many lessons for coming posts. No relevant statements C14-2 :. In 2007 I founded Disruptive Media Ltd. together with my colleague Jarl Trnroos, who I know since the late 80's when we went to school together. Both of us have had programming as a hobby and written 2 computer games together back in 1998; one poker game and one labyrinth game. However, after that we have not had any experience working together until we founded our company. No relevant statements 3 C14-3 :. In 2006 I was playing around with lots of different ideas to found a company. One was an improvement of a private photosharing website Jarl had built a few years before as a hobby project. Jarl's website was used by all his friends and it was kind of used to document the life of our group of friends. All albums were group albums, usually created for crazy parties and other events. No relevant statements C14-4 :. More and more people were asking if they could use Jarl's website and the existing users seemed happy. Sadly, it was designed only for one private group of friends, where everyone could see all the albums, so it would not have scaled. Therefore, I proposed building an improved version of this, which would allow anyone to setup an own private gallery with group albums. The idea was not only to target groups of friends, but also sport teams and similar. No relevant statements C14-5 :. The idea grew in our minds for about half a year before we got started. I was still studying at TKK, which I had just continued after an over 2 year long adventure in the Finnish mobile game company Sumea, which during my time was acquired by Digital Chocolate. Jarl was also working, so there was little time for our own project, other than brainstorming ideas every now and then. At those days we had a third member in our team, who dropped off before summer, during which we had taken some time off to start hacking for real. No relevant statements C14-6 :. Our idea had changed a bit from the initial one. Our idea was now a service to document your life (or the story of your life) in a collaborative way with your friends. We had dropped the idea of groups, since there are no real boundaries between groups of friends. The idea was that any user can create events and invite their friends to these events, so that everyone can upload their photos to the same event. All these events a user belongs to, form the story of that user's life. 1 BUSINESS 1. Develop Vision and Strategy Unknown Both 4 C14-7 :. In addition to this, we had an innovative friend/contact list, where you became friends with anyone you had been to an event with. We thought it was a killer idea to quickly build up a social network that so many companies had tried to do but failed. No relevant statements C14-8 :. Early usability tests and interviews had revealed that some users would like to publicly share images from events. Events and pictures in them were private only to members of that event. So, we came up with another great invention that users could publish any events or images from their story on their public profile. This way, users who never took any photos could also share their story with the world. 1 SWEBOK 1.6.2 Prototyping Positive Product 2 SWEBOK 1.3 Requirements Elicitation Positive Product C14-9 :. The name of the service became PiX'n'Pals, after several long discussions. We would not have wanted to brand it with anything so tightly linked to pictures, but all good names for story, events, etc. were taken. Finally, we decided that since the service is going to be mainly about pictures in the beginning anyway, we can as well just go with name PiX'n'PaLs. If we manage to get a proof of concept, we are probably going to seek funding and probably even relaunch with a new brand. 1 BUSINESS 2.1 Development of a brand name Unknown Business C14-10 :. Our plan was to make money from selling print products, like photo books, from the photos. We also saw the photo book as a value adding feature that would attract even more users. Additionally, we were going to have ads and possibly premium accounts at some point. BUSINESS 2. Market and sell products and 1 Unknown Business services 5 C14-11 :. We should have concentrated on the core idea and launched a Minimum Viable Product (MVP) to test the concept, as we initially had planned even though we never had heard of the concept of an MVP. We kept building more features, since we always felt that the service needs X because Flickr has it too or he/she said he needs that feature. 1 SWEBOK 1.4.4 Requirements Negotiation Negative Product SWEBOK 6.6 Software Release Management 2 Negative Both and Delivery C14-12 :. In addition to all the features, we also felt that we needed an FAQ, long help texts, take a tour, etc.