What is a successful project?
A successful project for a developer might mean something different compared to a project-manager and again quite different for the client.
Since our focus is on the client, a successful project for SSW means every client receives what they are expecting, on time, and for the estimated amount of money.
Project managers define this as On Time, On Scope, and On Budget.
"A successful project is where everyone involved is happy with the final outcome."
What is it that makes a good software development consultancy? What sets one company completely above the other? What makes a project completely successful?
The promise of a successful project is something we all work harder to achieve, but working harder is not the answer. Software companies need to work smarter before, during, and after development, to ensure that the client gets not only what they want, but what they need.
There are real gurus in this field like Joel Spolsky, Kent Beck, Tom DeMarco, and Timothy Lister. We like what they say, but we also reckon they miss a few things as well - everyone has their own ideas. These are the rules we run by every day. We believe they can help every software developer and team manager to deliver better code and a better end product.
If you need to do something more than once, then there should be a standard for it. At the heart of our philosophy on creating rules and standards is the idea of consistency.
Whenever you're doing something more than once there should be a clear procedure. We call them “standards” or “rules”. That means that there should be lots of standards.
Standards should not be followed blindly. They should always help the critical thinking process, but never replace it. Aim for continual improvement.
There are pros and cons to having standards:
We all want work that feels meaningful. When you focus on Autonomy, Mastery, and Purpose, you create an environment where people love what they do, grow their skills, and feel proud of their contribution. These three pillars not only motivate individuals but also build stronger, happier teams.
Projects often fail because clients think suppliers under-deliver and over-charge. The client and the supplier have different expectations about the goals of the project. This difference of opinion often leads to a project's absolute failure.
If you still need help, visit our Scrum consulting page and book in a consultant.
SSW's Rules to Better Scrum using Azure DevOps allows businesses to address their most important challenges first and respond quickly to change. Our rules advocate software consultants working on-site, or on the phone, so long as there is close consultation with business users, with the goal to become integrated members of the client's team.
The answer to this question can make or break contracts. We think that it's such a fundamental issue it has to be captured clearly. This is how we strictly define a bug.
Just like a car, applications need servicing and tuning every now and then to stay in top condition. They might need alterations to deal with new business problems, or just tuning to increase efficiency.

The first problem with specs is that nobody writes them. Joel Spolsky says:
> "Writing specs is like flossing: everyone agrees that it's a good thing, but nobody does it". > > - Joel Spolsky, The Joel Test: 12 Steps to Better Code
The second problem is that when people do write them, they try and spec the whole project, spending months detailing every Use Case, Business Rule, and Process Flow Diagram. The client spends lots of money and sees no real progress, and the requirements change and the process begins again.
Developers often arrive at client meetings armed with a bunch of impressive software design and architecture documents. When they present these materials to the client, there is often confusion or difficulty in grasping the content. Even worse, walls of text may not be read.
Storyboarding solves this pain by giving the client a visual representation of requirements. This representation helps the client 'feel' the value and prevents miscommunications as the product is developed.

In every industry Market Research is conducted before a product is developed. Why is IT any different?
Doing Market Research focuses the product on the right set of people so you can satisfy their needs. If you can't connect the dots between the work you do and how it helps the customer, consider investing your time elsewhere. Market Research bridges the gap between the techies and the users.
- Do you understand the value of consistency?
- Do you know rules are made for the guidance of wise men and the obedience of fools?
- Do you aim for Autonomy, Mastery and Purpose?
- Do you manage clients' expectations?
- Management - Do you enforce deadlines, have a Sprint Plan, Review and Retro?
- Do you have a clear definition of a bug?
- Do you provide ongoing support?
- Management - Do you use Just-In-Time speccing?
- Do you capture software requirements by storyboarding?
- Do you conduct Market Research via the Web?
- Do you know the best CRM solutions for your company?
- Searching - Do you know how to be a great Googler?
- Searching - Do you know how to instantly find any file on your computer or network?
- Management - Do you always inform your client how long a task took?
- Do you know the 8 Steps to Scrum?
- Methodology - Do you do Daily Scrums (aka stand-up meetings)?
- Do you allow users to check for a new version easily?
- Do you log every error?
- Done - Do you go beyond 'Done' and follow a 'Definition of Done'?
- Quality - Do you only deploy after a test please?
- Do you include Acceptance Criteria in your PBIs?
- Do you get a UI/UX Test Please?
- Management - Do you fix bugs first?
- Do you write end-to-end tests for critical happy-paths?
- Files - Do you store project documents in Teams?
- Files - Do you know where to keep your files?
- Do you 'zz' old files rather than deleting them?
- Do you know the best way of managing recurring tasks?
- Do you constantly add to the backlog?
- Efficiency - Do you know the quickest way to fix small web errors?
- Do you give support answers via Knowledge Base links?
- Do you stop dealing with Data and Schema?
- Do you have separate development, testing and production environments?
- Mentoring - Do you help everyone to learn the rules (be a Standards Watchdog)?
- Do you thoroughly test employment candidates?
- Do you have a healthy team?
- Does your project pass the bus test?
- Do you know how to deal with distractions?
- Do you use an Internet/Intranet for sharing common information such as Company Standards?
- Do you know the best CMS solutions for websites?
- Do you manage your papers?
- Do you avoid reviewing performance without metrics?
- Do you ring a bell or similar when you secure a big deal, make a sale, or get some great feedback?
- Do you know you should always use a source control system?
- Do you know what to look out for when signing legal documents?
- Do you ask clients to approve your specifications?
- Efficiency - Do you always try to work in pairs?
- Do you perform migration procedures with an approved plan?
- Do you know you should always refer to rules instead of explaining it?
- Do you reward your developers for completing an important milestone on time and budget?
- Do you know how to hand over a project?
- Do you hand over your responsibilities?
- Do you leave a project ready for the next person?
- Do you have a deployment plan?
- Do you understand the risks of deploying on days with limited support?
- Do you sometimes write off small amounts of time to keep clients happy?
- Do you draft all important agreements yourself?
- Do you conduct a "Test Please"?
- Do you have an engagement lifecycle?
- Do you know how to request a "Test Please"?
- Do you know the tools you need before a "Test Please"?
- Management - Do you know who has authority?
- Do you have an induction program?
- Do you identify Development, Test and Production web servers by colors?
- Do you know how to record a quick and dirty 'Done Video'?
- Do you know the best way to learn?
- Do you use the brains of your company?
- Do you know how to handle duplicate requests?
- Does your company contribute to open source?
- Do you know which environments you need to provision when starting a new project?
- Do you tackle the hard things first?
- Do you understand the difference between a POC and MVP?