Organisations today have realised the essence of business modelling to their businesses chiefly because it is a simplified representation of organisations business logic. Business modelling helps organisations understand the services being offered a customer, the activities the organisation undertake, how and where their resources come from and what business units generate money. Business modelling also plays a vital role in information systems development for organisations because it helps software engineers develop good and better software.
This report will focus on the need for Unified Modelling Language (UML) technique in Business modelling design. Studies have being carried out to measure the relevance and use of UML to various sectors and because of this we are going to draw a sound conclusion from two main journals and also from other supporting journals.
To understand the concept of Business modelling in an organisation in the context of information systems, the key words business modelling and Information System will be explained for clear understanding.Literature Review
Business deals with goods and services provided by an organisation to others who want and need them while a model is the representation of a system expressed with a language from a given point of view (Caplat et al, 2002). Business modelling can thus be defined as a model of a business organisation. It is used for the representation of the structure and the behaviour of a business organisation for the purpose of understanding the business (Cesare et al, 2003).
Information systems can also be defined as a collection of interrelated components that collect, process, store and provide as output the information needed to complete a business task (Satzinger et al, 2005). Business task here refers to a problem that requires a solution for which information and flow of information is desired. Business Modelling is a phase of Information system modelling and has become the centre of attention for organisational information development.
According to Chesbrough H. et al, the complexities existing in a given organisational products, markets and environment make it difficult for employees to understand the totality of the organisations tasks, Business modelling serves as a bridge for the understanding of each departments task. They conclude that "business models convert new technology to economic value. Figure 1, shows the relationship between these:
Even though models help achieve this bridge, it is argued that they should be able to translate the behaviours of the systems they model without raising doubt or unanswered questions. Models help to simplify the complexity of the 'Real Self' of the system so that the business processes can be understood by all stakeholders. (Habermann, 2000).From research, it was found that models help organisation make go/ no do decisions (Reginato, 2007).
To create a good business model, certain building blocks have to be taken into prospective: The customer, Key Activities performed, Cost incurred by business, Network, Value proposition, Channels of distributions, key resources, existing relationships and communication channels.
They are many types of Business Models but the focus for this paper will be the Unified Modelling Language (UML) and its advantages to business modelling and organisations.UML
UML the 'de facto' standard modelling language in software engineering is one of the languages that can help present the structure for modelling information systems and it is widely used by developers today as the model of choice. They are many definitions of UML, Benneth et al, (2006) defined it as a general- purpose modelling language that includes a standardised graphical notation used to create an abstract model of a system. UML is an open source and outstanding notation technique that can be learned and exploited easily by business people. It uses icons and artefacts to map out the system, which makes it easy to learn and effective during model development (McNay, 2001). UML is popularly used in Object Oriented software development, and designed to be a general- purpose language which can model any type of software application because of its rich set of diagrammatic notations. The use of UML varies across various application spheres: From embedded systems to information systems and also cuts to the business people.
Why use UML
They are many reasons for the use of UML in organisations. "Dimensions of UML Diagram Use: A survey of Practitioners, Dobing B et al (2008) investigates how UML is used in practice and reports that there is a considerable variety in the ways the UML diagrams are used in different projects. They found the class diagram, use case diagram and the sequence diagram the most frequently used. They also reported that UML usage was dependent on organisation size, project size, respondent experience, the UML tool available, system type and industry. And customers / clients mostly recommend, review and help develop UML diagram.
The questionnaire based survey findings of the productivity and quality of UML in software development; "A survey into the rigor of UML use and its perceived impact on quality and productivity (Nugroho et al, 2008) found that there is a limitation of understanding of UML use because engineers who work with it find it challenging and difficult to use though they said it helps productivity in the design, analysis and implementation phases of a project. This is contradicting information.
A web based survey was conducted using questionnaires with about eighty practicing software engineers' participating. Random questions were asked to help capture the impact of UML as a business modelling technique on engineers. Questions like How UML improves testability, understanding, helps modularity, its benefits, product quality, level of detail and completeness were asked.
Conclusions drawn for this survey were both positive and negative. The survey results highlighted that:
- Incomplete UML models led to implementation problems but completed UML diagrams helped engineers develop better quality software. Models with poor understand ability communicate vogue ideas.
- UML was important for implementation though a lack of support in project development could lead to the absence of needed formal approaches relevant for achieving good projects.
- Understanding the modularity of UML helps influence improvement in software quality, the level of complexity, criticality and the design component elements determines the level of detail of the UML diagram. Concepts that are known are usually not modelled because they can be taking form an existing model.
- UML increases productivity in design, helps analysis and improves implementation, it was learnt that the better the model the better the productivity within the implementation phase.
These studies indicate the popularity of UML in research and industry, its use in training and education. Despite the popularity of UML it has several short comings. Some researchers claim that the UML specifications have become bulky; the number of diagrams in UML 1.0 has being augmented from 9 to 13 in UML 2.0 (Kobryn, 2004) with most of the addition diagrams with higher level views of the system under development. Though the ideas from the original UML diagrams have not changed and are expected to remain to same for now. This augmentation has raised issues and criticism of the UML language, and it's said to introduce complexity to what is supposed to be an easy language to grasp. Researchers also claim that UML is a difficult language for novices' analyst to learn because it has many diagrams and there is no known training technique. (Batra, 2008)
From the studies above we have gained an insight on why the UML technique is used in business modelling design; its advantages and shortcomings were also highlighted though measuring the relevance of using UML in business modelling is complex without making any comparisons to an alternative modelling language.
The role Unified Modelling language (UML) plays in software development is great because it aids the software engineer enhance his designs, make it easier to understand even to the novice stakeholder and its many variations depends on the engineers experience, time pressure and client conventions. UML is mostly used manually in the implementation phase by engineers and more research needs to be carried out in the areas of model based software testing especially in the software development industry.
The role Use cases play in the UML diagrams cannot be down played because it helps give stakeholders a better understanding of the structure and the behaviour of their business throughout the software development cycle.
For better understanding of the use of UML in its various forms to different people and organisations the following points have being established. UML is used mostly because of these:
- Inherent Traceability: UML's use case modelling nature ensures easy traceability between all levels and the original functional requirements. Meaning that making changes to the model is easy to achieve without complexity or time wasting. For example an error or change in the requirement model can be traced in the analysis and design into the affected areas and corrected.
- Software construction needs a plan: every software developer needs a plan of what is to be achieved. UML offers the platform for this in that it enables you look at the functional and non functional requirements of a system from different directions, ensuring that the purpose of the design is met.
- Appropriate for both new and legacy systems: UML is good for the development and improvement of both new and existing systems.
- Unified and Universal: It is the de-facto standard modelling language in the software industry and can be applied in many software development areas. It also includes user definable extension mechanisms which make it versatile and adaptable for specific environments.
- Documents Software Assets: It helps an organisation evaluate it's asserts, strengths and weaknesses. It helps it improve and understand its core business processes and improves the quality of the software engineering staff because most look for companies who model with UML.
- Accommodates incremental development and re-development: It responds well to change. It is possible to develop parts of a required model to satisfy a new requirement while other parts are still under construction, it maximises re-use, maintainability and extensibility during software development.
- Accommodates Parallel Development of large systems: It decomposes large and complex models to smaller parts that can each be developed independently. It enables different work group handle different aspect of the project in an independent, yet controlled and coordinated working environment.
- Visualise in multiple dimensions and levels of details: UML is a visualising software; as we know software is very abstract and hard to visual; but UML aids us to this in multiple dimension, thereby helping us understand the computer system more before actual construction.
Despite the issues associated with UML; its rate of adoption and tools has been widespread exceeding predictions. Its technique which is open source and easy to learn makes it popular in all spheres of businesses. It can be said that Unified Modelling Language (UML) is here to stay.
- Bennett S, Steve McRobb and Ray Farmer (2006), Object Oriented Systems Analysis and Design, 3rd Edition, McGraw-Hill Education Publishing
- Staziger et al (2005). Object-oriented Analysis and Design, Thomson Course Technology
- Britton Carol and Doake Jill (2005).A students guide to Object-Oriented Development, 1st Edition, Elsevier Butterworth- Heinemann Publishing.
- Caplat,G and Sourrouille, J (2002). Constraint checking in UML modelling. Proceeding of the 14th international conference on software engineering and knowledge engineering, Vol. 27, pages:217 - 224
- Cesare et al (2003). Actors perception in Business Use Case Modelling
- Dinesh Batra (2008).Unified Modelling Language (UML) Topics: The past, the problems and the prospects. Journal of Database Management, 19 (1), i-v
- Dobing B and Parsons. J (2008). Dimensions of UML diagram use: A survey of practitioners. Journal of Database Management, 19 (1), Pages: 1 -18.
- Hebermann. F and Scheer. A, (2000). Making ERP a success, Vol.43, Page: 57 -61
- Kobryn, C (2004). UML 3.0 and the future of modelling. Software & Systems Modelling, Vol. 3(1), Pages: 4-8.
- McNay, H.E (2001). UML for e-business: new use for use cases. International Professional Communication Conference (IPCC), 2001. IEEE International, Page 245 249.
- Nugroho A. and Chaudron M, (2008). A survey into the rigor of UML use and its perceived impact on Quality and productivity. ACM Press
- Reginato, (2007). Evaluating Project robustness through the lens of the Business Model. PICMET Proceedings.
- Chesbrough H. and Rosenbloom .R (2002). The role of business model in capturing value for innovation. Industrial and Cooperate change, II, 3 Pages 529 -555.