Skip to content

Instantly share code, notes, and snippets.

@simonbrowndotje
Last active August 29, 2015 14:03
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save simonbrowndotje/4bb216f62a15fae1cb08 to your computer and use it in GitHub Desktop.
An updated architecture model for the techtribes.je website.
{
"people" : [ {
"id" : 4,
"name" : "Administration User",
"description" : "A system administration user.",
"location" : "External",
"relationships" : [ {
"sourceId" : 4,
"destinationId" : 1,
"description" : "Add people, add tribes and manage tribe membership."
}, {
"sourceId" : 4,
"destinationId" : 8,
"description" : "Add people, add tribes and manage tribe membership."
}, {
"sourceId" : 4,
"destinationId" : 43,
"description" : "uses"
} ],
"type" : "Person"
}, {
"id" : 3,
"name" : "Aggregated User",
"description" : "A user or business with content that is aggregated into the website.",
"location" : "External",
"relationships" : [ {
"sourceId" : 3,
"destinationId" : 1,
"description" : "Manage user profile and tribe membership."
}, {
"sourceId" : 3,
"destinationId" : 8,
"description" : "Manage user profile and tribe membership."
}, {
"sourceId" : 3,
"destinationId" : 35,
"description" : "uses"
} ],
"type" : "Person"
}, {
"id" : 2,
"name" : "Anonymous User",
"description" : "Anybody on the web.",
"location" : "External",
"relationships" : [ {
"sourceId" : 2,
"destinationId" : 39,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 44,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 1,
"description" : "View people, tribes (businesses, communities and interest groups), content, events, jobs, etc from the local tech, digital and IT sector."
}, {
"sourceId" : 2,
"destinationId" : 8,
"description" : "View people, tribes (businesses, communities and interest groups), content, events, jobs, etc from the local tech, digital and IT sector."
}, {
"sourceId" : 2,
"destinationId" : 30,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 32,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 46,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 41,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 38,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 40,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 48,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 31,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 37,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 34,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 45,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 47,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 36,
"description" : "uses"
}, {
"sourceId" : 2,
"destinationId" : 33,
"description" : "uses"
} ],
"type" : "Person"
} ],
"softwareSystems" : [ {
"id" : 5,
"name" : "Twitter",
"description" : "twitter.com",
"location" : "External",
"relationships" : [ ],
"containers" : [ ],
"type" : "SoftwareSystem"
}, {
"id" : 7,
"name" : "Blogs",
"description" : "RSS and Atom feeds",
"location" : "External",
"relationships" : [ ],
"containers" : [ ],
"type" : "SoftwareSystem"
}, {
"id" : 6,
"name" : "GitHub",
"description" : "github.com",
"location" : "External",
"relationships" : [ ],
"containers" : [ ],
"type" : "SoftwareSystem"
}, {
"id" : 1,
"name" : "techtribes.je",
"description" : "techtribes.je is the only way to keep up to date with the IT, tech and digital sector in Jersey and Guernsey, Channel Islands",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 1,
"destinationId" : 5,
"description" : "Gets profile information and tweets from."
}, {
"sourceId" : 1,
"destinationId" : 6,
"description" : "Gets information about public code repositories from."
}, {
"sourceId" : 1,
"destinationId" : 7,
"description" : "Gets content using RSS and Atom feeds from."
} ],
"containers" : [ {
"id" : 9,
"name" : "Content Updater",
"description" : "Updates profiles, tweets, GitHub repos and content on a scheduled basis.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 9,
"destinationId" : 10,
"description" : "Reads from and writes data to"
}, {
"sourceId" : 9,
"destinationId" : 11,
"description" : "Reads from and writes data to"
}, {
"sourceId" : 9,
"destinationId" : 12,
"description" : "Writes to"
}, {
"sourceId" : 9,
"destinationId" : 5,
"description" : "Gets profile information and tweets from."
}, {
"sourceId" : 9,
"destinationId" : 6,
"description" : "Gets information about public code repositories from."
}, {
"sourceId" : 9,
"destinationId" : 7,
"description" : "Gets content using RSS and Atom feeds from."
} ],
"technology" : "Standalone Java 7 application",
"components" : [ {
"id" : 17,
"name" : "SearchComponent",
"description" : "Search facilities for news feed entries and tweets.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 17,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 17,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 17,
"destinationId" : 12,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.search.SearchComponent",
"implementationType" : "je.techtribes.component.search.LuceneSearchComponent",
"type" : "Component"
}, {
"id" : 27,
"name" : "GitHubConnector",
"description" : "Gets information about repositories from GitHub.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 27,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 27,
"destinationId" : 6,
"description" : "Gets the list of public repositories from"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.githubconnector.GitHubConnector",
"implementationType" : "je.techtribes.component.githubconnector.GitHubConnectorImpl",
"type" : "Component"
}, {
"id" : 16,
"name" : "BadgeComponent",
"description" : "Manages the badges that have been awarded to people and tribes.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 16,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 16,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 16,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.badge.BadgeComponent",
"implementationType" : "je.techtribes.component.badge.BadgeComponentImpl",
"type" : "Component"
}, {
"id" : 18,
"name" : "ActivityComponent",
"description" : "Provides access to information about, and calculates, the recent activity rankings.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 18,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 18,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 18,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.activity.ActivityComponent",
"implementationType" : "je.techtribes.component.activity.ActivityComponentImpl",
"type" : "Component"
}, {
"id" : 21,
"name" : "NewsFeedConnector",
"description" : "Retrieves news feed entries from RSS and Atom feeds.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 21,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 21,
"destinationId" : 7,
"description" : "Gets blog/news posts from"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.newsfeedconnector.NewsFeedConnector",
"implementationType" : "je.techtribes.component.newsfeedconnector.RomeNewsFeedConnector",
"type" : "Component"
}, {
"id" : 13,
"name" : "EventComponent",
"description" : "Provides access to information about local events (e.g. meetups, user groups, etc).",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 13,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 13,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 13,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.event.EventComponent",
"implementationType" : "je.techtribes.component.event.EventComponentImpl",
"type" : "Component"
}, {
"id" : 19,
"name" : "TweetComponent",
"description" : "Provides access to tweets.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 19,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 19,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 19,
"destinationId" : 11,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.tweet.TweetComponent",
"implementationType" : "je.techtribes.component.tweet.TweetComponentImpl",
"type" : "Component"
}, {
"id" : 24,
"name" : "TwitterConnector",
"description" : "Pulls profile information and tweets from Twitter.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 24,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 24,
"destinationId" : 5,
"description" : "Gets tweets and profile information from"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.twitterconnector.TwitterConnector",
"implementationType" : "je.techtribes.component.twitterconnector.Twitter4jTwitterConnector",
"type" : "Component"
}, {
"id" : 14,
"name" : "BadgeAwarder",
"description" : "Awards badges to people and tribes based upon recent activity.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 14,
"destinationId" : 19,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 18,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 16,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 26,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 25,
"description" : ""
}, {
"sourceId" : 14,
"destinationId" : 23,
"description" : "Writes logs messages using"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.badgeawarder.BadgeAwarder",
"implementationType" : "je.techtribes.component.badgeawarder.BadgeAwarderImpl",
"type" : "Component"
}, {
"id" : 22,
"name" : "GitHubComponent",
"description" : "Provides access to the list of GitHub repos associated with content sources.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 22,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 22,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 22,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.github.GitHubComponent",
"implementationType" : "je.techtribes.component.github.GitHubComponentImpl",
"type" : "Component"
}, {
"id" : 20,
"name" : "ContentSourceComponent",
"description" : "Provides access to information about people and tribes.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 20,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 20,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.contentsource.ContentSourceComponent",
"implementationType" : "je.techtribes.component.contentsource.ContentSourceComponentImpl",
"type" : "Component"
}, {
"id" : 15,
"name" : "ScheduledContentUpdater",
"description" : "Refreshes the data behind techtribes.je on a scheduled basis.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 15,
"destinationId" : 14,
"description" : "Awards badges using"
}, {
"sourceId" : 15,
"destinationId" : 21,
"description" : "Downloads RSS/Atom feeds for blogs"
}, {
"sourceId" : 15,
"destinationId" : 28,
"description" : "Recalculates the people/tribe activity rankings using"
}, {
"sourceId" : 15,
"destinationId" : 26,
"description" : "Stores new and updated news feed entries using"
}, {
"sourceId" : 15,
"destinationId" : 19,
"description" : "Stores new tweets using"
}, {
"sourceId" : 15,
"destinationId" : 20,
"description" : "Gets people and tribes from"
}, {
"sourceId" : 15,
"destinationId" : 17,
"description" : "Updates the search indexes for new tweets/news feed entries using"
}, {
"sourceId" : 15,
"destinationId" : 22,
"description" : "Updates the list of repositories using"
}, {
"sourceId" : 15,
"destinationId" : 27,
"description" : "Gets public repositories using the GitHub API"
}, {
"sourceId" : 15,
"destinationId" : 24,
"description" : "Refreshes profile information and gets new tweets using the REST and streaming APIs"
}, {
"sourceId" : 15,
"destinationId" : 23,
"description" : "Writes logs messages using"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.scheduledcontentupdater.ScheduledContentUpdater",
"implementationType" : "je.techtribes.component.scheduledcontentupdater.ScheduledContentUpdaterImpl",
"type" : "Component"
}, {
"id" : 26,
"name" : "NewsFeedEntryComponent",
"description" : "Provides access to blog entries and news.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 26,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 26,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 26,
"destinationId" : 11,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.newsfeedentry.NewsFeedEntryComponent",
"implementationType" : "je.techtribes.component.newsfeedentry.NewsFeedEntryComponentImpl",
"type" : "Component"
}, {
"id" : 23,
"name" : "LoggingComponent",
"description" : "Provides logging facilities to all other components.",
"location" : "Internal",
"relationships" : [ ],
"technology" : "",
"interfaceType" : "je.techtribes.component.log.LoggingComponent",
"implementationType" : "je.techtribes.component.log.CommonsLoggingComponent",
"type" : "Component"
}, {
"id" : 28,
"name" : "ActivityUpdater",
"description" : "Updates the recent activity rankings.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 28,
"destinationId" : 19,
"description" : ""
}, {
"sourceId" : 28,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 28,
"destinationId" : 26,
"description" : ""
}, {
"sourceId" : 28,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 28,
"destinationId" : 25,
"description" : ""
}, {
"sourceId" : 28,
"destinationId" : 13,
"description" : ""
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.activityupdater.ActivityUpdater",
"implementationType" : "je.techtribes.component.activityupdater.ActivityUpdaterImpl",
"type" : "Component"
}, {
"id" : 25,
"name" : "TalkComponent",
"description" : "Provides access to information about talks by local speakers.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 25,
"destinationId" : 23,
"description" : "Writes logs messages using"
}, {
"sourceId" : 25,
"destinationId" : 20,
"description" : ""
}, {
"sourceId" : 25,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.talk.TalkComponent",
"implementationType" : "je.techtribes.component.talk.TalkComponentImpl",
"type" : "Component"
} ],
"type" : "Container"
}, {
"id" : 12,
"name" : "File System",
"description" : "Stores search indexes.",
"location" : "Internal",
"relationships" : [ ],
"technology" : "Local disk",
"components" : [ ],
"type" : "Container"
}, {
"id" : 8,
"name" : "Web Application",
"description" : "Allows users to view people, tribes, content, events, jobs, etc from the local tech, digital and IT sector.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 8,
"destinationId" : 10,
"description" : "Reads from and writes data to"
}, {
"sourceId" : 8,
"destinationId" : 11,
"description" : "Reads from"
}, {
"sourceId" : 8,
"destinationId" : 12,
"description" : "Reads from"
} ],
"technology" : "Apache Tomcat 7.x",
"components" : [ {
"id" : 54,
"name" : "GitHubComponent",
"description" : "Provides access to the list of GitHub repos associated with content sources.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 54,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 54,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 54,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.github.GitHubComponent",
"implementationType" : "je.techtribes.component.github.GitHubComponentImpl",
"type" : "Component"
}, {
"id" : 44,
"name" : "NewsController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 44,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 44,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 44,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 44,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.news.NewsController",
"implementationType" : "je.techtribes.web.controller.news.NewsController",
"type" : "Component"
}, {
"id" : 41,
"name" : "TweetsController",
"description" : "Allows users to view tweets.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 41,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 41,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 41,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 41,
"destinationId" : 56,
"description" : "Gets tweets from"
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.tweets.TweetsController",
"implementationType" : "je.techtribes.web.controller.tweets.TweetsController",
"type" : "Component"
}, {
"id" : 30,
"name" : "TribesController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 30,
"destinationId" : 52,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 56,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 58,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 51,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 49,
"description" : ""
}, {
"sourceId" : 30,
"destinationId" : 54,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.tribes.TribesController",
"implementationType" : "je.techtribes.web.controller.tribes.TribesController",
"type" : "Component"
}, {
"id" : 53,
"name" : "TalkComponent",
"description" : "Provides access to information about talks by local speakers.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 53,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 53,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 53,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.talk.TalkComponent",
"implementationType" : "je.techtribes.component.talk.TalkComponentImpl",
"type" : "Component"
}, {
"id" : 42,
"name" : "UserProfileController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 42,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 42,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 42,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.userprofile.UserProfileController",
"implementationType" : "je.techtribes.web.controller.userprofile.UserProfileController",
"type" : "Component"
}, {
"id" : 55,
"name" : "ActivityComponent",
"description" : "Provides access to information about, and calculates, the recent activity rankings.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 55,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 55,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.activity.ActivityComponent",
"implementationType" : "je.techtribes.component.activity.ActivityComponentImpl",
"type" : "Component"
}, {
"id" : 59,
"name" : "NewsFeedEntryComponent",
"description" : "Provides access to blog entries and news.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 59,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 59,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 59,
"destinationId" : 11,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.newsfeedentry.NewsFeedEntryComponent",
"implementationType" : "je.techtribes.component.newsfeedentry.NewsFeedEntryComponentImpl",
"type" : "Component"
}, {
"id" : 49,
"name" : "EventComponent",
"description" : "Provides access to information about local events (e.g. meetups, user groups, etc).",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 49,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 49,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 49,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.event.EventComponent",
"implementationType" : "je.techtribes.component.event.EventComponentImpl",
"type" : "Component"
}, {
"id" : 52,
"name" : "JobComponent",
"description" : "Provides access to information about recently posted jobs.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 52,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 52,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 52,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.job.JobComponent",
"implementationType" : "je.techtribes.component.job.JobComponentImpl",
"type" : "Component"
}, {
"id" : 36,
"name" : "CodeController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 36,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 36,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 36,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 36,
"destinationId" : 54,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.code.CodeController",
"implementationType" : "je.techtribes.web.controller.code.CodeController",
"type" : "Component"
}, {
"id" : 37,
"name" : "SearchController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 37,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 37,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 37,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 37,
"destinationId" : 51,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.search.SearchController",
"implementationType" : "je.techtribes.web.controller.search.SearchController",
"type" : "Component"
}, {
"id" : 39,
"name" : "SignInController",
"description" : "Allows the user to sign-in and sign-out.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 39,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 39,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 39,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.security.SignInController",
"implementationType" : "je.techtribes.web.controller.security.SignInController",
"type" : "Component"
}, {
"id" : 35,
"name" : "SignOutController",
"description" : "Allows the user to sign-in and sign-out.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 35,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 35,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 35,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.security.SignOutController",
"implementationType" : "je.techtribes.web.controller.security.SignOutController",
"type" : "Component"
}, {
"id" : 40,
"name" : "BadgesController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 40,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 40,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 40,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 40,
"destinationId" : 58,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.badges.BadgesController",
"implementationType" : "je.techtribes.web.controller.badges.BadgesController",
"type" : "Component"
}, {
"id" : 32,
"name" : "TalksController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 32,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 32,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 32,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 32,
"destinationId" : 53,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.talks.TalksController",
"implementationType" : "je.techtribes.web.controller.talks.TalksController",
"type" : "Component"
}, {
"id" : 29,
"name" : "ErrorPageController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 29,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 29,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 29,
"destinationId" : 57,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.ErrorPageController",
"implementationType" : "je.techtribes.web.controller.ErrorPageController",
"type" : "Component"
}, {
"id" : 56,
"name" : "TweetComponent",
"description" : "Provides access to tweets.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 56,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 56,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 56,
"destinationId" : 11,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.tweet.TweetComponent",
"implementationType" : "je.techtribes.component.tweet.TweetComponentImpl",
"type" : "Component"
}, {
"id" : 34,
"name" : "EventsController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 34,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 34,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 34,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 34,
"destinationId" : 49,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.events.EventsController",
"implementationType" : "je.techtribes.web.controller.events.EventsController",
"type" : "Component"
}, {
"id" : 58,
"name" : "BadgeComponent",
"description" : "Manages the badges that have been awarded to people and tribes.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 58,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 58,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 58,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.badge.BadgeComponent",
"implementationType" : "je.techtribes.component.badge.BadgeComponentImpl",
"type" : "Component"
}, {
"id" : 50,
"name" : "LoggingComponent",
"description" : "Provides logging facilities to all other components.",
"location" : "Internal",
"relationships" : [ ],
"technology" : "",
"interfaceType" : "je.techtribes.component.log.LoggingComponent",
"implementationType" : "je.techtribes.component.log.CommonsLoggingComponent",
"type" : "Component"
}, {
"id" : 31,
"name" : "ContentController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 31,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 31,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 31,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 31,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.content.ContentController",
"implementationType" : "je.techtribes.web.controller.content.ContentController",
"type" : "Component"
}, {
"id" : 60,
"name" : "TwitterSignInComponent",
"description" : "Allows users to sign-in with their Twitter ID.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 60,
"destinationId" : 50,
"description" : "Writes logs messages using"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.social.TwitterSignInComponent",
"implementationType" : "je.techtribes.component.social.TwitterSignInComponent",
"type" : "Component"
}, {
"id" : 48,
"name" : "HomePageController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 48,
"destinationId" : 52,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 56,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 53,
"description" : ""
}, {
"sourceId" : 48,
"destinationId" : 49,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.home.HomePageController",
"implementationType" : "je.techtribes.web.controller.home.HomePageController",
"type" : "Component"
}, {
"id" : 46,
"name" : "RssController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 46,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 46,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 46,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 46,
"destinationId" : 50,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.newsfeed.RssController",
"implementationType" : "je.techtribes.web.controller.newsfeed.RssController",
"type" : "Component"
}, {
"id" : 45,
"name" : "PeopleController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 45,
"destinationId" : 56,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 58,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 53,
"description" : ""
}, {
"sourceId" : 45,
"destinationId" : 54,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.people.PeopleController",
"implementationType" : "je.techtribes.web.controller.people.PeopleController",
"type" : "Component"
}, {
"id" : 43,
"name" : "AdminController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 43,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 43,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 43,
"destinationId" : 57,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.admin.AdminController",
"implementationType" : "je.techtribes.web.controller.admin.AdminController",
"type" : "Component"
}, {
"id" : 38,
"name" : "ActivityController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 38,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 38,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 38,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 38,
"destinationId" : 58,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.activity.ActivityController",
"implementationType" : "je.techtribes.web.controller.activity.ActivityController",
"type" : "Component"
}, {
"id" : 33,
"name" : "JobsController",
"description" : "Allows users to view local job opportunities.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 33,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 33,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 33,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 33,
"destinationId" : 52,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.jobs.JobsController",
"implementationType" : "je.techtribes.web.controller.jobs.JobsController",
"type" : "Component"
}, {
"id" : 57,
"name" : "ContentSourceComponent",
"description" : "Provides access to information about people and tribes.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 57,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 57,
"destinationId" : 10,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.contentsource.ContentSourceComponent",
"implementationType" : "je.techtribes.component.contentsource.ContentSourceComponentImpl",
"type" : "Component"
}, {
"id" : 51,
"name" : "SearchComponent",
"description" : "Search facilities for news feed entries and tweets.",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 51,
"destinationId" : 50,
"description" : "Writes logs messages using"
}, {
"sourceId" : 51,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 51,
"destinationId" : 12,
"description" : "Reads from and writes to"
} ],
"technology" : "",
"interfaceType" : "je.techtribes.component.search.SearchComponent",
"implementationType" : "je.techtribes.component.search.LuceneSearchComponent",
"type" : "Component"
}, {
"id" : 47,
"name" : "AboutPageController",
"description" : "",
"location" : "Internal",
"relationships" : [ {
"sourceId" : 47,
"destinationId" : 56,
"description" : ""
}, {
"sourceId" : 47,
"destinationId" : 50,
"description" : ""
}, {
"sourceId" : 47,
"destinationId" : 59,
"description" : ""
}, {
"sourceId" : 47,
"destinationId" : 55,
"description" : ""
}, {
"sourceId" : 47,
"destinationId" : 57,
"description" : ""
}, {
"sourceId" : 47,
"destinationId" : 53,
"description" : ""
} ],
"technology" : "Spring Controller",
"interfaceType" : "je.techtribes.web.controller.AboutPageController",
"implementationType" : "je.techtribes.web.controller.AboutPageController",
"type" : "Component"
} ],
"type" : "Container"
}, {
"id" : 10,
"name" : "Relational Database",
"description" : "Stores people, tribes, tribe membership, talks, events, jobs, badges, GitHub repos, etc.",
"location" : "Internal",
"relationships" : [ ],
"technology" : "MySQL 5.5.x",
"components" : [ ],
"type" : "Container"
}, {
"id" : 11,
"name" : "NoSQL Data Store",
"description" : "Stores content from RSS/Atom feeds (blog posts) and tweets.",
"location" : "Internal",
"relationships" : [ ],
"technology" : "MongoDB 2.2.x",
"components" : [ ],
"type" : "Container"
} ],
"type" : "SoftwareSystem"
} ],
"systemContextViews" : [ {
"softwareSystemId" : 1,
"description" : "",
"name" : "techtribes.je - System Context",
"type" : "SystemContext",
"relationships" : [ {
"sourceId" : 1,
"destinationId" : 7
}, {
"sourceId" : 3,
"destinationId" : 1
}, {
"sourceId" : 1,
"destinationId" : 6
}, {
"sourceId" : 1,
"destinationId" : 5
}, {
"sourceId" : 2,
"destinationId" : 1
}, {
"sourceId" : 4,
"destinationId" : 1
} ],
"elements" : [ {
"id" : 1
}, {
"id" : 2
}, {
"id" : 3
}, {
"id" : 4
}, {
"id" : 5
}, {
"id" : 6
}, {
"id" : 7
} ]
} ],
"containerViews" : [ {
"softwareSystemId" : 1,
"description" : "",
"name" : "techtribes.je - Containers",
"type" : "Container",
"relationships" : [ {
"sourceId" : 8,
"destinationId" : 11
}, {
"sourceId" : 9,
"destinationId" : 6
}, {
"sourceId" : 8,
"destinationId" : 12
}, {
"sourceId" : 2,
"destinationId" : 8
}, {
"sourceId" : 9,
"destinationId" : 11
}, {
"sourceId" : 9,
"destinationId" : 12
}, {
"sourceId" : 9,
"destinationId" : 7
}, {
"sourceId" : 3,
"destinationId" : 8
}, {
"sourceId" : 4,
"destinationId" : 8
}, {
"sourceId" : 9,
"destinationId" : 5
}, {
"sourceId" : 9,
"destinationId" : 10
}, {
"sourceId" : 8,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 3
}, {
"id" : 4
}, {
"id" : 5
}, {
"id" : 6
}, {
"id" : 7
}, {
"id" : 8
}, {
"id" : 9
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 12
} ]
} ],
"componentViews" : [ {
"softwareSystemId" : 1,
"description" : "Awarding badges",
"containerId" : 9,
"name" : "techtribes.je - Content Updater - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 14,
"destinationId" : 16
}, {
"sourceId" : 18,
"destinationId" : 10
}, {
"sourceId" : 14,
"destinationId" : 18
}, {
"sourceId" : 19,
"destinationId" : 11
}, {
"sourceId" : 14,
"destinationId" : 19
}, {
"sourceId" : 25,
"destinationId" : 10
}, {
"sourceId" : 26,
"destinationId" : 11
}, {
"sourceId" : 14,
"destinationId" : 26
}, {
"sourceId" : 16,
"destinationId" : 10
}, {
"sourceId" : 14,
"destinationId" : 25
} ],
"elements" : [ {
"id" : 10
}, {
"id" : 11
}, {
"id" : 14
}, {
"id" : 16
}, {
"id" : 18
}, {
"id" : 19
}, {
"id" : 25
}, {
"id" : 26
} ]
}, {
"softwareSystemId" : 1,
"description" : "Updating information from external systems",
"containerId" : 9,
"name" : "techtribes.je - Content Updater - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 26,
"destinationId" : 11
}, {
"sourceId" : 15,
"destinationId" : 27
}, {
"sourceId" : 15,
"destinationId" : 24
}, {
"sourceId" : 15,
"destinationId" : 19
}, {
"sourceId" : 24,
"destinationId" : 5
}, {
"sourceId" : 27,
"destinationId" : 6
}, {
"sourceId" : 21,
"destinationId" : 7
}, {
"sourceId" : 17,
"destinationId" : 12
}, {
"sourceId" : 15,
"destinationId" : 17
}, {
"sourceId" : 15,
"destinationId" : 26
}, {
"sourceId" : 15,
"destinationId" : 21
}, {
"sourceId" : 22,
"destinationId" : 10
}, {
"sourceId" : 19,
"destinationId" : 11
}, {
"sourceId" : 15,
"destinationId" : 22
} ],
"elements" : [ {
"id" : 5
}, {
"id" : 6
}, {
"id" : 7
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 12
}, {
"id" : 15
}, {
"id" : 17
}, {
"id" : 19
}, {
"id" : 21
}, {
"id" : 22
}, {
"id" : 24
}, {
"id" : 26
}, {
"id" : 27
} ]
}, {
"softwareSystemId" : 1,
"description" : "Updating recent activity",
"containerId" : 9,
"name" : "techtribes.je - Content Updater - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 13,
"destinationId" : 10
}, {
"sourceId" : 28,
"destinationId" : 19
}, {
"sourceId" : 19,
"destinationId" : 11
}, {
"sourceId" : 25,
"destinationId" : 10
}, {
"sourceId" : 28,
"destinationId" : 13
}, {
"sourceId" : 28,
"destinationId" : 26
}, {
"sourceId" : 28,
"destinationId" : 25
}, {
"sourceId" : 26,
"destinationId" : 11
} ],
"elements" : [ {
"id" : 10
}, {
"id" : 11
}, {
"id" : 13
}, {
"id" : 19
}, {
"id" : 25
}, {
"id" : 26
}, {
"id" : 28
} ]
}, {
"softwareSystemId" : 1,
"description" : "AboutPageController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 47,
"destinationId" : 53
}, {
"sourceId" : 56,
"destinationId" : 57
}, {
"sourceId" : 53,
"destinationId" : 57
}, {
"sourceId" : 53,
"destinationId" : 10
}, {
"sourceId" : 47,
"destinationId" : 55
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 2,
"destinationId" : 47
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 47,
"destinationId" : 56
}, {
"sourceId" : 47,
"destinationId" : 59
}, {
"sourceId" : 56,
"destinationId" : 11
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 47,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 47
}, {
"id" : 53
}, {
"id" : 55
}, {
"id" : 56
}, {
"id" : 57
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "ActivityController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 58,
"destinationId" : 10
}, {
"sourceId" : 58,
"destinationId" : 57
}, {
"sourceId" : 38,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 2,
"destinationId" : 38
}, {
"sourceId" : 38,
"destinationId" : 58
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 38,
"destinationId" : 55
}, {
"sourceId" : 57,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 38
}, {
"id" : 55
}, {
"id" : 57
}, {
"id" : 58
} ]
}, {
"softwareSystemId" : 1,
"description" : "AdminController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 43,
"destinationId" : 57
}, {
"sourceId" : 4,
"destinationId" : 43
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 43,
"destinationId" : 55
}, {
"sourceId" : 57,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 4
}, {
"id" : 10
}, {
"id" : 43
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "BadgesController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 40,
"destinationId" : 57
}, {
"sourceId" : 40,
"destinationId" : 55
}, {
"sourceId" : 58,
"destinationId" : 57
}, {
"sourceId" : 40,
"destinationId" : 58
}, {
"sourceId" : 2,
"destinationId" : 40
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 58,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 40
}, {
"id" : 55
}, {
"id" : 57
}, {
"id" : 58
} ]
}, {
"softwareSystemId" : 1,
"description" : "CodeController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 54,
"destinationId" : 10
}, {
"sourceId" : 54,
"destinationId" : 57
}, {
"sourceId" : 36,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 36,
"destinationId" : 55
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 2,
"destinationId" : 36
}, {
"sourceId" : 36,
"destinationId" : 54
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 36
}, {
"id" : 54
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "ContentController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 31,
"destinationId" : 55
}, {
"sourceId" : 31,
"destinationId" : 59
}, {
"sourceId" : 31,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 2,
"destinationId" : 31
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 31
}, {
"id" : 55
}, {
"id" : 57
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "ErrorPageController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 29,
"destinationId" : 55
}, {
"sourceId" : 29,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 10
}, {
"id" : 29
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "EventsController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 49,
"destinationId" : 10
}, {
"sourceId" : 34,
"destinationId" : 55
}, {
"sourceId" : 2,
"destinationId" : 34
}, {
"sourceId" : 34,
"destinationId" : 49
}, {
"sourceId" : 49,
"destinationId" : 57
}, {
"sourceId" : 34,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 57,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 34
}, {
"id" : 49
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "HomePageController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 48,
"destinationId" : 49
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 49,
"destinationId" : 57
}, {
"sourceId" : 52,
"destinationId" : 10
}, {
"sourceId" : 48,
"destinationId" : 55
}, {
"sourceId" : 48,
"destinationId" : 53
}, {
"sourceId" : 53,
"destinationId" : 57
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 2,
"destinationId" : 48
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 53,
"destinationId" : 10
}, {
"sourceId" : 56,
"destinationId" : 11
}, {
"sourceId" : 48,
"destinationId" : 59
}, {
"sourceId" : 48,
"destinationId" : 52
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 48,
"destinationId" : 57
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 52,
"destinationId" : 57
}, {
"sourceId" : 48,
"destinationId" : 56
}, {
"sourceId" : 56,
"destinationId" : 57
}, {
"sourceId" : 49,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 48
}, {
"id" : 49
}, {
"id" : 52
}, {
"id" : 53
}, {
"id" : 55
}, {
"id" : 56
}, {
"id" : 57
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "JobsController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 33,
"destinationId" : 55
}, {
"sourceId" : 33,
"destinationId" : 52
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 33,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 2,
"destinationId" : 33
}, {
"sourceId" : 52,
"destinationId" : 10
}, {
"sourceId" : 52,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 33
}, {
"id" : 52
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "NewsController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 44,
"destinationId" : 57
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 44,
"destinationId" : 59
}, {
"sourceId" : 44,
"destinationId" : 55
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 2,
"destinationId" : 44
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 44
}, {
"id" : 55
}, {
"id" : 57
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "PeopleController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 45,
"destinationId" : 53
}, {
"sourceId" : 53,
"destinationId" : 57
}, {
"sourceId" : 45,
"destinationId" : 55
}, {
"sourceId" : 56,
"destinationId" : 57
}, {
"sourceId" : 53,
"destinationId" : 10
}, {
"sourceId" : 45,
"destinationId" : 59
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 45,
"destinationId" : 58
}, {
"sourceId" : 58,
"destinationId" : 10
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 45,
"destinationId" : 57
}, {
"sourceId" : 45,
"destinationId" : 56
}, {
"sourceId" : 2,
"destinationId" : 45
}, {
"sourceId" : 56,
"destinationId" : 11
}, {
"sourceId" : 54,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 58,
"destinationId" : 57
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 54,
"destinationId" : 57
}, {
"sourceId" : 45,
"destinationId" : 54
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 45
}, {
"id" : 53
}, {
"id" : 54
}, {
"id" : 55
}, {
"id" : 56
}, {
"id" : 57
}, {
"id" : 58
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "RssController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 46,
"destinationId" : 59
}, {
"sourceId" : 2,
"destinationId" : 46
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 46,
"destinationId" : 57
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 46,
"destinationId" : 55
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 46
}, {
"id" : 55
}, {
"id" : 57
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "SearchController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 51,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 37,
"destinationId" : 51
}, {
"sourceId" : 2,
"destinationId" : 37
}, {
"sourceId" : 51,
"destinationId" : 12
}, {
"sourceId" : 37,
"destinationId" : 55
}, {
"sourceId" : 37,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 12
}, {
"id" : 37
}, {
"id" : 51
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "SignInController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 39,
"destinationId" : 55
}, {
"sourceId" : 2,
"destinationId" : 39
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 39,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 39
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "SignOutController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 3,
"destinationId" : 35
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 35,
"destinationId" : 55
}, {
"sourceId" : 35,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 3
}, {
"id" : 10
}, {
"id" : 35
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "TalksController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 32,
"destinationId" : 55
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 2,
"destinationId" : 32
}, {
"sourceId" : 32,
"destinationId" : 53
}, {
"sourceId" : 53,
"destinationId" : 10
}, {
"sourceId" : 53,
"destinationId" : 57
}, {
"sourceId" : 32,
"destinationId" : 57
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 32
}, {
"id" : 53
}, {
"id" : 55
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "TribesController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 30,
"destinationId" : 58
}, {
"sourceId" : 59,
"destinationId" : 11
}, {
"sourceId" : 52,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 30,
"destinationId" : 59
}, {
"sourceId" : 58,
"destinationId" : 57
}, {
"sourceId" : 56,
"destinationId" : 11
}, {
"sourceId" : 30,
"destinationId" : 49
}, {
"sourceId" : 57,
"destinationId" : 10
}, {
"sourceId" : 30,
"destinationId" : 55
}, {
"sourceId" : 30,
"destinationId" : 54
}, {
"sourceId" : 51,
"destinationId" : 57
}, {
"sourceId" : 59,
"destinationId" : 57
}, {
"sourceId" : 56,
"destinationId" : 57
}, {
"sourceId" : 52,
"destinationId" : 57
}, {
"sourceId" : 49,
"destinationId" : 10
}, {
"sourceId" : 2,
"destinationId" : 30
}, {
"sourceId" : 49,
"destinationId" : 57
}, {
"sourceId" : 30,
"destinationId" : 57
}, {
"sourceId" : 30,
"destinationId" : 52
}, {
"sourceId" : 30,
"destinationId" : 56
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 58,
"destinationId" : 10
}, {
"sourceId" : 54,
"destinationId" : 57
}, {
"sourceId" : 54,
"destinationId" : 10
}, {
"sourceId" : 51,
"destinationId" : 12
}, {
"sourceId" : 30,
"destinationId" : 51
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 12
}, {
"id" : 30
}, {
"id" : 49
}, {
"id" : 51
}, {
"id" : 52
}, {
"id" : 54
}, {
"id" : 55
}, {
"id" : 56
}, {
"id" : 57
}, {
"id" : 58
}, {
"id" : 59
} ]
}, {
"softwareSystemId" : 1,
"description" : "TweetsController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 41,
"destinationId" : 56
}, {
"sourceId" : 56,
"destinationId" : 57
}, {
"sourceId" : 41,
"destinationId" : 55
}, {
"sourceId" : 41,
"destinationId" : 57
}, {
"sourceId" : 2,
"destinationId" : 41
}, {
"sourceId" : 56,
"destinationId" : 11
}, {
"sourceId" : 57,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 2
}, {
"id" : 10
}, {
"id" : 11
}, {
"id" : 41
}, {
"id" : 55
}, {
"id" : 56
}, {
"id" : 57
} ]
}, {
"softwareSystemId" : 1,
"description" : "UserProfileController",
"containerId" : 8,
"name" : "techtribes.je - Web Application - Components",
"type" : "Component",
"relationships" : [ {
"sourceId" : 55,
"destinationId" : 10
}, {
"sourceId" : 42,
"destinationId" : 57
}, {
"sourceId" : 55,
"destinationId" : 57
}, {
"sourceId" : 42,
"destinationId" : 55
}, {
"sourceId" : 57,
"destinationId" : 10
} ],
"elements" : [ {
"id" : 10
}, {
"id" : 42
}, {
"id" : 55
}, {
"id" : 57
} ]
} ]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment