Categories
Systems Analysis and Design

FIT9030: Week 10

Week 10 saw David get into the Object Oriented methodology for the Design Phase.
The key documents to come from the design phase (OO methodology) are:
  • Design Class Digrams
source: week 10 lecture notes
  • Interaction (Sequence Diagram / Collaboration Diagram)
source: week 10 lecture notes
 

Categories
Foundations of Programming

FIT9017: Week 9

Program, Design testing a program. We had some overlap this week with the Systems Analysis and Design subject as we looked at some program design methodologies.

New topics covered were:

  • CRC (class, responsibilities collaborators)
  • Testing strategy evolved from testing classes in isolation to testing use cases and scenarios

The tutorial was focused on giving us an idea of how to design our classes for assignment 2. I think the plans that we discussed were to simplistic however and there should be more classes than we covered in the program. The text book seems to have no section on this topic and I have found the index to be terrible… D:<

I will cut this post short as I need to finish the class diagrams for stage 1 of assignment 2 due tomorrow. Finding it a bit difficult as cohesion and coupling seem to work against each other in some instances.

Categories
Computer Technologies and O/S

FIT9018: Week 9

Week 9 saw Andy delve further into utilizing the Unix shell followed by a tutorial on setting up the Apache HTTP server.

www.apache.org

On the unix shell, we explored shell scripts. The basics that we covered:

Pearl of the week – Common shell script errors:

[-z “$x”] error : no space near the [ ]’s
[ “$x”=”abc“ ] error : no space around =
y = 20 error : extra spaces around =

  • # -> comment character
  • x=y -> assign vaiable (no space)
  • shell keys words stored in .profile
  • Standard variables:
    • $$ the process id of the shell
    • $0 the name of the shell script (if applicable)
    • $1…$9 $n refers to the nth command line argument
    • $# contains the number of arguments
    • $* a list of all the command line arguments
    • $? Exit status (more on that shortly)
  • ; -> End of line
  • if, then, else, for, for in, if-then-elif, while, until, break continue, case, trap.

Categories
Database Technology

FIT9019: Week 9

A very busy lecture this week with Manoj introducing some index structures including:

  • ISAM – Indexed Sequential Access Mechanism
  • Binary Tree – Suseptable to ‘lopsidedness’
source week 9 lecture notes
  • B – Tree – Normalized but inconsistent lookup times.
  • B+ Tree – Normalized, all keys in leaf nodes.  Used by Oracle.
source: week 9 lecture slides
Categories
Systems Analysis and Design

FIT9030: Week 9

Quick review this week with a number of assignments still on the ‘to-do’ pile.

Week 9 -> Structured Design.

We jumped out of the Object Oriented development methodology to take a look at the Design phase in the eyes of a traditional Systems designer. What we saw:

  • System Flowchart – Need system boundaries in Design phase.
source: week 9 lecture slides
  • Structure Chart – Describes processes in the System Flowchart in more detail using transaction analysis.
source: week 9 lecture slides

Categories
Foundations of Programming

FIT9017: Week 8

Judy returned to present lecture 8 this week, focussing on Encapsulation and Scope. The coverage of each aspect was quite introductory so I am just going to list through the points covered very breifly.

A graphic illustration of the encapsulation of Objects
  • Public Interface – public method and constructors are the objects/class’s interface
  • Encapsulation enables information hiding, a key point of object oriented development and code re-use
  • Local Variables – Scope limited to within a method
  • Field – attribute of an object, shoudl be private
  • Final – cannot be changed

Pearl of the Week:

  • Static vs Final – a good explination here

Short post this week, recently got Visual Studio 2010 so will look at trying out some C# in the next couple of weeks assuming I don’t get to addicted to SC2.

Categories
Computer Technologies and O/S

FIT9018: Week 8

Week 8’s lecture returned to the UNIX shell for some more in depth analysis. The tutorial was dedicated to Squid Proxy Server and how to run it from shell.

 First off, the lecture on Shell Scripting:

What happens when you type a command in shell

Categories
Database Technology

FIT9019 – Week 8

Was quite a hectic week for Database Technologies with the movement of lecture and tutorials and the major assignment due. Thank to Manoj for putting in so much consultation time for everyone outside of class hours. Unfortunately I could not make the lecture due to work commitments but I will review the lecture notes with some assistance from the text book.

Physical Database Design 1:

 

The process of developing a physical implementation strategy for a logical design:

Categories
Systems Analysis and Design

FIT9030: Week 8

Today’s catch up lecture was title ‘The Nature of Good Design’ and began our work on the Design phase [PADIS]. David’s analogy for the Design phase in comparison to the Analysis phase was, ‘the analysis phase is like the architects rendering of a how a house will look and its features… the design phase is the conversion of that outline into a blueprint from which the house can be built’.

Categories
Foundations of Programming

FIT9017: Week 7

This weeks lecture was once again presented by Michael Smith which was once again quite entertaining. The lecture was quite light with consideration given to the submission of the assignment at the start of the lecture. I was quite happy with the assignment, getting most of it done early and being able to consult with Michael on the solutions I had prepared. With some feedback from Michael I was then able to make some improvements and test them before the submission. This seems like it will be the necessary path for all assignments in this course as my failure to consult with the lecturer prior to handing in the Systems and Analysis Assignment 1a resulted in a mediocre mark for a very simple assignment.I suspect we will get the marks back in the first week of May.

In any case, the title of this weeks lecture was ‘Documentation, Identity, Equality and more Collections’. Covering the Java API and its presentation in Javadoc first off. As I learned the Javadoc notation when I first studied Java none of the ensuing slides where new.

Next came the equality  of Strings. Again this was one of the first important points mentioned in all Java text books. Basically using the arithmetic operator ‘==’ on two strings (or any objects for that matter) does not evaluate the content of the objects. Thus, if one wants to compare the state of two string objects string1.equals(string2) must be utilized. We spent some time discussing why this is the case, concluding that it the memory location that is compared when using the ‘==’ and that further ‘under the hood’ analysis was beyong the scope of this subject… o_o

We then looked at the immutable nature of Strings, which also applies to ArrayLists and other Collection objects that utilize Arrays.

Interfaces Implementations
Hash table Resizable array Tree Linked list Hash table + Linked list
1
Set
1
HashSet
1
TreeSet
1
LinkedHashSet
1
List
1
ArrayList
1
LinkedList
1
Queue
1
Map
1
HashMap
1
TreeMap
1
LinkedHashMap

Next came the most interesting part of the lecture.. HashMaps and HashSets (which also leads to other interfaces and implementations of Collections). I don’t have time right now to review all about collections but Michael gave me a great link: http://java.sun.com/docs/books/tutorial/collections/index.html which I will read thoroughly as from my limited experience strong knowledge on this topic is very valuable.