# Process for Specifying Software

**URL:** <https://www.ruby-forum.com/t/process-for-specifying-software/90688>\
**Category:** Rails\
**Created:** [March 31, 2007, 12:23am UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688 "2007-03-31T00:23:20Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jeff](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e19b73/32.png) [@jeff](https://www.ruby-forum.com/u/jeff)\
**Post date:** [March 31, 2007, 12:23am UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688/1 "2007-03-31T00:23:20Z")

</div>

Hello,

I am planning in developing an application for my final undergraduate  
project and I am thinking of using Ruby On Rails to implement it.

But I need to follow a kind of process or bibliography that can describe  
how to specify software development.

Does anybody knows any process that I can follow when programming Ruby  
On Rails applications?

Thanks and regards,

Jeff.

---

<div class="post-metadata">

**Author:** ![jeff](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e19b73/32.png) [@jeff](https://www.ruby-forum.com/u/jeff)\
**Post date:** [April 2, 2007, 11:29am UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688/2 "2007-04-02T11:29:45Z")

</div>

Hello,

On 30 Mar 2007, at 23:23, Jeff wrote:

> I am planning in developing an application for my final undergraduate  
> project and I am thinking of using Ruby On Rails to implement it.
> 
> But I need to follow a kind of process or bibliography that can  
> describe  
> how to specify software development.
> 
> Does anybody knows any process that I can follow when programming Ruby  
> On Rails applications?

As I am sure you know, there are many different processes for  
software development. They all have different characteristics which  
make some more suitable for any given application than others.

It sounds like the most important requirement for the process you  
need is that it fulfils your examiner’s requirements. Some  
processes, for example, are less formal than others and you don’t  
want to choose one so informal that it doesn’t qualify from the point  
of view of your examiners.

Rails allows quick and clean development thanks largely to the nature  
of Ruby. So I suggest you choose a process which allows you to move  
quickly – i.e. one with less formality or ceremony. So steer clear  
of, say, the Rational Unified Process and towards one of the ones  
falling under the Agile banner.

At the end of the day, different people will recommend different  
processes. There’s no right or wrong answer. Personally I like  
Getting Real[1] but it might not meet either your examiner’s  
requirements or your tastes.

Hope that helps,  
Andy S.

[1] [http://gettingreal.37signals.com](http://gettingreal.37signals.com)

---

<div class="post-metadata">

**Author:** ![jeff](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e19b73/32.png) [@jeff](https://www.ruby-forum.com/u/jeff)\
**Post date:** [April 2, 2007, 1:22pm UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688/3 "2007-04-02T13:22:22Z")

</div>

In RoR you can use an Agile methodology to specify software:

[http://www.agilemodeling.com/](http://www.agilemodeling.com/)

Usually on the specification process you will have to use UML.

hope it helps

Andrew S. wrote:

> Hello,
> 
> On 30 Mar 2007, at 23:23, Jeff wrote:
> 
> > I am planning in developing an application for my final undergraduate  
> > project and I am thinking of using Ruby On Rails to implement it.
> > 
> > But I need to follow a kind of process or bibliography that can  
> > describe  
> > how to specify software development.
> > 
> > Does anybody knows any process that I can follow when programming Ruby  
> > On Rails applications?
> 
> As I am sure you know, there are many different processes for  
> software development. They all have different characteristics which  
> make some more suitable for any given application than others.
> 
> It sounds like the most important requirement for the process you  
> need is that it fulfils your examiner’s requirements. Some  
> processes, for example, are less formal than others and you don’t  
> want to choose one so informal that it doesn’t qualify from the point  
> of view of your examiners.
> 
> Rails allows quick and clean development thanks largely to the nature  
> of Ruby. So I suggest you choose a process which allows you to move  
> quickly – i.e. one with less formality or ceremony. So steer clear  
> of, say, the Rational Unified Process and towards one of the ones  
> falling under the Agile banner.
> 
> At the end of the day, different people will recommend different  
> processes. There’s no right or wrong answer. Personally I like  
> Getting Real[1] but it might not meet either your examiner’s  
> requirements or your tastes.
> 
> Hope that helps,  
> Andy S.
> 
> [1] [http://gettingreal.37signals.com](http://gettingreal.37signals.com)

---

<div class="post-metadata">

**Author:** ![jeff](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e19b73/32.png) [@jeff](https://www.ruby-forum.com/u/jeff)\
**Post date:** [April 8, 2007, 12:38am UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688/4 "2007-04-08T00:38:17Z")

</div>

Hi Andrew and Jose,

Thanks for your replies and help! I will take a look in both links and  
follow one of those methodologies.

Talking about UML: as RoR uses the MVC can you recommend me a good  
reference book which shows how to model MVC systems using UML?

Thanks in advance,  
Jeff.

Jose P. wrote:

> In RoR you can use an Agile methodology to specify software:
> 
> [http://www.agilemodeling.com/](http://www.agilemodeling.com/)
> 
> Usually on the specification process you will have to use UML.
> 
> hope it helps
> 
> Andrew S. wrote:
> 
> > Hello,
> > 
> > On 30 Mar 2007, at 23:23, Jeff wrote:
> > 
> > > I am planning in developing an application for my final undergraduate  
> > > project and I am thinking of using Ruby On Rails to implement it.
> > > 
> > > But I need to follow a kind of process or bibliography that can  
> > > describe  
> > > how to specify software development.
> > > 
> > > Does anybody knows any process that I can follow when programming Ruby  
> > > On Rails applications?
> > 
> > As I am sure you know, there are many different processes for  
> > software development. They all have different characteristics which  
> > make some more suitable for any given application than others.
> > 
> > It sounds like the most important requirement for the process you  
> > need is that it fulfils your examiner’s requirements. Some  
> > processes, for example, are less formal than others and you don’t  
> > want to choose one so informal that it doesn’t qualify from the point  
> > of view of your examiners.
> > 
> > Rails allows quick and clean development thanks largely to the nature  
> > of Ruby. So I suggest you choose a process which allows you to move  
> > quickly – i.e. one with less formality or ceremony. So steer clear  
> > of, say, the Rational Unified Process and towards one of the ones  
> > falling under the Agile banner.
> > 
> > At the end of the day, different people will recommend different  
> > processes. There’s no right or wrong answer. Personally I like  
> > Getting Real[1] but it might not meet either your examiner’s  
> > requirements or your tastes.
> > 
> > Hope that helps,  
> > Andy S.
> > 
> > [1] [http://gettingreal.37signals.com](http://gettingreal.37signals.com)

---

<div class="post-metadata">

**Author:** ![jeff](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e19b73/32.png) [@jeff](https://www.ruby-forum.com/u/jeff)\
**Post date:** [April 10, 2007, 6:34pm UTC](https://www.ruby-forum.com/t/process-for-specifying-software/90688/5 "2007-04-10T18:34:39Z")

</div>

On 4/7/07, Jeff [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Jeff.  
> Well Rails was designed to be usable in an agile context. From some war  
> stories I have heard, you kill off any benefits to Rails (productivity)  
> by not  
> using it in an Agile context.

As for using UML to sketch MVC systems for Rails. I would backpedal on  
that. It would take you longer to model them than it would take to  
implement  
them in Rails, and then you can use Rails visualisation tools to extract  
a  
UML/visual representation from your code. As a side effect, you also  
have  
the entire skeleton of your app done.
