Since packages are considered as a containers for other UML things then, it has a capability to hold data. And by applying of it in package diagram it is representing the different layers of a software system to illustrate the layered architecture of it. Then, the package diagrams can use packages containing use cases to illustrate the functionality of a software system.
Fig. 1: Package diagram:
Reference:http://www.innwind.nl/uploads/pics/work-packages.png
Component diagram and class diagram
A component is a subtype of Class which provides for a Component having attributes and operations, and being able to participate in Associations and Generalizations. A Component may form the abstraction for a set of realizing Classifiers that realize its behavior. In addition, because a Class itself is a subtype of an EncapsulatedClassifier, a Component may optionally have an internal structure and own a set of Ports that formalize its interaction points. Conversely, A class diagram is a pictorial representation of the detailed system design. Design experts who understand the rules of modeling and designing systems design the system's class diagrams. A thing to remember is that a class diagram is a static view of a system. The structure of a system is represented using class diagrams. Class diagrams are referenced time and again by the developers while implementing the system.
Fig. 2: Component diagram
Reference:
http://www.iist.unu.edu/newrh/III/3/1/docs/rsltc/user_guide/html/UML2RSL_f17.png
http://www.developer.com/design/article.php/2206791/The-UML-Class-Diagram-Part-1.htm
http://en.wikipedia.org/wiki/Component_diagram
http://en.wikipedia.org/wiki/Class_diagram
Deployment diagram
This diagram is by far more useful when a system is built and ready to be deployed. But, this does not mean that you should start on your deployment diagram after your system is built. On the contrary, your deployment diagram should start from the time your static design is being formalized using, say, class diagrams. This deployment diagram then evolves and is revised until the system is built. It is always a best practice to have visibility of what your deployment environment is going to be before the system is built so that any deployment-related issues are identified to be resolved and not crop up at the last minute. The general rule of thumb is that correction costs due to changes increase as the project nears completion.
Fig. 3: Deployment diagram
Reference:
Steps in putting UML to work
1. Define the use case model. Find who are the actors involving with the problem and identify what is the problem and easily construct a diagram that is suit for that specific problem.
2. It is deriving activity to use case diagram. In this step, it includes the development of the sequence and collaboration diagrams from its use case scenario. And it's verify the process and interactions by reviewing.
3. Developing the class diagrams. In this step, its identify the objects about its similarities and differences. And its also define the major relationship between the classes by using " has a " and " is a " relationship between classes.
4. Draw state chart diagrams from class diagrams to provide further analysis of the system. It is to determine the methods by examining the state chart diagrams.
5. Begin system design by refining UML diagrams, and using to derive classes and their attributes and methods. And developing deployment diagrams is a part of this process. And its review the all existing UML diagrams for the system.
6. This is the most critical step. This step is the documentation about the whole system design and detail.
Importance of UML for modeling
The Unified Modeling Language helps you specify, visualize, and document models of software systems, including their structure and design, in a way that meets all of these requirements. (You can use UML for business modeling and modeling of other non-software systems too.) Using any one of the large number of UML-based tools on the market, you can analyze your future application's requirements and design a solution that meets them, representing the results using UML's twelve standard diagram types.