Structure101 Studio 6.1

모듈 및 계단식 작업 목록에 대한 지원을 추가합니다.
10월 20, 2021 - 13:31
신규 버전

기능

Modules

  • Structure101 "modules" are protected scopes - you can define:
    • Which containers are "modules".
    • The public APIs to modules.
    • The allowed module-to-module dependencies.
    • Any deprecated items within the public API's.
  • The modules capability affects most Structure101 product components as follows:
    • Studio
      • Studio is where you define modules, API's and module-to-module dependencies.
      • A new tab sheet in the project settings lets you enable module dependency checking, in 3 categories (you can select any subset):
        • Module API violations.
        • Module requires violations (these are the allowed module-to-module dependencies).
        • Deprecation violations.
      • A new "module" sub-menu lets you create actions in the current Action list to:
        • Convert a package into a module.
        • Convert a module back to a (normal) package.
        • Make a folder public to the enclosing module.
        • Make a public folder private again.
        • Deprecate an item.
        • Un-deprecate an item.
        • Set all items that are currently used to be public.
        • Set all unused items to be private.
      • Any module, public, deprecated items are shown as such using the item icons.
      • A new Module violations list has been added to the Structure tab - you can navigate from this list to the LSM.
      • There is a new selectable option on the LSM button bar to "always show module violations". This works similarly to the "always show feedback" - you'll typically want to show one or the other.
      • The Module violation counts have been added to the Summary tab.
    • Workspace
      • Workspace displays the modules as defined in Studio, along with any violations.
      • The lists in Workspace have been changed from tabs to a treeview-driven widget with sections for the main categories of problems (and the summary numbers rolled up):
        • Structure - lists of fat and tangled items.
        • Structure Spec - any violations of the Spec as defined in Studio.
        • Modules - any violations of the Modules definition as defined in Studio.
      • Note that you will need to enable "Apply actions" in order to pick up the module actions.
      • Added a new settings menu which lets you select which kinds of dependencies you wish to be always displayed (you still see all dependencies related to an item when you mouseover the item).
    • Dashboard
      • Dashboard now includes the module violation counts and lists of violations, and lets you trend the totals over time.

Cascading Action Lists

  • Prior to this release, action lists were unconnected, and all applied actions were on a single list. You could duplicate and extend a list, but it was not easy to go back and alter or extend the original list.
  • This release adds the ability to inject one action list into another. This means that you can organize, or cascade action lists into groups, each with it's own focus - for example, to be implemented by a different developer, to fork alternative solutions, or to separate aspects of a larger activity.
  • Cascading Action lists can be used in conjunction with the new Modules feature. For example you could define one list to do some initial restructuring in preparation for module definition. Then you could inject the preparatory list into the start of a new list that defines the module API's. Then you could inject that list into another list that repairs API violations.

New action list Import/Export capabilities

  • Added the ability to import and export action Lists.
    • On the action list menu you'll see 4 import/export commands. These let you import or export the current action list in tab-separated or XML format.
      • The tab-separate format is limited to module commands (like "convert folder to a module" and "make private to enclosing module"). This is useful when you are importing the module definitions from an external spec - for example modules and APIs from a UML model. The tab-separated format is easy to construct from scripts etc.
    • As modules are defined by actions in action lists, the export capability lets you easily share the API definitions for import by other teams that use your project.
    • You can likewise import Action Lists into a Structure101 project at build time using the headless command line interface.
Structure101 Studio

Structure101 Studio

대용량의 복합 코드베이스를 이해, 분석, 리팩터링 및 제어하는 일련의 도구입니다.

궁금한 점이 있으세요?

Structure101 사 제품 라이선스 담당자와 라이브 채팅