Speeding up software prototype development with code re-use

One of the most common software development tasks for me is the creation of a prototype. Prototypes can be seen as a kind of discardable software, the kind with short life cycle and a heavily restricted set of design goals.

I tend to create a prototype whenever I’ve recognized some part of the software as mission-critical and I’m unsure whether or not I’m able to implement it. Sometimes a prototype is needed as a proof-of-concept to ensure someone else. In any case, prototypes are used as tools to answer a research question.

Continue reading “Speeding up software prototype development with code re-use”

Meeting the business needs of software with Requirements Engineering

Long ago I worked for a software company which developed material and workflow analysis software for large cleaning and maintenance companies. One of their customers was a company responsible for cleaning and re-supplying aircraft between the flights at some busy airports. They needed software to enable supervisors to browse the task lists in real time, allowing operators to enter job assignments and track work progress.

When I got to the work, the client was already using the software created by the company I worked for. I took the initiative to talk with our client’s staff and raised their interest in further software development. We sketched out various functionalities the software might be developed to have in the future. Their interest towards the development matured and we agreed on a development project.

Continue reading “Meeting the business needs of software with Requirements Engineering”

Machine Learning predicts the likelihood of debt repayment

In 2014, the Data Analysis and Machine Learning Contest organizer Kaggle announced a contest to predict a loan applicant’s repayment based on their background information. Imperial College London hosted the competition and offered a large chart of anonymized financial data about the loan applications, applicants and their loan installments.

The aim of the competition was to create a program that would be best able to predict the applicant’s loan repayment based on his background information. A table of anonymized, unlabeled background information was made available to list details of all the repayments. In addition to the anonymization, data titles were omitted, so each column in the table listed information about some unstated variable of unknown purpose.

Continue reading “Machine Learning predicts the likelihood of debt repayment”