Software Architecture

Software Architecture has evolved from large systems into combinations of independent components that can interact with each other. This increases reliability, tunability, and adaptability of your ideas into an application that works.

Clients

Clients need an effective low-risk way of developing software predictable but updatable cost projection. We aim to provide an environment in which a team of developers can engage with a client. We use agile processes and work to 10-day sprint cycles, with a focus on delivery of new features completely integrated and tested at the end of each sprint, providing value to clients. More about clients.

Sprints

Initial sprints can either deliver a working but not necessarily final published staging website which can be made live when and if the client approves it. At the end of each sprint, a presentation of work completed on the staging site allows a separation for new work and accepted work to always be maintained. Only once the sprint has been accepted, can planning for the next sprint commence.

Components

Small projects and large, these days, are built from discrete components which run independently and can talk to each other. The Agile method enables software development to allow the addition of new functionality, atomically. Of course, there are limits as to what you should add to successful web business. You may continue adding to a project or preserve it and fork off your project into a new branch, you could even change its design or swap out functionality, stage your new site so the client can review it and decides when updates are approved.

Multi-site Configurations

Multi-domain interconnected sites are possible as well as load balancing servers. Our Cloud services are hosted in computer memory rather than shared hard

Agency Commission

We work with Recruitment intermediary businesses often. Agencies can connect with our members if they wish as members will invite other members to join a project, creating a natural synergy for client growth and developer connection to progress. Your project is owned by one developer. The Client and the Developer sign a contract, or we connect you via an agency. The client and developer utilise our services to make a connection. We only allow organic growth between developers, at least that is the goal.

Production Releases

Development of your new site may become frozen at the end of any sprint, it is up to the client. We do not start planning a new sprint until the current one has been completed and paid. A client may be asked to make a deposit for the first such payment with Remote Development. This can be relayed to the developer when we are happy to present their work. When the sprint is paid for, the client owns the code and can publish it from the repository.

The developer works for the client, maybe via an agency. We provide an environment and cloud server configuration. If for some reason your developer becomes unavailable, we can provide another or do it ourselves. Or if a client hires the developer, then they can continue the project as the client owns it.

Software Upgrades

When your website is finished, we tag a release version and then if you wanted to add, say at a later date, new software components, services or functionality, we work from a working version. Upgrades to a software package can be tricky

If these conditions are strictly met software upgrades become practical.

1. The software has a strong concept of where it is eventually going to be complete, even if this is later extended, there is always a goal.

2. Each component and revision must be atomic. That means that it works when it is released. Each step or feature is implemented before another is started. It is possible that certain components may be held back, it is the main developer’s responsibility to ensure each released component does work on the staging server and the code be recovered from our shared private repository.

It can then be augmented with interconnectivity. Each step must be completed before a new step starts. It is essential there are no conflicts as they are merged into a staging release. This requires Pull Requests and Feature Branches in the git process.

Developers

Developers probably have had at least five years or so recent PHP contracting experience. Developers – more information (requires registration).