File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

SCEA Part 2: QoS requirements (Performance, Scalability...) and UML Diagrams

 
Saurabh Gokhale
Greenhorn
Posts: 25
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
While working on UML diagrams as part of SCEA Part 2 submission, how can a stress be given on the non-functional characteristics of the system like
■ Performance
■ Scalability
■ Reliability
■ Security
■ Availability
■ Maintainability

Which diagrams (Class, component, sequence etc) should be stressed more to display information about these requirements?

As per my understanding:
■ Performance --> Class diagram (by specifying performance specific class details) and sequence diagram (displaying performance logging mechanism)
■ Scalability --> Deployment diagram (Displaying array / cluster of hardware)
■ Reliability/ Availability --> Deployment diagram (displaying parallel / fail over architecture)
■ Security --> Class diagram, sequence diagram (displaying a flow when invalid/ unsecure request is received) and deployment diagram (showing network artifacts like LDAP and HTTPS traffic)
■ Maintainability --> Class Diagram (displaying good design pattern structure for easy maintainability)

Can some one shed more light if I am going in wrong direction?
 
Remko Strating
Ranch Hand
Posts: 893
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't know what you are doing, but just one diagram just one abstraction. Don't make your models to complicated. The meaning is than someone else will understand you.

So if you want to show something about performance just model only performance and explain why. Don't put performance modelling in a class model which is used to explain how the software is put together. Nothing more.

This is the way I generally work, but I didn't the assignment.
 
Saurabh Gokhale
Greenhorn
Posts: 25
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Remko ... thanks for the reply.

But I am not sure I completely understood your point.
So if you want to show something about performance just model only performance and explain why. Don't put performance modelling in a class model which is used to explain how the software is put together. Nothing more.

Are you saying that I should have a separate UML diagrams to depict these characteristics instead of adding them into the existing ones (especially existing class diagram) which would complicate the existing diagram?

I was thinking of displaying a Performance measuring Servlet (example: PerformanceServlet) as part of my class diagram hierarchy.
 
P Das
Ranch Hand
Posts: 123
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You can document extensively in your assumptions how you have implemented the NFR's in the diagrams (or could not, due to a tradeoff).
 
Saurabh Gokhale
Greenhorn
Posts: 25
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Das,

Yes, assumptions is definitely a good section to detail about these NFRs

Thanks for the suggestion.

Saurabh
 
Bigwood Liu
Ranch Hand
Posts: 240
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
NFRs are met by your solutions, not only by diagrams but also by more detailed explanation to address there requirement.
 
Gaurav Tripathi
Ranch Hand
Posts: 94
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You can also make some traceability matrix like patterns vs NFRs. For example Filter pattern can mapped with Security and you need to explain or give justification of it like how security requirement will be met.

Also, your deployment view should address NFRs like availability, security etc
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic