Our Digital Project Methodology
A dynamic software company, we provide our innovative product stack to customers from a range of industries, across the globe. This includes finance, telecoms, insurance, utilities and more. To ensure the success of our projects, we use tried, tested, and trusted methodologies which are proven effective on projects large and small, and for customers of all scales and specialities.
Here our experts provide an insight into the digital project methodology we use and our approach to developing bespoke solutions to meet the needs of our customers.
What is digital project methodology?
Our digital project methodology is a set of procedures and principles that we use to deliver a project from the initial planning stages through to project execution.
For documentation we use Rational Unified Process (RUP) coupled with the V-Cycle, and for the implementation of projects we use combinations of Waterfall and Agile Scrum. Using these defined methodologies provides clear objectives and timeframes for both our team and our customers.
Proven effective our methodology can help reduce risk and take advantage of resources to help deliver a project effectively. We couple this methodology with clear communication and an intricate understanding of our customer’s business, to ensure every project we deliver has maximum benefit to our customer and their end product.
Methodologies used in documentation phase
Rational Unified Process
Rational Unified Process (RUP) is an agile software development methodology in which the lifecycle of a project is divided into four phases: Inception, Elaboration, Construction, and Transition.
Each of these phases has a core milestone which is established at the beginning of the project and must be met before moving onto the next phase. At each defined milestone we, alongside our customer, decide whether to continue with the project or extend the phase. The life cycle phases can be repeated, if needed, until the primary objectives are met. This allows us to efficiently manage changing requirements regardless of whether they arise from the customer or from the project work itself.
The aim of the RUP approach is to create a high-quality end product to specification, budget and timeframe.
During the Inception phase, our goal is to identify the customer’s specific product requirements and define the project scope.
Throughout this phase, we work closely with our customer to ensure that no requests have been missed, analysing and prioritising what they need.
Critical to the Rational Unified Process is the development of documentation. The Inception phase is documented by the production of the following artefacts:
- Business case
- Requirements spreadsheet with MuSCoW (Must, Should, Could, Want)
- Roles and responsibilities outline
- Meetings schedule
- User acceptance tests
This phase ends when the requirements have been created and approved by our customer.
During the Elaboration phase, we explore our customer’s business requirements in more detail. Use cases are used to explore these requirements. These use cases are then applied to drive the solution design. Often the findings during this phase are fed back into the requirements spreadsheet creating during the Inception phase.
This phase is documented by the production of the following artefacts:
- HLD (High Level Design)
- TOM (Target Operating Model)
- Execution plan
- Use cases
- Interface catalogue
- Designs (both wireframes and sketch)
- Functional and integration tests
In addition, the following documents may be updated during the elaboration phase: requirements spreadsheet, TOM, interface catalogue, and system integration testing.
The Elaboration phase ends when use cases and designs are finalised and approved.
During the Construction phase, the development takes place. At Separate Reality, this is where we use the Agile Scrum and Waterfall development methodologies, explored in more detail later in this article.
The artefacts created during this phase are the actual software that makes up the solution along with the unit tests.
The following documents may also be updated during this phase:
- Interface catalogue
- Designs (both wireframes and sketch)
- Functional and integration tests
At the end of the Construction phase, which is when the development is complete, the solution is ready for functional and integration testing, as defined in the Elaboration phase.
During the Transition phase, the solution is put through rigorous functional, integration and user acceptance testing. This also includes a stabilisation period following a soft launch, where systems are monitored to identify any issues and customer feedback is captured.
In addition, weekly or twice-weekly triage calls are conducted to discuss tickets raised. During these calls we fix any identified bugs – providing a rapid response to any problems raised.
The test documentation which is created during earlier phases is used to verify if everything is working as desired, and that the product meets the agreed business requirements. Specifically, the functional and integration tests (Elaboration phase) and the user acceptance tests (Inception phase).
Once the full range of testing is complete and approved by our customer and the stabilisation period is complete, the solution is ready for production.
The V-Cycle, named after the shape it takes, is a project management methodology which is delivered in two phases, one for each stem of the V – as demonstrated below. One stem of the V is a descending phase, which is based on the need expressed by the customer, and the second stem is an ascending phase which represents the finished product and the verification of its quality.
The V-Cycle model prioritises traceability between the specification and development phases of the project, as well as the testing and delivery phases. The traceability, making sure all artefacts have a test case, is documented in the specification and development phases. For example, acceptance testing is executed using the acceptance tests written during the requirement analysis phase.
RUP and V-Cycle overlap work in synchronicity:
- The business modelling and requirements gathering (V-Cycle) overlays with the Inception phase (RUP).
- The software requirements and high-level design (V-Cycle) overlaps with Elaboration (RUP).
- The code implementation and unit testing (V-Cycle) are done as part the Construction phase (RUP).
- The testing (V-Cycle) overlaps with the Transition phase (RUP).
Methodologies used in development phase
A form of agile methodology, Scrum is our chosen approach for front-end development projects as it allows for adaptability, innovation, and continuous quality improvement.
What sets Scrum apart from other agile methods is that the project team consists of two extra roles, a Product Owner and a Scrum Master. The Product Owner ensures the deliverables match the agreed designs. The Scrum Master ensures the project remains on track.
A typical Scrum methodology consists of five events:
- Sprint Planning – This is the planning stage of the Scrum methodology. To start a Scrum process, the Product Owner creates a Product Backlog, a list of desirables for the software/product. During this phase the Product Owner and the developers determine which items from the Product Backlog are added to the sprint, based on value and importance.
- Daily Scrum – A daily meeting to review progress and maintain velocity.
- Sprint Review – The Sprint Review is externally focused, in which the product/deliverables are presented to the client and work-to-date is reviewed against the criterion defined at the beginning of the project.
- Sprint Retrospective – The Sprint Retrospective is internally focused, reviewing the processes in place and means to improve efficiency.
- The Sprint – Scrum relies on incremental development with each iteration consisting of short sprints. The Sprint is a set amount of time the team has to deliver its work, typically two to four weeks. The aim of each Sprint is to develop the most critical software features and ultimately deliver a viable final product. At the end of the Sprint the team reviews their progress, presents the product to the client, and reviews successes and areas for improvement for the next Sprint. The cycle then repeats as needed.
The agile Scrum methodology focuses on a cyclical model consisting of the following phases: design, development, feedback, and iteration.
This approach allows us to be flexible and reactive to change throughout the process, ensuring the end product meets our customer’s specific requirements and is of the highest quality.
A structured and linear process, waterfall is our preferred methodology for pure integration activities. Driven by Kanban, our waterfall methodology requires real-time communication of capacity and full transparency of work.
At the beginning of each project, we clearly define the customer’s project requirements, as well as the stages of the project. When the work commences clear criterion need to be met for the project to move from one phase to the next, with each phase reliant on the deliverables of the previous phase. A more rigid process than Scrum, all steps taken in waterfall are in line with the end goal and deadline set at the beginning of the project, making it our preferred methodology for exclusive integration projects.
Below are the typically defined stages of one of our projects using the waterfall methodology.
Your digital transformation partner
At Separate Reality, we pride ourselves on being a trusted and experienced digital solutions partner, therefore our support doesn’t need to end when a project is complete. To ensure our customer’s systems perform optimally at all times, we also offer comprehensive in-life product support and maintenance. This includes, but is by no means limited to, the creation of a client support desk, in-life feature requests, and specialist consultancy services.
To find out more about our digital project methodology or how our product stack can benefit your business, please contact our team of experts.