Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

merged

  • Loading branch information...
commit 58c3c341c7f8e39f94838db38a5e93aa8f886133 2 parents d829809 + e9eb7b4
filiphjermind filiphjermind authored
BIN  .DS_Store
View
Binary file not shown
3  AS.41/Part 1/Benchmark/Benchmark.csproj
View
@@ -109,6 +109,7 @@
<Compile Include="Owner.cs">
<DependentUpon>DB.tt</DependentUpon>
</Compile>
+ <Compile Include="OwnerNonDB.cs" />
<Compile Include="OwnerSet.cs">
<DependentUpon>Model2.tt</DependentUpon>
</Compile>
@@ -116,6 +117,7 @@
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Scheduler.cs" />
<Compile Include="StatusEnum.cs" />
+ <Compile Include="TestClass.cs" />
<Compile Include="UserInterface.cs">
<SubType>Form</SubType>
</Compile>
@@ -179,6 +181,7 @@
<LastGenOutput>Model2.cs</LastGenOutput>
</None>
<None Include="packages.config" />
+ <None Include="Properties\DataSources\UserInterface.datasource" />
</ItemGroup>
<ItemGroup>
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
3  AS.41/Part 1/Benchmark/BenchmarkSystem.cs
View
@@ -16,6 +16,9 @@ public class BenchmarkSystem
public static readonly int systemCPU = 30;
+ // Lists all the owners registered in the system.
+ public static List<OwnerNonDB> users = new List<OwnerNonDB>();
+
public BenchmarkSystem()
{
Logger l = new Logger();
41 AS.41/Part 1/Benchmark/Job.cs
View
@@ -42,6 +42,12 @@ public OwnerSet owner
set;
}
+ public string ownerString
+ {
+ get;
+ set;
+ }
+
public override String ToString()
{
@@ -73,14 +79,34 @@ public Job(Owner owner, int CPU, double runtime, Func<String[], String> process)
this.Procces = process;
}
- public Job(String owner, int CPU, double runtime, Func<String[], String> process)
- {
+ //public Job(String owner, int CPU, double runtime, Func<String[], String> process)
+ //{
- GlobalInsertionNumber++;
- InsertionNumber = GlobalInsertionNumber;
- if (selectOwner(owner) != null) { this.owner = selectOwner(owner); }
- else { this.owner = newOwner(owner); }
+ // GlobalInsertionNumber++;
+ // InsertionNumber = GlobalInsertionNumber;
+ // if (selectOwner(owner) != null) { this.owner = selectOwner(owner); }
+ // else { this.owner = newOwner(owner); }
+ // // Make sure that the job doesn't require more than 10 and less than 1 cpu.
+ // if (CPU > 10) CPUs = 10;
+ // else if (CPU == 0) CPUs = 1;
+ // else CPUs = CPU;
+
+ // // Check that the runtime doesn't exceed the allowed limit of 6.0
+ // if (runtime > 5.0) ExpectedRuntime = 5.0;
+ // else ExpectedRuntime = runtime;
+
+ // this.State = Enum.Status.IDLE;
+ // this.Procces = process;
+
+ // this.id = newActivityLog(this.owner);
+ //}
+
+ public Job(String owner, int CPU, double runtime, Func<String[], String> process)
+ {
+
+ this.ownerString = owner;
+
// Make sure that the job doesn't require more than 10 and less than 1 cpu.
if (CPU > 10) CPUs = 10;
else if (CPU == 0) CPUs = 1;
@@ -93,7 +119,8 @@ public Job(String owner, int CPU, double runtime, Func<String[], String> process
this.State = Enum.Status.IDLE;
this.Procces = process;
- this.id = newActivityLog(this.owner);
+ this.id = 5;
+ //this.id = newActivityLog(this.owner);
}
29 AS.41/Part 1/Benchmark/OwnerNonDB.cs
View
@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace Benchmark
+{
+ public class OwnerNonDB
+ {
+ public string name
+ {
+ get;
+ set;
+ }
+
+ public int id
+ {
+ get;
+ set;
+ }
+
+ public OwnerNonDB(string name, int id)
+ {
+ this.name = name;
+ this.id = id;
+ BenchmarkSystem.users.Add(this);
+ }
+ }
+}
11 AS.41/Part 1/Benchmark/Program.cs
View
@@ -19,6 +19,17 @@ private string procces1Second()
static void Main(string[] args)
{
+
+
+
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new UserInterface());
+
+ BenchmarkSystem bs = new BenchmarkSystem();
+ Job job = new Job("Bergar Simonsen", 4, 2.2, x => "process 1");
+ bs.Submit(job);
+
Program p = new Program();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
10 AS.41/Part 1/Benchmark/Properties/DataSources/UserInterface.datasource
View
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ This file is automatically generated by Visual Studio .Net. It is
+ used to store generic object data source configuration information.
+ Renaming the file extension or editing the content of this file may
+ cause the file to be unrecognizable by the program.
+-->
+<GenericObjectDataSource DisplayName="UserInterface" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
+ <TypeInfo>Benchmark.UserInterface, Benchmark, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
+</GenericObjectDataSource>
56 AS.41/Part 1/Benchmark/TestClass.cs
View
@@ -0,0 +1,56 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace Benchmark
+{
+ class TestClass
+ {
+ public string name
+ {
+ get;
+ set;
+ }
+
+ public string title
+ {
+ get;
+ set;
+ }
+
+ public int id
+ {
+ get;
+ set;
+ }
+
+ public string category
+ {
+ get;
+ set;
+ }
+
+ public string status
+ {
+ get;
+ set;
+ }
+
+ public string something
+ {
+ get;
+ set;
+ }
+
+ public TestClass(string name, string title, int id, string cat, string s, string status)
+ {
+ this.name = name;
+ this.title = title;
+ this.id = id;
+ this.category = cat;
+ this.something = s;
+ this.status = status;
+ }
+ }
+}
129 AS.41/Part 1/Benchmark/UserInterface.Designer.cs
View
@@ -28,17 +28,19 @@ protected override void Dispose(bool disposing)
/// </summary>
private void InitializeComponent()
{
+ this.components = new System.ComponentModel.Container();
+ System.Windows.Forms.ListViewItem listViewItem1 = new System.Windows.Forms.ListViewItem("nkjwehflkjsadhfd");
this.label1 = new System.Windows.Forms.Label();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.label2 = new System.Windows.Forms.Label();
- this.label3 = new System.Windows.Forms.Label();
- this.label4 = new System.Windows.Forms.Label();
- this.textBox1 = new System.Windows.Forms.TextBox();
- this.textBox2 = new System.Windows.Forms.TextBox();
- this.textBox3 = new System.Windows.Forms.TextBox();
- this.button1 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
+ this.button1 = new System.Windows.Forms.Button();
+ this.textBox3 = new System.Windows.Forms.TextBox();
+ this.textBox2 = new System.Windows.Forms.TextBox();
+ this.textBox1 = new System.Windows.Forms.TextBox();
+ this.label4 = new System.Windows.Forms.Label();
+ this.label3 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.listView1 = new System.Windows.Forms.ListView();
this.ownerColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
@@ -48,8 +50,10 @@ private void InitializeComponent()
this.processColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.statusColumn = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.button3 = new System.Windows.Forms.Button();
+ this.queuesBinding = new System.Windows.Forms.BindingSource(this.components);
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.queuesBinding)).BeginInit();
this.SuspendLayout();
//
// label1
@@ -68,6 +72,7 @@ private void InitializeComponent()
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new System.Drawing.Size(142, 21);
this.comboBox1.TabIndex = 1;
+ this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
//
// groupBox1
//
@@ -86,41 +91,32 @@ private void InitializeComponent()
this.groupBox1.TabStop = false;
this.groupBox1.Text = "New Job";
//
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(6, 16);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(86, 13);
- this.label2.TabIndex = 0;
- this.label2.Text = "Number of CPUs";
- //
- // label3
+ // button2
//
- this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(6, 38);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(94, 13);
- this.label3.TabIndex = 1;
- this.label3.Text = "Expected Runtime";
- this.label3.Click += new System.EventHandler(this.label3_Click);
+ this.button2.Location = new System.Drawing.Point(138, 103);
+ this.button2.Name = "button2";
+ this.button2.Size = new System.Drawing.Size(75, 23);
+ this.button2.TabIndex = 7;
+ this.button2.Text = "Cancel";
+ this.button2.UseVisualStyleBackColor = true;
+ this.button2.Click += new System.EventHandler(this.button2_Click);
//
- // label4
+ // button1
//
- this.label4.AutoSize = true;
- this.label4.Location = new System.Drawing.Point(6, 60);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(45, 13);
- this.label4.TabIndex = 2;
- this.label4.Text = "Process";
- this.label4.Click += new System.EventHandler(this.label4_Click);
+ this.button1.Location = new System.Drawing.Point(219, 103);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(75, 23);
+ this.button1.TabIndex = 6;
+ this.button1.Text = "Add";
+ this.button1.UseVisualStyleBackColor = true;
+ this.button1.Click += new System.EventHandler(this.button1_Click);
//
- // textBox1
+ // textBox3
//
- this.textBox1.Location = new System.Drawing.Point(137, 9);
- this.textBox1.Name = "textBox1";
- this.textBox1.Size = new System.Drawing.Size(157, 20);
- this.textBox1.TabIndex = 3;
+ this.textBox3.Location = new System.Drawing.Point(138, 57);
+ this.textBox3.Name = "textBox3";
+ this.textBox3.Size = new System.Drawing.Size(157, 20);
+ this.textBox3.TabIndex = 5;
//
// textBox2
//
@@ -129,30 +125,41 @@ private void InitializeComponent()
this.textBox2.Size = new System.Drawing.Size(157, 20);
this.textBox2.TabIndex = 4;
//
- // textBox3
+ // textBox1
//
- this.textBox3.Location = new System.Drawing.Point(138, 57);
- this.textBox3.Name = "textBox3";
- this.textBox3.Size = new System.Drawing.Size(157, 20);
- this.textBox3.TabIndex = 5;
+ this.textBox1.Location = new System.Drawing.Point(137, 9);
+ this.textBox1.Name = "textBox1";
+ this.textBox1.Size = new System.Drawing.Size(157, 20);
+ this.textBox1.TabIndex = 3;
//
- // button1
+ // label4
//
- this.button1.Location = new System.Drawing.Point(219, 103);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(75, 23);
- this.button1.TabIndex = 6;
- this.button1.Text = "Add";
- this.button1.UseVisualStyleBackColor = true;
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(6, 60);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(45, 13);
+ this.label4.TabIndex = 2;
+ this.label4.Text = "Process";
+ this.label4.Click += new System.EventHandler(this.label4_Click);
//
- // button2
+ // label3
//
- this.button2.Location = new System.Drawing.Point(138, 103);
- this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(75, 23);
- this.button2.TabIndex = 7;
- this.button2.Text = "Cancel";
- this.button2.UseVisualStyleBackColor = true;
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(6, 38);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(94, 13);
+ this.label3.TabIndex = 1;
+ this.label3.Text = "Expected Runtime";
+ this.label3.Click += new System.EventHandler(this.label3_Click);
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(6, 16);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(86, 13);
+ this.label2.TabIndex = 0;
+ this.label2.Text = "Number of CPUs";
//
// groupBox2
//
@@ -174,12 +181,15 @@ private void InitializeComponent()
this.processColumn,
this.statusColumn});
this.listView1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.listView1.Items.AddRange(new System.Windows.Forms.ListViewItem[] {
+ listViewItem1});
this.listView1.Location = new System.Drawing.Point(3, 16);
this.listView1.Name = "listView1";
this.listView1.Size = new System.Drawing.Size(530, 217);
this.listView1.TabIndex = 0;
this.listView1.UseCompatibleStateImageBehavior = false;
this.listView1.View = System.Windows.Forms.View.Details;
+ this.listView1.SelectedIndexChanged += new System.EventHandler(this.listView1_SelectedIndexChanged);
//
// ownerColumn
//
@@ -218,6 +228,11 @@ private void InitializeComponent()
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button3_Click);
//
+ // queuesBinding
+ //
+ this.queuesBinding.DataSource = typeof(Benchmark.UserInterface);
+ this.queuesBinding.CurrentChanged += new System.EventHandler(this.bindingSource1_CurrentChanged);
+ //
// UserInterface
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@@ -233,6 +248,7 @@ private void InitializeComponent()
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.groupBox2.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.queuesBinding)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@@ -260,6 +276,7 @@ private void InitializeComponent()
private System.Windows.Forms.ColumnHeader processColumn;
private System.Windows.Forms.ColumnHeader statusColumn;
private System.Windows.Forms.Button button3;
+ private System.Windows.Forms.BindingSource queuesBinding;
}
}
169 AS.41/Part 1/Benchmark/UserInterface.cs
View
@@ -11,9 +11,32 @@ namespace Benchmark
{
public partial class UserInterface : Form
{
+ private BindingList<Scheduler> entries = new BindingList<Scheduler>();
+ private BenchmarkSystem bs = new BenchmarkSystem();
+
+ private string selectedOwner = "";
+
public UserInterface()
{
InitializeComponent();
+
+ initializeJobs();
+ initializeOwners();
+ initComboBox();
+
+ queuesBinding.DataSource = entries;
+ }
+
+ /// <summary>
+ /// Initializes the owners combobox.
+ /// Gets all owners registered in the system and populates the combobox.
+ /// </summary>
+ private void initComboBox()
+ {
+ comboBox1.Items.Clear();
+ foreach (OwnerNonDB owner in BenchmarkSystem.users) {
+ comboBox1.Items.Add(owner.name);
+ }
}
private void label3_Click(object sender, EventArgs e)
@@ -26,9 +49,155 @@ private void label4_Click(object sender, EventArgs e)
}
+ /// <summary>
+ /// Called when the "refresh" button is pressed
+ /// Refreshes the list view.
+ /// Filters the jobs according to their owner.
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
+ AddAllJobs();
+ }
+ private void bindingSource1_CurrentChanged(object sender, EventArgs e)
+ {
+
+ }
+
+ private void listView1_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ }
+
+ /// <summary>
+ /// Adds a new job to the queue based on the criteria from the text boxes.
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void button1_Click(object sender, EventArgs e)
+ {
+ if (selectedOwner != "")
+ {
+ if (textBox1.Text != "" && textBox2.Text != "" && textBox3.Text != "")
+ {
+ int CPU = int.Parse(textBox1.Text);
+ double runtime = double.Parse(textBox2.Text);
+ bs.Submit(new Job(selectedOwner, CPU, runtime, x => textBox3.Text));
+
+ if (MessageBox.Show("Your job was submitted", "Job submitted", MessageBoxButtons.OK) == DialogResult.Yes) { }
+
+ clearNewJob();
+ AddAllJobs();
+ } else { if (MessageBox.Show("Please make sure that all fields are filled out.", "Error!", MessageBoxButtons.OK) == DialogResult.Yes) { } }
+ } else { if (MessageBox.Show("You must select a user before submitting a new job.", "Error!", MessageBoxButtons.OK) == DialogResult.Yes) { } }
+ }
+
+ /// <summary>
+ /// Sets "selectedOwner" to whatever value is selected in the combo box.
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ selectedOwner = comboBox1.SelectedItem.ToString();
+ AddAllJobs();
+ Console.WriteLine(selectedOwner);
+ }
+
+ /// <summary>
+ /// Called when the "cancel" button is clicked.
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
+ private void button2_Click(object sender, EventArgs e)
+ {
+ clearNewJob();
+ }
+
+ /// <summary>
+ /// Clear the textboxes for "new Job"
+ /// </summary>
+ private void clearNewJob()
+ {
+ textBox1.Text = "";
+ textBox2.Text = "";
+ textBox3.Text = "";
+ }
+
+ /// <summary>
+ /// Adds jobs to the queues.
+ /// Only used for testing purposes.
+ /// </summary>
+ private void initializeJobs()
+ {
+ Job job = new Job("Bergar Simonsen", 4, 0.6, x => "process 1");
+ Job job1 = new Job("Bergar Simonsen", 3, 0.6, x => "process 1");
+ Job job2 = new Job("Bergar Simonsen", 1, 0.6, x => "process 1");
+ Job job3 = new Job("Bergar Simonsen", 6, 0.6, x => "process 1");
+
+ bs.Submit(job);
+ bs.Submit(job1);
+ bs.Submit(job2);
+ bs.Submit(job3);
+ }
+
+ /// <summary>
+ /// Creates new owners.
+ /// Only used for testing purposes.
+ /// </summary>
+ private void initializeOwners()
+ {
+ OwnerNonDB o1 = new OwnerNonDB("Chuck Norris", 3);
+ OwnerNonDB o2 = new OwnerNonDB("Bergar Simonsen", 5);
+
+ foreach (OwnerNonDB o in BenchmarkSystem.users)
+ {
+ Console.WriteLine(o.id + " " + o.name);
+ }
+ }
+
+ /// <summary>
+ /// Retreives all jobs from their corresponding queues
+ /// and adds them to the listView.
+ /// </summary>
+ /// <param name="queue"></param>
+ private void AddJobsToList(List<Job> queue)
+ {
+ string[] curJob = new string[6];
+ if (!Scheduler.IsQueueEmpty(queue))
+ {
+ foreach (Job j in queue)
+ {
+ if (j != null)
+ {
+ if (j.ownerString.Equals(selectedOwner))
+ {
+ // Split each job and put it into an array.
+ curJob[0] = j.ownerString;
+ curJob[1] = j.id.ToString();
+ curJob[2] = j.CPUs.ToString();
+ curJob[3] = j.ExpectedRuntime.ToString();
+ curJob[4] = j.Procces.ToString();
+ curJob[5] = j.State.ToString();
+
+ listView1.Items.Add(new ListViewItem(curJob));
+ Console.WriteLine("Added item");
+ }
+ }
+ }
+ }
+ }
+
+ /// <summary>
+ /// Shows all jobs that belong to the selected user in the listView.
+ /// </summary>
+ private void AddAllJobs()
+ {
+ listView1.Items.Clear();
+ AddJobsToList(Scheduler.shortQueue);
+ AddJobsToList(Scheduler.longQueue);
+ AddJobsToList(Scheduler.veryLongQueue);
}
}
}
3  AS.41/Part 1/Benchmark/UserInterface.resx
View
@@ -117,4 +117,7 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
+ <metadata name="queuesBinding.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>17, 17</value>
+ </metadata>
</root>
8 AS.44/BenchmarkDocumentation.aux
View
@@ -29,3 +29,11 @@
\@writefile{toc}{\contentsline {section}{\numberline {6}Class Diagrams}{7}{section.6}}
\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Class Diagram}}{7}{figure.7}}
\@writefile{toc}{\contentsline {paragraph}{Figure 7 shows the class diagram of the BenchmarkSystem. Some of the database classes are omitted for clarity.}{7}{section*.3}}
+\@writefile{toc}{\contentsline {section}{\numberline {7}Activity Diagrams}{8}{section.7}}
+\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Activity Diagram - New Job}}{8}{figure.8}}
+\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Activity Diagram - Execute All}}{8}{figure.9}}
+\@writefile{toc}{\contentsline {section}{\numberline {8}State Machine Diagrams}{9}{section.8}}
+\@writefile{toc}{\contentsline {section}{\numberline {9}Quality Scenarios}{9}{section.9}}
+\@writefile{toc}{\contentsline {section}{\numberline {10}Architectural Factor Table}{10}{section.10}}
+\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Architectural Factor Table}}{10}{table.1}}
+\newlabel{table:Architectural Factor Table}{{1}{10}{Architectural Factor Table\relax }{table.1}{}}
117 AS.44/BenchmarkDocumentation.log
View
@@ -1,4 +1,4 @@
-This is pdfTeX, Version 3.1415926-2.3-1.40.12 (TeX Live 2011) (format=pdflatex 2012.4.24) 30 OCT 2012 14:21
+This is pdfTeX, Version 3.1415926-2.3-1.40.12 (TeX Live 2011) (format=pdflatex 2012.4.24) 7 NOV 2012 16:30
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
@@ -272,7 +272,7 @@ LaTeX Info: Redefining \nameref on input line 10.
[1
{/usr/local/texlive/2011/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] <useCas
-eDiagram.png, id=43, 580.1675pt x 439.6425pt>
+eDiagram.png, id=63, 580.1675pt x 439.6425pt>
File: useCaseDiagram.png Graphic file (type png)
<use useCaseDiagram.png>
@@ -285,7 +285,7 @@ Package pdftex.def Info: useCaseDiagram.png used on input line 20.
\fi \fi
l.23 \newpage
<./useCaseDiagram.png (PNG copy)>]
-<images/DomainModel.jpg, id=49, 509.905pt x 225.84375pt>
+<images/DomainModel.jpg, id=69, 509.905pt x 225.84375pt>
File: images/DomainModel.jpg Graphic file (type jpg)
<use images/DomainModel.jpg>
@@ -303,7 +303,7 @@ has been already used, duplicate ignored
\fi \fi
l.33 \newpage
<./images/DomainModel.jpg>]
-<systemSequenceDiagram.png, id=55, 506.89375pt x 445.665pt>
+<systemSequenceDiagram.png, id=75, 506.89375pt x 445.665pt>
File: systemSequenceDiagram.png Graphic file (type png)
<use systemSequenceDiagram.png>
@@ -321,7 +321,7 @@ has been already used, duplicate ignored
\fi \fi
l.43 \newpage
<./systemSequenceDiagram.png (PNG copy)>]
-<images/LogicalArchitecture.jpg, id=61, 329.23pt x 558.085pt>
+<images/LogicalArchitecture.jpg, id=81, 329.23pt x 558.085pt>
File: images/LogicalArchitecture.jpg Graphic file (type jpg)
<use images/LogicalArchitecture.jpg>
@@ -334,14 +334,14 @@ Package pdftex.def Info: images/LogicalArchitecture.jpg used on input line 50.
\fi \fi
l.53 \newpage
<./images/LogicalArchitecture.jpg>]
-<sequenceDiagram2.png, id=67, 735.74875pt x 520.94624pt>
+<sequenceDiagram2.png, id=87, 735.74875pt x 520.94624pt>
File: sequenceDiagram2.png Graphic file (type png)
<use sequenceDiagram2.png>
Package pdftex.def Info: sequenceDiagram2.png used on input line 60.
(pdftex.def) Requested size: 301.1261pt x 213.21574pt.
-<images/CommunicationDiagram.jpg, id=68, 719.68875pt x 303.1325pt>
+<images/CommunicationDiagram.jpg, id=88, 719.68875pt x 303.1325pt>
File: images/CommunicationDiagram.jpg Graphic file (type jpg)
<use images/CommunicationDiagram.jpg>
@@ -361,7 +361,7 @@ l.72 \newpage
\fi \fi
l.72 \newpage
<./sequenceDiagram2.png (PNG copy)> <./images/CommunicationDiagr
-am.jpg>] <images/ClassDiagram.jpg, id=76, 1014.79124pt x 658.46pt>
+am.jpg>] <images/ClassDiagram.jpg, id=96, 1014.79124pt x 658.46pt>
File: images/ClassDiagram.jpg Graphic file (type jpg)
<use images/ClassDiagram.jpg>
@@ -372,38 +372,97 @@ Overfull \hbox (56.50146pt too wide) in paragraph at lines 79--80
[][]
[]
-Package atveryend Info: Empty hook `BeforeClearDocument' on input line 84.
-[7pdfTeX warning (ext4): destination with the same identifier (name{figure.7})
-has been already used, duplicate ignored
+<images/ActivityDiagramCreateJob.jpg, id=97, 684.5575pt x 534.99875pt>
+File: images/ActivityDiagramCreateJob.jpg Graphic file (type jpg)
+
+<use images/ActivityDiagramCreateJob.jpg>
+Package pdftex.def Info: images/ActivityDiagramCreateJob.jpg used on input line
+ 88.
+(pdftex.def) Requested size: 301.1261pt x 235.34303pt.
+ [7pdfTeX warning (ext4): destination with the same identifier (name{figure.7})
+ has been already used, duplicate ignored
+
+\AtBegShi@Output ...ipout \box \AtBeginShipoutBox
+ \fi \fi
+l.90
+ <./images/ClassDiagram.jpg>]
+<images/ActivityDiagramExecuteAll.jpg, id=105, 679.53876pt x 534.99875pt>
+File: images/ActivityDiagramExecuteAll.jpg Graphic file (type jpg)
+
+<use images/ActivityDiagramExecuteAll.jpg>
+Package pdftex.def Info: images/ActivityDiagramExecuteAll.jpg used on input lin
+e 94.
+(pdftex.def) Requested size: 301.1261pt x 237.07367pt.
+LaTeX Font Info: Try loading font information for OMS+cmr on input line 103.
+
+
+(/usr/local/texlive/2011/texmf-dist/tex/latex/base/omscmr.fd
+File: omscmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions
+)
+LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10> not available
+(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 103.
+ [8pdfTeX warning (ext4): destination with the same identifier (name{figure.8})
+ has been already used, duplicate ignored
\AtBegShi@Output ...ipout \box \AtBeginShipoutBox
\fi \fi
-l.84 \end{document}
- <./images/ClassDiagram.jpg>]
-Package atveryend Info: Empty hook `AfterLastShipout' on input line 84.
+l.105 \item T
+ he system must respond immediately.pdfTeX warning (ext4): destina
+tion with the same identifier (name{figure.9}) has been already used, duplicate
+ ignored
+
+\AtBegShi@Output ...ipout \box \AtBeginShipoutBox
+ \fi \fi
+l.105 \item T
+ he system must respond immediately. <./images/ActivityDiagramCrea
+teJob.jpg> <./images/ActivityDiagramExecuteAll.jpg>] [9]
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line 133.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line 133.
+
+Overfull \hbox (91.41797pt too wide) in paragraph at lines 133--152
+ [][]
+ []
+
+[10
+
+pdfTeX warning (ext4): destination with the same identifier (name{table.1}) has
+ been already used, duplicate ignored
+
+\AtBegShi@Output ...ipout \box \AtBeginShipoutBox
+ \fi \fi
+l.153 \end{landscape}
+ ]
+Package atveryend Info: Empty hook `BeforeClearDocument' on input line 159.
+ [11
+
+]
+Package atveryend Info: Empty hook `AfterLastShipout' on input line 159.
(./BenchmarkDocumentation.aux)
-Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 84.
-Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 84.
+Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 159.
+Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 159.
Package rerunfilecheck Info: File `BenchmarkDocumentation.out' has not changed.
-(rerunfilecheck) Checksum: D0B27928688E3015CDE10C594D210F3C;313.
-Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 84.
+(rerunfilecheck) Checksum: 31A8D9A73E93857F85266D75BDFDD27E;537.
+Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 159.
)
Here is how much of TeX's memory you used:
- 5157 strings out of 493633
- 77341 string characters out of 3143377
- 151612 words of memory out of 3000000
- 8400 multiletter control sequences out of 15000+200000
+ 5205 strings out of 493633
+ 78239 string characters out of 3143377
+ 154661 words of memory out of 3000000
+ 8432 multiletter control sequences out of 15000+200000
4553 words of font info for 17 fonts, out of 3000000 for 9000
831 hyphenation exceptions out of 8191
- 29i,6n,28p,336b,313s stack positions out of 5000i,500n,10000p,200000b,50000s
+ 29i,12n,28p,336b,427s stack positions out of 5000i,500n,10000p,200000b,50000s
</usr/local/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb
></usr/local/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb>
-</usr/local/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb>
-Output written on BenchmarkDocumentation.pdf (7 pages, 258475 bytes).
+</usr/local/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></
+usr/local/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb>
+Output written on BenchmarkDocumentation.pdf (11 pages, 313190 bytes).
PDF statistics:
- 103 PDF objects out of 1000 (max. 8388607)
- 83 compressed objects within 1 object stream
- 24 named destinations out of 1000 (max. 500000)
- 84 words of extra memory for PDF output out of 10000 (max. 10000000)
+ 151 PDF objects out of 1000 (max. 8388607)
+ 123 compressed objects within 2 object streams
+ 35 named destinations out of 1000 (max. 500000)
+ 126 words of extra memory for PDF output out of 10000 (max. 10000000)
4 AS.44/BenchmarkDocumentation.out
View
@@ -4,3 +4,7 @@
\BOOKMARK [1][-]{section.4}{Logical Architecture}{}% 4
\BOOKMARK [1][-]{section.5}{Interaction Diagrams}{}% 5
\BOOKMARK [1][-]{section.6}{Class Diagrams}{}% 6
+\BOOKMARK [1][-]{section.7}{Activity Diagrams}{}% 7
+\BOOKMARK [1][-]{section.8}{State Machine Diagrams}{}% 8
+\BOOKMARK [1][-]{section.9}{Quality Scenarios}{}% 9
+\BOOKMARK [1][-]{section.10}{Architectural Factor Table}{}% 10
BIN  AS.44/BenchmarkDocumentation.pdf
View
Binary file not shown
BIN  AS.44/BenchmarkDocumentation.synctex.gz
View
Binary file not shown
75 AS.44/BenchmarkDocumentation.tex
View
@@ -80,5 +80,80 @@
\end{figure}
\paragraph{Figure 7 shows the class diagram of the BenchmarkSystem. Some of the database classes are omitted for clarity.}
+
+ \section{Activity Diagrams}
+ \begin{figure}[H]
+ \caption{Activity Diagram - New Job}
+ \centering
+ \includegraphics[width=300px]{images/ActivityDiagramCreateJob.jpg}
+ \end{figure}
+ \begin{figure}[H]
+ \caption{Activity Diagram - Execute All}
+ \centering
+ \includegraphics[width=300px]{images/ActivityDiagramExecuteAll.jpg}
+ \end{figure}
+
+ \section{State Machine Diagrams}
+ \section{Quality Scenarios}
+
+ \setcounter{tocdepth}{3}
+ \vspace*{1cm}
+ \begin{itemize}
+ \item Response time
+ \begin{itemize}
+ \item The system must respond immediately.
+ \item When performing an operation, there must be no more than 1 sec delay.
+ \item If a process is taking longer than 10 seconds, kill the process.
+ \end{itemize}
+ \item Time-to-recover
+ \begin{itemize}
+ \item In case of system failure (crash). The system must restart right away.
+ \item The system must restart immediately (within 10 secs)
+ \item The data that was open in the system must be recovered from the database.
+ \item Manipulated data will revert to the state it was in before the editing started.
+ \end{itemize}
+ \item Load
+ \begin{itemize}
+ \item The system must be able to perform under heavy load.
+ \item See ``response time''
+ \end{itemize}
+ \item Scalability
+ \begin{itemize}
+ \item The system must handle large scale data processing.
+ \item See "response time"
+ \end{itemize}
+ \end{itemize}
+
+ \begin{landscape}
+ \section{Architectural Factor Table}
+ \begin{table}[ht]
+ \caption{Architectural Factor Table}
+ \centering
+ \begin{tabular}{| l | l | l | l | l | l |}
+ \hline
+ Factor & Measure and quality scenarios & Variability & Impact of factor on stakeholders & \shortstack{Priority for\\ success} & \shortstack{Difficulty \\ or Risk} \\
+ \hline
+Recovery from database failure &
+\shortstack{If the database (or connection \\
+to the database) fail, \\
+the system must reconnect inside 1 minute.\\
+If it fails to reconnect, \\
+store the open data in a tmp file. }
+ & &
+\shortstack{Low impact on the system. \\
+The system can run \\
+without the database. \\
+High impact on the logging system.}
+& L & M \\
+ \hline
+ \end{tabular}
+ \label{table:Architectural Factor Table}
+ \end{table}
+ \end{landscape}
+
+ \begin{tabular}{ccc}
+ one & two & three \\
+ one & two & \shortstack{a \\ bb \\ c}\\
+\end{tabular}
\end{document}
4 AS.44/BenchmarkDocumentation.toc
View
@@ -6,3 +6,7 @@
\contentsline {paragraph}{Figure 5 shows a sequence diagram over what happens when the ExecuteAll() method is called \\ Figure 6 shows a communication diagram of the system when creating a job, submitting it to the queue, and removing it from the queue.}{6}{figure.6}
\contentsline {section}{\numberline {6}Class Diagrams}{7}{section.6}
\contentsline {paragraph}{Figure 7 shows the class diagram of the BenchmarkSystem. Some of the database classes are omitted for clarity.}{7}{section*.3}
+\contentsline {section}{\numberline {7}Activity Diagrams}{8}{section.7}
+\contentsline {section}{\numberline {8}State Machine Diagrams}{9}{section.8}
+\contentsline {section}{\numberline {9}Quality Scenarios}{9}{section.9}
+\contentsline {section}{\numberline {10}Architectural Factor Table}{10}{section.10}
39 AS.44/README.txt
View
@@ -0,0 +1,39 @@
+ README
+ ======
+
+Author: Bergar Simonsen
+Date: 2012-11-07 20:17:48 CET
+
+
+Table of Contents
+=================
+1 README
+ 1.1 Running the application
+ 1.2 Isues
+
+
+1 README
+---------
+
+1.1 Running the application
+============================
+ - When starting the application.
+ - Run the UserInterface class.
+ - When the application has started, press the "refresh" button
+ this will populate the application with users and jobs.
+
+ - You might notice that in the UserInterface class is a method that
+ creates jobs and users.
+ Normally this wouldn't be here, but because we can't get our database to
+ work, we use this method to test the program.
+ So this method exists purely for testing purposes
+
+1.2 Issues
+==========
+ - There are some errors in the program.
+ - If the user inputs the wrong type in the fields, the program
+ will give an error.
+ - For example if user inputs a string into the CPUs field when
+ creating a new job, the application will show an error.
+ - For time reasons we haven't fixed this bug, but will be fixed
+ in a future update.
418 AS.44/images/ActivityDiagramCreateJob.graphml
View
@@ -0,0 +1,418 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
+ <!--Created by yFiles for Java 2.9-->
+ <key for="graphml" id="d0" yfiles.type="resources"/>
+ <key for="port" id="d1" yfiles.type="portgraphics"/>
+ <key for="port" id="d2" yfiles.type="portgeometry"/>
+ <key for="port" id="d3" yfiles.type="portuserdata"/>
+ <key attr.name="url" attr.type="string" for="node" id="d4"/>
+ <key attr.name="description" attr.type="string" for="node" id="d5"/>
+ <key for="node" id="d6" yfiles.type="nodegraphics"/>
+ <key attr.name="Description" attr.type="string" for="graph" id="d7"/>
+ <key attr.name="url" attr.type="string" for="edge" id="d8"/>
+ <key attr.name="description" attr.type="string" for="edge" id="d9"/>
+ <key for="edge" id="d10" yfiles.type="edgegraphics"/>
+ <graph edgedefault="directed" id="G">
+ <data key="d7"/>
+ <node id="n0">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="13.0" width="13.0" x="493.5" y="68.0"/>
+ <y:Fill color="#000000" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="4.5" y="4.5">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="ellipse"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n1">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="71.0" x="464.5" y="125.42148760330576"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="51.25" x="9.875" y="4.722849948347118">New Job<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n2">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="346.5" y="68.0"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n3">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="623.5" y="59.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n4">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="121.0" x="439.5" y="-4.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="109.609375" x="5.6953125" y="5.93359375">BenchmarkSystem<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n5">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="779.0" y="-4.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="60.806640625" x="-15.4033203125" y="5.93359375">Scheduler<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n6">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="90.0" x="454.99999999999994" y="197.42148760330574"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="82.328125" x="3.8359375" y="4.722849948347118">Submit(j: Job)<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n7">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="90.0" x="749.0" y="316.76446280991735"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="83.74609375" x="3.126953125" y="4.72284994834709">AddJob(j: Job)<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n8">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="121.0" x="187.5" y="325.26446280991735"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="119.7109375" x="0.64453125" y="4.722849948347118">JobSubmitted(j: Job)<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n9">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="530.5" y="246.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n10">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="439.5" y="246.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n11">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="1.0" width="30.0" x="485.00000000000006" y="261.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="-1.5">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n12">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="71.0" x="212.5" y="5.210743801652882"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="44.330078125" x="13.3349609375" y="4.722849948347118">Logger<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n13">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="346.5" y="468.0"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n14">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="623.5" y="459.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <edge id="e0" source="n0" target="n1">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="16.71074380165288">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e1" source="n2" target="n13">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="183.009765625">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e2" source="n3" target="n14">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="183.009765625">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e3" source="n1" target="n6">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="5.6843418860808015E-14" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="2.0" y="20.183598415910666"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e4" source="n10" target="n9">
+ <data key="d8"/>
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="3.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="5.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="28.52587890625" y="5.0"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e5" source="n6" target="n11">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="2.000000000000057" y="16.20117187499997"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e6" source="n11" target="n7">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
+ <y:Point x="500.00000000000006" y="294.5"/>
+ <y:Point x="794.0" y="294.5"/>
+ </y:Path>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="145.0" y="33.976318359375"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e7" source="n11" target="n8">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
+ <y:Point x="500.00000000000006" y="291.5"/>
+ <y:Point x="248.0" y="300.0"/>
+ </y:Path>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-128.0" y="35.3421185205853"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ </graph>
+ <data key="d0">
+ <y:Resources/>
+ </data>
+</graphml>
BIN  AS.44/images/ActivityDiagramCreateJob.jpg
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
416 AS.44/images/ActivityDiagramExecuteAll.graphml
View
@@ -0,0 +1,416 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:y="http://www.yworks.com/xml/graphml" xmlns:yed="http://www.yworks.com/xml/yed/3" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://www.yworks.com/xml/schema/graphml/1.1/ygraphml.xsd">
+ <!--Created by yFiles for Java 2.9-->
+ <key for="graphml" id="d0" yfiles.type="resources"/>
+ <key for="port" id="d1" yfiles.type="portgraphics"/>
+ <key for="port" id="d2" yfiles.type="portgeometry"/>
+ <key for="port" id="d3" yfiles.type="portuserdata"/>
+ <key attr.name="url" attr.type="string" for="node" id="d4"/>
+ <key attr.name="description" attr.type="string" for="node" id="d5"/>
+ <key for="node" id="d6" yfiles.type="nodegraphics"/>
+ <key attr.name="Description" attr.type="string" for="graph" id="d7"/>
+ <key attr.name="url" attr.type="string" for="edge" id="d8"/>
+ <key attr.name="description" attr.type="string" for="edge" id="d9"/>
+ <key for="edge" id="d10" yfiles.type="edgegraphics"/>
+ <graph edgedefault="directed" id="G">
+ <data key="d7"/>
+ <node id="n0">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="13.0" width="13.0" x="493.5" y="68.0"/>
+ <y:Fill color="#000000" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="4.5" y="4.5">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="ellipse"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n1">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="71.0" x="464.5" y="125.42148760330576"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="64.533203125" x="3.2333984375" y="4.722849948347118">ExecuteAll<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n2">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="346.5" y="68.0"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n3">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="623.5" y="59.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n4">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="121.0" x="439.5" y="-4.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="109.609375" x="5.6953125" y="5.93359375">BenchmarkSystem<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n5">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="779.0" y="-4.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="60.806640625" x="-15.4033203125" y="5.93359375">Scheduler<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n6">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="90.0" x="454.99999999999994" y="197.42148760330574"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="72.771484375" x="8.6142578125" y="4.722849948347118">ExecuteOne<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n7">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="530.5" y="246.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n8">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="439.5" y="246.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n9">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="1.0" width="30.0" x="485.00000000000006" y="261.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="-1.5">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n10">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="71.0" x="212.5" y="5.210743801652882"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="44.330078125" x="13.3349609375" y="4.722849948347118">Logger<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n11">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="346.5" y="468.0"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n12">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="30.0" width="30.0" x="623.5" y="459.5"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle hasColor="false" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" textColor="#000000" visible="true" width="4.0" x="13.0" y="13.0">
+ <y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n13">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="90.0" x="749.0" y="335.7107438016529"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="81.91796875" x="4.041015625" y="4.722849948347118">PopJob(j: Job)<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <node id="n14">
+ <data key="d5"/>
+ <data key="d6">
+ <y:ShapeNode>
+ <y:Geometry height="27.578512396694215" width="111.0" x="192.5" y="335.7107438016529"/>
+ <y:Fill hasColor="false" transparent="false"/>
+ <y:BorderStyle color="#000000" type="line" width="1.0"/>
+ <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" modelName="custom" textColor="#000000" visible="true" width="108.689453125" x="1.1552734375" y="4.722849948347118">JobRunning(j: Job)<y:LabelModel>
+ <y:SmartNodeLabelModel distance="4.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="0.0" nodeRatioX="0.0" nodeRatioY="0.0" offsetX="0.0" offsetY="0.0" upX="0.0" upY="-1.0"/>
+ </y:ModelParameter>
+ </y:NodeLabel>
+ <y:Shape type="roundrectangle"/>
+ </y:ShapeNode>
+ </data>
+ </node>
+ <edge id="e0" source="n0" target="n1">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="16.71074380165288">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e1" source="n2" target="n11">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="183.009765625">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e2" source="n3" target="n12">
+ <data key="d9"/>
+ <data key="d10">
+ <y:PolyLineEdge>
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="-32.0" y="183.009765625">
+ <y:LabelModel>
+ <y:SmartEdgeLabelModel autoRotationEnabled="false" defaultAngle="0.0" defaultDistance="10.0"/>
+ </y:LabelModel>
+ <y:ModelParameter>
+ <y:SmartEdgeLabelModelParameter angle="0.0" distance="30.0" distanceToCenter="true" position="right" ratio="0.5" segment="0"/>
+ </y:ModelParameter>
+ </y:EdgeLabel>
+ <y:BendStyle smoothed="false"/>
+ </y:PolyLineEdge>
+ </data>
+ </edge>
+ <edge id="e3" source="n1" target="n6">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="5.6843418860808015E-14" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="2.0" y="20.183598415910666"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e4" source="n8" target="n7">
+ <data key="d8"/>
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="3.0"/>
+ <y:Arrows source="none" target="none"/>
+ <y:EdgeLabel alignment="center" distance="5.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="28.52587890625" y="5.0"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e5" source="n6" target="n9">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="plain"/>
+ <y:EdgeLabel alignment="center" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" modelName="six_pos" modelPosition="tail" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" visible="true" width="4.0" x="2.000000000000057" y="16.20117187499997"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e6" source="n9" target="n14">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
+ <y:Point x="500.00000000000006" y="292.0"/>
+ <y:Point x="248.0" y="292.0"/>
+ </y:Path>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="standard"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ <edge id="e7" source="n9" target="n13">
+ <data key="d9"/>
+ <data key="d10">
+ <y:QuadCurveEdge straightness="0.1">
+ <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0">
+ <y:Point x="500.00000000000006" y="295.0"/>
+ <y:Point x="794.0" y="295.0"/>
+ </y:Path>
+ <y:LineStyle color="#000000" type="line" width="1.0"/>
+ <y:Arrows source="none" target="standard"/>
+ </y:QuadCurveEdge>
+ </data>
+ </edge>
+ </graph>
+ <data key="d0">
+ <y:Resources/>
+ </data>
+</graphml>
BIN  AS.44/images/ActivityDiagramExecuteAll.jpg
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Please sign in to comment.
Something went wrong with that request. Please try again.