Minimum Viable Product: Difference between revisions
Line 38: | Line 38: | ||
# '''Development activities:''' Implementing the core features identified in the earlier stages. | # '''Development activities:''' Implementing the core features identified in the earlier stages. | ||
# '''Testing''' individual components . | # '''Testing''' individual components . | ||
#Release the MVP to a limited audience or beta testers to collect feedback and monitor its performance in a real-world environment. | #'''Release the MVP''' to a limited audience or beta testers to collect feedback and monitor its performance in a real-world environment. | ||
#Iterate Based on Feedback: Analyze the feedback received and make necessary improvements | #'''Iterate Based on Feedback:''' Analyze the feedback received and make necessary improvements. | ||
# | #Track key performance indicators (KPIs) to assess the success of the MVP and guide further iterations. | ||
== Rough time estimates == | == Rough time estimates == |
Revision as of 16:23, 28 November 2023
Abstract
WikiDeal is a collaborative platform, much like Wikipedia, aiming to revolutionize contract management. Users can access, modify, and personalize contract models and clauses for a variety of agreements. The platform emphasizes decentralized ownership, allowing users to collectively govern and contribute to its evolution.
The software development challenge for a Minimum Viable Product (MVP)
The proposed project scope cannot be solely implemented on the MediaWiki platform.
While MediaWiki excels in collaborative text editing and knowledge creation, its design, geared towards openness, proves inadequate for handling electronic signatures, private data, and sensitive or confidential content. The platform lacks official support for splitting access to content on a per-page basis, making it insufficiently secure for documents of a legal nature, such as contracts. Storing personalized clauses globally in the central database would significantly escalate the requirements for the database server. It is imperative not to store personal data on the wiki, including actual values of sensitive contract variables or real contracts. The above factors render the signing workflow unattainable.
What we can do, however, is utilize MediaWiki as a repository for clauses and contract models, with an integrated interactive contract prototype builder. This tool should enable users to pass variables, configure options, preload predefined sections and clauses, and select additional clauses from a designated "bank." Users should also be able to adjust the ordering of these components. The system will generate a dynamic preview of the contract, incorporating the selected clauses aligned with the contract model and substituting dynamic variables with values provided. It can be printed as is on the fly. The resulting text will not be stored or edited on the wiki.
Users can then request the resulting text in an editable format. This can be achieved by programmatically facilitating wiki markup as, for example, HTML via the MediaWiki API and sending it to a separate instance application. Further processing and import format will depend on the instance application specifics. The primary role of the instance application is to provide access to the contract prototype builder and import the resulting text into the application, where users can freely edit and securely store the document, which is accessible only to them.
WikiDeal caters to two primary user groups: those involved in creation (contract and clause models) and those utilizing the platform for building actual contracts. Exactly like on Wikipedia (editors vs readers). It remains open since anyone can become an editor. Established workflows for content discussion, consensus achievements, legal verification, and approval will probably allow us to keep the wiki open for anonymous editing (mind spam combatting workflow). Maybe it won't be as open as Wikipedia: if we want to allow users to store anything (like personalized variables, etc.), the account creation shall be mandatory unless we move the “personalized” part to the external instance application.
So, the whole project can consist of two main parts:
- The wiki. Open to the community. Focused on creating contract model collections for different deals, countries, and use cases (and in multiple languages, maybe). Allows standard contract construction and printing. Even anonymously. It is already a considerable project.
- The instance application. Self hosted, personal or shared (like within an organisation). Allows editing, storing, signing and handling personalized copies of contracts generated using the wiki. Can implement the peer-to-peer signing workflow. Not MediaWiki. Independent, no MediaWiki account is required. Can connect to different WikiDeal instances (federated, decentralized).
Key features
Also see: Key Features
- Contract Models: Templates for agreements open for community editing and discussion.
- Clauses Customization: Users can manipulate legal clauses to ensure adaptability and compliance.
- Contract Creation: Users select models, input variables, and personalize contracts, saving them in different formats.
- Negotiation & Signing: Contracts go through negotiation phases with different statuses (e.g., draft, signed).
- Post-Deal Support: Reminders, automated payments, and service activation/cancellation based on contract terms.
- Decentralization: Contracts are stored locally for privacy; proposals for decentralized solutions for organizations and individuals are in place.
With plans for a proof of concept and MVP, WikiDeal envisions a community-driven space fostering innovation in contract management.
Additional features in the pipeline include personalized contract styling, external contract creation tools, and true peer-to-peer contract creation, aiming for a transformative impact on how contracts are created, managed, and executed.
Planing
- Needs analysis with experts. Investigation and adapting the code of existing mediawiki extensions, such as : Pageforms, Semantic wiki, Cite extension, Wikibase client
Including meeting to design and adapt : - mockups - workflows - development rules/principles - Design activities: a) Developing basic wireframes to visualize the layout and flow of the MVP and b) User Stories: Defining user stories to outline the expected user interactions.
- Development activities: Implementing the core features identified in the earlier stages.
- Testing individual components .
- Release the MVP to a limited audience or beta testers to collect feedback and monitor its performance in a real-world environment.
- Iterate Based on Feedback: Analyze the feedback received and make necessary improvements.
- Track key performance indicators (KPIs) to assess the success of the MVP and guide further iterations.
Rough time estimates
Estimated time required for experienced developers proficient in PHP and JavaScript to use MediaWiki and develop MediaWiki extensions.
Customization of contract templates and clauses (MediaWiki)
PHP & MediaWiki extension development: approximately 100-120 hours.
JavaScript for frontend: estimated 60-80 hours.
Basic contract creation (MediaWiki)
PHP & MediaWiki extension development: approximately 120-140 hours.
JavaScript for frontend: estimated 80-100 hours.
Advanced contract creation & Post-Deal support (instance application)
Development: estimated at 140-160 hours.
Negotiation & Signing (instance application)
Development: approximately 100-120 hours.
Decentralization (instance application)
Development: approximately 180-200 hours.
Totals
These estimates are subject to variation based on the familiarity with developing MediaWiki extensions, specific requirements that are to be decided, and other factors.
Total estimated: 780-920 hours (includes hours of coaching, coordination, and documentation)