Throughout the realm of utility improvement, two outstanding approaches provided by platforms like Microsoft Energy Apps are the model-driven and canvas strategies. Mannequin-driven functions prioritize information construction and enterprise processes. They’re constructed on an outlined information mannequin, guaranteeing information consistency and integrity. This strategy is right for functions requiring advanced enterprise logic and relationships between information entities. Consider a buyer relationship administration system the place varied information factors, like buyer particulars, interactions, and orders, are interconnected. Canvas functions, conversely, supply better design flexibility. They permit builders to create pixel-perfect person interfaces and incorporate wealthy multimedia experiences. Think about constructing a custom-made stock administration app with a visually interesting interface tailor-made to particular warehouse operations.
Selecting the best strategy considerably impacts improvement pace, upkeep, and person expertise. The structured nature of model-driven improvement typically results in sooner creation of useful functions, significantly for data-centric processes. Their inherent information connections facilitate simpler reporting and evaluation. Canvas improvement, whereas requiring extra design effort, gives a excessive diploma of management over the person interface and person expertise, enabling creation of extremely tailor-made and interesting functions. Traditionally, the structured strategy predates the extra versatile, design-focused methodology, reflecting the evolution of utility improvement in direction of better person expertise customization.
This foundational understanding of the 2 approaches units the stage for a deeper exploration of their respective strengths, weaknesses, and superb use instances, which can be mentioned within the sections that comply with.
1. Knowledge-centric vs Design-centric
The core distinction between model-driven and canvas apps lies of their major focus: information versus design. This distinction influences improvement methodology, leading to functions optimized for various functions. Understanding this basic distinction is essential for choosing the suitable strategy.
-
Knowledge Modeling and Construction
Mannequin-driven apps prioritize information construction. They’re constructed upon an outlined information mannequin, guaranteeing information integrity and consistency. This construction facilitates sturdy information administration, reporting, and integration with different programs. For instance, a CRM system advantages from a structured information mannequin to handle buyer data, interactions, and gross sales alternatives successfully. Conversely, canvas apps are much less reliant on predefined information buildings, permitting for better flexibility in dealing with numerous information sources however requiring extra handbook information administration.
-
Consumer Interface and Consumer Expertise
Canvas apps emphasize person interface and person expertise design. Builders have granular management over the app’s visible components, enabling extremely custom-made and interactive experiences. A cellular recreation, for instance, requires a extremely custom-made and interesting person interface. Mannequin-driven apps, whereas providing some UI customization, prioritize performance derived from the underlying information mannequin, resulting in a extra standardized person interface. This construction presents advantages for data-heavy functions the place consistency and ease of use are paramount, like information entry types.
-
Improvement Strategy and Pace
Mannequin-driven apps typically leverage pre-built elements and automatic processes, accelerating improvement, significantly for data-centric functions. This strategy is right for quickly prototyping and deploying useful functions. Canvas app improvement, whereas providing better design flexibility, typically requires extra handbook coding and design work, which may affect improvement timelines. This strategy is healthier fitted to tasks prioritizing customized person experiences, even at the price of probably longer improvement cycles.
-
Upkeep and Scalability
The structured nature of model-driven apps simplifies upkeep and updates. Adjustments to the underlying information mannequin propagate all through the appliance, guaranteeing consistency. This attribute makes them appropriate for functions requiring ongoing evolution and adaptation to altering enterprise wants. Canvas apps, because of their versatile nature, could require extra handbook changes throughout updates and may current better complexity in managing scalability as the appliance grows.
The information-centric strategy of model-driven apps and the design-centric focus of canvas apps cater to completely different utility wants. Selecting the suitable strategy requires cautious consideration of the undertaking’s priorities, balancing the necessity for structured information administration in opposition to the need for a extremely custom-made person expertise. By understanding these core variations, builders could make knowledgeable choices that result in efficient and environment friendly utility improvement.
2. Structured vs Versatile
The “structured vs versatile” dichotomy represents a basic distinction between model-driven and canvas apps. This distinction impacts improvement pace, upkeep, and the general person expertise. Understanding this distinction is essential for choosing the suitable improvement strategy for particular undertaking wants.
-
Knowledge Administration
Mannequin-driven apps implement a structured strategy to information administration by way of an outlined information mannequin, guaranteeing information integrity and consistency. This construction is useful for functions requiring advanced information relationships and validations, like enterprise useful resource planning programs. Conversely, canvas apps supply extra flexibility in dealing with information, permitting builders to connect with varied sources and handle information buildings extra freely. This flexibility fits functions with much less inflexible information necessities, similar to occasion registration apps or fast surveys.
-
Consumer Interface Design
Mannequin-driven apps make the most of a predefined person interface based mostly on the underlying information mannequin, offering a constant person expertise throughout the appliance. This standardized strategy streamlines improvement however limits customization choices. Canvas apps supply full management over person interface design, permitting for pixel-perfect layouts and tailor-made person experiences. This freedom makes canvas apps superb for functions requiring distinctive branding or interactive components, like customized dashboards or video games.
-
Improvement Course of
The structured nature of model-driven apps facilitates speedy improvement by way of pre-built elements and automatic processes. This streamlined strategy is advantageous for tasks with tight deadlines or restricted improvement assets. Canvas apps, whereas offering design flexibility, require extra handbook coding and design effort, probably extending improvement timelines. Nonetheless, this granular management permits for better customization and fine-tuning of the person expertise.
-
Software Upkeep
Mannequin-driven apps profit from simplified upkeep because of their structured structure. Updates and modifications are sometimes simpler to implement and handle. Canvas apps, with their versatile design, can current better complexity throughout upkeep, requiring extra handbook changes. This distinction is a key consideration for long-term utility administration and scalability.
The selection between a structured and versatile strategy hinges on the precise necessities of the undertaking. Mannequin-driven apps prioritize construction and effectivity, whereas canvas apps emphasize flexibility and customizability. By rigorously contemplating the trade-offs between these two approaches, builders can choose the optimum platform for constructing efficient and environment friendly functions. The choice straight impacts not solely the preliminary improvement section but in addition the long-term maintainability and scalability of the appliance.
3. Speedy vs Customized Improvement
Improvement pace is a vital issue influencing utility improvement selections. Mannequin-driven and canvas apps supply distinct approaches, every catering to completely different improvement timelines and customization wants. Mannequin-driven improvement prioritizes speedy utility supply. Leveraging pre-built elements and a structured information mannequin, builders can shortly create useful functions with minimal customized coding. This strategy is right for tasks requiring speedy prototyping or options for widespread enterprise processes, similar to primary information entry or workflow automation. Contemplate a state of affairs requiring a fast answer for monitoring worker coaching data. A model-driven app may very well be quickly deployed, leveraging commonplace information fields and relationships to create a useful utility inside a brief timeframe. Conversely, canvas app improvement favors customizability over pace. Builders have granular management over each side of the appliance, from the person interface to the underlying logic. Whereas this flexibility permits for extremely tailor-made options, it comes at the price of elevated improvement effort and time. Think about creating a affected person portal for a healthcare supplier. Canvas apps supply the design flexibility wanted to create a user-friendly interface tailor-made to particular affected person wants, integrating options like appointment scheduling and safe messaging, although requiring extra in depth improvement effort.
The implications of selecting between speedy and customized improvement lengthen past preliminary timelines. Mannequin-driven apps, because of their structured nature, typically simplify upkeep and updates. Adjustments to the underlying information mannequin mechanically propagate by way of the appliance, lowering handbook intervention. Nonetheless, this construction can restrict flexibility for future customizations. Canvas apps, whereas requiring extra upfront improvement funding, supply better long-term adaptability. Their versatile structure permits for steady evolution and integration of latest options, making them appropriate for functions requiring ongoing enhancements or advanced integrations. For example, a model-driven app constructed for primary stock administration would possibly show difficult to adapt if the enterprise requires integrating real-time warehouse monitoring performance. A canvas app, whereas initially extra advanced to develop, would supply the pliability wanted for such future integrations.
Deciding on the suitable improvement strategy requires a cautious evaluation of undertaking priorities. Elements similar to required supply pace, the extent of customization wanted, and long-term upkeep issues all play an important position within the decision-making course of. Understanding the trade-offs between speedy improvement with restricted customization and customized improvement with prolonged timelines is essential for aligning improvement technique with general undertaking targets and guaranteeing a profitable end result. The selection must be pushed by a transparent understanding of present wants and future scalability necessities.
4. Complicated vs Easy Logic
Software logic, encompassing the principles and processes governing information manipulation and workflow automation, performs an important position in figuring out the suitability of model-driven versus canvas apps. Mannequin-driven functions excel in eventualities requiring advanced enterprise logic. Their inherent connection to a structured information mannequin permits for the seamless implementation of intricate relationships, validations, and automatic workflows. Contemplate a mortgage utility course of involving a number of approval phases, credit score checks, and danger assessments. A model-driven app can successfully handle these complexities by leveraging the info mannequin to implement guidelines and automate decision-making. Conversely, canvas apps are higher fitted to functions with easier logic. Their power lies in person interface design and person expertise, whereas advanced, multi-stage processes can turn out to be difficult to handle inside a canvas app’s extra versatile construction. A easy expense monitoring utility, for instance, advantages from the design flexibility of a canvas app with out requiring advanced logic administration.
The excellence between advanced and easy logic straight impacts improvement effectivity and long-term maintainability. Mannequin-driven apps, by managing advanced logic throughout the information mannequin, typically simplify improvement and cut back the necessity for in depth customized coding. This strategy additionally enhances maintainability, as modifications to enterprise logic might be applied straight throughout the information mannequin, guaranteeing consistency throughout the appliance. Canvas apps, whereas providing better flexibility for less complicated logic, could require extra in depth coding and testing to implement advanced processes. This complexity can enhance improvement time and introduce challenges for ongoing upkeep. For instance, implementing a classy stock administration system with real-time inventory updates and automatic reordering can be extra successfully dealt with inside a model-driven app, leveraging its sturdy information administration capabilities. Trying to copy this complexity inside a canvas app would necessitate important customized coding, probably impacting efficiency and maintainability.
Understanding the connection between utility logic and the selection between model-driven and canvas apps is essential for profitable utility improvement. Selecting the unsuitable strategy can result in elevated improvement time, compromised performance, and difficulties in long-term upkeep. Deciding on the platform aligned with the complexity of the appliance’s logic ensures a extra environment friendly improvement course of and a extra sturdy, maintainable answer. The choice must be guided by a radical evaluation of the appliance’s useful necessities and long-term scalability wants, contemplating the strengths and limitations of every strategy relating to logic administration.
5. Predefined vs Freeform UI
Consumer interface (UI) design performs a pivotal position in utility improvement, considerably impacting person expertise and adoption. The selection between a predefined and freeform UI paradigm is a key differentiator between model-driven and canvas apps, influencing improvement pace, customization potential, and the general person expertise. Understanding this distinction is essential for choosing the suitable improvement strategy.
-
Improvement Pace and Effectivity
Mannequin-driven apps leverage a predefined UI construction derived from the underlying information mannequin. This strategy accelerates improvement by offering pre-built elements and layouts, lowering the necessity for in depth UI design. For example, creating an information entry kind for buyer data is expedited by way of pre-defined fields mapped to the info mannequin. Canvas apps, conversely, supply a freeform UI design surroundings. Whereas this permits for pixel-perfect customization and distinctive person experiences, it requires extra handbook design effort, probably extending improvement timelines. Creating a visually participating interactive dashboard, for instance, is healthier suited to a canvas app’s freeform strategy, however calls for extra design assets.
-
Customization and Branding
Canvas apps excel in eventualities requiring in depth UI customization and distinctive branding. Builders have full management over visible components, format, and interactive elements, enabling extremely tailor-made person experiences. Contemplate creating a branded cellular utility with particular design components and interactive options. A canvas app gives the mandatory flexibility to attain this stage of customization. Mannequin-driven apps supply restricted UI customization, primarily by way of configurations throughout the platform’s constraints. This standardization ensures consistency however restricts the flexibility to create extremely individualized person interfaces. Purposes prioritizing constant information presentation and ease of use over visible aptitude, similar to inside information administration instruments, profit from this structured strategy.
-
Consumer Expertise and Accessibility
Whereas canvas apps present better freedom in UI design, cautious consideration of person expertise (UX) ideas and accessibility tips stays essential. A visually interesting however poorly designed interface can negatively affect usability. Mannequin-driven apps, with their predefined UI buildings, typically adhere to established UX patterns, selling consistency and ease of navigation, although probably sacrificing distinctive design components. For data-heavy functions the place environment friendly information entry and retrieval are paramount, this structured strategy can enhance general person productiveness. Complicated functions requiring particular accessibility options, similar to display reader compatibility, could profit from the granular management provided by canvas apps, permitting builders to implement accessibility options straight throughout the UI design.
-
Upkeep and Updates
The structured UI of model-driven apps simplifies upkeep and updates. Adjustments to the underlying information mannequin typically mechanically replicate within the person interface, lowering handbook intervention. Nonetheless, this may additionally restrict flexibility for future UI enhancements. Canvas apps, because of their freeform nature, require extra handbook changes throughout updates, impacting upkeep efforts. Nonetheless, this additionally permits for better adaptability and the flexibility to include evolving design traits or person suggestions extra readily. Contemplate a state of affairs the place the enterprise must replace its branding. Updating the UI of a model-driven app is likely to be faster initially, however a canvas app presents better flexibility to include new branding components totally.
The selection between a predefined and freeform UI strategy is integral to the broader resolution between model-driven and canvas app improvement. This resolution hinges on balancing the necessity for speedy improvement and constant person expertise in opposition to the need for in depth customization and distinctive branding. Deciding on the suitable strategy requires a radical evaluation of undertaking priorities, person wants, and long-term upkeep issues. By understanding the trade-offs between predefined construction and freeform flexibility, builders can create functions that successfully meet each useful necessities and person expectations.
6. Enterprise Course of Focus
A vital distinction between model-driven and canvas apps lies of their inherent deal with enterprise processes. This focus considerably influences utility design, improvement, and long-term utility. Understanding how every strategy addresses enterprise course of administration is important for choosing the optimum improvement path.
-
Workflow Automation
Mannequin-driven apps excel at automating advanced workflows. Their basis on a structured information mannequin permits for the seamless integration of enterprise guidelines and automatic actions, streamlining processes and lowering handbook intervention. Contemplate a multi-stage approval course of for buy orders. A model-driven app can automate routing, notifications, and approvals based mostly on predefined standards. Canvas apps, whereas able to incorporating some workflow logic, are usually much less fitted to advanced, multi-step automation. Their deal with person interface and person expertise makes them extra acceptable for functions the place person interplay and design flexibility are paramount.
-
Knowledge Integrity and Consistency
Mannequin-driven apps prioritize information integrity and consistency. The outlined information mannequin enforces information validation guidelines and relationships, guaranteeing information accuracy and reliability all through the enterprise course of. That is essential for functions managing delicate or vital information, similar to monetary transactions or affected person data. Canvas apps supply extra flexibility in information dealing with, which might be advantageous for much less structured information however requires extra diligence in implementing information validation and guaranteeing consistency. Purposes coping with much less structured information, like social media feeds or user-generated content material, would possibly profit from this flexibility.
-
Integration with Current Techniques
Mannequin-driven apps typically combine seamlessly with present enterprise programs, leveraging the structured information mannequin to attach and change information. This integration streamlines information circulate and improves general enterprise course of effectivity. Contemplate integrating a CRM system with an ERP system for automated order processing and buyer information synchronization. Canvas apps, whereas able to integrating with exterior programs, could require extra customized integration improvement, probably growing implementation complexity. Integrating with particular {hardware} or specialised APIs, the place customized options are sometimes wanted, is likely to be higher dealt with by a canvas app.
-
Adaptability and Evolution
Enterprise processes evolve over time. Mannequin-driven apps, because of their structured nature, might be more difficult to adapt to important course of modifications. Nonetheless, minor changes and updates are usually simpler to implement throughout the outlined information mannequin. Canvas apps, with their versatile structure, supply better adaptability to altering enterprise wants. This flexibility, nonetheless, may introduce complexity in managing updates and guaranteeing consistency throughout the appliance. Quickly altering enterprise environments or tasks with evolving necessities profit from the adaptable nature of canvas apps.
The deal with enterprise processes is a key differentiator in selecting between model-driven and canvas apps. Mannequin-driven apps excel in structured, process-heavy environments, prioritizing automation, information integrity, and integration. Canvas apps supply better flexibility and customization, making them appropriate for functions prioritizing person expertise and flexibility. The choice hinges on a cautious evaluation of the precise enterprise wants, balancing the advantages of structured course of administration in opposition to the necessity for flexibility and customization. Understanding these distinct approaches empowers knowledgeable decision-making, aligning utility improvement with general enterprise aims.
7. Consumer Expertise Focus
Consumer expertise (UX) performs an important position in utility success. The distinct approaches of model-driven and canvas apps supply completely different UX issues, impacting improvement selections and the last word person satisfaction. Understanding how every strategy addresses UX is important for choosing the optimum improvement path.
-
Customization and Management
Canvas apps present builders with granular management over the person interface, enabling extremely custom-made and interesting UX. This flexibility permits for tailoring the appliance to particular person wants and preferences, leading to a extra intuitive and user-friendly expertise. For instance, a cellular utility designed for discipline service technicians might be optimized for one-handed use with massive buttons and streamlined information entry. Mannequin-driven apps, with their predefined UI buildings, supply much less customization flexibility. Whereas this standardization ensures consistency, it might probably restrict the flexibility to create extremely tailor-made UX. Purposes prioritizing environment friendly information entry and retrieval over bespoke design, similar to inside information administration instruments, profit from this structured strategy.
-
Visible Enchantment and Branding
Canvas apps excel in creating visually interesting and brand-consistent person interfaces. Builders have full freedom to include customized branding components, interactive elements, and multimedia content material, enhancing the general person expertise. An organization creating a customer-facing cellular app, for example, can leverage canvas apps to create a visually participating expertise aligned with model tips. Mannequin-driven apps, whereas useful, prioritize information presentation over visible aesthetics. Their standardized UI could not present the identical stage of visible enchantment or branding alternatives. Purposes the place performance and information readability supersede visible design, similar to back-office information processing instruments, are well-suited for this strategy.
-
Responsiveness and Efficiency
Canvas apps, whereas providing design flexibility, require cautious optimization to make sure responsiveness and efficiency throughout completely different units and display sizes. Efficiency might be affected by advanced designs or in depth use of multimedia content material. A extremely interactive information visualization dashboard, for instance, requires cautious optimization in a canvas app to take care of easy efficiency. Mannequin-driven apps, with their standardized UI and optimized elements, usually supply constant efficiency throughout varied units. This reliability is essential for functions requiring secure and predictable efficiency, similar to mission-critical enterprise programs.
-
Accessibility and Inclusivity
Canvas apps supply better management over accessibility options, permitting builders to implement particular functionalities for customers with disabilities. This management permits tailoring the UX to fulfill numerous wants, guaranteeing inclusivity. An utility designed for visually impaired customers, for example, can leverage canvas app options to implement display reader compatibility and keyboard navigation. Mannequin-driven apps, whereas adhering to normal accessibility tips, could not supply the identical stage of granular management for particular accessibility necessities. Purposes requiring stringent accessibility compliance, similar to authorities companies or academic platforms, could profit from the pliability provided by canvas apps.
Consumer expertise issues play a pivotal position in deciding on between model-driven and canvas app improvement. Canvas apps prioritize UX customization and visible enchantment, whereas model-driven apps emphasize effectivity and consistency. The optimum alternative is dependent upon the precise utility necessities, person wants, and the stability between design flexibility and standardized performance. An intensive understanding of those UX issues empowers knowledgeable choices, guaranteeing the event of functions that successfully meet person expectations and drive profitable adoption.
Often Requested Questions
This part addresses widespread inquiries relating to the selection between model-driven and canvas utility improvement approaches. Readability on these factors is essential for knowledgeable decision-making.
Query 1: Which strategy is finest fitted to speedy utility improvement?
Mannequin-driven apps usually supply sooner improvement cycles because of pre-built elements and automatic processes. They are perfect for shortly creating useful functions, particularly for structured information administration.
Query 2: Which strategy presents better flexibility in person interface design?
Canvas apps present full management over UI design, enabling pixel-perfect layouts and customized branding. This flexibility makes them appropriate for functions prioritizing person expertise and visible enchantment.
Query 3: Which strategy is healthier for managing advanced enterprise logic and workflows?
Mannequin-driven apps excel at managing advanced logic by way of their inherent connection to a structured information mannequin. This facilitates implementation of intricate enterprise guidelines and automatic workflows.
Query 4: Which strategy is simpler to take care of and replace over time?
Mannequin-driven apps usually simplify upkeep because of their structured structure and automatic updates. Nonetheless, canvas apps supply better adaptability for important future modifications.
Query 5: Which strategy is finest for cellular utility improvement?
Each approaches can be utilized for cellular improvement. Mannequin-driven apps supply responsive designs out-of-the-box, whereas canvas apps present extra management over the cellular person expertise and permit for offline capabilities.
Query 6: Can these approaches be mixed inside a single utility?
Sure, sure platforms permit embedding canvas apps inside model-driven apps to mix the strengths of each approaches. This permits leveraging the structured information administration of model-driven apps whereas incorporating customized person interfaces the place wanted.
Cautious consideration of those continuously requested questions, alongside a radical evaluation of undertaking necessities, empowers knowledgeable decision-making relating to the optimum improvement strategy. Your best option is dependent upon the precise wants of the undertaking and its long-term targets.
The next part will delve deeper into particular use instances and examples, additional illustrating the sensible utility of every strategy.
Key Issues for Selecting Between Mannequin-Pushed and Canvas Apps
Deciding on the suitable improvement strategy between model-driven and canvas apps requires cautious analysis of undertaking wants and priorities. The next suggestions supply steerage for navigating this decision-making course of.
Tip 1: Prioritize Knowledge Construction and Enterprise Course of Automation. If the appliance facilities round structured information and requires sturdy workflow automation, a model-driven strategy is probably going extra appropriate. Examples embody CRM programs, stock administration functions, and enterprise useful resource planning instruments.
Tip 2: Emphasize Consumer Expertise and Visible Design. When person interface customization and visible enchantment are paramount, canvas apps supply the mandatory flexibility. Examples embody interactive dashboards, mobile-first functions, and customized branding experiences.
Tip 3: Consider Improvement Time and Assets. Mannequin-driven improvement usually presents sooner improvement cycles because of pre-built elements. Canvas apps require extra handbook design and coding, impacting undertaking timelines.
Tip 4: Assess Lengthy-Time period Upkeep Necessities. Mannequin-driven apps typically simplify upkeep because of their structured nature. Canvas apps, whereas providing better flexibility for future modifications, could require extra in depth upkeep efforts.
Tip 5: Contemplate Integration with Current Techniques. Consider the necessity for integration with present programs. Mannequin-driven apps typically facilitate smoother integration with structured information sources, whereas canvas apps could require extra customized integration improvement.
Tip 6: Think about Scalability and Future Development. Contemplate the appliance’s future scalability wants. Canvas apps, with their versatile structure, could supply better adaptability for future growth and have enhancements.
Tip 7: Analyze Software Logic Complexity. For functions involving advanced enterprise guidelines and multi-stage workflows, model-driven apps supply a extra structured and manageable strategy. Canvas apps are higher fitted to functions with easier logic.
Tip 8: Consider Offline Capabilities. If offline performance is a requirement, canvas apps supply higher help for offline eventualities, whereas model-driven apps sometimes require on-line connectivity.
By rigorously contemplating the following tips and aligning them with particular undertaking necessities, builders could make knowledgeable choices relating to essentially the most appropriate improvement strategy, in the end resulting in more practical and profitable utility outcomes.
The concluding part will summarize the important thing takeaways and supply closing suggestions for choosing between model-driven and canvas app improvement.
Conclusion
The “model-driven app vs canvas app” resolution represents a basic crossroads in utility improvement. This exploration has highlighted the core distinctions between these approaches, emphasizing their respective strengths and weaknesses. Mannequin-driven improvement prioritizes structured information, automated processes, and speedy improvement, making it well-suited for functions requiring sturdy information administration and complicated enterprise logic. Conversely, canvas improvement emphasizes person interface flexibility, customizability, and person expertise, catering to functions demanding tailor-made designs and interactive functionalities. The selection hinges on a cautious balancing act between structured effectivity and design flexibility.
Efficient utility improvement necessitates a radical understanding of those divergent paths. Selecting the suitable strategy, aligned with particular undertaking wants and long-term targets, considerably impacts improvement effectivity, person satisfaction, and general undertaking success. Cautious consideration of knowledge construction, person expertise necessities, improvement assets, and long-term upkeep wants empowers knowledgeable decision-making and paves the way in which for constructing sturdy, user-friendly, and impactful functions. The evolving panorama of utility improvement calls for steady analysis of those approaches to leverage their respective strengths and ship optimum options.