The Applicant (Oz Wide) engaged a quality assurance tester to test the First Version of the Software Solution who found around 280 bugs which required fixing. These bugs were fixed by the Respondent (Austech) in or about mid-September 2018
[2]
Mr Giglio's evidence was that he had assessed the bugs specified in the spreadsheet. He first made some general observations, as follows:
All software, especially new software and software under development, has bugs, problems and abnormal behaviour. Hence, it is absolutely expected that bugs will be found in new software.
The more vague the requirement specification, the more likely it is that the software will be developed to a "prototype" stage only. By prototype I mean that the software is only minimally representing the full functionality of what may be intended in the final version.
It is normal practice in the industry to fix bugs discovered during development for free_._
Mr Giglio then analysed the bugs referred to in the quality assurance tester's spreadsheet, giving examples of findings which influenced his opinion. Mr Giglio was of the opinion that there was a difference between a bug and a feature enhancement. Many bugs were documented as specific behaviours of fields which were not specified as a requirement in Oz Wide's video instructions. If a requirement is not contained in the instructions from Oz Wide to Austech it would not be included in the software. Mr Giglio was of the view that some of the bugs were actually functionality adjustments to the software requested by Oz Wide. These should not have been reported as bugs but as requested functionality changes.
The trade-off in the development methodology used in this project was that more bugs will exist where a client does not have to detailed requirements document. Some of the bugs arise from a single problem. Mr Giglio gives an example of eight bugs listed in the spreadsheet which may arise from a single problem. The development of multiple modules at the same time to reduce the period of the development was likely to increase the number of bugs which then needed to be resolved.
On the basis of the spreadsheet provided by Oz Wide and the other evidence regarding the bugs in the software and the process to be followed in developing the software, I am not satisfied that the 280 bugs listed in the spreadsheet which were alleged to exist, leads to the conclusion that Austech was not exercising the level of care, skill and judgement required by 4 of the contract. Further, on Oz Wide's own application to VCAT these bugs were resolved by about mid-September 2018, more than three months before the contract was terminated.
A lack of understanding by Austech of how the software was required to function by Oz Wide
In relation to the allegation that Austech displayed a lack of understanding of how the software solution was required to function in the business and this was a failure to meet the required standard of care, skill and judgement in the provision of the Project Services, I find that Oz Wide decided to set a test for Austech by requesting an explanation of the BOM (Bill of Materials) module.
Mr Guthrie gave evidence that he was not satisfied with the response from Austech, as it merely repeated Oz Wide's earlier instructions in relation to this module, see [98] of Mr Guthrie's first witness statement. In evidence to the Tribunal, Mr Guthrie gave evidence that the BOM module was not working as he had expected in two key ways:
It was not reducing the inventory for all the products which were added in creating a product in the BOM module;
the module contained redundant fields.
It is noted that the Agile Methodology of software development requires testing and feedback from the client during the development and design of software. It is not expected in using the Agile Methodology that a software module will be perfect at the time when first provided to the client for testing and feedback. As discussed above, it is part of the process that full details of the features and requirements are not provided prior to the construction of the module commencing.
I am not satisfied that Austech was in breach of clause 4 of the contract due to Austech's only knowledge of Oz Wide's requirements of the BOM was the information that Austech had been given by Oz Wide at the time Mr Guthrie asked his question about the BOM. The process of feedback in the Agile methodology includes issues of functionality and features required by the customer. Mr Groombridge accepted that a detailed user requirements document was not required for the Agile methodology, as the requirements of the software develop as the project progresses.
Failure to use an appropriate project implementation methodology to develop the software solution resulting in a lack of understanding of what was to be developed
Oz Wide's final allegation of a breach of contract was that Austech failed to meet the standard required by clause 4 of the contract in failing to use an appropriate project implementation methodology to develop the software solution resulting in a lack of understanding of what was to be developed. As discussed above, I have found that a Hybrid Agile Methodology was used by Austech to develop the software. I find that the methodology used met the required standard in clause 4 of the contract in the circumstances of the complexity, size and price of the project. While other methodologies may have been appropriate in this case, I am not satisfied that the failure to use those methodologies was in breach of the required standard in clause 4 of the contract.
I find that due to the nature and size of the project it was not a breach of the obligation in clause 4 of the contract for Austech not to implement a project management methodology. I accept the evidence of Mr Giglio in this regard.
In summary, I am not satisfied that Austech has breached clause 4 of the contract as alleged by Oz Wide. I am therefore not satisfied that Oz Wide had the right to serve the breach notice on 30 November 2018.
Even if I was satisfied that Austech had breached clause 4 (which I am not), Austech indicated in its letter to Oz Wide dated 14 December 2018, that it could provide the software on receipt of requested information, if no further changes were required and the Westpac equipment details were provided. Oz Wide did not provide these details in response to this request and instead terminated the contract by letter dated 21 December 2018.
I find that Oz Wide's letter dated 21 December 2018 terminating the contract was a repudiation of the contract. This repudiation was accepted by Austech. I find that Austech did not breach the terms of the contract as alleged by Oz Wide. Oz Wide's counter claim must be dismissed.
[3]
Austech claims damages for the work undertaken. The amount claimed is set out in the invoice, dated 22 December 2018. Austech argues that the full contract amount, after agreed variations, has been reduced for the work which had not yet been completed at the date the contract was terminated.
I find that Austech had completed a substantial amount of the software development required by the contract at the date the contract was terminated. There was video evidence before me which showed the software working in a range of respects. The evidence of Mr Wilcox was that the software was complete, save for the payment gateway for which Austech was waiting for communication from Oz Wide. He stated that the claim had been reduced by $5,000.00, as the payment gateway module was not completed. I find that due to the complexity of the software, the number of modules and interaction between modules and data bases, it was highly likely that there would have been further issues for Austech to resolve with the software, at Austech's costs, after delivery of the final version of the software to Oz Wide.
Mr Giglio gave evidence that he had examined the software. He stated that it was difficult to estimate how long it would take to complete the software. It would depend on many factors, but he estimated it would take less than four months, potentially three months with contingencies. He stated that it may be two months actual time with two developers. If more developers were added it could be less time. He believed that changes would have been needed following the delivery of the software to Oz Wide.
I find that Oz Wide had not agreed to pay the additional amount of $9,500.00 plus GST, for what Austech called additional work requested via email - Stock Transfer. I find that the other additional amounts claimed for variations by Austech were agreed by Oz Wide during the project.
I find that the appropriate measure of damages is the final contract amount less an amount for the completion of the project and resolving teething issues after delivery of the final version of the software to Oz Wide. The amount claimed is $134,706.00 inclusive of GST. I find that amounts are to be deducted from this amount for the additional work requested via email - Stock Transfer of $9,500.00 plus GST, which was not agreed, and an amount for work which was not completed at the date of the termination of the contract. Austech had already deducted an amount for the payment gateway work, which was not completed at the time of the termination of the contract.
I then need to consider the amount which should be allowed for the remaining unfinished work, including resolving teething problems. There was limited evidence as to the scope and costs of such work. However, doing the best I can on the evidence before me, I considered the following.
As noted above, the software has a number of modules that need to work together and which rely on different databases. A change in one module can have flow on effects to other modules. Problems can arise from something as simple as the syntax in the coding. Mr Giglio estimated that the remaining work was in the range of two developers for two months. I accept this estimate as correct.
Elsewhere in his evidence, Mr Giglio stated that the rates charged by developers was $500 to $1000 a day. He did not indicate whether these rates included work done by overseas developers. As the parties agreed that overseas based developers charged lower rates than Australian based developers, I am satisfied that it is appropriate to apply the lowest daily rate for developers given in evidence to calculate the allowance for work not completed at the time the contract was terminated. I find that as the work was being sub-contracted overseas, the appropriate measure is $500.00 per day per developer.
I have accepted Mr Giglio's evidence of the remaining work being two developers for two months as correct. The remaining work and costs are therefore calculated as follows: twenty workdays a month multiplied by two developers multiplied by two months equals 80 workdays. Multiply 80 workdays by $500 per day equals an amount of $40,000.00. I therefore find that the further amount $40,000 be allowed for the completion of the software and the resolution of issues with the final version of the software.
I find that the appropriate amount of damages in this case is $134,706.00 less $10,450.00 and $40,000.00, being a total amount of $84,706.00.
[4]
I will order that Oz Wide pay Austech damages of $84,706.00. On payment of this amount, Austech must transfer the software to Oz Wide. Oz Wide's claim is dismissed.
Any application for costs of this proceeding must be made in writing to the Tribunal within fourteen days of the Tribunal's orders, such an application should set out in full the party's submissions as to costs taking into account the requirements of section 109 of the Victorian Civil and Administrative Tribunal Act 1998. The responding party shall within fourteen days of receiving the costs application and submissions, file with the Tribunal and serve on the other party, that party's submissions on costs. The Tribunal intends to make any decision on costs on the papers.
[5]
[1] See also the emails between the parties on the following dates at the Tribunal Book (TB) references provided: 16 & 17 November 2017 at TB 171, 6 & 7 January 2018 at TB 175, 4 April 2018 at TB 530, 19 June 2018 at TB 532, a November 2017 at CB 666, 6 November 2017 at TB 668, 22 & 30 December 2017 at TB 720, 15 January 2018 (with attachments) at TB 731-3, 16 January 2018 at TB 743, 22 January 2018 at TB 746, 27 April 2018 and 2 May 2018 at CB 850, 14 May 2018 at TB 858 and 8 & 19 June 2018 at CB 891. These emails each provide either direct evidence of delay by Oz Wide in responding to requests for information from Austech or imply there has been such a delay.
Parties
Applicant/Plaintiff:
Austech Applications Pty Ltd
Respondent/Defendant:
Oz Wide Trading Group Pty Ltd
Legislation Cited (1)
Civil and Administrative Tribunal Act 1998
Cases Cited (9)
Austech Applications Pty Ltd v Oz Wide Trading Group Pty Ltd (Civil Claims) [2021] VCAT 345 (27 April 2021)
In final submissions Oz Wide argued that Austech's claim before the Tribunal was a claim in debt, not for damages. Austech's claim should therefore be decided on that basis.
Austech's claim was commenced by way of an application form in the VCAT Civil Claims List, dated 17 June 2019. This form provides for an applicant to provide information by completing various boxes on the form and placing crosses to indicate various choices.
Relevantly, on page 6 of the application form, Austech is asked the question, "What is the problem with the goods and services?" In response Austech provided eight paragraphs of information. The final paragraph states "Austech seeks payment of invoice 69384 in the amount of $134,706." Paragraph three of eight indicates that the contract had not been completed. The evidence of the director of Austech was that the invoiced amount had been adjusted to allow for the work which had not been completed. The claim was therefore in the nature of damages, not for a debt, see for example, Phillips v Ellinson Bros[1941] HCA 35; (1941) 65 CLR 221 at 233-4 and 245-6, Mann v Paterson Construction Pty Ltd[2019] HCA 32 (2 October 2019) at [166], [172-174].
On page 7 of the application form, Austech is asked "What orders do you want VCAT to make?". There is no delineation between a claim in debt and a claim in damages. The amount of $134,706.00 is entered next to the question, "How much is your claim?"
Despite directions being made on a number of occasions in these proceedings and the monetary size of the claim and counter claim, there were no orders for formal points of claim or points of defence to be filed and served.
Oz Wide's submission was that to allow Austech to rely on a claim in damages would be procedurally unfair to Oz Wide, as Oz Wide was not on notice of this claim.
At the hearing, Oz Wide was represented by counsel who comprehensively dealt with both the claim in debt and any claim for damages. No unfairness or disadvantage to Oz Wide was shown in the claim for damages being dealt with in this proceeding.
Section 97 of the VCAT Act provides that the Tribunal must act fairly and according to the substantial merits of the case in all proceedings. The Tribunal must determine matters on their real and substantial merits, not on the basis of technical points or slip ups, see Ritchie Stores Pty Ltd v Bass Coast[2003] VCAT 233. It has been held that pleadings are not a feature of VCAT, see Kyrou J in Victoria v Turner[2009] VSC 66; (2009) 23 VR 110 at [57]. In contrast, it was held by DP McNamara in Lloyd L Watkins Pty Ltd v Vondrsek[2006] VCAT 2479 at [124-5] that it would make a non-sense of the process of directing pleadings in the VCAT, if the Tribunal were to give effect to an unpleaded cause of action simply because the Tribunal could be satisfied that it had been made out on the facts.
Relevantly in this case, the application was somewhat vague as to the legal nature of the claim, the parties were represented by lawyers, no points of claim or points of defence were ordered by the Tribunal or filed by the parties, the matter was argued before me for five days on the basis that, potentially at least, it was a damages claim and Oz Wide called evidence and made detailed submissions as to the damages claim, thereby indicating that it did not suffer any disadvantage in the preparation and presentation of its case. No relevant practical disadvantage was established by Oz Wide. On this basis and as the Tribunal should seek to deal with the merits of the matters before it, I will decide the matter on the basis of a claim for damages.
A significant issue between the parties was which party was responsible for the development of the user requirement document and which party was to provide the functional design of the software. It is appropriate for the purpose of these reasons to divide the design of the software into three areas: the screen design, being the look of each page of the software to the user, the functional design, being the design of the software so it can achieve the desired functions, and the technical design, being the software coding to achieve the screen design and functional design.
It was accepted by the parties at the hearing that Oz Wide was to produce the relevant page 'mock-ups' which would be strictly followed by Austech for the look of each of the pages to be viewed by the users of the software. It was also accepted by the parties at the hearing that Austech was responsible for the technical design, to make the screen and functional designs achieve their purposes. A key dispute between the parties was whether Austech or Oz Wide was responsible for the functional design of the software.
I find that the written contract does not contain an express term as to the responsibility for the development of the functional design. Oz Wide referred the Tribunal to the document 'Project Estimate - Inventory management System Development Version 1.2' (Project Estimate 1.2). This document was a schedule to the contract and provided for a business analysis in the resource allocation on page 13 and for various project documentation on page 12. Oz Wide argues on this basis the contract provides for Austech to be responsible for the functional design.
Austech argues that from the contents of the sections headed Purpose of the Document on page 3 and Content Submission on page 14 of the Project Estimate 1.2, an implication arises that it was Oz Wide's contractual obligation to undertake the functional design. I am not satisfied that such an implication arises from the words of these clause of the Project estimate document.
Austech submitted that the evidence of the production of the various documents by Oz Wide, which it argued were part of the functional design, also implied that functional design was Oz Wide's obligation under the contract. This alleged conduct occurred after the parties entered into the contract. I note that the subsequent conduct of a party cannot be used to interpret the terms of a contract, see Codelfa Constructions Pty Ltd v State Rail Authority of NSW (1982) 149 CLR 337 at 348 and Agricultural & Rural Finance Pty Ltd v Gardiner ; at . I therefore cannot consider the conduct of Oz Wide after the contract was entered into in deciding which party had the contractual obligation for the functional design of the software.
Austech alternatively argued that a term that the obligation was on Oz Wide to provide the functional design should be implied to give business efficacy to the contract. I do not accept that the requirements to apply such an implied term have been made out in this case, see BP Refinery (Westernport) Pty Ltd v Hastings Shire Council (1977) 180 CLR 266 at 283.
I consider that both of Austech's and Oz Wide's arguments on the interpretation of the contract as to the obligation to undertake the functional designed were weak.
There is some support for a finding that Oz Wide was responsible for the functional design from the development of the Project Estimate - Inventory Management System Development document prior to its incorporation into the contract. Version 1.0 of the project estimate document was provided to Oz Wide on 1 September 2017. This version provided for Austech to undertake 17 days' work on project documentation and three weeks work on business analysis. I find that part of these time allocations was for functional design of the software.
I find that after this version of the project estimate was provided by Austech to Oz Wide, Mr Guthrie, of Oz Wide, stated to Mr Wilcox, of Austech, that Mr Guthrie would be undertaking workshops with his staff to obtain an understanding the requirements needed from the software.
In an email exchange about these workshops, Mr Wilcox stated to Mr Guthrie that 'What we really need is what functions you want included', see email 6 September 2017 at 12.34.14 pm. By email dated 13 September 2017 at 11.18 am, Mr Guthrie stated that he would need to design all the pages like the mock-ups attached to show Austech how they want to use them. The final version of the project estimate document provided for 10 days of Project Documentation and 2 weeks of business analysis, being a reduction in the allocations for each area of work.
This series of events leading to the contract being entered into would indicate that at least to a large extent, Oz Wide would be providing the details of the functionality needed from the software. In summary, these communications clarified the roles in the development of the functionality requirements of the software and the allocation of time in the terms of the contract were changed to reflect this reduction in work required by Austech in the area of project documentation and business analysis.
The correct position on this aspect of the contract is my no means clear, but on balance I find that the contract provided that Oz Wide was to undertake the major part of the functional design of the software.