Monday, September 24, 2007

Week Three




Assignment:WEEK 3:


1. Start thinking about an idea for a larger project that you'd like to work on. Blog your idea - include references to APIs that intend to use, links and pictures. Sketch out a simple wireframe / interaction diagram for your idea. Also include a paragraph and some links about your inspiration for this idea.




USER SCENARIO:

The harrowed , busy, student,constantly forgetting, running around trying to keep pace with a busy school life and trying his best to be productive.

key features being leveraged on:
-Always has a complicated list of things to do
-Always on the move
-Needing reminders
-Needing productivity checks for

WHY THE CELLPHONE:

The cellphone is a device that has limited capabilities as opposed to a laptop, but it is more accessible than anything else we own.This application makes use of this ubiquity of the device that we carry and interact with in subways and elevators where many of its functions work without the presence of wireless internet or cellphone network.

Using this device as an explorer of a persons efficiency with minimum input and providing alerts and efficiency visualization is the goal of the MIDlet.

The user begins by entering the list of activities that must be done by the end of the day.The list of activities is broadly timestamped using morning, afternoon and evening.

During these phases of the day an alert list shows up where the user can check off whatever tasks have been accomplished.Using this data the application calculates your efficiency starting from the time of the day to the current time.A visualisation of the efficiency is your screensaver.


WIREFRAMES

WORK CHECK SHOWS UP AT INTERVALS YOU DECIDE DURING THE DAY



CHECK OFF THE COMPLETED TASKS FOR CALCULATING EFFICIENCY



THE EFFICIECY BAR GRAPH AFTER YOU SUBMIT THE TASK FORM





SCREEN SAVER:EFFICIENCY DEPENDENT GRAPHICS





USER FEEDBACK

Ashlyn Dewey
Student:ITP
Brooklyn
Schedule rating:*****(Super Busy)

Ok, I like the basic idea that the application lets people know the
tasks they have to do and gives them a visual of their progress but I
feel like the efficiency rating isn't something important in the
scenario as described. Why would a user want to know the efficiency
percentage? Maybe something less abstract like "It took you this long
to do these tasks..." or "you did this # of tasks since 9 am?" I like
the idea of it alerting you to things that need to be done. I think
it would be interesting if the screensaver items directly referenced
the tasks in some abstract way, maybe thats what you have it as?



2. Take your idea for the simple MIDlet from Week Two and create it using Forms or Canvases - OR - create a MIDlet which uses the Canvas to listen for button presses and does something interesting with that data. Please add your source code to the Wiki and try use MPowerPlayer's Webstart to link to your JAD files.

Source Code:




import javax.microedition.lcdui.*;

import javax.microedition.midlet.MIDlet;



public class MainScr implements CommandListener {



private Display display; // The display

private Form main;

private Worktime app;//because it needs to know whom to call the main ref on

private ChoiceGroup worklist1;

private Command cmdExit;

private Command cmdSelect;

public Gauge showeff;//activity indicator for alert object: test



public MainScr (Worktime creator) {

// save reference to midlet so that we can exit application

app = creator;

display = Display.getDisplay(app);//every class must get ref to the display instance..

main = new Form("Work Time");

main.setCommandListener(this);



// create list to be displayed on the form

worklist1 = new ChoiceGroup("Select tasks Completed",

Choice.MULTIPLE);

worklist1.append("Pay cheques", null);

worklist1.append("Switch class to Computational Form", null);

worklist1.append("Discussion for Connected Life", null);

worklist1.insert(1, "Submit Source code for MAD", null);

main.append(worklist1);



// create command objects so we can compare them later

cmdExit = new Command("Exit", Command.EXIT, 2);

cmdSelect = new Command("Select", Command.OK, 1);

main.addCommand(cmdSelect);

main.addCommand(cmdExit);

Alert welcome = new Alert("Welcome","Time to check your tasks, are you ready?", null, AlertType.INFO);

welcome.setTimeout(3000);

display.setCurrent(welcome,main);

}



// handle commands

public void commandAction(Command cmd, Displayable dis) {



if(cmd == cmdExit )

app.exitMIDlet();

else

{

int total=worklist1.getSelectedFlags(new boolean[worklist1.size()]);



Alert test = new Alert("Selected "+total,"Tasks completed - "+total, null, AlertType.INFO);
Gauge showeff = new Gauge("Your Efficiency Now",false,100, 0);
test.setIndicator(showeff);
showeff.setValue(total);
//test.getIndicator();
test.setTimeout(3000);
display.setCurrent(test);

// bargraph should be an alert with guage, screensaver should be canvas

//app.getDisplay().setcurrent(bargraph, screensaver);

}

}

}


-----


import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;

public class Worktime extends MIDlet {

// Class variables
MainScr main;


// Setup application
public Worktime() {
}

// do what should happen when app starts (called automatically after setup
protected void startApp()
{
new MainScr(this);

}

protected void pauseApp()
{ }

protected void destroyApp(boolean unconditional)
{ }

// call this function when you want to exit application
public void exitMIDlet()
{
destroyApp(true);
notifyDestroyed();
}

}




3. Create a simple MIDlet which uses a Canvas to create a simple animation. Please add source code to the Wiki.

The bar graph and the screensaver are canvas classes


4. Read chapter 5, 19 and 45 from Everyware. Think about what Greenfield is saying in light of your own ideas above. Write a short paragraph about how these concepts influenced your idea (or not). Prepare two good questions for in-class discussion. Link these to the HomeworkWiki. Adam Greenfield has
DISCUSSION QUESTIONS FROM EVERYWARE:::

1) The single hindrant in cell phone design that deviates from talking in real time and real space, other than seeing the person

2)Looking at human-like system design examples and investigating why these manifest artificiality as opposed to their intended design.Better: what qualities of a system make it human, what design evokes delaing with a piece of technology as though it can communicate freely with us?

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home