Contact Management Application Using UML Tools
Unified Modelling Language (UML) is an information technology language for the collection, analysis, and processing of application design requirements, exchange of specification message, architecture overview, and behavior requirements. Using this language will assist in developing many diagrams using the various UML tools, and provide the company with a complete ready to use contact management application (Yang, 2005). The application of Unified Modelling Language will be on various areas like embedded systems, commercial application, and we application. The UML tools will develop program language code using UML tools, and produce bug-free, deployable applications that will run efficiently when the code generator incorporates best practices scalable patterns (Amber, 2005). Because UML is a graphical system network language, it will develop visualizing, constructing, specifying, and documenting information about the contact management application system. Using UML tools will help the project team to communicate, explore the various available, potential application design, and validate the project application architectural design (Amber, 2005).
Application design modeling using UML is significant because, it will provide a structure that will enhance system application problem solving like, creating a contact management application for Acme’s expanding customer list. This model will enhance the capabilities of the application that Acme wants. The model from UML tools shall enable Acme find solutions to the problems in the current software, which Acme has identified does not have the capacity it wants in the application with regards to the expanding customer list the company wishes to develop an effective contact management application. The various available UML tools diagrams will show a perfect view of the system, and reduce business time-to-market problems. The objective of modeling Acme’s contact management application using UML tools is that designing the application model before the occurrence of the application problem there is a less chance that the UML design will fail. This will save Acme development costs, and reduce risks of mistakes (Yang, 2005).
Many research projects in the past focus on the different requirements that influence the rest of a contact management software development. All these researchers focus primarily, and not on functional requirements regardless of the fact non-functional requirements are the most expensive, and hard to handle. The application design using UML tools shall aim at filling this gap, and propose a systematic method in ensuring that the conceptual design model reflects the NFRs. The development process of the application will be in two independent cycles separately. One cycle will be regarding the functional aspects of the system application, and the other cycles on the non-functional factors of the application (Yang, 2005). By dealing with these functionalities independently, the aim is to establish a convergence point between the two cycles. Through using this convergence point, Acme will express the functional views all the data and actions necessary in satisfying the non-functional requirements in the NFR view (Amber, 2005).
Using UML tools to create diagrams will develop a software application model that will act as an architect’s blueprint. This model will assist the developers of the software application, and project managers in verifying that the logic of the contact management application is correct and meets the end users’ needs before the writing of any system application code. Because the UML will provide a graphical view, it will enable the programmers to understand it, and enhance communication between the developers, and other stakeholders of the project. The UML tools will develop an application that will combine various object-oriented methodologies during modeling.
One of the goals in the design using the UML tools will be, to create a system for modeling of the application that will ensure a significant to the designers, when developing executable features of the application that will process the information during contact management. Using UML tools will give the architects, project managers, and developers a common language. This will assist them in describing a solution to the contact management system problem. This will provide a balance between extensibility, flexibility, and usability. UML tools will help to design organizational architectures, and other systems that are not application related (Baker, 2008).
This version of UML will contain various diagrams from the different tools, and management model elements that will serve as the core of the UML application. Depending on Acme’s application requirements, the UML tools will develop diagrams that will be either be structural diagrams, behavioral diagrams, or model management elements. Some of the UML tools that will develop the UML diagrams include ArgoUML, Poseidon for UML, Eclipse UML2 tools, and ATL.
ArgoUML provides various features in an application that includes all the nine UML 1.4 diagrams, Java 5+, standard UML metamodel, UML profile support, XMI support, diagram zooming and editing, and OCL support (UML 2001, Gogolla and Kobryn, 2001). Other features are forward engineering and reverse engineering. ArgoUML uses Java, C++, and C# to provide code generation. Poseidon for UML is another efficient tool because it contains all the nine diagrams in UML, and the diagram elements (UML 2001, Gogolla and Kobryn, 2001). A person can create, load projects, browse or exchange models, create Java codes, and export the diagrams in different formats (Baker, 2008). Poseidon enables reverse engineering, plug-in mechanisms, UMLdoc document generation in Word 2003, and HTML, and JAR import. Eclipse UML2 tool is an open source tool that will provide the editing of diagrams in structures, behavior, interaction, use case, and profile definition. It has a feature that will enable a person to save a diagram as SVG file. ATL is a non-proprietary or open source UML tool. This UML tool will enable the transformation of UML models to other models in the application design. ATL Atlas Transformation Language is a UML transformation language that provides ways in producing a target model from a source model (Baker, 2008).
Reference
Ambler, S. W. (2005). The elements of UML 2.0 style. Cambridge [U.K.: Cambridge University Press.
Baker, P. (2008). Model-driven testing: Using the UML testing Profile. Berlin: Springer-Verlag.
UML 2001, Gogolla, M., & Kobryn, C. (2001). UML 2001: The unified modeling language : modeling languages, concepts, and tools : 4th international conference, Toronto, Canada, October 1-5, 2001 : proceedings. Berlin: Springer.
Yang, H. (2005). Software evolution with UML and XML. Hershey, PA: Idea Group Pub.