?
Solved

UML

Posted on 2006-04-10
12
Medium Priority
?
505 Views
Last Modified: 2010-04-17
Dear experts.
We do not currently use UML in our project methodology/requirements so I'm interested to see how you handle this. How do you incorporate changes to the requirements in the UML?  Do you guys know how exactly does UML help solicit better requirement? Any thought?
0
Comment
Question by:drmopco
  • 4
  • 3
  • 3
  • +1
12 Comments
 
LVL 27

Assisted Solution

by:Nopius
Nopius earned 600 total points
ID: 16423201
It's quiet unusual to express requirements by means of UML.
UML is for design while requirements are for testing.

Requirements are gathered before design is started.
You may use UML in some requirements (sequenses, use cases) but not all.
And it will be quiet complex to test such requirements (because they are just graphical representaion of what should happen).

I advise don't mix design and requirements.
0
 

Author Comment

by:drmopco
ID: 16423255
so the UML used to create and document the processes of software systems in design phase??
Am I hitting the right target?
0
 
LVL 14

Assisted Solution

by:nayernaguib
nayernaguib earned 800 total points
ID: 16423319
One of the types of behavioral UML diagrams, namely "Use Case Diagram", can be used to model functional requirements of a system.

There are many other types of behavioral and structural diagrams. These diagrams together help the software engineer model every stage of the software development life cycle. Even physical system deployment can be modeled using a UML diagram called Deployment Diagram.

_______________

  Nayer Naguib
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
LVL 14

Assisted Solution

by:nayernaguib
nayernaguib earned 800 total points
ID: 16423345
This introduction might help:

  http://www.agilemodeling.com/essays/umlDiagrams.htm

Every diagram is discussed in some detail.

_______________

  Nayer Naguib
0
 

Author Comment

by:drmopco
ID: 16423397
Is it a choice of that programmer to use UML? I thought that it would be directed from above.
0
 
LVL 27

Assisted Solution

by:Nopius
Nopius earned 600 total points
ID: 16423494
drmopco, I can tell you many common requirements that are better to experess in textual form, than in UML..
For example:
- program should run under Windows 2000;
- there should be 'File', 'Edit' and 'Help' menu items at the top of main program Window.
- program should provide translation to language 'X' for all menu items.
... there are lots of such requirements ...

I've worked in SEI CMM level 4 software development company. They use UML, but not for requirements...
Of couse you may use UML, but how could you test UML diagram then?
Each requirement has an unique ID (it will be traced and mapped to design and to tests cases). Suppose you have a UML diagram as one of your requirements. To be specific it will be a 'use case'. Result of test for covering some requirement is 'PASS' or 'FAIL'. How you will test such requirement?  
0
 
LVL 16

Assisted Solution

by:suprapto45
suprapto45 earned 600 total points
ID: 16423498
Hi,

In my opinion, as what nayernaguib said; to see the high-level requirement, Use case diagram is the best. It shows you how the overall system works, what actors are involved and etc.

Regarding the requirement changes, I believe that UML may help you in documenting it, modelling it and not-really-help in the implementation part.

Just my opinion ;)

David
0
 
LVL 14

Assisted Solution

by:nayernaguib
nayernaguib earned 800 total points
ID: 16423697
A Use Case can be used to model "functional requirements". No use case is supposed to specify the platform, GUI elements, etc...
Rather, you can use a Use Case to model functionality required by the system, such as login capability, search requests, completing transactions, and so on.

As for your other question, I think using UML should be enforced by management rather than leaving it for the taste of the programmer. This allows for document flow among departments, and as the name suggests, a "unified" language for software design.

_______________

  Nayer Naguib
0
 

Author Comment

by:drmopco
ID: 16423771
Thank you for all your valuable time. I heard that UML is used by programmers. In most compaines, would not UML be used by a developer and the code writer would have to be able to understand the UML output.  Is this a good idea to creation of the UML data would be done by a different office/section than the writing the code?
0
 
LVL 16

Accepted Solution

by:
suprapto45 earned 600 total points
ID: 16423780
Hi,

Normally, the UML diagram is created either by SYstem analyst or software architect to design the application before the implementation. However, the programmer must also understand UML to see how he is supposed to implement the design model into application. Some UML diagrams are also allowing the user to generate the codes (in Java or .NET) - if I am not mistaken

There was a perception that UML is tedious and just wasting more time and money than cutting the project's lifecycle. However, for the big companies, documentation is essential to avoid collision and redundancy of codes.

I hope that helps

David
0
 

Author Comment

by:drmopco
ID: 16430612
Thank you for clear explanation all of you.
0
 
LVL 16

Expert Comment

by:suprapto45
ID: 16432711
;)

Glad we could help

David
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn different types of Android Layout and some basics of an Android App.
What do responsible coders do? They don't take detrimental shortcuts. They do take reasonable security precautions, create important automation, implement sufficient logging, fix things they break, and care about users.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Six Sigma Control Plans

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question