
This issue’s special topic on “Shanghai Court Trial Business Backbone” is the “Background of Shanghai Court Trial Business”. We invited the backbone of Shanghai Court Trial Business, the “Top Ten Youths” of Shanghai Court, and the third-level senior judge of the Second Division of the Intellectual Property Comprehensive Trial of Shanghai Intellectual Property Court – Ling Zongliang, to explain to us how to try computer software development contract disputes.
01 Prerequisite for trial:
Identification of computer software development contract
The subject of the computer software development contract is computer software. The ultimate purpose of the software development contract is to realize the specific functional requirements of the client through computer software programming. The final delivery of the contract is usually the source code and related documents for the final delivery of the contract.
Therefore, when judging the nature of the contract, whether the main rights and obligations of the contract involve the development of computer software and whether the subject matter of the contract involves the delivery of computer software code. If the rights and obligations of the contract are disputed not only involve the development of computer software, but also other hardware and other rights and obligations, if the parties have disputes over computer software, their jurisdiction should also be determined in accordance with the computer software development contract.
In the objection to jurisdiction over the computer software development contract dispute between the appellant Guangjing Company and the respondent Nengxin Company, The Supreme People's Court held in the second instance that the determination of the nature of the contract should be judged based on the content of the main rights and obligations agreed in the contract.
In this case, the "Litian Fruit Industry Demonstration Zone Improvement Project-Multimedia Display Project Contract" signed by Nengxin Company and Guangjing Company stipulates the content and breach of contract liability of software development services in terms of "project content", "delivery agreement", and "breach of contract liability", which is in line with the characteristics of the computer software development contract. Guangjing Company claims that this case is not a computer software development contract dispute but a project contract dispute that does not match the facts. When determining 2
, you should also pay attention to the difference between computer software development contracts and entrustment contracts , contract contracts and technical contracts , etc.
1. Computer software development contract and agency contract
The parties to the computer software development contract are usually called the client and the developer, but the "entrust" here is essentially different from the agency contract stipulated in the " Civil Code ". A entrusted contract is a contract in which the principal and the trustee agree that the trustee handles the principal's affairs.
The difference between a computer software development contract and a entrusting contract is mainly reflected in:
One. During the performance of the entrusting contract, the matters handled by the trustee usually occur between the trustee and a third party outside the contract. The trustee is representing the principal for some legal act or handling other matters. The performance of computer software development contracts mainly occurs between the principal and the developer, and does not involve third parties other than the contract.
Secondly, during the performance of the entrusted contract, both the entrusted party and the entrusted party can terminate the contract at any time, but in principle, the computer software development contract should fully perform its obligations in accordance with the contract agreement, and neither the entrusted party nor the developer enjoys the right to terminate the contract.
Third, the agency contract focuses on the performance process rather than the result, that is, the trustee only needs to engage in the handling of a certain matter according to the requirements of the principal. As for whether the result meets the principal's expectations, it does not affect the performance of the contract. However, the computer software development contract focuses on the performance results, not the performance process. As long as the developer is able to deliver computer software that meets the contract requirements, the developer can be determined to have fulfilled the contractual obligations.
2. Computer software development contract and contract for undertaking
Contract for undertaking is a contract in which the contractor completes the work, delivers the work results, and the customser pays remuneration in accordance with the requirements of the customs. Computer software development contracts and contracts for undertaking are somewhat similar in terms of contract rights and obligations , and to some extent, they can also be said to be special contracts for undertaking.
However, the subject of the computer software development contract is computer software, so it is not completely equivalent to the contract of undertaking, especially the client of the computer software development contract does not enjoy the right of arbitrary termination.
3. Computer software development contract and technology development contract
technology contract is a contract that establishes mutual rights and obligations concluded by the parties for technology development, transfer, licensing, consulting or services. Computer software development also falls into the category of technical development, so computer software development contracts can also be said to be technical development contracts to some extent.
However, according to Article 851 of the Civil Code, a technology development contract is a contract concluded between the parties for the research and development of new technologies, new products, new processes, new varieties or new materials and their systems. From the perspective of the subject matter of a technology development contract, there is a certain difference between a technology development contract and a computer software development contract. The technology development contract emphasizes the "new" of technology and the requirements have not been disclosed in the market. If the technology as the subject of a technology development contract has been disclosed by others, resulting in meaningless performance of the technology development contract, the parties may terminate the contract. However, the subject of a computer software development contract does not require new software. For software that has appeared in the market, the principal can still entrust others to develop the same or similar software.
In addition, during the trial of specific cases, attention should be paid to distinguish between computer software development contracts and technical service contracts, labor dispatch contracts, etc. It is not that as long as computer software is involved, they are computer software development contracts. The key is whether the main rights and obligations of the contract involve computer software and whether specific computer software needs to be delivered as the result of contract performance.
In the jurisdiction objection to the technical contract dispute between the plaintiff Yang and the defendant Wuqiao Company, the plaintiff and the defendant signed a "Software Development Consultant Agreement", which stipulated that the plaintiff serve as the defendant's software development consultant, providing consulting services to the defendant's data structure and software architect , and completing programming for the defendant's team for evaluation and providing consulting services.
After trial, the court held that although the contract involved in the case involved computer software, it was not the plaintiff who provided computer software development for the defendant, but provided technical consulting services for the defendant's own software development. It was generally a technical contract and not a computer software development contract.
In the labor dispatch contract dispute case between the appellant Aerospace Company and the respondent Gaixun Company, the Supreme People's Court held that the fees signed by the two parties paid the actual assessment and level of the dispatched personnel confirmed by the appellant as the main basis, rather than the completion of a certain software development as the settlement condition. Obviously, the agreement does not involve specific software development tasks and is a labor dispatch agreement. 3
02 Prone to disputes:
Specifies whether the contract is established and effective
In most computer software development contract disputes, the parties do not have any dispute over whether the contract is established and the effectiveness of the contract. The question that is prone to controversy is whether the failure to sign a written agreement will affect the establishment of contracts and the entry into force.
Regarding the establishment of the contract:
In the case of the computer software development contract dispute between the plaintiff Chaolang Company and the defendant Taiyue Company, the court held that the conclusion of a computer software development contract should be in written form. If the parties did not use the written form but one party had fulfilled its main obligations and the other party accepted it, the court should determine that the contract was established. 4
Of course, the written form is not limited to traditional paper methods. It can tangibly express the content through electronic data exchange, email, etc., and can retrieve and use data messages at any time, and is also regarded as written form.
Regarding the effectiveness of the contract:
In practice, some parties may claim that the development costs agreed in the contract are significantly higher than the industry average, the developer conceals important information during the publicity process constitute contract fraud, the developer obtains relevant government funding through computer software development contracts, etc. The review and judgment of these issues needs to be carried out in combination with specific cases, and there is no substantial difference from general contract disputes.
In addition, if an economic crime is found to be suspected during the trial, the court may rule to dismiss the prosecution and transfer the relevant materials to the public security organs.
03 The basis for correct review:
Determination of software development functional requirements
Computer software development is a process of continuously objectifying the subjective needs of the client. When signing a contract, both parties will generally determine the general functional requirements description as an attachment to the contract, but during the contract performance process, the originally determined functional points will usually be further refined, and functions may be deleted, added and other changes.
In most disputes, the software developer will argue that there are changes in functional requirements during the performance of the contract, which will lead to an extension of the development cycle or an increase in development costs.

The refinement of the original functional scope and the change of functions is the focus of determining the functional requirements of software development, and it is also an issue that most disputes will involve.
For example, the functions clearly defined when signing a contract include A, B, C, and D. If both parties communicate and determine function A to be A1, A2, and A3 during the performance of the contract, this usually belongs to the refinement of the function and is a normal process for investigating the functional requirements of computer software development. Because the originally determined functions are often relatively macro, with the continuous advancement of development and the deepening of communication between the two parties, the relatively macro functions will continue to be concretized, which is in line with the basic laws of software development and will not affect the normal development cycle of the software.
However, if the contract is performed, the client proposes to develop the E function, because the original contract did not stipulate, this is an increase in functions, which usually leads to an extension of the software development cycle or an increase in software development costs.
When determining the software functional requirements, due to the unclear or abstract and ambiguity of language and textual expressions in the contract, the parties often have disputes over the specific functional agreement or the scope of development, which requires the explanation of the relevant terms of the contract.
In the case of infringement of computer software by plaintiff Ruiqi Company and defendant Kuaifa Company, the plaintiff claimed that the quick-cut ticket machine software used by the defendant offline stores infringed on his copyright. The defendant argued that the "Technical Development Entrustment Contract" had been signed between the two parties, and the defendant entrusted the plaintiff to develop the "QCHouse Online Platform Development Project". The accused infringing software also falls within the scope of contract development. The plaintiff believes that the software agreed in the contract is only online software and does not include offline software.
After trial, the Supreme People's Court held that the understanding of whether the accused infringing software belongs to the scope of the contract should not be mechanically or statically analyzed whether it belongs to online or offline software, especially considering that during the contract performance, the parties may also adjust the development scope according to business needs and the process of software development. Therefore, we should comprehensively consider the purpose of the contract involved, the functional matching of the accused tort software and the contract agreed software, and the performance of the contract.
During the performance of the contract involved, based on the defendant's needs, the plaintiff developed the alleged infringement software. Unless there is a special agreement to the contrary, it should be determined that the alleged infringement software falls within the scope of the contract. According to the contract, the copyright of the accused infringing software should belong to the defendant, so the defendant does not constitute infringement. 5
04 Determination of time nodes:
Determine whether the computer software development results are delivered
Therefore, during the case trial, the developer should be asked to clarify when the software that it believes meets the contract requirements will be delivered as soon as possible and through what method to deliver it. Since after the software is delivered, both parties usually have processes such as feedback, modification and improvement, re-delivery, and re-feedback of test problems, and the software results may also require multiple tests. We need to clarify the earliest delivery time for the software that meets the basic requirements of the contract.
It should be noted that, under normal circumstances, the first delivery of the software does not refer to the final source code, but to the target program unless there is a convention to the contrary. The developer will only deliver the source code after both parties have received the target program after testing, modification and acceptance, and the entrusted party pays the corresponding amount.
Therefore, it is also necessary to clarify during the trial whether the undelivered software claimed by the parties refers to the undelivered final source code or the target program. In practice, most disputes do not involve the issue of delivering source code, but before that, the two parties had already had a dispute over the performance of the contract.
Regarding the delivery method, usually the developer develops on all its servers. The software delivery at this time should usually be a software installation package and related documents for the client to install and test, or it may be a delivery of the link address, username and password to the client. Of course, there are also developments on the site of the entrusted party or on the server provided by the entrusted party. At this time, there may be no problem of submitting the installation package, but the user name or password of the login software should be submitted. The ownership of the
software development server is different, and sometimes it directly affects the responsibility issue when the software is lost. If the software is deployed on the developer's own server, the risk that the software cannot be tested or inspected due to server failure is usually borne by the developer; if the software is developed directly on the server owned by the client, the developer proves that it has delivered the relevant software, but the software cannot be tested or inspected in the end, the relevant risks shall be borne by the client.
In the contract dispute between Kaiken Company and Lejun Company, both parties confirmed that the software involved was delivered through cloud server . Kaiken Company had paid a fee to purchase the cloud server for Lejun Company, but it could not be opened because the cloud server expired and had not renewed. Lejun Company has provided preliminary evidence of delivery. Since the reclaiming company did not renew the fee, the cloud server could not be logged in and it did not provide any counter-proof, the court believes that Lejun Company has delivered the software. 6
05 Whether the delivery is delayed:
determines whether the delivery software has exceeded the contractual period
A common reason why the client claims that the developer breached the contract is that the developer delays the delivery of the development results. The developer often argues that the delay is because the client has delayed confirmation of the phased results. For example, the UI design did not confirm it in time, and the development cycle was extended during the performance of the contract.
For the client's claim, the first thing to do is to determine whether the development results have been delivered. If the developer does not deliver the software within the time limit stipulated in the contract, it will naturally constitute delayed performance; if the delivery has been made, it is necessary to determine whether the time for delivering the results objectively exceeds the time limit stipulated in the contract. If
is exceeded, the review will determine whether the defense reasons raised by the developer are supported by evidence and whether they are reasonable. Since the process of software development is a process of objectifying subjective needs, it is very likely that the two parties will modify the originally agreed functions. Therefore, it should not be too strict when judging whether the performance of the contract has exceeded the deadline.
In practice, it is a common situation that the performance of the developer objectively exceeds the period agreed in the contract, but the entrusted party did not raise an objection, but continued to communicate with the developer about the content of the software development, test and feedback on the software delivered by the developer, and the developer continued to modify and improve it. Since the final delivered software still did not meet the requirements of the entrusted party, the entrusted party proposed that the developer constituted a delay in performance.
In the case of computer software development contract dispute between the appellant Rongwei Company and the respondent Jietu Company and other computer software development contracts, the Supreme People's Court held that Jietu Company submitted software acceptance on April 29, 2018, which obviously exceeded the agreement on the delivery time of the "APP Production Contract". However, Rongwei Company and Jietu Company continued to exchange opinions on modifying and optimizing the software after the delivery date expired. From this, it can be seen that the parties agreed to extend the delivery acceptance time, and Jietu Company did not violate the agreement on delivering the software on April 29, 2018. 7
06 Important basis for contract performance: Comparison of development results delivered by
with the contract agreed functions
When performing function comparison, the software version used for comparison should be determined first. Because in some cases, the plaintiff sued the court for a long time before the dispute arose between the two parties, the software version used for comparison should be the version when the dispute occurred, because only the version at that time can reflect the true status of the contract performance at that time.After all, the developer may use the time interval before prosecution to continue to develop and improve the software, and subsequently supplementary and improved software cannot and should not be used as evidence to prove that the developer has completed the software development before the dispute occurs.
In the case of computer software development contract disputes between the appellant Rongwei Company and the respondent Jietu Company, the Supreme People's Court held that the source code of the inspection software showed that the completion time of the software was April 27, 2018, which is consistent with the acceptance time of the final inspection software; the interface between the inspection software and the final inspection software is basically the same. Although there are differences in functional sub-items and web page adaptation, the above differences are not the differences in the software itself, and when Rongwei Company does not provide evidence to prove that the completion time of the inspection software has been deliberately modified, it should be determined that the inspection software is consistent with the final inspection software. 8
After both parties determine the software version used for function comparison, they should check whether the software delivered by the developer is consistent with the functional requirements agreed in the contract based on the functional requirements confirmed by both parties. In order to improve the efficiency of trial of such cases, the parties can compare this work before court.
For example, the principal first submits a list of specific issues for the developer to deliver the software, and the developer then responds to the list of questions raised by the principal to confirm. The opinions replied by the developer mainly include the following situations: the problem exists objectively; the problem is caused by the external software and hardware environment of the software configuration, and is not a problem of the software itself; the problem is not the scope agreed in the contract; the function related to the problem has been changed during the performance of the contract, etc. After
, the client will provide feedback on the developer's reply, clarifying which aspects recognize the developer's opinions and which aspects do not recognize the developer's opinions.
After the above communication, we can focus on the problems existing in the software involved compared with the contract agreement, that is, the focus of dispute between the two parties on the software functions. If necessary, the judge can organize the software to view the software in the trial or pre-trial meeting to judge the objective operation of the functional points of the parties’ disputes, as the factual basis for subsequent judgment of who should be responsible for related issues.
As for the reasons for the related problems, it follows the principle of "who claims, who provides evidence", and based on the evidence submitted by both parties, which party should be responsible for the problems existing in the software.
When judging whether the software delivered by the developer meets the contract requirements, it should also be noted that if the entrusted party fails to test and accept the software without proper reason after receiving the software, it should be deemed that the software meets the contract requirements and is deemed to have passed the acceptance. Afterwards, the entrusted party should no longer sue for the termination of the contract on the grounds that the software functions do not meet the contract requirements.
07 Whether the purpose of the contract cannot be achieved:
determines whether the contract is terminated due to a fundamental breach of contract by one party
As for the client, the purpose of the contract is to obtain computer software that can meet the functions agreed in the contract on time; as for the developer, the purpose of the contract is to obtain the fees for software development on time. Therefore, it is necessary to accurately judge whether the purpose of the contract can be achieved based on the preliminary facts. In the specific judgment, we must generally grasp the following issues:
First, distinguish the purpose and motivation of signing a contract. The purpose of the client signing a computer software development contract is to obtain computer software that meets the requirements. As for why he originally planned to develop computer software and what purpose it intended to achieve, etc., it is more part of the category of motivation. Unless both parties clearly agree on the motivation as an important condition of the contract, if the software meets the contract requirements, just because the market opportunities related to the software no longer exist and the need to use the software will no longer be a legitimate reason for the parties to terminate the contract.
In the case of computer software development contract dispute between Damao Company and Feiyan Company, the court held that, as the principal of the computer software development contract involved, the purpose of its contract is to obtain the agreed software, and the motivation for entering into the contract is to optimize inventory management through the developed software and promote its leasing business.The above motivation of Damao Company was not clearly reflected in the contract through some agreement, and the developer Feiyan Company did not accept that it would increase the inventory function of the software development after the contract was concluded. Therefore, Damao Company claimed that it could not achieve the purpose of the contract, and the court did not support it. 9
The second is to distinguish between software function missing and software function defects. The process of software development is a process of continuous debugging and improvement, and it cannot be achieved overnight. The problems in the defendant's delivery of software should distinguish between software missing functions and software defects.
For example, the contract stipulates that the software should have functions such as A, B, C, D, etc., but it does not have functions D after testing. Since the operation of computer software requires the cooperation of different modules, the lack of functions of a certain module directly affects the overall operation of the software. In this case, it can usually be determined that the software delivered by the defendant does not comply with the contract agreement and cannot achieve the purpose of the contract. If the tested software has a D function module, but there are some bugs in the specific operation, these bugs can be compensated after subsequent modification and improvement. In this case, it should not be determined that the software delivered by the defendant cannot achieve the purpose of the contract and should not be determined to constitute a fundamental breach of contract.
The third is to distinguish between core functions and non-core functions. The lack of function can usually determine that the developer has breach of contract, but it does not necessarily lead to the inability to achieve the purpose of the contract. If it is just a lack of non-core functions in the software and does not have a substantial impact on the operation or use of the software, it is usually not advisable to be considered as a fundamental breach of contract. The client can be compensated for the losses suffered by the defendant by making the defendant bear the liability for breach of contract.
In the contract dispute between Yuecheng Company and Fuhao Company, the software developed by Yuecheng Company had failed to complete or had defects in printing, exporting cable well diagrams, system management, system logs and other functions. However, these functions are not the main functions of the software involved, nor have they substantially affected the normal use of the software. The court held that Fuhao Company's claim that Yuecheng Company constitutes a fundamental breach of contract cannot be established. 10
Fourth, distinguish between the master payment obligation and the subordinate obligation or the accompanying obligation. The main payment obligation of a computer software development contract is to entrust the payment of the price to the developer and submit software that meets the contract requirements to the developer. Any party's breach of the principal payment obligation constitutes a fundamental breach of contract, and the non-breaching party has the right to terminate the contract accordingly.
In addition to the main payment obligation, the parties should also follow the principle of honesty and trustworthiness and fulfill their obligations such as notification, assistance, and confidentiality based on the nature of the contract, purpose and transaction habits. As for computer software development, the developer should usually issue a payment invoice for the entrusting party, and should also provide necessary installation and use guidance services after delivery of the software. Normally, breach of the above obligations will not lead to the termination of the contract. However, if the software developed by the developer is special and cannot be installed and used by ordinary technical means, and the developer refuses to provide necessary guidance, which makes the software unavailable, the principal has the right to terminate the contract.
In the case of the plaintiff Yali Company and the defendant's investigation of the company's computer software development contract dispute, the source code provided by the defendant to the plaintiff used a special programming method, and ordinary technicians could not install and use it, and the defendant refused to provide necessary guidance.
The court held that as a software developer, the defendant, as a software developer, should deliver the corresponding technical information required for the installation together, and should also provide assistance or guidance when the plaintiff stated that it was impossible to install the software involved. However, the defendant refused to provide assistance and guidance for the plaintiff to install the software involved in the case, which violated the principle of honesty and trustworthiness, resulting in the source code of the website involved in the case being unable to be installed normally and put into use. The plaintiff has the right to terminate the contract involved and ask the defendant to return the contract money that has been paid. 11
08 Some special circumstances:
Contract termination when non-substantiated breach of contract
Normally, the contract may be terminated by the non-breaching party if there is a fundamental breach of contract. However, considering the actual performance of the contract and the expression of intentions of both parties, even if it does not constitute a fundamental breach of contract, the contract may be terminated based on the negotiations of the parties or due to the deadlock in the performance of the contract. In special circumstances, the breach of contract may also request the termination of the contract.
1. During the litigation between the two parties reached an agreement to terminate the contract and terminated the
, although the defendant did not constitute a fundamental breach of contract, considering the actual performance of the contract, he did not object to the plaintiff's lawsuit to terminate the contract. At this time, it can be believed that both parties have reached an agreement on the termination of the contract and both agreed to terminate the contract. The court can confirm that the contract is terminated when the two parties reach a agreement.
It should be noted that the parties should not attach prerequisites or conditions to the agreement reached for the termination of the contract. For example, if one party says that if the other party refunds the development fee, it agrees to terminate the contract, while the other party cannot agree to refund the development fee. In this case, it should not be determined that the two parties have reached an agreement on the termination of the contract.
Both parties do not object to the termination of the contract itself, and usually request the court to judge the consequences of the termination of the contract based on the specific circumstances of the case. Therefore, in the trial of a specific case, if the court believes after trial that the contract may not meet the conditions for termination of the fundamental breach of contract, although it can rule to dismiss the plaintiff's lawsuit, the contract dispute between the parties has not been substantively resolved. At this time, it can be explained to the parties that if the plaintiff’s lawsuit on termination of the contract is not supported by the court, does his attitude towards the performance of the contract hope to continue to perform or still hope to terminate the contract. If neither party is willing to continue to perform the contract, the court may terminate the contract based on the parties' consent and deal with the consequences of the termination of the contract.
2. The non-breach of contract causes the contract to fall into a deadlock in performance and terminates the
computer software development contract is a bilateral contract, and the confirmation of software function needs cannot be separated from the cooperation of the client, otherwise the performance of the contract will not be carried out. If both parties cannot reach an agreement on how to develop a certain function during the demand research stage or during the software development process, and cannot determine it based on the general understanding in the industry, especially when there is inconsistent understanding of a certain functional point and the two parties cannot resolve it through negotiation, the performance of the contract will easily fall into a deadlock. At this time, it is difficult to attribute the inability to perform the contract to one of the parties, that is, both parties may not be at fault (of course, they may also be at fault), but the contract cannot continue to perform, and the contract can also be terminated based on the objective inability to continue to perform.
In this case, the termination of a contract is different from the termination of a contract caused by one party's fundamental breach of contract, and is also different from the termination of a contract of a breach of contract. It is based on the inability to perform due to the objective deadlock in the contract.
3. The breach of contract claims the contract to terminate
According to Article 580 of the Civil Code, if one party fails to perform non-monetary debts or performs non-monetary debts in compliance with the agreement, the other party may request performance. However, if the legal or factual failure to perform, the subject matter of the debt is not suitable for compulsory performance or the performance costs are too high, and the creditor fails to request performance within a reasonable period of time, resulting in the inability to achieve the purpose of the contract, the people's court or arbitration institution may terminate the contract rights and obligations relationship at the request of the parties, but it does not affect the liability for breach of contract liability.
As for computer software development contracts, on the one hand, since the performance of the contract, especially the confirmation of software function requirements, cannot be separated from the cooperation of the principal, the software development contract cannot be performed in fact and is not suitable for compulsory performance when the principal does not cooperate. On the other hand, computer software development needs to be completed by specific developers and has certain personal attributes. If the developer is unwilling to continue to perform, the developer cannot force it to perform. In fact, requests for termination of the contract submitted by the breach of contract during the performance of a computer software development contract will usually be approved. For litigation requests for continued performance, if the contract cannot be performed objectively, the party that abides from the contract shall choose to compensate for breach of contract instead of continuing performance to make up for the losses suffered by the other party's breach of contract.
In the case of the computer software development contract dispute between the appellant Dingjie Company and the respondent Maidian Company, the Supreme People's Court held that the ERP system needs to be implemented based on the specific needs, resources and management processes of Maidian Company. Without the cooperation of Maidian Company, Dingjie Company could not independently complete the continued performance of the contract involved.Although the factual basis proposed by Maidian Company in this case for the termination of the contract cannot be established, if Maidian Company is not allowed to request termination of the contract, it will be unfavorable to both parties to the contract. Therefore, this court supports Maidian Company's litigation request to terminate the contract. 12
09 Responsibility: The legal consequences of the termination (termination) of the contract
The process of computer software development is a fact that has occurred when the dispute occurs and objectively cannot be restored to its original state. Therefore, the liability after the termination of the computer software development contract should usually distinguish whether the contract is a fundamental breach of contract termination to determine whether discount compensation is required for completed development content.
In the case of the computer software development contract dispute between the appellant Zhongxinlan Software Co., Ltd., Li Qun and the respondent Jingke Company, the Supreme People's Court pointed out that the part that has been performed after the contract is terminated is not naturally restored to its original state, but should be weighed based on the performance status and the nature of the contract. In terms of whether the computer software development contract should be restored to its original state after the computer software development contract is terminated, especially whether the development funds collected by the developer should be fully or partially returned, it is necessary to comprehensively consider the characteristics of the computer software development contract itself, the actual performance of the developer, whether the developer is at fault and the size of the fault, the actual workload invested by the developer and the completed development results, and judge it under the principle of integrity and fairness. 13
1. Termination of
computer software development contract due to fundamental breach of contract is usually the case where the entrusting party enjoys the right to terminate the contract. At this time, the entrusting party generally has the right to require the developer to return the development expenses that have been paid and bear the breach of contract liability in accordance with the contract.
If the contract does not stipulate liability for breach of contract and the client has evidence to prove that it has other losses, the breach of contract shall also compensate. The development content that the developer has completed does not require the client to compensate for the discount, because the responsibility for the inability to perform the contract depends mainly on the developer.
2. Both parties are at fault for the termination of the contract
If both parties are at fault for the termination of the contract, then when determining the legal liability after the termination of the contract, the "restore to the original state" should not be simply adopted. Instead, factors such as the degree of fault of both parties and the workload occupied by the completed development results should be considered to determine whether the developer will refund the corresponding development fee, or the client will continue to compensate the developer for the work completed at a discount.
As for liability for breach of contract, it can be discounted based on the degree of fault of both parties.
In the case of the computer software development contract dispute between the appellant Yuanjian Company and the respondent Ruisimat Company, the Supreme People's Court held that although the main reason for the failure to continue to perform and terminate the contract in this case is that Ruisimat Company refuses to provide the first phase of the project for testing and acceptance, Yuanjian Company also bears unshirkable responsibility for the occurrence of the result. Yuanjian Company should also bear corresponding responsibilities for the termination of the contract. After the contract was terminated, although Ruisimat Company could not obtain the remaining contract payment for the first phase of the project due to its breach of contract, Yuanjian Company should share the development costs of the first phase of the website development work that it has completed with Ruisimat Company for its fault. 14
3. The breach of contract termination
. In the case where the breach of contract termination, although the breach of contract should be restored after the contract is terminated, the breach of contract cannot be exempted from liability for compensation. The breach of contract shall still bear the corresponding breach of contract liability for the losses caused to the non-breach of contract party due to the termination of the contract.
In the case of the computer software development contract dispute between the appellant Dingjie Company and the appealed Maidian Company, the Supreme People's Court held that the breach of contract liability that Maidian Company should bear as the breach of contract cannot be reduced or exempted due to the termination of the contract. In the case where Maidian Company returns the subject matter delivered by Dingjie Company, Dingjie Company can only request losses suffered in addition to the return of the original, that is, losses suffered by the secondary development and technical services that have been provided. For this part of the loss, the amount should be reasonably determined based on factors such as Dingjie Company's paid development and service costs, exemption of subsequent maintenance obligations, etc.Although Dingjie Company has completed the development of most functional points, it has also exempted its later free maintenance obligations after the contract is terminated. At the same time, considering factors such as employee salary losses and the degree of correlation between operating costs claimed by Maidian Company and this case, the original court maintained that Maidian Company's determination to compensate Dingjie Company for 750,000 yuan. 15
END
Conclusion
Computer software development contract dispute trial is relatively complicated in terms of fact determination and legal application, and the judgment result may deviate from the parties' claims.
In order to avoid parties' litigation and achieve the purpose of substantive resolution of disputes, the parties should also pay attention to the role of explanation during the trial. For the application of different laws that may arise based on facts, the parties should promptly adjust their litigation requests through explanation in a timely manner.
is explained in accordance with the law and makes a fair and reasonable determination on the basis of ascertaining the facts.
PROFILE
Author introduction
Ling Zongliang, Ph.D. in law, and a senior judge of the Second Division of the Intellectual Property Comprehensive Trial of Shanghai Intellectual Property Court. He once seconded the Intellectual Property Court of the Supreme People's Court. He was named "Top Ten Youths" in Shanghai Court. More than ten cases undertook were selected as one of the top ten cases of intellectual property protection in the Supreme People's Court and Shanghai Courts. More than 100 research articles of various types were published in publications such as Intellectual Property, Legal Daily, Electronic Intellectual Property, and People's Court Daily.
Comment:
1 "Several Provisions of the Supreme People's Court on the Jurisdiction of Civil and Administrative Cases in First Instance Intellectual Property" (Fashi [2022] No. 13) came into effect on May 1, 2022. Since then, computer software development contract disputes will be heard by the grassroots people's courts with jurisdiction in principle. Before this, the Intermediate People's Court shall be governed by the Intellectual Property Court or the Intermediate People's Courts determined by the People's Governments of the Provincial, Autonomous Regions, or municipalities directly under the Central Government.
2 See the Civil Ruling No. 230 of the Supreme People's Court (2021) Civil Ruling No. 230.
3 See the Civil Ruling No. 73 of the Supreme People's Court (2021) Civil Ruling No. 73.
4 See the Civil Judgment No. 2424 of Beijing No. 1 Intermediate People's Court (2002).
5 See the Civil Judgment No. 694 of the Supreme People's Court (2019).
6 See the Civil Judgment No. 12 of Shanghai Intellectual Property Court (2017).
7 See the Civil Judgment No. 592 of the Supreme People's Court (2020).
8 See the Civil Judgment No. 592 of the Supreme People's Court (2020).
9 See the Civil Judgment No. 727 of the Supreme People's Court.
10 See the Civil Judgment No. 594 of Shanghai Intellectual Property Court (2015).
11 See the Civil Judgment No. 112 of Shanghai Intellectual Property Court (2016).
12 See the Civil Judgment No. 1431 of the Supreme People's Court (2021) Supreme People's Court.
13 See the Civil Judgment No. 1545 of the Supreme People's Court (2020).
14 See the Civil Judgment No. 72 of the Supreme People's Court (2020).
15 See the Civil Judgment No. 1431 of the Supreme People's Court (2021) Supreme People's Court.