Categories
Case Study

FIT4037: Week 2

We got our first submission in on time this week. There were however some issue with version control, but we learnt our lesson and this submission is not hugely important. The next task our group of 4 faces is the submission of a Business Case proposal. 

Our discussion has been positive with good insights from all memebers. I am however a bit concenred that we lack the technical skills to implement a ‘working prototype’ of the system. This concern is compounded by the fact that our seminars will not at any stage cover anything technical. 

better than ASP.NET

Categories
Grid Computing

FIT5164: Week 1

Again affected by my timetable changes I missed the first lecture on this subject. Apperently the MUSO system is still being used here so it took some tracking down but did manage to find the subjects resources. Unit resources: http://users.monash.edu.au/~asadk/units/fit5164/, see MUSO for username and password.

A quick summary from the lecture notes of lecture 1:

Unit leader: Dr Asad Khan

Grids enable ‘On-Demand’ computing, examples of grids are P2P networks and clusters. From my understanding at this point they key is shared computing resources. Some basic definition and information can be found at:  http://en.wikipedia.org/wiki/Grid_computing. A question that came to mind when reading the introductory material is the difference between cloud computing and grid computing? A good response to this question can be found here: http://www.ibm.com/developerworks/web/library/wa-cloudgrid/. In essence, cloud computing goes a bit further than grid computing by dynamically allocating resources on demand.

example of a grid

Categories
Internet Application Development

FIT5032: Week 1

Unfortunately with late changes to my timetable I did not get to attend the initial lecture or tutorial for this subject. It is however using the Walkabout web site program which suggest that all of the resource will be readily available online.

After attending the second lecture I am left with the question of why use xml? To learn about a topic in detail I find it helps significantly to have a very clear understanding of WHY.

My first impression is that data storage for cross platform access is a job for databases, not a mark up language. I ask the question of why XML and not MySQL? I am sure there is an answer to this as I see sites and applications everywhere using XML. This post will be focused on coming to a clear understand of the uses, advantage and disadvantages of the eXtensible Markup Language.

why XML?
Categories
Data Communications

FIT9020: Week 1

Started off the subject with a two hour lecture which was mostly housekeeping. The second half of the lecture was quite interesting though with the focus on previewing the topics we would be covering this semester.

Amoung the topics to be covered:

  • Application Layer
  • Transport Layer
  • Network Layer
  • Data Link Layer
  • Physical Layer
source: Lecture 1
  1. Concepts of networking
  2. Technologies in use today
  3. Management of networking technologies

Five Layer model of internet networking

  • Physicals – Hubs, switchers, routers,cables satelites etc. [Ethernet]
  • DataLink Layer – Controls physical layer, formats transmission etc. [Ethernet]
  • Network and Transfer protocols – [TCP/IP]
  • Application Layer – [Web Browsers and web pages]

Also covered was the important of standards and the evolution of data comms/networks

Categories
Case Study

FIT4037: Week 1

Had the 1 hour seminar and 3 hour studio session last Thursday. We were assigned into groups which will be key for the remainder of the semester and for every assessable submission. I am not really sure what the rationale behind the selection of the groups was, how it can enable a merit based grading system or how it reflects real world, work place situations. I know several students who worked very hard to get high distinction averages who were placed in groups with team members that did not aim for the same level. This is a bit of a pickle as those students working towards high grades should be able to do so without encumbrance. Additionally students who are happy with Ps and Cs should not be forced into a position where they need to dedicate a much larger amount of time to the subject just to achieve someone else’s goals. In any case it is how the subject is run.

‘It will be interesting to see if we cover the technical skills required to undertake the web development project. From my perception we will not be doing much technical learning, the subject will be focused on generating reports in teams.

For meetings a document link: www.mwclearning.com/casestudy/Apollo13.TeamProjectManagement.Draft26.JUL.2010.docx

Categories
Computer Technologies and O/S Uni notes

FIT9018: Week 12

Week 12, still on hardware, look primarily at processors, memory and system performance.

Major factors in determining system performance (note software design struggles to make use of current hardware capabilities)

  • CPU processing speeds
  • Multiple thread processing
  • Multiple CPUs
  • Distributed systems
  • Wider/Faster Instruction paths (buses)
  • Faster secondary memory access
  • More/Faster memory including RAM and cache
  • Better memory/processor management (ie Virtual Memory OS)

Note that CPU clock speeds are determined by the manufacturer using non-standardized instructions. Thus box label clock speed should b ‘taken with a pinch of salt’.

More important is the instruction set architecture aka CPU architecture. At present there are two major architecture types:

  • CISC  – Intel/AMD [Complex Instruction Set Computers]
    • Small number of registers, large number of specialized instructions
  • RISC – SUN Sparc [Reduced Instruction Set Computers]
    • Large number of registers, small number of stored instructions

RISC takes heed of the fact that most programs only use about 10 of the 200 stored instructions. At present almost all processors with the exception of Intels x86 range utilized RISC architecture.

Techniques for increasing CPU performance:

  • fetch-execute operations made concurrent (can both be conducted at the same time)
  • Pipelining overlapping fetch and execute cycles
  • Parallel executions

This techniques result in scalar and super-scalar processing:

Without the above techniques 28 cycle would be required

Cache is another key technique for improving computing performance. By having a small amount of memory between the CPU and primary memory

Categories
Foundations of Programming

FIT9017: Week 11

With Week 11 being the last week for new topics to be introduced, Judy presented a lecture on Inheritance. I had read and worked through some inheritance tutorials previously but did not really grasp it with good clarity. Judy’s lecture did clarify a great deal.

Key advantages to inheritance:

  • Avoid code duplication
  • Re-use
  • Easier maintenance
  • Easier extendability

source: week 11 lecture notes

Categories
Computer Technologies and O/S

FIT9018: Week 11

A quick summary of week 11 which was a brief and perhaps dated review of storage devices:

  • Magnetic Disks
    • Direct Access Storage Devices (ie Hard disks/Floppy Disks) –  Organized by sectors, tracks and cylinder heads
  • Total (Disk) Access time – Total time it takes to read a piece of data – seek time + rotational delay + Data transfer time
    • Seek Time – time to position head over required cylinder (usually 4-8ms)
    • Rotational delay – time for desired sector to pass under the head (avg. 4ms)
    • Data Transfer time – >1ms
  • Magnetic Tape – Cheap sequential storage medium (only used for logging these days)
  • Optical Storage – CD-ROM/DVD/HD-DVD/BlueRay
  • Solid State –  USB Keys/SolidState Hard-drives (more information: http://en.wikipedia.org/wiki/Solid-state_drive)
Intel's SSD range (quickly coming down to a reasonable price)
Categories
Database Technology

FIT9019: Week 11

Week 11 gave us a quick introduction to PL/SQL.

The primary tools of PL SQL are:

  • Anonymous Blocks
  • Named Blocks
  • Subprograms
  • Triggers

Of these subprograms and triggers would be the most commonly used.

The structure of PL/SQL:

DECLARE
/*Declarative section is where variables and other objects such as cursors, types, exceptions, etc. are declared. Local
procedures and functions can also be declared and will be available for this block only. This section is optional */
BEGIN
/* Executable section can consist of both SQL statement and procedural statements. This section is where the work the
block has to perform is done. This section is mandatory */
EXCEPTION
/* Exception handling section is where errors are handled. The code in this section gets executed only when an error
is encountered. This section is optional. */
END;
/

A couple of examples of PL/SQL blocks:

-- Whenever emp_salary is updated or an employee deleted, this trigger enters a corresponding record into
--'EMPLOYEE_SALARY_CHANGE' table.
CREATE OR REPLACE TRIGGER trg_trackSalaryChange
AFTER UPDATE OR DELETE OF e_salary ON employee
FOR EACH ROW
DECLARE
oper VARCHAR2(10);
new_sal NUMBER(6,2);
BEGIN
IF updating THEN
oper := 'UPDATE';
new_sal := :new.e_salary;
IF :new.e_salary <= 0 THEN
RAISE_APPLICATION_ERROR (-20000, 'SALARY CANNOT BE ZERO OR NEGATIVE.');
END IF;
END IF;
IF deleting THEN
oper := 'DELETE';
new_sal := NULL;
END IF;

INSERT INTO employee_salary_change VALUES (:old.e_no, :old.e_name, :old.e_salary,
new_sal, user, sysdate, oper);
END;
/

For some basics on PL SQL such as syntax and constructs visit: http://plsql-tutorial.com/index.htm

Categories
Systems Analysis and Design

FIT9030: Week 11

Week 11 and 12 are both coming along a bit late. The 3 secondary assignments which were due in the last week took up most of my study time and my review process was somewhat derailed. I have definitley noticed that I do not adsorb as much from the lectures if I don’t keep up with this quick review within 48 hours of first hearing the lecture.

Week 11 was all about the User Interface, the key points taken from this lecture were:

  • 3 Principles of user centered design [UCD]
    • Focus early on the users and their work (interviews, questionnaires, observation)
    • Evaluate designs to ensure usability (must be easy to learn)
    • Use iterative development (prototyping with case tools will assist a great deal with this)
  • 3 metaphors of human-computer interaction
    • Direct Manipulation – User interacts with objects on the screen (evolved into the Desktop metaphor)
    • Document – electronic documents, ie: forms
    • Dialog  – command and response.
  • Principles of visibility and affordance
    • Visibility – everything that is expected to appear does and in the expected location, ie: submit button should immediately be visible on all forms.
    • Affordance – appearance should suggest function ie: an envelope suggests email function.
    • Standards and guidelines are also important to ensure visibility and affordance (particularly Microsoft and Apple’s  standards which are publicly available)
  • Aspect of user interface
    • Physical – Devices touched (mouse/keyboard),  manuals/documentation
    • Perceptual – Screens/Menus/Buttons
    • Conceptual – What the user understands about the logical tasks/functions of the system

User interface is a very large field and this quick skim over the lecture does not cover a large fraction of what we discussed in the lecture and the tut. In the interest of getting back on track with posts the above points will suffice.

The are some crazy examples of how far GUI design can go on Youtube based on Linux: