Wednesday, June 6, 2012

Transit of Venus

credits: Michel Breitfellner and Miguel Perez Ayucar/ESAC

Thursday, May 17, 2012

3rd International Conference

Technical and Managerial Innovation in Computing and Communications in Industry and Academia

Venue : Science City, Kolkata
Date : 18th -19th August, 2012
Conference URL: www.iem.edu.in/conference

Theme of the Conference
Innovative Ideas in National Skill Development vis-à-vis International Scenario

Innovative ideas in bridging skill gap and providing trained manpower to various diversified service sectors of the country are the need of the hour. These may be achieved through various national skill development programs and job oriented structured courses that strive towards building a formidable work force of international quality and standard in IT, ITES, Telecom, Finance, Banking, Retail, Manufacturing, Insurance, Infrastructure industries and the like that use technical and managerial approaches.

Innovation is the creation of better or more effective products, processes, services, technologies, or ideas that are accepted by markets, governments, and society. Innovation differs from invention in that innovation refers to the use of a new idea or method, whereas invention refers more directly to the creation of the idea or method itself.

Innovation matters. It is a key characteristic associated with the success of any society. Innovation is exploring new ideas based on existing technologies. The continuous improvement and advancement of the previously known technologies can result in developing new products, processes and systems which improves the quality of life for the society as the whole.

Managing innovation consists of:
Identifying the opportunity for innovation
Setting the objectives and benefits
Background research and generating creative idea(s)
Feasibility and risk factors analysis
Design, development, prototypes and testing
Policies and strategies of new procedures and managements
Market research and analysis
Implementation

For organizations that are competing globally, innovation is the key for survival. Technological innovation requires a change in processes and how companies do business. As an example, manufacturing industry has been changing radically in order to reduce costs and waste, increase variety and improve productivity. Technological innovation is a must to maintain global competitiveness.

Important Dates
Paper Submission: 15th June, 2012
Acceptance Notification: 7th July, 2012
Camera Ready Paper Submission: 15th July, 2012

Paper Submission Link: https://www.easychair.org/account/signin.cgi?conf=tmiccia2012

Sunday, April 1, 2012

PERT Important Points

PERT


Complex projects require a series of activities, some of which must be performed sequentially and others that can be performed in parallel with other activities. This collection of series and parallel tasks can be modeled as a network.
In 1957 the Critical Path Method (CPM) was developed as a network model for project management. CPM is a deterministic method that uses a fixed time estimate for each activity. While CPM is easy to understand and use, it does not consider the time variations that can have a great impact on the completion time of a complex project.
The Program Evaluation and Review Technique (PERT) is a network model that allows for randomness in activity completion times. PERT was developed in the late 1950's for the U.S. Navy's Polaris project having thousands of contractors. It has the potential to reduce both the time and cost required to complete a project.

The Network Diagram

In a project, an activity is a task that must be performed and an event is a milestone marking the completion of one or more activities. Before an activity can begin, all of its predecessor activities must be completed. Project network models represent activities and milestones by arcs and nodes. PERT originally was an activity on arc network, in which the activities are represented on the lines and milestones on the nodes. Over time, some people began to use PERT as an activity on node network. For this discussion, we will use the original form of activity on arc.
The PERT chart may have multiple pages with many sub-tasks. The following is a very simple example of a PERT diagram:

PERT Chart

The milestones generally are numbered so that the ending node of an activity has a higher number than the beginning node. Incrementing the numbers by 10 allows for new ones to be inserted without modifying the numbering of the entire diagram. The activities in the above diagram are labeled with letters along with the expected time required to complete the activity.

Steps in the PERT Planning Process

PERT planning involves the following steps:
  1. Identify the specific activities and milestones.
  2. Determine the proper sequence of the activities.
  3. Construct a network diagram.
  4. Estimate the time required for each activity.
  5. Determine the critical path.
  6. Update the PERT chart as the project progresses.

1.  Identify Activities and Milestones

The activities are the tasks required to complete the project. The milestones are the events marking the beginning and end of one or more activities. It is helpful to list the tasks in a table that in later steps can be expanded to include information on sequence and duration.

2.  Determine Activity Sequence

This step may be combined with the activity identification step since the activity sequence is evident for some tasks. Other tasks may require more analysis to determine the exact order in which they must be performed.

3.  Construct the Network Diagram

Using the activity sequence information, a network diagram can be drawn showing the sequence of the serial and parallel activities. For the original activity-on-arc model, the activities are depicted by arrowed lines and milestones are depicted by circles or "bubbles".
If done manually, several drafts may be required to correctly portray the relationships among activities. Software packages simplify this step by automatically converting tabular activity information into a network diagram.

4.  Estimate Activity Times

Weeks are a commonly used unit of time for activity completion, but any consistent unit of time can be used.
A distinguishing feature of PERT is its ability to deal with uncertainty in activity completion times. For each activity, the model usually includes three time estimates:
  • Optimistic time - generally the shortest time in which the activity can be completed. It is common practice to specify optimistic times to be three standard deviations from the mean so that there is approximately a 1% chance that the activity will be completed within the optimistic time.
  • Most likely time - the completion time having the highest probability. Note that this time is different from the expected time.
  • Pessimistic time - the longest time that an activity might require. Three standard deviations from the mean is commonly used for the pessimistic time.
PERT assumes a beta probability distribution for the time estimates. For a beta distribution, the expected time for each activity can be approximated using the following weighted average:
Expected time  =  ( Optimistic  +  4 x Most likely  +  Pessimistic ) / 6
This expected time may be displayed on the network diagram.
To calculate the variance for each activity completion time, if three standard deviation times were selected for the optimistic and pessimistic times, then there are six standard deviations between them, so the variance is given by:
[ ( Pessimistic  -  Optimistic ) / 6 ]2

5.  Determine the Critical Path

The critical path is determined by adding the times for the activities in each sequence and determining the longest path in the project. The critical path determines the total calendar time required for the project. If activities outside the critical path speed up or slow down (within limits), the total project time does not change. The amount of time that a non-critical path activity can be delayed without delaying the project is referred to as slack time.
If the critical path is not immediately obvious, it may be helpful to determine the following four quantities for each activity:
  • ES - Earliest Start time
  • EF - Earliest Finish time
  • LS - Latest Start time
  • LF - Latest Finish time
These times are calculated using the expected time for the relevant activities. The earliest start and finish times of each activity are determined by working forward through the network and determining the earliest time at which an activity can start and finish considering its predecessor activities. The latest start and finish times are the latest times that an activity can start and finish without delaying the project. LS and LF are found by working backward through the network. The difference in the latest and earliest finish of each activity is that activity's slack. The critical path then is the path through the network in which none of the activities have slack.
The variance in the project completion time can be calculated by summing the variances in the completion times of the activities in the critical path. Given this variance, one can calculate the probability that the project will be completed by a certain date assuming a normal probability distribution for the critical path. The normal distribution assumption holds if the number of activities in the path is large enough for the central limit theorem to be applied.
Since the critical path determines the completion date of the project, the project can be accelerated by adding the resources required to decrease the time for the activities in the critical path. Such a shortening of the project sometimes is referred to as project crashing.

6.  Update as Project Progresses

Make adjustments in the PERT chart as the project progresses. As the project unfolds, the estimated times can be replaced with actual times. In cases where there are delays, additional resources may be needed to stay on schedule and the PERT chart may be modified to reflect the new situation.

Benefits of PERT

PERT is useful because it provides the following information:
  • Expected project completion time.
  • Probability of completion before a specified date.
  • The critical path activities that directly impact the completion time.
  • The activities that have slack time and that can lend resources to critical path activities.
  • Activity start and end dates.

Limitations

The following are some of PERT's weaknesses:
  • The activity time estimates are somewhat subjective and depend on judgement. In cases where there is little experience in performing an activity, the numbers may be only a guess. In other cases, if the person or group performing the activity estimates the time there may be bias in the estimate.
  • Even if the activity times are well-estimated, PERT assumes a beta distribution for these time estimates, but the actual distribution may be different.
  • Even if the beta distribution assumption holds, PERT assumes that the probability distribution of the project completion time is the same as the that of the critical path. Because other paths can become the critical path if their associated activities are delayed, PERT consistently underestimates the expected project completion time.
The underestimation of the project completion time due to alternate paths becoming critical is perhaps the most serious of these issues. To overcome this limitation, Monte Carlo simulations can be performed on the network to eliminate this optimistic bias in the expected project completion time.

UML: Library Information System

Assignment: Assume that we have identified the following actors and goals:

Actor Goals Notes
Librarian Loan book to patron Authenticate patron, identify book, mark book as on-loan in catalogue, and add book to list of books on loan to this patron, with a specific due date. If patron's membership has expired, either refuse to lend book or enter "Manage patron information" use case to renew membership.
Renew book Identify patron and book, assess fine if overdue, and revise due date. Patron's membership status is checked. Renewal can be done by telephone.
Process book returned by patron Identify book, mark as available, and remove from list of books loaned to patron; if book is overdue, assess patron a fine.
Handle book reported as lost Identify book, mark as lost, and assess patron a fine.
Manage patron information Create, retrieve, update, or delete patron information.
Cataloguer Process new book Add new record to online catalogue, or add a copy to an existing record if book is a duplicate.
Patron Search for a book in the online catalogue Enter a search string, specifying whether to search for a name, a title, or a subject, to see a list of books matching the search string, then select a book to see the full record for that book; or enter a call number, and see a display of the system record for the specified book.
Administrator Send overdue book notices. Request a list of all books that are overdue by more than some minimum number of days.

Note that book ordering and accessions are not currently included in the scope of the automated library information system.
  1. Create a UML Use Case Diagram to depict the set of actors and use cases listed above. 

UML Basics

About UML

This chapter will give you a quick overview of the basics of UML. Keep in mind that this is not a comprehensive tutorial on UML but rather a brief introduction to UML which can be read as a UML tutorial. If you would like to learn more about the Unified Modelling Language, or in general about software analysis and design, refer to one of the many books available on the topic. There are also a lot of tutorials on the Internet which you can take as a starting point.
The Unified Modelling Language (UML) is a diagramming language or notation to specify, visualize and document models of Object Oriented software systems. UML is not a development method, that means it does not tell you what to do first and what to do next or how to design your system, but it helps you to visualize your design and communicate with others. UML is controlled by the Object Management Group (OMG) and is the industry standard for graphically describing software.
UML is designed for Object Oriented software design and has limited use for other programming paradigms.
UML is composed of many model elements that represent the different parts of a software system. The UML elements are used to create diagrams, which represent a certain part, or a point of view of the system. The following types of diagrams are supported by Umbrello UML Modeller:
  • Use Case Diagrams show actors (people or other users of the system), use cases (the scenarios when they use the system), and their relationships
  • Class Diagrams show classes and the relationships between them
  • Sequence Diagrams show objects and a sequence of method calls they make to other objects.
  • Collaboration Diagrams show objects and their relationship, putting emphasis on the objects that participate in the message exchange
  • State Diagrams show states, state changes and events in an object or a part of the system
  • Activity Diagrams show activities and the changes from one activity to another with the events occurring in some part of the system
  • Component Diagrams show the high level programming components (such as KParts or Java Beans).
  • Deployment Diagrams show the instances of the components and their relationships.
  • Entity Relationship Diagrams show data and the relationships and constraints between the data.

UML Overview

UML is a general purpose modeling language. It was initially started to capture the behavior of complex software and non software system and now it has become an OMG standard. UML provides elements and components to support the requirement of complex systems. UML follows the object oriented concepts and methodology. So object oriented systems are generally modeled using the pictorial language. UML diagrams are drawn from different perspectives like design, implementation, deployment etc. At the conclusion UML can be defined as a modeling language to capture the architectural, behavioral and structural aspects of a system. Objects are the key to this object oriented world. The basic requirement of object oriented analysis and design is to identify the object efficiently. After that the responsibilities are assigned to the objects. Once this task is complete the design is done using the input from analysis. The UML has an important role in this OO analysis and design, The UML diagrams are used to model the design. So the UML has an important role to play.

UML notations:

UML notations are the most important elements in modeling. Efficient and appropriate use of notations is very important for making a complete and meaningful model. The model is useless unless its purpose is depicted properly. So learning notations should be emphasized from the very beginning. Different notations are available for things and relationships. And the UML diagrams are made using the notations of things and relationships. Extensibility is another important feature which makes UML more powerful and flexible.

UML Diagrams:

Diagrams are the heart of UML. These diagrams are broadly categorized as structural and behavioral diagrams.
  • Structural diagrams are consists of static diagrams like class diagram, object diagram etc.
  • Behavioral diagrams are consists of dynamic diagrams like sequence diagram, collaboration diagram etc.
The static and dynamic nature of a system is visualized by using these diagrams.

Class diagrams:

Class diagrams are the most popular UML diagrams used by the object oriented community. It describes the objects in a system and their relationships. Class diagram consists of attributes and functions.
A single class diagram describes a specific aspect of the system and the collection of class diagrams represents the whole system. Basically the class diagram represents the static view of a system.
Class diagrams are the only UML diagrams which can be mapped directly with object oriented languages. So it is widely used by the developer community.

Object Diagram:

An object diagram is an instance of a class diagram. So the basic elements are similar to a class diagram. Object diagrams are consists of objects and links. It captures the instance of the system at a particular moment.
Object diagrams are used for prototyping, reverse engineering and modeling practical scenarios.

Component Diagram:

Component diagrams are special kind of UML diagram to describe static implementation view of a system. Component diagrams consist of physical components like libraries, files, folders etc.
This diagram is used from implementation perspective. More than one component diagrams are used to represent the entire system. Forward and reverse engineering techniques are used to make executables from component diagrams.

Deployment Diagram:

Component diagrams are used to describe the static deployment view of a system. These diagrams are mainly used by system engineers.
Deployment diagrams are consists of nodes and their relationships. An efficient deployment diagram is an integral part of software application development.

Use Case Diagram;

Use case diagram is used to capture the dynamic nature of a system. It consists of use cases, actors and their relationships. Use case diagram is used at a high level design to capture the requirements of a system.
So it represents the system functionalities and their flow. Although the use case diagrams are not a good candidate for forward and reverse engineering but still they are used in a slightly differently way to model it.

Interaction Diagram:

Interaction diagrams are used for capturing dynamic nature of a system. Sequence and collaboration diagrams are the interaction diagrams used for this purpose.
Sequence diagrams are used to capture time ordering of message flow and collaboration diagrams are used to understand the structural organization of the system. Generally a set of sequence and collaboration diagrams are used to model an entire system.

Statechart Diagram:

Statechart diagrams are one of the five diagrams used for modeling dynamic nature of a system. These diagrams are used to model the entire life cycle of an object. Activity diagram is a special kind of Statechart diagram.
State of an object is defined as the condition where an object resides for a particular time and the object again moves to other states when some events occur. Statechart diagrams are also used for forward and reverse engineering.

Activity Diagram:

Activity diagram is another important diagram to describe dynamic behaviour. Activity diagram consists of activities, links, relationships etc. It models all types of flows like parallel, single, concurrent etc.
Activity diagram describes the flow control from one activity to another without any messages. These diagrams are used to model high level view of business requirements.

Coronary Angiography

Coronary angiography is a specialised X-ray test to find out detailed information about your coronary (heart) arteries. It is mainly used if you have angina to assess the extent and severity of the angina. It involves a procedure called catheterisation.

Note: the information below is a general guide only. The arrangements, and the way tests are performed, may vary between different hospitals. Always follow the instructions given by your doctor or local hospital.

What is coronary angiography?

Coronary angiography is a special X-ray of the coronary arteries.

Coronary arteries do not show up on a plain X-ray. With coronary angiography, dye is injected down the coronary arteries. The arteries and their smaller branches then show up clearly on an X-ray 'like a road map'. Dye is injected into the coronary arteries by using a catheter. (A catheter is a thin, flexible, hollow tube.) How this is done is described below.

Therefore, coronary angiography can show the exact site and severity of any narrowing of the coronary arteries. This helps the doctor to decide on what treatment you may need. For example, if the narrowing is mild and does not need surgery. Or, if the narrowing is severe and you should have a coronary artery bypass graft or coronary angioplasty. See separate leaflet called 'Coronary Angioplasty' for more detail on this procedure.

Understanding the arteries of the heart

The heart is mainly made of special muscle. This heart muscle pumps blood into arteries (blood vessels) which take the blood to every part of the body.

Like any other muscle, the heart muscle needs a good blood supply. The coronary arteries take blood to the heart muscle. The coronary arteries are the first arteries to branch off the aorta. The aorta is the large artery that takes blood from the left ventricle of the heart to the body.

What is angina and what causes it?

Angina is a pain that comes from the heart. The usual cause of angina is narrowing of one or more of your coronary arteries. This reduces the blood supply to a part or parts of your heart muscle. The blood supply may be enough when you are resting. However, your heart muscle needs more blood and oxygen when it works harder. For example, when you walk fast or climb stairs, your heart rate increases to deliver the extra blood. If the extra blood that your heart needs during exertion cannot get past the narrowed arteries, the heart 'complains' with pain.

The narrowing of the arteries is caused by atheroma. Atheroma is like fatty patches or 'plaques' that develop within the inside lining of arteries. (This is similar to water pipes that get 'furred up' with scale.) Plaques of atheroma may gradually form over a number of years in one or more places in the coronary arteries. In time, these can become bigger and cause enough narrowing of one or more of the arteries to cause symptoms.

The diagram below shows three narrowed sections as an example. However, atheroma can develop in any section of the coronary arteries.

Cross-section of the heart showing patches of atheroma (112.gif)

How is coronary angiography done?

You lie on a couch in a catheterisation room. An X-ray machine is mounted above the couch. A catheter is inserted through a wide needle or small cut in the skin into a blood vessel in the groin or arm. Local anaesthetic is injected into the skin above the blood vessel. Therefore, it should not hurt when the catheter is passed into the blood vessel.

139.gif


The doctor gently pushes the catheter up the blood vessel towards the heart. Low-dose X-rays are used to monitor the progress of the catheter tip which is gently manipulated into the correct position. You may be able to see the progress of the catheter on the X-ray monitor.

The tip of the catheter is pushed just inside a main coronary artery. Some dye is then injected down the catheter into the artery. Several X-ray films are rapidly taken as the dye is injected (the dye shows up clearly on X-ray films). The X-ray films are recorded as a moving picture and this is called an angiogram. The angiogram shows the vessels filling with blood and the sites of any narrowing can be seen.

The tip of the catheter is then put into the other main coronary artery and the test is repeated. So, an angiogram picture is built up of each of the coronary arteries and their branches.

You cannot feel the catheter inside the blood vessels. You may feel an occasional 'missed' or 'extra' heartbeat during the procedure. This is normal and of little concern. During the procedure your heartbeat is monitored by electrodes placed on your chest which provide a tracing on an ECG machine (electrocardiograph). Sometimes a sedative is given before the test if you are anxious.

When the test is over, the catheter is gently pulled out. If it was inserted through a small cut in the skin in the arm then you will normally need a few stitches. If it was inserted through a wide needle in your groin then a nurse will press over the site of insertion for about 10 minutes to prevent any bleeding.

How do I prepare for a coronary angiography?

You should get instructions from your local hospital about what you need to do in the days leading up to the test. The sort of instructions may include:
  • Before the day of the test you may need a blood test and an ECG to make sure you are OK to have the procedure.
  • If you take a 'blood thinning' drug (anticoagulant), such as warfarin, then you are likely to need to stop this for 2-3 days before the test. (This prevents excessive bleeding from the site of the catheter insertion.)
  • If you take insulin or drugs for diabetes, the timing of when to take these on the day of the test may need to be clarified.
  • If you may be pregnant, you need to tell the doctor who will do the test.
  • You may be asked to stop eating and drinking for a few hours before the test.
  • You may be asked to shave both groins before the test.
  • You will have to sign a consent form at some point before the test to confirm that you understand the procedure, understand the possible complications (see below), and agree to the procedure being done.

How long does coronary angiography take?

It usually takes about 30 minutes. In most cases it is done as a day-case procedure.

After the test

  • The doctor will discuss what he or she found during the test. A letter is also sent to your GP giving details of the test results.
  • You will need to rest for a few hours after the test. You should ask a friend or relative to accompany you home. Most people are able to resume their normal activities the next day.
  • There may be some bruising at the site of the catheter insertion which may be a little sore when the anaesthetic wears off. Painkillers such as paracetamol will help to ease this.
  • You may need to have some stitches removed after about seven days if a small cut was made to insert the catheter.

Are there any risks or side-effects?

Most of the side-effects are minor and may include:
  • A bruise, which may form under the skin where the catheter was inserted (usually the groin). This is not serious, but it may be sore for a few days.
  • The small wound where the catheter is inserted sometimes becomes infected. Tell your GP if the wound becomes red and tender. A short course of antibiotics will usually deal with this if it occurs.
  • Some people get a short angina-type pain during angiography. This soon goes.
  • The dye may give you a hot, flushing feeling when it is injected. Many people also describe a warm feeling in the groin when the dye is injected - as if they have 'wet themselves'. These feelings last just a few seconds (and the operator will tell you when they are about to inject the dye). Rarely, some people have an allergic reaction to the dye.
Serious complications are rare, but do sometimes occur. For example, some people have had a stroke or a heart attack (myocardial infarction) during the procedure. Also, rarely, the catheter may damage a coronary artery. The risk of serious complications is small and is mainly in people who already have serious heart disease. As a consequence of serious complications, some people have died during this procedure. Your doctor will only recommend coronary angiography if they feel the benefits outweigh the small risk.