"Fossies" - the Fresh Open Source Software Archive

Member "brlcad-7.32.4/doc/STRATEGY" (29 Jul 2021, 11433 Bytes) of package /linux/misc/brlcad-7.32.4.tar.bz2:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 					 # -*- mode: org; coding: utf-8; -*- #
    2 # This is an Emacs org-mode file.  Keybindings: http://orgmode.org/orgcard.txt
    3 
    4 # +TAGS: { UX : U u } { Complex : C c }
    5 # +TAGS: { Comms : P p } { Market : M m }
    6 
    7 BRL-CAD Development Strategy
    8 
    9 This is a living document that defines and aims to help maintain a
   10 consistent develpment strategy for addressing BRL-CAD requirements.
   11 It recognizes areas of strategic importance, outlines projects to
   12 bolster those areas, and identifies specific actionable objectives.
   13 
   14 
   15 * Strategic Areas
   16 
   17   This section itemizes areas of strategic importance which coincide
   18   closely with areas of categoric deficiency.  For each area, we
   19   outline general activities that could strengthen them.  From these
   20   areas, we conceive strategic projects and their associated tasks.
   21 
   22 ** AREA 1: UX                                                            :UX:
   23 *** deploying Archer/MGED -cns                                          :p:C:
   24 *** UI simplification -s                                                  :C:
   25 *** undo / fault tolerance -n
   26 *** prototype Qt -c                                                       :p:
   27 *** UI design / clarification -j                                        :P:C:
   28 *** interaction / integration -j                                          :M:
   29 *** editing constraints, snapping, reuse existing coordinates
   30 *** bug reporting / feature requests                                      :P:
   31 *** portability                                                           :p:
   32 
   33 ** AREA 2: Complexity                                               :Complex:
   34 *** command / tool reduction -cjns                                        :U:
   35 *** API code reduce / simplification / modularity -cjs                    :U:
   36 *** searchability / info -n                                             :U:p:
   37 *** discoverability / documentation (UP)                                :U:P:
   38 *** UI design / clarity (UP)
   39 *** restructure of file hierarchy
   40 *** continuous integration
   41 
   42 ** AREA 3: Communications                                             :Comms:
   43 *** website -cjns                                                         :C:
   44 *** doc integration, website -cjns                                        :C:
   45 *** new content (audience / customer profiles), website                   :C:
   46 *** comms (meeting / promoting our successes / PRB / announcements)   :U:C:M:
   47 *** CRM / IRC                                                           :U:C:
   48 *** leverage existing capability
   49 
   50 ** AREA 4: Marketability                                             :Market:
   51    
   52    FIXME: these need to be sorted and ranked
   53 
   54 *** conversion: import, processing, export -s                           :P:U:
   55 *** geometry analysis performance (interactive ray tracing / opencl)      :U:
   56 *** 3D printing / polygonal export / gcode -s                           :P:U:
   57 *** industrial design: blueprinting, dimensioning, annotations          :P:U:
   58 *** geometry preparation (killing overlaps, hierarchy, V&V)             :U:C:
   59 *** visuals: advanced rendering, animation, simulation                  :P:U:
   60 
   61 * Strategic Projects
   62 
   63   This section itemizes projects conceived to address BRL-CAD's
   64   principal strategic areas.  Each project focuses on one or more
   65   strategic areas devising measurable tasks that support the
   66   particular objective.
   67 
   68 
   69 ** PROJECT: Deploy Archer/MGED Beta (14)
   70 
   71 *** interactivity / blocking indicators - ALPHA (3)
   72 **** TODO multithreaded command execution (2)
   73 **** TODO interface busy indicator (1)
   74 
   75 *** command cleanup - ALPHA (3)
   76 **** TODO inventory + mapping + time (1)
   77 **** TODO design UI / commands (2)
   78 **** TODO sit with users to discuss command migration (0)
   79 
   80 *** feature parity - ALPHA (2)
   81 **** TODO review/finish edit keypointing (oed parity) (1)
   82 **** TODO GUI matrix editing (1)
   83     
   84 *** announcements + migration plan - BETA+ (4)
   85 **** TODO write + publish strategy map and migration plan (1)
   86 **** TODO preliminary discussion with users, discuss tcl scripts (0)
   87 **** TODO archer manual page (1)
   88 **** TODO install basic version of new website (1)
   89 **** TODO sit down review with users (1)
   90 
   91 *** searchable docs - ALPHA (2)
   92 **** TODO command line searching of doc content, apropos (2)
   93 
   94 
   95 ** PROJECT: Deploy Merged Archer/MGED Final (16)
   96 
   97 *** usability parity - BETA (4)
   98 **** TODO classic console mode (1)
   99 **** TODO map from old to new, publish summary (1)
  100 **** TODO reverse .g tempfile backup, edit live (1)
  101 **** TODO graphical query ray (1)
  102 
  103 *** undo - BETA (2)
  104 **** TODO implement libbu filesystem info (1)
  105 **** TODO re-enable undo with fs awareness (1)
  106 
  107 *** bug reporting / feedback / metrics - BETA (3)
  108 **** TODO reliable backtrace (1)
  109 **** TODO hook/enable bombardier (1)
  110 **** TODO track metrics (archer commands, tips, docs) (1)
  111 
  112 *** QA acceptance - BETA (3)
  113 **** TODO define acceptance tasks (1)
  114 **** TODO run regression w/ archer (1)
  115 **** TODO make wiki procedural web scripts work (1)
  116 
  117 *** announcements + migration plan - BETA+ (3)
  118 **** TODO review + update tutorials and docs (2)
  119 **** TODO create + give presentation (1)
  120 
  121 *** searchable docs - FINAL (1)
  122 **** TODO web publishing + searching of docs (1)
  123 
  124 
  125 ** PROJECT: Distilling BRL-CAD (11)
  126 
  127 *** revisit scope (vision, mission) (3)
  128 **** TODO communicate intent and updates (1)
  129 **** TODO develop high-level project roadmap (1)
  130 **** TODO connect features to markets (1)
  131 
  132 *** develop command roadmap (4)
  133 **** TODO inventory of command-line commands, decide keep/refactor/kill (1)
  134 **** TODO communicate command-line changes (0)
  135 **** TODO develop command categorization (1)
  136 **** TODO take inventory of ged commands, decide keep/refactor/kill (1)
  137 **** TODO communicate ged command changes (0)
  138 **** TODO assess and mitigate deployment risks (1)
  139 
  140 *** integrate docs (4)
  141 **** TODO plan what to do with html+troff docs (0)
  142 **** TODO stub new docs where missing (1)
  143 **** TODO consolidate docs, one guide per interface (2)
  144 **** TODO kill obsolete docs (0)
  145 **** TODO migrate e-mail and release notes to web (1)
  146 
  147 
  148 ** PROJECT: Website Renovation (10)
  149 
  150 *** improve website usability (1)
  151 **** TODO set up platform-detected downloads on main page (0)
  152 **** TODO publish project vitality/stats (openhub integration) (0)
  153 **** TODO restore search interface (1)
  154 
  155 *** publish docbook docs (3)
  156 **** TODO instantiate / set up sofat's doc interface (1)
  157 **** TODO design pdf stylesheet (1)
  158 **** TODO integrate docs onto website (html+pdf) (1)
  159 
  160 *** publish use cases (3)
  161 **** TODO post 3+ customer profiles (1)
  162 **** TODO post top-10 feature highlights (1)
  163 **** TODO identify alternatives and their highlight mappings (1)
  164 **** TODO post comparison table with 2+ alternatives (0)
  165 
  166 *** set up developer corner (3)
  167 **** TODO ensure buildbot is setup and running handsfree (1)
  168 **** TODO update buildbot stylesheet to fit theme (0)
  169 **** TODO post nightly builds (0)
  170 **** TODO set up cron job to maintain CI and doc updates (1)
  171 **** TODO announce dev corner to brlcad-devel/brlcad-news (0)
  172 **** TODO buildbot <-> cdash/lcov/coverity/gccfarm/swamp integration (1)
  173 
  174 
  175 ** PROJECT: Deploy GCV (9)
  176 
  177 *** 3dm "round-tripping" (2)
  178 **** TODO integrate existing importer (0)
  179 **** TODO NURBS export support (1)
  180 **** TODO document entity support (1)
  181 
  182 *** documentation (3)
  183 **** TODO convert jon's write-up to docbook (0)
  184 **** TODO integrate jon's plugin examples (1)
  185 **** TODO write and publish plugin API policy (1)
  186 **** TODO write and publish GCV feature profile on website (1)
  187 
  188 *** CLI usability (2)
  189 **** TODO design usage / synopsis (1)
  190 **** TODO provide logging/debugging interface (0)
  191 **** TODO integrate bot_dump into gcv (1)
  192 
  193 *** robust deployment (2)
  194 **** TODO convert tlib via automated testing (1)
  195 **** TODO automate extraction of sources from checkout (0)
  196 **** TODO integrate gcv into mged/archer (0)
  197 **** TODO troubleshoot JASP export memory issue (1)
  198 
  199 
  200 ** PROJECT: Performant Pipeline (15)
  201 
  202 *** coherent Boolean evaluation (3)
  203 **** TODO preliminary OpenCL conversion (1)
  204 **** TODO eliminate branching (1)
  205 **** TODO V&V with specific test cases (1)
  206 
  207 *** audit ray dispatching (3)
  208 **** TODO define ray bundling API (1)
  209 **** TODO audit librt ray API, consolidate (1)
  210 
  211 *** implement bundled ray dispatch (2)
  212 **** TODO integrate Costa's GSoC work (1)
  213 **** TODO propagate bundle through spatial partition (1)
  214 **** TODO convert rt* to new bundled API (1)
  215 
  216 *** on-demand NURBS tree-build (4)
  217 **** TODO formulate a design / approach (1)
  218 **** TODO dynamic tree build with minimal malloc (2)
  219 **** TODO profile and validate results (1)
  220 
  221 *** coherent NURBS evaluation (1)
  222 **** TODO review 2006 paper (0)
  223 **** TODO convert openNURBS surface evaluation to OpenCL (1)
  224 
  225 *** performant raytrace image display (2)
  226 **** TODO optimize libdb/libfb to remove bottleneck (1)
  227 **** TODO update archer for interactive tracing display (1)
  228 
  229 
  230 ** PROJECT: Raytrace Prep Caching (10)
  231 
  232 *** implement LIBBU data caching (3)
  233 **** TODO document libbu data caching API (1)
  234 **** TODO create data caching test cases (1)
  235 **** TODO implement libbu data caching (1)
  236 
  237 *** implment LIBRT object caching (4)
  238 **** TODO serialize BoT prep data to cache (1)
  239 **** TODO serialize NURBS prep data to cache (1)
  240 **** TODO serialize tess/plot data to cache (2)
  241 
  242 *** update tools to utilize the cache (3)
  243 **** TODO update rt* to use prep cache (1)
  244 **** TODO update mged/archer to use tess/plot cache (1)
  245 **** TODO document the prep cache interface (1)
  246 
  247 
  248 ** PROJECT: Progressive Geometry Display (11)
  249 
  250 *** asynchronous geometry display (4)
  251 **** TODO modify display loop to run in separate thread (2)
  252 **** TODO update draw command to dispatch (2)
  253 
  254 *** ray trace display manager (4)
  255 **** TODO review rtgl code (1)
  256 **** TODO design incremental loading architecture (1)
  257 **** TODO implement incremental ray tracing (2)
  258 
  259 *** point cloud hashing (3)
  260 **** TODO design LoD point cloud storage approach (1)
  261 **** TODO calculate LoD point cloud utility metric (1)
  262 **** TODO implement LoD point cloud loading (3)
  263 
  264 
  265 ** TEMPLATE: Project Title
  266 
  267    Here is an example project that summarizes the taxonomy and
  268    structure of a strategic project.  A project should be scoped to
  269    less than 4 months of full-time uninterrupted effort.  A project
  270    must have at least 1 objective.
  271 
  272 *** objective
  273 
  274     Objectives should be simple with identifiable completion criteria.
  275     An objective should be achievable in 4 weeks or less with larger
  276     objectives divided into separate smaller chunks.  Each objective
  277     must have at least 1 task.
  278 
  279 **** TODO task
  280 
  281      A task is actionable work that should take someone 4 weeks or
  282      less of full-time uninterrupted effort, estimated in weeks, with
  283      0 for tasks less than 2 days.
  284 
  285 
  286 * Strategic Strengths
  287 ** project
  288 *** open source
  289 *** cross-platform
  290 *** free software
  291 *** 30-years of development
  292 *** massive investment
  293 *** extensive API
  294 *** extensive documentation
  295 ** code
  296 *** extensively modular
  297 *** scalability
  298 *** embeddable
  299 *** efficient workflow
  300 *** flexible workflow
  301 *** DoD-accreddited
  302 *** integrated into MUVES, AJEM, COVART
  303 ** modeling
  304 *** hybrid representation system
  305 *** wide variety of supported entities
  306 *** csg, nurbs, triangles, volumes, point clouds
  307 *** scriptable geometry
  308 *** procedural geometry
  309 *** geometry conversion
  310 *** geometry editing
  311 ** analysis
  312 *** geometry v&v
  313 *** geometry preparation
  314 *** joint articulation system
  315 *** physics simulation system
  316 *** ray tracing performance
  317 *** analytic ray tracing
  318 *** solid ray tracing
  319 *** geometry visualization
  320 
  321 # Local Variables:
  322 # mode: org
  323 # End: