By clicking “Check Writers’ Offers”, you agree to our terms of service and privacy policy. We’ll occasionally send you promo and account related email
No need to pay just yet!
About this sample
About this sample
Words: 797 |
Pages: 2|
4 min read
Published: Jan 4, 2019
Words: 797|Pages: 2|4 min read
Published: Jan 4, 2019
UML (Unified Modelling Language) is general-purpose -especially in software development- description language which indicates details of developmental process of anything in industry. It is intended to provide astandard way to visualize the design of a system. In software engineering, UML modelling particularly usedfor generating codes or reverse-engineering models.
The first step of developing a project is modelling what is going to be done. Modelling is the most significant process to specify the architecture of a project. UML is considerably helping that modelling process, it is also used in several different diciplines of software systems such as -greatly in information systems- embedded systems, operation system designing, etc.UML is a high-level language designed to allows developers from various parts of the world to communicate on a project. These developers may follow different methods according to conditions of project they involved in.
For example, the UML has a defined syntax, notation and semantics but in Today’s developers may customize these notions with respect to its development methods. Developers have different evaluation methods according to the project, which is included in many more concepts such as UML. According to are search, most of software developer think that ideal stopping criteria of modelling a project is completing a task impeccable, but when schedule or deadline gain importance, practitioners think that deadline is stopping criteria. This idea will bring about a visible decline in the quality of the projected work.
However, this may differ from developers working on different project sizes. Especially looking at relation between completeness and deadline, the completeness gains more importance to define the stopping criteria in large projects. The reason of that may be conceived as requesting more systematic methods due to increased complexity. This situation brings a mechanism for developing more definitive project.
When looking at UML modelling, It’s clearly seen that most developer may encounter several problemsduring modelling process. These problems can be considered in 4 main sections:
Scattered information: Various concepts related to choice of modelling may be scattered bydevelopers.
Incompleteness: Developers develop a very specific part of the project, rather than thinking aboutthe project as a whole;
Disproportion: Architects can find more details for the parts of the system they think are morecomplex;
Inconsistency: Situation of completely different model designing because of analyzing the problem differently by developers who supposed to develop the project. In additionally, It’s possible to mention the other causes such as diagram quality, informal usage, lack of modelling conventions, etc. All these kinds of problem might be caused by architects and their intellections &habits. This situation will cause inconsistent UML modelling and it makes completely incoherent projects because of miscommunication. It’s important how to design UML models as much as designing UML. For instance, a research which is about modelling interactive public methods that are not described and must be called on sequence diagrams records that between 40 and 78 percent of models are not designed with any sequence diagram. Additionally, another research that determines count of classes designed without any methods finds out between 20 and 60 percent of non-method-implemented classes. That is even a problem in UML concept because implementing a class lacked any method is violation of object-oriented notion. This situation shall make a critical problem in case of describing the methods in sequence diagram. There have been many researches aimed at finding the causes of UML model conflicts.
According a research which includes 110 students and 48 practitioners, 61% of surveyors didn’t realize the lack of a sequence diagram of a method that is not in the class diagram. This shows conflicts are able to be undetectable. The main reason of researches regarding UML conflicts and defects is to prevent these issues. But first, this prevention must begin with finding specified problems. There are lots of tools that can find problems about modelling, also verify the architectures, designs and imlementations done. Additionally, there are sever always to try to make the source code more systemmatic. One of these is called software metric. Software metrics are techniques to promote investigating source codes with respect to definite patterns. Metrics can also help manage the quality of architecture and design. UML practices should be able to improve themselves with increased capabilities in development tools for it. There are several areas which supposed to be improvable:
Detection of design flaws & inconsistencies: The main purpose of software metrics is to detect and prevent flaws, ommisions and inconsistencies. They also help identify refactoring opportunities to improve the architecture’s structure.
More uniformly in modelling: Modelling standarts and development techniques for checking is suesmay help to design flawless models.
More consistency between UML models and system requirements as well as implementations: The methods that provide traceability will help reduce these problems.
Defined quality goals for UML models: Definition of quality goal is improving a model and identifiying spots that must be improved to reach the defined goal.
Browse our vast selection of original essay samples, each expertly formatted and styled