Subscribe by Email


Showing posts with label Pattern. Show all posts
Showing posts with label Pattern. Show all posts

Wednesday, October 19, 2011

How a task network is defined for a software engineering project?

The task network is a useful mechanism for depicting inter task dependencies and determining the critical path. When more people are working on a software engineering project, tasks and sub-tasks have their own inter-dependencies and also as the number of people increases, the development activities and tasks are performed in parallel. These concurrent tasks must be coordinated so that so that they will be complete when later tasks require their work products.

What is a task network?
It is also known as activity network. It is a graphic representation of how the tasks are flowing in a software engineering project. There is a pattern and a sequence that is followed by tasks. This task network can be used as a mechanism or a way to know this sequence and pattern of the tasks that can act as an input to an automated project scheduling tool.

On a macroscopic view, task network depicts the software engineering tasks. On a microscopic view, each and every task in the task network is expanded. For a concept development project, task network includes the following tasks:
- Concept Scoping
- Concept Planning
- Technology and Risk Assessment (It constitutes three tasks).
- Proof of Concept
- Concept Implementation (It constitutes three tasks).
- Integrate the three tasks which constitutes concept implementation.
- Customer Reaction

Software engineering activities are concurrent in nature. This nature leads to scheduling requirements. The project manager should keep in mind the following points to ensure continuous progress:
- He should determine the inter-task dependencies.
- He should be aware of tasks that lie on critical path which means the tasks that should be completed on schedule if project has to completed on schedule.


Saturday, April 16, 2011

Model-View-Controller (MVC) Design Pattern

Model View Controller design pattern is used to support multiple types of users with multiple types of interfaces. The Model-View-Controller (MVC) pattern separates the modeling of the domain, the presentation, and the actions based on user input into three separate classes:

- Model: The model locates all data information for the application. It does not care about how you interpret it or how process it. It divides functionality among objects involved in maintaining and presenting data to minimize the degree of coupling between the objects.

- View: The view manages the display of information. It is responsible for maintaining the consistency in its presentation when the underlying model changes.

- Controller: The controller interprets the mouse and keyboard inputs from the user, informing the model and/or the view to change as appropriate. The actions performed on the model can be activating device, business process or changing the state of a model.

The MVC pattern allows any number of controllers to modify the same model. The strategies by which MVC can be implemented are as follows:
- For Web-based clients such as browsers, use Java Server Pages (JSP) to render the view, Servlet as the controller, and Enterprise JavaBeans (EJB) components as the model.
- For Centralized controller, a main servlet is used to make control more manageable.


Thursday, March 10, 2011

What is an architectural style and pattern?

There are many architectural styles associated with the software that is built for computer based systems. The style describes a system category that encompasses:
- set of components.
- set of connectors enabling communication, coordination and cooperation among components.
- constraints.
- semantic models enabling a designer to understand overall properties of a system.

Architectural style is a transformation which is imposed on the design of an entire system. The intent is to establish a structure for all components of the system. When an existing architecture is re engineered, fundamental changes to the structure of the software results.
Architectural pattern imposes a transformation on the design of an architecture. Differences between pattern and style are:
- Scope of pattern is less broad.
- Pattern imposes a rule on architecture describing how software will handle some aspect of its functionality.
- Architectural patterns tend to address specific behavioral issues within context of architectural.
Patterns can be used in conjunction with an architectural style to establish the shape the overall structure of a system.


Monday, January 24, 2011

Aesthetic or Graphic Design - Layout Issues and Graphic Design Issues

Aesthetic or Graphic design makes the web application appealing, though it is functional in nature. It is an artistic angle that compliments the technical aspects of web engineering. To perform aesthetic design, web application users decide how they want the application to look like.

General Layout Guidelines To Consider When Screen Layout Is Designed


- Do not over crowd the web page with too much information as it makes it difficult for the suer to identify the needed information and it creates too much visual chaos.
- Scrolling on web page should be reduced as the users prefer not to scroll much. The best idea is to reduce the content or just put necessary content.
- The design should specify all layout items as a percentage of available space.
- There has to be a pattern that should be followed during group navigation, content and function geographically within the page.
- Web application should be designed in a way in which there is more emphasis on content. A typical web page should contain eighty percent of content with the remaining part dedicated to navigation and other features.
- Users have a tendency to scan the web page in a way they scan the page of a book i.e. from top-left to bottom right. High priority elements should be placed in upper-left portion of the page.

GRAPHIC DESIGN ISSUES


Graphic design begins with layout and then it covers the color schemes, sizes, styles, use of media, typefaces and all other aesthetic elements of an application.
Different web sites provide design tips and guidelines.


Saturday, March 13, 2010

Data Link Layer - Layer 2 of OSI model

The Data Link Layer is Layer 2 of the seven-layer OSI model of computer networking.
At this layer, data packets are encoded and decoded into bits. It furnishes transmission protocol knowledge and management and handles errors in the physical layer, flow control and frame synchronization.

The data link layer performs various functions depending upon the hardware protocol used, but has four primary functions:

- Communication with the Network layer above.
- Communication with the Physical layer below.
- Segmentation of upper layer datagrams (also called packets) into frames in sizes that can be handled by the communications hardware.
- The data link layer organizes the pattern of data bits into frames before transmission. The frame formatting issues such as stop and start bits, bit order, parity and other functions are handled here.
- It provides error checking by adding a CRC to the frame, and flow control.
- The data link layer is also responsible for logical link control, media access control, hardware addressing, error detection and handling and defining physical layer standards.
- The data link layer is divided into two sublayers: the media access control (MAC) layer and the logical link control (LLC) layer. The former controls how computers on the network gain access to the data and obtain permission to transmit it; the latter controls packet synchronization, flow control and error checking.
- The data link layer is where most LAN (local area network) and wireless LAN technologies are defined. Technologies and protocols used with this layer are Ethernet, Token Ring, FDDI, ATM, SLIP, PPP, HDLC, and ADCCP.
- The data link layer is often implemented in software as a driver for a network interface card (NIC). Because the data link and physical layers are so closely related, many types of hardware are also associated with the data link layer.
- Data link layer processing is faster than network layer processing because less analysis of the packet is required.
- The Data Link layer also manages physical addressing schemes such as MAC addresses for Ethernet networks, controlling access of any various network devices to the physical medium.


Facebook activity