Just how important is UML to the success of OO software projects today? Discuss.
You will contribute to an online magazine for this module. Each of you will write an article on a topic that is loosely related to the lecture material. The list of topics is in a wiki on blackboard, and only two students are permitted to write on each title. Your articles will be published on Blackboard using the Module journal. Your peers will give you feedback on your first draft. Use this to refine your article for final publication. Together with your final revised article, you must also submit a brief analysis report of changes you made and how they relate to the feedback you received. Hopefully, this will be a worthwhile learning experience for everyone.
Use the module materials and your own research to write a magazine article (such as you might find in a professional publication such as Computing, Computer Weekly or BCS’s IT Now) that critically discusses the issues around one of the following titles:
Advantages of using UML in Object oriented software projects
The report will discuss about the importance of UML in bringing the success towards OO software projects today. Object oriented software engineering is a methodology and object modelling language. Ivar Jacobson developed Object oriented software engineering in 1992 (Larman 2014). UML is a standard language used for constructing, specifying, visualising and for documenting artefacts associated with developing a software system. The system used can be a software or non-software system. The report will describe the importance of using UML with object oriented software projects in detail.
The main feature offered by object oriented software is encapsulation and inheritance. Encapsulation ensures that the data and method that are wrapped up into one unit cannot be accessed by outside world and inheritance ensures the reusability of codes. This includes deriving classes from pre-existing classes and inheriting the features of pre-existing class. This ensures that no one can affect the programmer’s attention. The main features offered are information hiding, dynamic binding, data abstraction and inheritance (Cox 2016). The benefits of using object oriented software are it offers reusability of code, naturalness, modularity and deferred commitment.
UML works with the aim of providing a syntactically, semantically rich visual modelling language. UML is having application beyond the software development and this includes flow in manufacturing. The main objective of UML is defining a simple modelling mechanism that will help in modelling every type of practical system that are used in today’s complex environment. UML is not a programing language but with the help off several tools this can be used for code generation in different other languages with the help of UML diagrams. UML is having a relation with object oriented analysis and design (Schroeder, Lorensen and Martin 2014). There are 9 types of UML diagrams this are activity diagram, use case diagram, interaction overview diagram, state machine UML diagram, sequence UML diagram, class diagram, object diagram and component diagram. The features offered by UML are as follows:
- UML language works differently as compared to common programming language. This includes C++, COBOL, Java, etc.
- UML is basically a pictorial language that is used for making software blueprints.
For UML it becomes necessary to have a conceptual model. Conceptual model is a type of model that is built using relationships and concepts. Conceptual model is a basis of UML model and helps to recognise the objects used in the real world and the interaction between this entities. In order to work with UML model it becomes necessary to prepare a conceptual model and proceed accordingly (Larman 2014). There are three main components that are needed for conceptual model and this elements includes UML building block, common mechanism of UML and rules to connect these building blocks. UML is referred to as the successor of object oriented analysis and design. Object is an entity that contains both methods and data and controls the activity of data. The data represents the objects state. A real world system is built on hierarchical model with the use of class and under this objects are defined. Hierarchy is defined with the use of inheritance and class. This features gets associated with requirement. The objects have real life existence and can be used to perform basic concepts with the help of UML, this includes encapsulation, polymorphism, abstraction and inheritance (Karim et al. 2017).
Features offered by UML
The object oriented projects developed with the use of UML offers many benefits and an easy way of developing a project. UML offers a standard notation for designing the software projects in object oriented software. This design is familiar to everyone and easy to use. The object oriented software projects developed by UML offers a variety of tool. This includes tools that allows generation of codes, diagrams, performs impact analysis and also includes complexity analysis. Apart from all these features, UML offers a flexible modelling elements that helps the object oriented software projects. The models offered by UML while developing the object oriented software projects are portable. The models developed for the object oriented software projects are saved with the use of standard XMI format. These files can be read with the use of different UML tools. The architecture provided by the UML is very much beneficial for object oriented software projects. This allows getting a perspective about availability, security, performance and also allows planning for incremental development.
In the field of computer science there are several problem solving paradigms that are being used, this includes imperative, functional, and declarative and object oriented language. In case of object oriented language the algorithms are being expresses by defining objects and these objects interact with each other (Morton and Odell 2014). In case of developing a software projects UML model uses different aspects this includes static, dynamic and many more. Every diagram are basically designed with the use of objects starting from class diagram, object diagram, interaction diagram and collaboration diagram. Thus, this is essential to understand the relation between UML and OO software projects. The OO software projects get transformed to UML diagrams based on the requirements. The output of OO software projects is being used as input of UML diagrams. OMG is a global, open membership, non for profit technology and stands for Object management group (Dennis, Wixom and Tegarden 2015).
With the modelling concept stated by UML, developing an object oriented software projects becomes easier. While developing a project, the UML offers three system models: functional, object and dynamic. Functional are referred to the use case diagram that uses system functionality from a user’s point of view (Rumbaugh et al. 2014). Object are the class diagrams that are used to define the structure of system in terms of objects. Dynamic defines the internal behaviour of the system with the help of interaction diagram, state machine diagram and activity diagram.
There are main three stages associated with each software project development, this includes: analysis, design and implementation. Each stage involves using of UML diagrams differently. In the analysis stage the information regarding the problem domain is collected and based on these a class diagram is being prepared and observed from a theoretical viewpoint and thus it is called as the conceptual class diagram. UML supports project development phases and is necessary to work with the object oriented concept. It becomes necessary to transform the model that will be beneficial for physical implementation. This helps in easy communication with the customers who are not so aware about the UML notations (Coad, Yourdon and Coad 2017). It becomes necessary to divide the objects during the time of system development and this includes software objects that are used for development of FINAL stages of IS. The models used in this projects should respect the codes refactoring, code reusability and to maintain the connection between the codes. The conceptual objects are used in the middle stage of development and at this stage the main focus is on implementation. The objects within this follows the concept of object oriented paradigm. Finally the last object known as business objects or essential objects and are used with the purpose of filling the gaps between problem formulations. Classes are usually occupied with attributes and approaches and also includes different types of relations that are used to represent overall system structure. Railway system is an example of object Oriented software project that can be developed with the use of UML. With the help of UML, the project can be done successfully.
The report has introduced Unified Modelling language with object oriented software projects. The aim of UML is described in the report. The main objective is to develop a general purpose for developing a modelling language. UML has implemented the strengths of object oriented software so that they can develop a better way of methodology. The report has discussed the main features of an object oriented software. The report has discussed the way UML is beneficial for developing object oriented software projects. The features and role of UML in object oriented software are discussed in the report.
Coad, P., Yourdon, E. and Coad, P., 2017. Object-oriented analysis (Vol. 2). Englewood Cliffs, NJ: Yourdon press.
Cox, B.J., 2016. Object-oriented programming: an evolutionary approach.
Dennis, A., Wixom, B.H. and Tegarden, D., 2015. Systems analysis and design: An object-oriented approach with UML. John wiley & sons.
Eriksson, H.E. and Penker, M., 2014. Business modeling with UML. New York, pp.1-12.
Karim, S., Liawatimena, S., Trisetyarso, A., Abbas, B. S., & Suparta, W. (2017, November). Automating functional and structural software size measurement based on XML structure of UML sequence diagram. In Cybernetics and Computational Intelligence (CyberneticsCom), 2017 IEEE International Conference on (pp. 24-28). IEEE.
Larman, C., 2015. Applying UML and patterns: an introduction to object oriented analysis and design and interative development. Pearson Education India.
Morton, J. and Odell, J.J., 2014. Object oriented analysis and design. Englewood Cliffs (New Jersey): Prentice-Hall.
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W.E., 2014. Object-oriented modeling and design (Vol. 199, No. 1). Englewood Cliffs, NJ: Prentice-hall.
Schroeder, W.J., Lorensen, B. and Martin, K., 2014. The visualization toolkit: an object-oriented approach to 3D graphics. Kitware.
To export a reference to this article please select a referencing stye below:
My Assignment Help. (2021). The Importance Of Using UML In Object Oriented Software Projects. Retrieved from https://myassignmenthelp.com/free-samples/imat5205-systems-analysis-and-design/advantage-of-using-uml.html.
"The Importance Of Using UML In Object Oriented Software Projects." My Assignment Help, 2021, https://myassignmenthelp.com/free-samples/imat5205-systems-analysis-and-design/advantage-of-using-uml.html.
My Assignment Help (2021) The Importance Of Using UML In Object Oriented Software Projects [Online]. Available from: https://myassignmenthelp.com/free-samples/imat5205-systems-analysis-and-design/advantage-of-using-uml.html
[Accessed 01 March 2024].
My Assignment Help. 'The Importance Of Using UML In Object Oriented Software Projects' (My Assignment Help, 2021) <https://myassignmenthelp.com/free-samples/imat5205-systems-analysis-and-design/advantage-of-using-uml.html> accessed 01 March 2024.
My Assignment Help. The Importance Of Using UML In Object Oriented Software Projects [Internet]. My Assignment Help. 2021 [cited 01 March 2024]. Available from: https://myassignmenthelp.com/free-samples/imat5205-systems-analysis-and-design/advantage-of-using-uml.html.