Microservices

We have considerable experience in designing, building and deploying microservice architecture solutions for our clients. This modern approach to building software solutions provides a multitude of advantages over the traditional monolith deployment.

  • Componentization via Services
  • Organized around Business Capabilities
  • Products not Projects
  • Smart endpoints and dumb pipes
  • Decentralized Governance
  • Decentralized Data Management
  • Infrastructure Automation
  • Design for failure
  • Evolutionary Design
Comments Off on Microservices

Continuous Delivery/Integration

Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early. By integrating regularly, you can detect errors quickly, and locate them more easily.

Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug fixes and experiments—into production, or into the hands of users, safely and quickly in a sustainable way. We achieve all this by ensuring our code is always in a deployable state, even in the face of teams of thousands of developers making changes on a daily basis.

A combination of working practice, design and tooling towards an autonomous route to realising your product but recognising that; just as data changes so do features and behaviours in a continuous flow. We can help you realise that goal without the pain.

Comments Off on Continuous Delivery/Integration

Agile Project Management Practitioner

At Oakdale Software we approach our projects with the Agile project management and development approach which allows us to deliver quality software on schedule, to budget whilst allowing the client to enjoy full visibility of our progress throughout the project’s life-cycle.

The concepts of release and iteration allow the project team to get the right mix of feedback, frequent delivery, reasonable planning time horizons, and protection from changes.

Core project focus methodology items :

  • Feature Based Planning

    Instead of organising work based on the tasks to be completed (for example, analysis, design, development, deployment, testing, and implementation) our agile planning organises work based on feature delivery.

    The team determines which features will be delivered in which release, and identifies when those release points occur.

  • Performance tracking

    Tracking performance to the feature based plan by keeping a close eye on completed features also provides a more reliable and understandable measure of progress for all of the stakeholders than task completion.

  • Iterative planning

    Work is organised into short periods called iterations or sprints. During those iterations, all of the necessary work to take features from an idea to a working product is completed, without artificial dependencies that prevent work from being done in parallel.

  • User stories

    Conducted with the project team including project stakeholders in order to get a well thought out feature that provides value to the project.

  • Release planning

    Release planning starts by identifying the features to deliver in the project and we use user stories to create the feature list based on functionality needed to support each given business process.

  • Continuous Testing

    Feature testing starts at the earliest opportunity and is a continuous feature of the project to allow user feedback to modify feature set, should it be required at the earliest juncture giving maximum progress visibility.

Comments Off on Agile Project Management Practitioner

Legacy System
Re-engineering

Many consultancies will try and sell your company expensive replacement systems you don’t need and can hardly afford. Oakdale Software can provide you with the expertise to re-evaluate your architecture, clean your code-base, fix bugs and tune your performance to save you time and money.

We can provide :

  • Architectural analysis.
  • Code review and re-factoring.
  • Bug fixing.
  • Migration to new technologies.
  • New feature implementation.
Comments Off on Legacy System
Re-engineering