<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE450%3ASAM</id>
	<title>SE450:SAM - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE450%3ASAM"/>
	<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE450:SAM&amp;action=history"/>
	<updated>2026-04-06T19:06:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.kram.nz/index.php?title=SE450:SAM&amp;diff=48&amp;oldid=prev</id>
		<title>Mark: New page: == Members == Lauren, Jason, Eddie, Don, Craig, Calvin and Judy    == Paper == SAM - An Animated 3D Programming Language.  SAMVL98.pdf from [https://www.se.auckland.ac.nz/courses/SOFTENG45...</title>
		<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE450:SAM&amp;diff=48&amp;oldid=prev"/>
		<updated>2008-02-15T19:51:53Z</updated>

		<summary type="html">&lt;p&gt;New page: == Members == Lauren, Jason, Eddie, Don, Craig, Calvin and Judy    == Paper == SAM - An Animated 3D Programming Language.  SAMVL98.pdf from [https://www.se.auckland.ac.nz/courses/SOFTENG45...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Members ==&lt;br /&gt;
Lauren, Jason, Eddie, Don, Craig, Calvin and Judy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Paper ==&lt;br /&gt;
SAM - An Animated 3D Programming Language.  SAMVL98.pdf from [https://www.se.auckland.ac.nz/courses/SOFTENG450/resources/ here]&lt;br /&gt;
&lt;br /&gt;
== Deliverables ==&lt;br /&gt;
* 4 slides presentation in less than 4 minutes on Tuesday 27th March.  Need to email the presentation to John Hosking before 12 noon&lt;br /&gt;
* One page summary paper in IEEE format done individually, due on 5pm Thursday 5th April&lt;br /&gt;
&lt;br /&gt;
== Type of End Users ==&lt;br /&gt;
* Programmers - Abstract 3D presentation&lt;br /&gt;
* Clients, someone preparing the requirements documentation who has little/no idea about programming - Concrete, solid 3D presentation&lt;br /&gt;
&lt;br /&gt;
== Metaphors Used ==&lt;br /&gt;
When implementing the program, agent (entities) rules, ports, messages and agents are represented using system defined 3D objects.  When executing the code, entities can be represented using arbitrary concrete 3D objects.&lt;br /&gt;
&lt;br /&gt;
== Evaluation of Effectiveness ==&lt;br /&gt;
=== Abstraction Gradient ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;POOR&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* rules can&amp;#039;t be nested, which limits encapsulation&lt;br /&gt;
&lt;br /&gt;
=== Closeness of mapping ===&lt;br /&gt;
* On-screen entities do map to conceptual programming objects&lt;br /&gt;
* symbols aren&amp;#039;t easily recognisable&lt;br /&gt;
* symbols don&amp;#039;t appear to represent their models&lt;br /&gt;
* difficult programming game&lt;br /&gt;
&lt;br /&gt;
=== Consistency ===&lt;br /&gt;
* Only a few visual entities to learn, so consistency is okay.&lt;br /&gt;
&lt;br /&gt;
=== Diffuseness ===&lt;br /&gt;
* sufficient symbols&lt;br /&gt;
* as simple as possible, for a 3d environment&lt;br /&gt;
* 3d environment makes it difficult to reduce diffuseness&lt;br /&gt;
&lt;br /&gt;
=== Error proneness ===&lt;br /&gt;
* Good&lt;br /&gt;
* Hard to induce mistakes in code&lt;br /&gt;
* Forms for data entry; assumed form checking?&lt;br /&gt;
&lt;br /&gt;
=== Hard mental operations ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;POOR&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* need to remember where messages are going to (no obvious communication channels)&lt;br /&gt;
* don&amp;#039;t know output of actions until you watch the program run.&lt;br /&gt;
&lt;br /&gt;
=== Hidden dependencies ===&lt;br /&gt;
* communications between objects are not obvious&lt;br /&gt;
* can show code&lt;br /&gt;
** code vaguely indicates dependencies&lt;br /&gt;
** but no symbolic representation&lt;br /&gt;
&lt;br /&gt;
=== Premature commitment === &lt;br /&gt;
* OK, since objects / rules/etc can be specified in any order with few design time dependencies&lt;br /&gt;
&lt;br /&gt;
=== Progressive evaluation ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;GOOD&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Animation - can show the state of the object&lt;br /&gt;
* Can switch between pretty animation and design-style animation at run-time.&lt;br /&gt;
&lt;br /&gt;
=== Role-expressiveness ===&lt;br /&gt;
* poor at design time, only good during animation.&lt;br /&gt;
&lt;br /&gt;
=== Secondary notation ===&lt;br /&gt;
* Can use layout and object sizes to group stuff and convey meaning&lt;br /&gt;
* colours?&lt;br /&gt;
* comments?&lt;br /&gt;
* Average, could be improved.&lt;br /&gt;
&lt;br /&gt;
=== Viscosity ===&lt;br /&gt;
* High viscosity&lt;br /&gt;
* simple model&lt;br /&gt;
* form-based interaction, hard to copy/paste/change data in bulk&lt;br /&gt;
&lt;br /&gt;
=== Visibility ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;POOR&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Can&amp;#039;t read all code at once&lt;br /&gt;
* No start point when looking at text code&lt;br /&gt;
* Code is dispersed spatially&lt;br /&gt;
&lt;br /&gt;
= Presentation =&lt;br /&gt;
[https://www.se.auckland.ac.nz/wiki/images/c/c0/450_visual_language%28final_version%29.pdf Download]&lt;/div&gt;</summary>
		<author><name>Mark</name></author>
	</entry>
</feed>