Archive through April 12, 2004 Log Out | Lost Password? | Topics | Search
Contact | Register | My Profile | SO home | MOL home

M-SO Message Board » Technology & The Internet » Archive through April 24, 2004 » Rational Unified Process » Archive through April 12, 2004 « Previous Next »

Author Message
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 110
Registered: 10-2002


Posted on Thursday, April 8, 2004 - 8:22 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

I'm posting this question here instead of in HELP cuz I dont think anyone who reads help is likely to be able to help me. I'm posting this note here cuz I think you guys, geeks as it were, might have a clue as to what I need info about. Of course I can just go out to the internet and search til I'm blue in the face, but I'm hoping to hear from a few knowledgable people who might be willing to go back and forth on this subject with me and make me conversant in a short time and very informally. So heres the question:

Who knows about RUP and what can you tell me about it?

I will of course respond with questions that I hope will facilitate discourse.

Thanks for listening,

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 930
Registered: 7-2003
Posted on Friday, April 9, 2004 - 7:24 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Wow, that’s a little more difficult of a topic them “Finding a tile guy”.

I’ve used the Rational process quite extensively for two years while managing projects overseas. It significantly reduces the time for development and gives coders a very exacting specification to follow therefore reducing the amount of “Back and forth” when the project is delivered. Unfortunately the design process is long and requires tons of review and adjustment. Conveniently the Use Cases can easily be converted to Test Cases for the QA team.

We use Rational Rose for design and send our developers to Rational University.
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 112
Registered: 10-2002


Posted on Friday, April 9, 2004 - 8:26 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Brett,

Thanks for responding! I had my doubts if I was going find anyone who uses RUP.

So whats: Rational Rose and where is Rational U?

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 931
Registered: 7-2003
Posted on Friday, April 9, 2004 - 10:43 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

To really explain I have to start at the beginning. I’m not sure where your at with RUP (I call it UML Unified Modeling language) so I may not explain it well.

When we start developing a system we start by creating a model. So in this case let’s say I’m going to write a program that will log a user into the system. So the Model would say we need a login screen, a business class to encrypt the password so it isn’t in plain type in the database, and finally check to see if the password matches the database.

With the model done we need to write a “Use Case” . This is a very detailed outline of the steps we want to take.
1) User enters user name
2) System sets focus to password field on Tab or Enter
3) System checks CAPS LOCK and informs user if true
4) User enters password
5) ………

Now we take the Use Case and create a Diagram using Rational Rose. The diagram is a modified flow chart. It reads left to right and then down, and is broken down to the smallest steps. So for this example we will list three classes across the top of the screen.
LoginUI
EncryptBS
CheckdataDS

The fist method we write under LoginUI is submit. An arrow from submit goes right to a method in EncryptBS called Encrypt. On this line we write the arguments that we’re passing and the return type (Username, password, return boolen). We define the method body of Encrypt – Add 1 to all numbers and subtract 1 from each letter – (pretty simple encryption)

Now we draw a line to Checkdata called checkpassword with the arguments and return type. Chechdata has three methods connect, read, compare. These are connected by horizontal lines. And we define these methods
Connect – make connection to oracle –
Read – select Password from usertable where id =
Compare – if password = LNK (MOL after encryption) then return true

Rational Rose helps me to write this chart. It also prints out the methods and signatures so that I can hand three developers 1 class each that I need written. The developers know the names, arguments, and return types so they don’t need to wait for a piece to be developed before they start.

We hire a guy to come to the office and teach Rational U and we have also sent people to classes in the city.

Check out http://www-306.ibm.com/software/awdtools/developer/modeler/ I think they have a few tutorials. I have a book also if you would like to check it out.




Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 932
Registered: 7-2003
Posted on Friday, April 9, 2004 - 11:02 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Just wanted to add…..

If you’re interested in UML because you think you may be on the receiving end (i.e. getting a model from a client to write the code) you can learn enough in 30 minutes to do the job.

If you plan on developing a project in UML you’re in for a large investment in time.
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 113
Registered: 10-2002


Posted on Friday, April 9, 2004 - 8:34 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Thanks again Brett, this is good.

Let me tell you why I need an understanding of RUP. I may soon be interviewing for a job as a U/I designer... I've been designing user interfaces since 1985 when I started developing video games with two programmers so I know how to do the task and I know what to look out for and all that. But, as Information Architecture has become a science one needs a psychology degree to be considered expert, so I see RUP and other methodologies coming into play in the business world. I've been designing web sites for eight years, I've seen a lot, but I've never done anything like Amazon.com. My company was one of the first in my area (Delaware) however to build an ecommerce site from scratch and we even tied it into the customers inventory database. So I did all the U/I for this project and many others and managed many many others, yet you ask me to list RUP qualified on my resume' and I go, "DUH!"

From what I'm seeing so far RUP is more like what web developers do anyway. That is, as opposed to programmers from the old school.

I'm babbling...

Do you see where I'm coming from?

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 114
Registered: 10-2002


Posted on Friday, April 9, 2004 - 8:36 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Oh yeah I forgot...

What when and where does the U/I designer come into play in RUP? Will he mostly be storyboarding use cases?

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Dave
Citizen
Username: Dave

Post Number: 6812
Registered: 4-1998


Posted on Friday, April 9, 2004 - 10:26 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Not easy to get programmers to talk about GUIs. That's why they should hire you. You should probably focus less on RUP and more on usability in general if that's what they want.

You will be expected to know about this guy. I consider him a bit of a self absorbed looney but what do I know... (don't mention that in the interview, btw, unless they say it first).

Here's a good resource on GUIs:
http://www.uiweb.com/

And another:
http://www.usabilis.com/gb/links.htm

And this will be vital to know:
http://www-306.ibm.com/ibm/easy/eou_ext.nsf/publish/558

Good luck!
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 934
Registered: 7-2003
Posted on Friday, April 9, 2004 - 11:14 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

That’s a good question. The short answer is none or allot.

I agree with Dave that usability is one of the main things to focus on, and most of the UI part of the Use Case is cut and pasted from other use cases. For instance

2) System sets focus to password field on Tab or Enter
Would be standard in all applications, just change password to something else.

On the other hand if you’re going to be using Jakarta Struts, and JSPs. The UI designer is in charge of the “Form” and “Action” classes and will have to be the final review on all diagrams.

I’ve never had someone list UML on their resume but it would turn my head if I did see it.

Do you know what language you would be developing in?
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 115
Registered: 10-2002


Posted on Saturday, April 10, 2004 - 8:00 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Dave,

I have Nielsens book "Designing Web Usability" copyright 2000. I agree with you.

I'm more a Steve Krug myself. When I first read Krugs book though, I said to myself, "I could have written this".

Brett,

Dont know what language...but I'll poke around and see if I can get a clue to that.

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 936
Registered: 7-2003
Posted on Saturday, April 10, 2004 - 9:04 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

The reason I ask about the language that you will be using is because it may give insight into where you should spend you time, for instance if the company is a java house a good grasp of “Tag Libraries” would be a huge boost to your resume. On the other hand .NET would have you concentrating on how the GUI can aid the system with database access (I know that seems weird but how and when you ask for info is a big speed issue). You would also need to pick a path for the page design, Cascading Style Sheets or Templates. And finally it would indicate how heavily you may rely on XML.

Or we could keep this thread where it started on UML. I would suggest using that term because it’s more generic and doesn’t limit you to the Rational suite of development tools.
Top of pagePrevious messageNext messageBottom of page Link to this message

Dave
Citizen
Username: Dave

Post Number: 6816
Registered: 4-1998


Posted on Saturday, April 10, 2004 - 12:50 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Here's a sample visual of the process and where UI fits in.

application/pdfgui
DesignProcess_color.pdf (105.4 k)
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 116
Registered: 10-2002


Posted on Saturday, April 10, 2004 - 1:09 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Check this out
application/pdfvisio usecase
Visio-usecase.pdf (48.7 k)


testing pdfs on MOL
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 938
Registered: 7-2003
Posted on Saturday, April 10, 2004 - 3:27 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Curt,
Close, usersname, password, return boolean should be written over the line that points to Encrypt. Connect Read and Compare should be separate boxes listed horizontally down the page from CheckPasswd.

Dave, yours appear to be a project plan not UML.
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 117
Registered: 10-2002


Posted on Saturday, April 10, 2004 - 4:55 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Like this?

application/pdfrev2 use case
Visio-usecase-rev2.pdf (42.4 k)


This is some fun... keep it coming Brett!
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 939
Registered: 7-2003
Posted on Sunday, April 11, 2004 - 7:49 pm:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

I used the word “Close” meaning “Were getting Close” so take that out.

Now put the exact same arguments over the next arrow, because we want to pass all of that stuff to CheckdataDS.

All the data has now been passed to CheckdataDS so we want to list the arguments that each method should use.
Connect will have none, but return a Connection.
Read will take in a connection and ID and return a password.
Compare will take in a password and an encryptedPassword and return a Boolean.

You can write this stuff right in the boxes under the method name.
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 118
Registered: 10-2002


Posted on Monday, April 12, 2004 - 7:17 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

Doooo!

Close... I thought you meant like, "Close the window" ... okay I'll fix.

Can you give me an explanation of "method"?

Is this like JavaScript where you have a function and a method or is this something else?

Curt
Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 940
Registered: 7-2003
Posted on Monday, April 12, 2004 - 8:02 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

A java class is made up of a Constructor and Methods. The constructor holds all of the Global variables that the class will use. Each method is a different set of instructions.

{import sun.net.smtp.SmtpClient;
import java.io.*;
import com.core.bean.FormData;

public class errorMailer
{

CONSTRUCTOR
public errorMailer()
{
String from="cwayne@cwayne.com";
String to="cwayne@cwayne.com";

}

METHOD
public void sendMail(FormData formData)
{

try{
SmtpClient client = new SmtpClient("POP3Server");
client.from(from);
client.to(to);
PrintStream message = client.startMessage();
message.println("To: " + to);
message.println("Subject: Methods");
message.println("Email for you concerning Methods");
message.println("Over and out");
client.closeServer();
}
catch (Exception e)
{
e.printStackTrace();
}

}
String from;
String to;

}


To call this class and method we would type

errorMailer eMail = new errorMailer();
email.sendMail();

In effect it’s the same as a JavaScript function.
Top of pagePrevious messageNext messageBottom of page Link to this message

Curt Wayne
Citizen
Username: Cswayne

Post Number: 119
Registered: 10-2002


Posted on Monday, April 12, 2004 - 9:43 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

I see (he said in an HTML hacker sort of way).

No really ... that makes sense to me when I study it hard enuff.

So, when they refer to a class in RUP they're speaking of a Java Class, is that right? ... or is this dependent on programming language?

and 2. Whats up with the "UI" "BS" "DS" suffixes on the method names above the boxes?

Curt

Top of pagePrevious messageNext messageBottom of page Link to this message

Brett
Citizen
Username: Bmalibashksa

Post Number: 941
Registered: 7-2003
Posted on Monday, April 12, 2004 - 10:41 am:   Edit PostDelete PostPrint Post   Move Post (Moderator/Admin Only)

I use class because we write in java, I need to look into the terminology for ASP and .NET.

When we design a system we use a three tiered architecture. Well we did until J2EE caught on, and that’s a little heavy to start on. So I used an older method that’s easy to convert to J2EE.

UI – User Interface level – This section of the system should be as quick and light as possible. We don’t want to bog this down with any unnecessary code. It could be a GUI in a browser, RF gun, mobile phone, or a phone system.

BS – Business Server – This is where all the real work is done. Conversions, math, data crunching.

DS – Data Server – This section reads, updates, inserts, and deletes your data.

So if we were to design a system like this and I wanted to convert it to J2EE the DS layer becomes the Beans. BS becomes sessions. And the UI becomes the JSPs.

Topics | Last Day | Last Week | Tree View | Search | User List | Help/Instructions | Credits Administration