Aras Best Practices: Community Projects, Part 1

※本記事は、2017年11月9日にAras Corporation ELI DONAHUEによって投稿された記事を和訳したものです。

 

Arasコミュニティプロジェクトを作成する際のヒントとベストプラクティスをお伝えします。

あなたが書いたソースコードを含める

すべてのArasコミュニティプロジェクトには、オリジナルのソースコードが含まれていなければなりません。たとえば、Arasに関係する外部アプリケーションを作成する場合、コンパイルされたコード(dll、実行可能ファイルなど)に加えてプロジェクトソースコードを提供する必要があります。これは、メンバーが共に成長し、協力し合える強いオープンソースコミュニティを維持する上で不可欠です。

Innovator\Client\customerを使用する

外部HTMLファイルやアイコンのフォルダなどのカスタムコードツリーファイルを含める必要がある場合は、そのファイルをInnovator\Client\customerディレクトリの下に置くことをお勧めします。これにより、カスタムファイルが1か所に整理され、アップグレード中に上書きされたり、失われたりするのを防ぐのに役立ちます。

Innovator\Client\customerフォルダ内のファイルは、相対パスで、または

http://localhost/innovatorserver/Client/customer/myFile.html 

http://localhost/innovatorserver/Client/customer/myIcons/myIcon.svg

などの直接パスを介してアクセスできます。

カスタムパッケージを使用する

多くのコミュニティプロジェクトには、対象となるArasデータベースにカスタマイズをインポートするパッケージが含まれています。これらのエクスポートパッケージを作成するときは、既存のArasパッケージにカスタマイズを追加するのではなく、プロジェクト固有のパッケージを作成することをお勧めします。これにより、カスタムアイテムのエクスポートが容易になり、アップグレード中にカスタマイズを上書きするリスクが軽減されます。

たとえば、カスタマイズされたItemType、List、およびMethodアイテムを含むプロジェクトをパッケージングしているとします。このプロジェクトは、組み込みのCategories Listアイテムを変更して、新しい項目タイプをTOCの新しいカテゴリの下に表示することができます。

間違い

Custom itemは、Arasパッケージ 'com.aras.innovator.core'に追加されます。
  • com.aras.innovator.core
    • List
      • Categories
      • Custom List
    • ItemType
      • Custom ItemType
    • Method
      • Custom Method

ベストプラクティス

Custom itemは、Arasプラットフォームまたはアプリケーションパッケージとは別の新しいパッケージに追加されます。
  • com.aras.innovator.core
    • List
      • Categories
  •  elijdonahue.My-Custom-Project
    • List
      • Custom List
    •  ItemType
      • Custom ItemType
    •  Method
      • Custom Method
カスタムパッケージには命名規則はありませんが、覚えやすいのは ' <GitHub username>.<repo name> 'です。プロジェクトがGitHubでホストされていない場合は、名前または会社名を使用できます。これにより、データベース内のどのパッケージが特定のプロジェクトに属するかを素早く判断することができます。

バージョンコントロールを使用する

 Image Source: http://www.amarinfotech.com/gitlab-vs-github-vs-bitbucket.html

Gitのようなバージョンコントロールを使用すると、多くの利点があります。コードの反復的な変更を追跡したり、他のコントリビュータと同時に共同作業したり、GitHub、GitLab、BitBucketなどのオープンソースコード共有プラットフォームを活用することができます。

プロジェクトを文書化する

文書を作る際は3つのことを含めてください。

何をするためのものか?

プロジェクトの内容を説明してください。業界特有のビジネス問題を解決するように設計されていますか?管理タスクを合理化するか、既存のArasの機能を強化するものですか?

どのようにインストールするか?

ダウンロードした時点からプロジェクトを使用可能な状態にするまでの、プロジェクトのインストール方法をユーザーに指示します。対象となるArasインスタンスの前提条件・必要条件(例:Tech DocsはArasにインストールする必要があります。また、サーバーにVisual Studioがインストールされている必要があります など)についても言及してください。

どうやって使うか?

ログインから始めて、プロジェクトを使用するための基本的なステップを伝えます。

あなたのプロジェクトのドキュメントは、長いPDFや重たいMS Wordドキュメントである必要はありません。Aras Labsプロジェクトは、すべてのGitHubリポジトリのルートにあるREADME.mdを使用して文書化されています。例として、Aras Labsプロジェクトをチェックしてください。または、このReadmeをテンプレートとして使用してください

コントリビューターの功績を残す

功績があれば認めましょう。チームと協力してプロジェクトを特定した場合、またはコードを書くために同僚と協力した場合は、提出する際に大声で伝えてください。また、ライセンスが必要とされる場合は特に、使用している可能性のあるサードパーティのベンダー、開発者、設計者を評価してください。

ライセンスを含める

プロジェクトのオープンソースライセンスを選択するためのGitHubのツールをhttps://choosealicense.com/でお試しください。

Arasコミュニティプロジェクトにライセンスを含めることで、コミュニティメンバーにコードの使用方法を伝えてください。Aras Labsによって作成されたすべてのコミュニティプロジェクトは、MITライセンスで公開されています。プロジェクトに適したオープンソースライセンスが不明な場合は、様々なオープンソースライセンスを説明する便利なツールである、GitHubのChooseALicense.comを確認してください。

拡散する!

Arasコミュニティプロジェクトが公開されたら、共有してください!同僚、Twitterのフォロワー、LinkedInなどと共有できる、Arasコミュニティプロジェクトのページにプロジェクトのリンクをお送りします。

最新のArasコミュニティプロジェクト、ブログ、Aras Labsの最新情報を知りたい場合は、Twitterをフォローしてください。

Aras Labs (@araslabs) | Twitter

The latest Tweets from Aras Labs (@araslabs). Aras Labs is the @aras_plm R&D team. We build innovative apps and services to shape the future of PLM. Find our open-source code at https://t.co/Wa1h8VGosR

プロジェクトを提出する準備ができましたか?

プロジェクトの提出、レビューのためhttp://community.aras.com/share-a-project/ へ進んでください。インスピレーションを待っているのか、プロジェクトを提出する準備ができていないのでしょうか? 他のコミュニティメンバーが何をしているのか、また既存のプロジェクトに貢献しているかを知るには、Aras Community Projectsページ(http://community.aras.com/projects/)をご覧ください。