Thursday, 31 March 2011

FIT 2001 Week 5

Lecture

Today's lecture was on Usability Testing.

Usability evaluation which are formative and summative. Formative to form, Summative to sum.. Based on that, one can gather, to form feedback and to sum results i.e. measure effectiveness.

You can thus have analysis and empirical forms of evaluation.

An analytic evaluation is an analysis evaluation. Basically thinking through the system based on guidelines is one of the forms. Heuristic analysis goes in here. Heuristics is basically sort of like a rule of thumb. A set of rule of guidelines that one has reference to, to make a generally good form of evaluation.

The empirical form sounds more like experiements on guinea pig users. Well not to call them that but it is a test of the system through the use of actual users.

There are so many standards out there regarding usability and one controversial one which I happen to read was why Ubuntu switched to left side minimize, maximize and close buttons. It was found that it was actually more productive but me being a windows user felt ackward at first but who am I to complain about increased productivity. Eventually I adapt to that standard but shouldn't a standard be something intuitive and not adapted to? There was a lot of complaints about the buttons being the wrong side at first but eventually some conform and now it is as it is, but Ubuntu does have the ability to revert back to the original button position if user so wishes.

Tute 

In tutorial, I got to play a role playing game of facilitator and participant for Monash Library site for a Usability Test. This would be an empirical type though.

Going through the Monash Library system and found much difficulty. My participants had some trouble using the search key word and they would rather search using google then the library's search function. As a participant I felt that I could generally find stuff that I want because I am so used to searching short key words and if I can't find the book that I want, I look for the location of a similar sounding book and just go to that section, its bound to be there buried among the tons of results and besides, they are of similar value.

Anyway can't spend too long on the blog, assignment due on Sunday..     

Thursday, 24 March 2011

FIT 2001 Week 4

Lecture
User Interface. We all have use them and we all carry them. Our occular organs have to adjust to it if they are not damage. But even this we must cater. User interface makes or breaks software because if the user interface is bad, no one will use it.

User Interfaces handles the input and output interaction between user and system. To many users this is the actual system.

A user interface contains aspects of physical, perceptual and conceptual in nature. Physical represents the actual device, perceptual refers to the senses of the user and the conceptual is user's knowledge on the logic of the system.

Human Computer Interaction was very interesting though because it represents our methods of communication with the software. The method of communication shown in lecture at the end was brain waves, multitouch and a comedy about bad user interface.

I liked the brain waves one but the device looks goofy and that is one reason why I won't use something like that. The idea is great in concept but some of us still need feedback when we're doing things.  I remember seeing a documentary on flying planes with our minds, but reliability was scary. Imagine if the system failed or the mind failed, the plane would lose control. Still a bit primitive but lets see what the future can bring in the next 20 years.

Talking about user interface, I am a gamer and I play games and hence user interface is very important to me when I play video games. I had the fortunate opportunity to try Microsoft's Xbox Kinect playing without actual control pad. My opinion is that no doubt it is a great idea for interaction but as a gamer, I still felt something was wrong when I played it without a controller interface for the first time.

I am still not satisfied with the method of the user interface using this type of system of visual recognition for gaming because I am missing some feed back. I was playing a table tennis game and I had to carry a prop, a dvd case just so that I can feel like I am holding a racket when I swing. At least Kinect detected my hand with a prop and can detect quite accurately. This type of interface though I felt is very apt for dancing games as there is no feedback to really tell you what your doing is right or wrong. Just studying the choreography would have been enough to beat most dancing games. Is it fun? Well some games do make you look goofy.

The interface should be user centric since user are using gonna ultimately in the end use the interface. You wouldn't design a user interface for a panda for a human since they are both have different motor skills and interaction with the environment. A panda probably would smack the computer off his ledge and go back toeating rich shoots of bamboo.

How do those things grow just by eating bamboo? If you look up bamboo nutritional facts, they are somewhat low in saturated fat, cholesterol high in dietary fibre. So I guess eating just greens can also make you grow, if you eat and sleep all day.

Oh another good question is why penguins do not get cold feet? :p I already know the answer but you guys go look it up.

Tutorial

Amazon.com....oooo.... how I am reminded why every shopping site has too much details. Aesthetic and Minimalist design came into my mind when visiting this site, this criteria alone was not satisfied since I went searching for a book called "Legacy of Injustice". This was a book picked by my sis since she's a literature student. So it was easy enough to find but do they really have to tell me of other options and the whole menu though consistent is full of clutter. Most of the time, isn't people interested in how much it would cost first before review.

I decided to see what happens if I add to cart and to my shock and horror, there were even more other stuff I didn't need to know. And then on proceeding to checkout, foosh~~~ I see no go back button. I guess when your designing a web interface it is assume everybody knows that there is a back button on the browser. May be nit picky about that though.

 Well I have found another mock up tool that is open source, its called Pencil Project....It is lacking certain things compared to mockflow and balsamiq.......but it works I guess and good enough wireframe design with linking story boards and the ability to export to .html, images and pdf's. Gotta love free stuff....

Yay this is the Jolly Owl with satires signing off.

Oh the moodle page for week 4 tutorial has balsamiq website pointed to balsamic which is the spice and not the software. Thought I let someone know on my blog.

Thursday, 17 March 2011

FIT 2024 Week 3

Here I go again on another episode of FIT 2024...I am getting into fits.... :p

Anyway proceeding with the usual format

Lecture

Prototyping.....Well prototyping is pretty common in the engineering field as well since I have graduated as a Mechanical Engineer and worked for a year. I worked for a Car Shock Absorbing Damper Manufacturing company and, there were lots of prototypes to test new types of product.

A key thing about that company was how it build its database system. It was run over excel with no macros to keep track of stock and prices of its components. It was a really terrible system as no actual system development thought was put into it except keep it simple and the cost low. It was done that way because the manager saw the prototype and immediately jumped on it like a hungry wolf. And it began to be difficult to change the system or even update the system. Updating the system created the pain of having to key in each entry and going to look for receipts to get the latest product prices. Pain because was not updated for 10 years. Prototype dangers are very real.

Basically if you need to prototype something, you build it with a specific client in mind. Like a prototype user interface is built for the clients which are users.  Prototypes are preliminary but some prototypes can look real good, that, it is enough for people to assume that it is the working model. The prototype must display that it is operative, focused on accomplishing the objective and quickly built. I would say that it is about right since a prototype is something that is used for demonstrations more often then actual working models but you will be amazed at the number of people who still jump on the prototype. I guess its due to the nature of business needing to try and tech up faster then it is able.

So now we can see that prototypes will have types in themselves.
-Discovery,
-Design and
-Evolving prototypes.

As their name suggest, one is to find out, another is to have alternative solutions and the evolving one can handle iterations or changes.

A website is a very good example of evolving prototype because if one were to build a website and the client is extremely fickle, like I want blue here and black the next day, it makes it really hard to show a prototype when the client changes the prototype and their requirements hence a prototype that could cope with it would be very valuable.

An example that I can think of regarding discovery prototypes is GUI storyboards. Telling a story on how the GUI functions displaying how the software achieve its objective through User interaction.This discovers the user needs instantly when operating a GUI. Sort of like User stories telling how they want to operate the system.

Two methods to prototyping are predictive and adaptive. I am not a big fan of the naming scheme. I think prototypes are more prescriptive then predictive or adaptive since all prototypes are highly dependent on requirements in the first place, you can't build a prototype without knowing requirements even changing ones. But anyway for the sake of examination purposes ignore my prescriptive thought.

Adaptive will contain Iterative methodologies like "Extreme Programming", SCRUM, Spiral and Iconix. I think predictive has fall out of place due to the lack of solid requirements since requirements are changing so fast. Rapid prototyping is very persuasive.

User interfaces are very fickle since they are highly subjective to user abuse.  How do you know a user interface is bad? Well if nobody is willing to use it after a try or two.

Dialogs:
System : Hi who are you?
User : I am Justin
System: What do you want to do?
User : I don't want to use you
System: I am going to sleep

The above is basically what dialogs mean. They sound like much like user stories though.

Storyboarding is the act of classifying GUI in sequence to display a feature of the model. It can be done in a dialog as above.

Wireframes are tools for GUI prototype generation. I experimented with Visio but it only builds 'Window's interfaces' so not really keen...I have a friend, Matthew who showed me google drawing with templates to user interfaces. They looked good so I am considering trying it out for my assignment.

Tutorial

Today Sutti came in with crutches. Get well soon!!!! We need you....

Today in tutorial we got to take a look at storyboarding, wireframes, looking at some terrible websites and a little discussion on assignment 1 on what are the actual forms to submit.

In my opinion, if I see blink tags immediately I think its terrible. Flashing text does not look cool.

















The most interesting thing about the tute is I got to try mockflow. I registered and was happily designing but it allows you to only save 1 mock-up unless you upgrade for some premium price. Here is a diagram of a mock up I did it tute. Just database tables and if user wants to change I guess they click on customer and the order and item will change accordingly.

Can be improved, I manage to create links but somehow I can't find a template with the select bar option. Oh well I am still set on using google drawing though but whatever tool, assignment 1 will be done. Sutti mention that color scheme is very important so I will be cautious about that when submitting my wireframes.

Oh and submission is preferably in a single pdf file preferably.

Friday, 11 March 2011

FIT 2024 Week 2

Sorry for the delay, fellow readers. My laptop board level failed on me and I had to get a new lap top. So I should be back on track writing another blog-pisode.

FIT 2001 Lecture

Actually lecture was interesting this time, since it was domain modelling. A model drawn with as little implementation information as possible to describe a system to be implemented.

To describe things in a system, that is modelling. Modelling is very important to create a plan or roadmap to imagine the end system. It fits all the requirements into understandable blocks so that there is an organized plan to build the system. 

Well if you fail to plan then you plan to fail.

In an object orientated approach, the things are objects with their classes governing the objects blue print.

Class : Type of Thing
Object: The Thing
Method: Behavior of the Thing
Attributes : Descriptive values of the thing

A method I picked up is identifying the nouns and verbs. Nouns for things and verbs for functions of those things. These help make the domain model tangible.

Cardinality / Multiplicity describes the relationship between objects with each other. An example would be a single hospital to multiple departments would have a cardinality of 1 at hospital and 0..* at departments. The '*' character represents many.

Unified Modelling Language is a tool used to model systems. In an object orientated approach, classes, attributes and methods fill most of the domain modelling.Still new to this way of modelling and hence lacking a bit of the rules.

FIT 2001 Tute

A sub-class and a super-class share the amount of attributes of their objects. This is due to inheritance. This is a form of generalization. 

Describing multiplicities, describes associations. The way objects relate to each other, that was how I interpret it. This description helps the developer, understand the relationships between the classes and their neighbouring classes.

Aggregation or whole-part relationships are relationships that relate objects to its parts. Like a car has an engine and multiple other components.

There was one question with the problem of creating a student, teacher , professor system. The question was why would the Human Resource Committee be omitted from the system. I found that it was not the main point of the system problem being described but maybe it was due more to the description of the human resource committee was incomplete and thus with not enough information, you do not go include into the system an unclear object. An unclear object increases the complexity and the requirements may not be met and hence wasted money and time. 

Visual Paradigm is an interesting tool. I was fussing with it since it doesn't work like an ordinary drawing tool where you can just draw lines all over the place. Instead the links are quite specific with generalization lines and aggregation lines to link the classes together. Compared to other visual tools though, I felt like the tool was a bit complex. One thing I do like about the tool though is that it works by projects so I can have multiple diagrams all in a single file instead of image files every where around my computer.

Until my next blog

Wednesday, 9 March 2011

Wednesday, 2 March 2011

FIT 2001 Expectations and Reflection Week 1

Expectations

This unit I foresee that I would be seeing a lot of analysis going on. I have read a Software Engineering book before attempting this course and there are some similarities like the waterfall model. System analyst means Business analyst as well as Information Systems Development. It is analyzing the aspects, outcomes and risks associated with the need to implement system solutions to a business problem.

My beginning expectation is that I predict I will be interested in what tools are available because I do have a system that needs some re-development for my friends back home.

Lecture 1

Today I was a bit bored because the content may just be because it was the introduction since I have read about agile development, waterfall models and such. Although the content was boring, the thing that I got out of it was that I like the Agile Modeling Paradigm especially Extreme Programming methodology. Changes are something that I believe that must be embraced because it is a natural order of life. If I don't change then I cannot improve.

The methodologies all seem similar with changes here and there, so I guess System's methodology is more of a personal taste then an actual algorithm that if you follow rigidly you will obtain a specific result.

Two methods of System analysis Traditional and Object Orientated. I guess object orientated involves object in world of interaction whereas the traditional method is more of step wise, linear, sequential procedures.

Note : Dr Yen Cheung is my lecturer.

Tute 1

The tute was pretty fast because NetBeans IDE allowed me to create a database on a server and update it instantly. That's pretty cool as looking at the java code, at the number of lines that I would have to write, it makes my world a whole lot easier. The NetBeans IDE creates the code based on database of already written code, this is my impression. Maybe patterns can be used instead.

I have used Eclipse IDE before and it does help abstract a layer above the actual digital logic layer. Assembly layer is fun. The downside I suppose is that it is very predictive which may apply unneeded code or comments.

Productivity should be the same for a similar type of system no matter the size. The development of models should be the same if the system is similar but it is still highly dependent on the type of system and its environment.

5 Assignments, choose 2...gosh....all interesting....so planning to do all....

Note: Suttisak.jantavongso is my tutor.

Tuesday, 1 March 2011

First Post

Hello World,

My first blog in so many years that I have never tried to do because I was always so long winded and thus ending up not being able to keep up with content.