username: password: login

Industry News   

Next >Last >>
10/1/2009  - Google Wave Has Arrived--For Some of Us

Yesterday Google Wave made headlines once again as Big G began to send out the 100,000 preview invitations they promised. The real time communication and collaboration tool’s preview release will reportedly be hosted on the platform’s own website rather than in the separate "sandbox" developers have been using since the platform’s release to developers in May. 

"In addition to the developers already using Wave, we will invite groups of users from the hundreds of thousands who offered to help report bugs when they signed up," said Google Wave Project Manager, Dan Peterson.

Will Google Wave be the next step in communication as so many like to imagine it will? Or the viable alternative to traditional e-mail that Google themselves planned for it to be? Well, we’re about to find out. If you didn’t help report bugs and are feeling lousy about it, don’t worry. Google wave is expected to be officially released for public use early next year. Alternatively, you could comb the net for someone who was invited, as each of the 100,000 chosen also received 5 invited of their own. 

In any case, keep up with the movement here


Click here for the full story.

9/30/2009  - You've Got News! How to Set Up E-Mail Alerts
Most news websites offer an alert service — they'll send you a quick e-mail whenever a headline that interests you hits the wires. There are other methods you can use, too, like homepage widgets. Read our simple guide to setting up a news alert.



Click here for the full story.

9/24/2009  - Are You Managing Your Electronic Documents? Why Not?

aiim_logo_2009.jpg Confirming the recent Forrester Report that showed a widespread lack of management of electronic records, AIIM (news, site) has just published a similar report that shows 26% of organizations admitting that they have no electronic records management policy.

The report also shows that nearly half of companies surveyed (44%) have no procedures for freezing electronic records in the event of litigation or compliance issues.


Click here for the full story.

9/24/2009  - Video: Pentagon's Cyborg Beetle Takes Flight
A research team at the University of California Berkeley successfully implants electrodes into a beetle allowing scientists to control the insect’s movements in flight. Yeah, it's funded by DARPA.



Click here for the full story.

Next >Last >>



Object Oriented Architecture

Without a good architecture, software systems can be hard to understand, predict, manage, and optimize. When developers do not maintain a good architecture, they increase the risk of the project’s failure, or decrease the maintainability of a large scale application. This results in higher long term maintenance costs. The idea behind object-oriented programming is that a computer program may be seen as a collection of individual objects, as opposed to a traditional view in which a program may be seen as a collection of functions. Each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent entity with a distinct role or responsibility. Object-oriented programming (OOP) will promote greater flexibility and maintainability in development, and is widely popular in large-scale software engineering. OOP is generally easier to learn for those new to computer programming than previous approaches. Since the OOP approach is often simpler to develop and to maintain, it lends itself to more direct analysis, coding, and understanding of complex situations and procedures than other programming methods. This in turn, leads to a decrease in the learning curve associated with introducing a new team member to the application. In OOP, it is common to separate the application into different layers of functionality. Each layer has a specific focus and subset of tasks that it will accomplish. Generally, each layer will be partially dependent on the previous layers, however, the layers are designed in such a way that any one layer could be taken out and replaced with another layer, as long as both the inputs and outputs of the new layer are the same as the old layer. The object model that J Wautier Consulting would implement would consist of the following layers:

- Presentation Layer
- Framework/Shared Services Layer
- Business Layer
- Integration Layer
- Data Access Layer

In the following sections, each of the layers listed above will be briefly described; both their purposes and relations to the system will be outlined.

Presentation Layer

The presentation layer will handle the physical display of data to the end user. This layer will receive its data from the business layer in an already “formatted” form. This layer will also be responsible for the collection and basic validation of user input.

Framework / Shared Services Layer

The framework/shared services layer will be a set of common business related tasks that have been somewhat standardized by other vendors. J Wautier Consulting will leverage these existing functions to minimize development time on industry standard items.

Some of the items that would be included in this layer are:

- Site structure and navigation
- Membership Services
- Configuration
- Logging

Business Layer

The business layer is where the majority of the business logic will be implemented. The business layer will act as a repository for data or objects that the other layers need to access. The business layer will be comprised of objects and collections. Each object will have methods and properties available to the other layers to accomplish business tasks. All data transformation, business validation, and other processing of data will generally be contained within the objects of the business layer.

A simple example of how the business layer functions would be a person object. In the real world, a person is a complex “thing”. People have many different properties that could be combined together to describe them. In the business world, some of these properties are things such as full name, mailing address, gender, etc. When saving a person’s data in a database, individual pieces of data are stored in many different columns. Many times, several of these columns will need to be joined or analyzed to obtain a practical piece of data that will describe the user. In this example, a person’s full name will be used.

The other layers will need to know a person’s full name. However, depending on the person, it could be any one of a number of combinations of first name, last name, middle name, prefix, and suffix. The person “object” would simply have a property called Person.FullName. However, the business logic in object would execute a subset of code that would analyze each of the pieces of data and return back a properly formatted full name according to the business rules it was programmed with. If at any time those business rules change, the developer only needs to change it in one spot in the business layer. Using non-object oriented methods, the developer may have had to make the same changes in X number of pieces of code, depending on how many times it was used in the application. As can be seen, the end result is that changes in business rules will not require large amounts of developer time and money to implement.

To enforce maintainable and effective OOP code, J Wautier Consulting suggests that all data that is displayed in the presentation layer, comes from objects created in the business layer. The business layer will load its objects with data from the database. All data will be loaded using standardized stored procedures and will be loaded automatically by the data access layer.

Data Access Layer

The data access layer will facilitate all direct writes and reads to and from the database. By separating the physical reading and writing into a separate layer, it reduces code and development time needed to create the business layer, as well as insures future upgrades and scalability of the database.