Explore BrainMass

Explore BrainMass

    Software Design Alternatives

    This content was COPIED from BrainMass.com - View the original, and get the already-completed solution here!

    Describe the alternatives that were considered during the design stage of the project. What were the considerations in choosing the best alternative strategy? Outline the design tools and techniques used for the project. You may draw any supporting structure charts and process design to support your description and import into the document.

    Were CASE or object-oriented design techniques used for the project?

    © BrainMass Inc. brainmass.com March 4, 2021, 7:49 pm ad1c9bdddf

    Solution Preview

    Below are approaches similar to what we apply in our developments.

    * Algorithmic Design
    It is a top-down design based on the functions performed by the system. It follows a "divide and conquer" strategy based on functions - more general functions are iteratively/recursively decomposed into more specific ones.

    The primary design components correspond to processing steps in the execution sequence, similar to a recipe for cooking a meal.

    * Object-oriented Design
    This design is based on modeling classes and objects in the application domain. The classes and objects may or may not reflect the "real world".

    It generally follows a "hierarchical data abstraction" strategy where the
    design components are based on classes, objects, modules, and processes.

    Operations are related to specific objects and/or classes of objects and groups of classes and objects are often combined into frameworks.

    * Structured Design
    This design is based on data structures input and output during system
    operation. It generally follows a decomposition strategy based on data flow between processing components.

    Its primary design components correspond to flow of data:
    - Program structure is derived from data structure
    - Data structure charts show decomposition of input/output streams

    Ths method is often used as the basis for designing data processing systems.

    Design tends to be overly dependent upon temporal ordering of processing phases, e.g., initialize, process, cleanup.

    Changes ...

    Solution Summary

    The design stage of a hypothetical work-related project is discussed.