Noodle Tools – Technical Debt Remediation

April 29, 2019

5 minutes

NoodleTools - Forgeahead Client
Table of Contents

 

The Client:

A US-based company, NoodleTools provides innovative online bibliography software which supports students, support teachers and librarians throughout the entire research process. Their online research management platform promotes critical thinking and authentic research. Students stay organized as they evaluate information, build accurate citations, archive source material, take notes, outline topics, and prepare to write. In contrast to an auto-cite, auto-evaluate product, the platform supports students to engage deeply in research and produce original work. The platform is also designed with online student privacy in mind. NoodleBib, the flagship product from NoodleTools, is an easy to use web-based software to extract and organize notes from various sources to build a working bibliography. It has tools that help one think, assess, synthesize and complete a polished source list that accurately reflects the latest editions and interpretations of the MLA Handbook, APA Publication Manual or Turabian’s Manual for Writers.

 

The Challenges:

NoodleTools wanted to take to market some new ideas generated for their bibliography software. Further, it wanted to extend the features in the existing online bibliography software to progress it to the next level of maturity. However, there were several challenges in implementing the new feature additions efficiently as well as in a reasonable timeframe to support the business scenario:

  • The complex, monolithic design of the system was not well-suited to agile development processes that were needed to meet the fast-paced and dynamic nature of the business scenario requirements.)
  • Deferred upgrades to technology were leading to an accumulation of technical debt in the product and this was impacting the overall system maintainability & performance.
  • With a rapidly increasing user base, scalability issues were translating into a loss of business, decreased customer engagement and reduced conversion rates.
  • Difficulty in the automation of deployment scripts was leading to incurring of more technical debt.)
  • Excessive time was being consumed in release testing – with the number of browsers, devices, and scripts growing with each test sprint, there were significant delays in the release cycle, leading to loss of time-to-market.
  • Lack of automated tests meant more snags in the final product– automated testing and better test coverage were needed to ensure a bug-free product.

To help deal with these challenges and take the product to the next level, NoodleTools chose Forgeahead as their preferred partner for Product Development and Testing. With proven expertise in Agile methodologies, Cloud and DevOps technologies, Forgeahead was the ideal choice for this engagement and had demonstrated the ability to manage a migration from the legacy-based web application to an SOA-based cloud platform with minimal impact on ongoing business.

Forgeahead Solution:

Forgeahead spread the engagement over two phases: Phase I – Ideation to Launch: The first phase involved transforming the customer concept for the product into a tangible product with relevant features. Not only did Forgeahead assist with the implementation of new features, but also overcome some limitations of the existing product. Phase II – Launch to Maturity:: The features which were built in phase I were rigorously tested and merged with the existing NoodleBib product. During this process, Forgeahead also developed some features for the integrated version of the product. Additionally, Forgeahead also integrated the NoodleTools product with existing popular products such as iCyte Forgeahead’s contribution included:

  • Complete ownership of product development & remediation of technical debt
  • Architecture design and application development using open source technologies.
  • Lightweight and responsive User Interface.
  • Automated deployment on AWS cloud using best of DevOps techniques.
  • Auto-scaling of infrastructure for better availability of the application.
  • Varied testing services to maintain overall quality.
  • 24X7 production support
  • Rapid development through adopting agile methodologies

 

Key features of our solution implementation:

  • Re-architecting the GUI using lightweight technology stack with the introduction of RESTful API to make it more responsive and decoupled, in order to support cross-platform devices and browsers.
  • Detection and remediation of technical debt that was incurred by the product. This was done by inspection, static code analysis, reviewing pull requests and monitoring operations during execution.
  • CI/CD pipelines to ensure continuous testing and adherence to standard best practices. .
  • Automated deployments and standardized production environments, to make the deployments predictable and more stable. This also gives teams more time to add value to the product.
  • API & UI automation for maximum test coverage. .
  • Cost-effective approach – scaling the infrastructure depending on the load and traffic.

 

Technology Stack:

  • Cloud computing – application deployment platform.
  • Python (Flask framework), PHP.
  • MySQL, SQL Alchemy, DynamoDB
  • HTML5, CSS3, JavaScript, JQuery and various plugins
  • BackboneJS, BootstrapJS
  • Elastic Search, Redis
  • Office 365, Clever, Google API librarys
  • Manual Testing
  • Selenium, Postman, Newman, JMeters
  • Git, Chef, Docker
  • Jira, Bitbucket, Fisheye, Confluence

 

Business Impact:

  • 12 million users supported; 3 million concurrent users supported through cloud implementation
  • SOA architecture makes the product a high-availability and high-scalability solution.
  • RESTful application platform makes it maintainable, flexible and very loosely coupled.
  • Responsive and user-friendly UI for better browser and platform compatibility.
  • Leverages best-of-breed CDN techniques for better application performance.
  • Continuous integration and Continuous Testing ensure frictionless & continuous deployments to production, thus bringing significant savings in time-to-market.

 

Forgeahead Solutions Inc.:

Forgeahead Solutions offers a comprehensive suite of services to software product companies across all stages in the product lifecycle from product ideation to obsolescence. Based out of Pune, India, we have a global footprint with offices in Texas and California. Established in 1999 as SNS Technologies, Forgeahead has a proven track record in delivering business value to customers