Monthly Archives: January 2016

Optimal Use of Wireframes in Eliciting Business Requirements

The debate continues on whether it is Wireframes or Functional Requirements Definition document. Since I personally like “wireframing” my article would be slightly biased towards the same. Adding to the same, both the processes tend to complement each other. To start with let’s see where exactly (i.e. which stage of the software cycle) the wireframing process fits in.

Being a part of the initial phase of the development cycle, wireframing is a process which helps in organizing the elements of a website. The wireframe acts as a prototype that shows the placement of page features, such as header, footer, content, sidebars, and navigation. It also specifies the placement of the elements within these content areas. If you want to develop a site that accurately matches the client’s requirements and minimize project revisions, wireframing will keep you on track. Thus it provides to everybody a visual representation of the website and displays a clearer picture of the design of the website layout. The key is to keep it simple enough to be clear to the client and to be flexible for the designer, but detailed enough to guide the programmer.

A wireframe should not only provide a final look of the desired website but also allow revisions to be made easily and early on in the process.

Wireframing brings the following key benefits:

  •  It gives the client an early, close-up view of the site design (or re-design).
  •  It can inspire the designer, resulting in a more fluid creative process.
  •  It gives the developer a clear picture of the elements that they will need to code.
  •  It makes the call to action on each page clear.
  •  It is easy to adapt and can show the layout of many sections of the website.

Like all other stages, it’s nice to follow the nice practices in developing a wireframe too.

  • It’s recommended to work in greyscales. Different shades of gray help in categorizing various elements, shapes and outlines. working in grayscale helps maintain focus on the primary function of the process, which is to finalize the layout, not the design
  • Requirement Understanding: A clear understanding of the client requirements goes a long way. User responses thus page outputs, calls to actions need to be very clear thus making the wireframes very clear.
  • Requirement Gathering: Navigation sections, header, footer, logos, ads etc if collected in advance help in the accuracy of the wireframe designs.

List of different tools that i use are:

  •  Hand sketching on paper
  • Visio:  Flowchart software.
  •  Web prototyping software, such as Gliffy or Balsamiq.
  •  Graphics software, such as Photoshop or Illustrator
  •  (X)HTML wireframes are almost like actual sites themselves.

wf

 

Java on the Cloud

For those interested in deploying their Java applications on the cloud, lets take a look at some  popular options available to developers

  • Oracle Java Cloud Service
  • Amazon Elastic Beanstalk
  • Google App Engine

Oracle Java Cloud Service positions itself as a PaaS solution.

Pros –

  • OJCS doesn’t expose the underlying infrastructure
  • OJCS  uses the Oracle stack which includes Weblogic 11 running on the Exalogic Platorm.
  • This Exalogic platform uses optimised Sun Microsystems hardware plus Oracle stack, and shows high processing speeds and throughput.
  • Supports a larger number of Java standards as compared to the other two.
  • Good Eclipse/JDeveloper support.
  • Of the three options, has the most focus on providing maximum Java API support.

Cons –

  • There could be more Fine grained control of the underlying infrastructure.

Continue reading

Wireless Protocols

Title: Wireless Protocols

Introduction

This document is a high level view of few prevalent wireless technologies.

The aim is to create a perspective about technology that we popularly refer to as wireless – in these cases devices communicate in isolation or as part of a larger, more complex network.

The following information is provided in the comparison table below:

Comment

A small comment on the technology.

Protocols

There are a large number of protocols.  This can be very confusing to the beginner. The protocols mentioned here are popular and indicative ones for that technology – not an exhaustive list. This value is provided here only for information, just to help make the association, and as a pointer to further details to help understand what they do with respect to addressing, handshaking, data transmission, encoding; point to point or broadcast; node/ instrument profile as transmitter, receiver, repeater, master, slave, etc.

Very often the protocols that these technologies are referred to by are the low level protocols (Layers 1 & 2 as per OSI model).

For example:

  • The 802.* series.
  • Phone manufacturers that support WiFi will say that they support IEEE 802.11 a/b/g/n

Frequency

Is provided for information purposes only. The frequency range gives an idea about the transmission characteristics.

The characteristics vary widely across different spectrum bands. There is no definite trend, and each one is different.

For example, low frequencies ( long wave)may travel longer distances since they are reflected by the earth and the atmosphere.

Frequencies in the optical range have their own unique properties. Very high frequencies have good penetration, and can pass through barriers like walls, for example.

Other generalizations, not wholly accurate, are that at higher frequencies more data can be transferred, as compared to lower frequencies. Also higher frequencies consume more energy (in part due to the absorption characteristics of the media)

A popular classification is of the kind to ULF, VLF, VHF, EHF, etc.

http://en.wikipedia.org/wiki/Radio_spectrum#By_frequency

Range

In case of wireless communication, the range that can be covered depends upon the power available. Frequency bands to transmit information are an important and precious resource, and this controlled by a regulatory body.

All the technologies that we look at here operate locally (except mobile technologies) over small distances, and come under the ISM (Industrial, Scientific and Medical) band. ISM operates at 868 MHz in Europe, 915 MHz in the USA and Australia and 2.4 GHz in most jurisdictions worldwide. Data transmission rates vary from 20 kilobits/second in the 868 MHz frequency band to 250 kilobits/second in the 2.4 GHz frequency band.This band allows people/devices to communicate locally wirelessly. The regulation controls the range over which the devices can transmit.It does so by limiting/specifying the power rating.

The value here gives an idea of usual ranges in domestic applications.  Like between point to point communication. Or between a transmitter and a receiver. As opposed to between nodes in a network. Continue reading