26277 total geeks with 3498 solutions
Recent challengers:
 Welcome, you are an anonymous user! [register] [login] Get a yourname@osix.net email address 

Articles

GEEK

User's box
Username:
Password:

Forgot password?
New account

Shoutbox
MaxMouse
It's Friday... That's good enough for me!
CodeX
non stop lolz here but thats soon to end thanks to uni, surely the rest of the world is going good?
stabat
how things are going guys? Here... boring...
CodeX
I must be going wrong on the password lengths then, as long as it was done on ECB
MaxMouse
lol... the key is in hex (MD5: of the string "doit" without the "'s) and is in lower case. Maybe i should have submitted this as a challenge!

Donate
Donate and help us fund new challenges
Donate!
Due Date: May 31
May Goal: $40.00
Gross: $0.00
Net Balance: $0.00
Left to go: $40.00
Contributors


News Feeds
The Register
I know who "Satoshi
Nakamoto" is, says
Ted Nelson
Google builds
crowdsourcing into
new Maps code stack
Google"s Native
Code browser tech
goes cross-platform
Yahoo! to "share
something special"
in New York on
Monday
Adobe"s Creative
Cloud fails at
being a cloud
NASA signs off on
sampling mission to
Earth-threatening
asteroid
US military
welcomes Apple iOS
6 kit onto its
networks
Jailed Romanian
hacker repents,
invents ATM
security scheme
Climate scientists
agree: Humans cause
global warming
MIT takes
battery-powered
robot cheetah for a
gallop
Slashdot
Yahoo! Japan May
Have Had 22 Million
User IDs Stolen
Ask Slashdot: Why
Do Firms Leak
Personal Details In
Plain Text?
Data Center
Managers Weary of
Whittling Cooling
Costs
Canadian Cellphone
Users May Get
Justice Over
Phantom Charges
Wired Writer
Imagines Google
Island
Syrian Electronic
Army Hits Financial
Times Sites, Feeds
Arduino Branches
Out, With a
Plug-and-Program
Robot
After Kickstarter
Record, Pebble
Smartwatch Lands
$15M From VCs
Electronics-Loving
"Crazy Ants"
Invading Southern
US
Intel Rolls Out
"Beacon Mountain"
Android Dev
Platform For Atom
Article viewer

Design Methodologies



Written by:auzzie
Published by:Nightscript
Published on:2008-12-19 05:08:46
Topic:Miscellaneous
Search OSI about Miscellaneous.More articles by auzzie.
 viewed 4567 times send this article printer friendly

Digg this!
    Rate this article :
This is another piece of college work that I believe will be useful. It is an article on a few of the different design methodologies.

Design methodologies lay down a set of rules programmers follow when designing an application. Below, are 5 main methodologies that describe how they come in to designing an application and how they may or may not use them in the course of a project.

RAD
RAD (Rapid Application Development) is about building programs quickly so they are operational as soon as possible.

There are 6 core ideas that define RAD design, and these are called prototyping, iterative development, time boxing, team members, management approach, and RAD tools

Prototyping is all about the quick production of a feature-light application that fills the basic requirements of the project. The aim of this stage is to create a functional application to show you client how the final application would work. This allows them to spot potential problems early and to further refine the projects requirements early on.

The second stage of development is 'Iterative Development'. In this stage the programming team takes there prototype program and adds to its complexity and make sure it properly fills all design criteria for the final system. After each stage of quick upgrades to the program, it is sent to the client for review. the next version of the program is then started, all the changes being based on the comments made by the client.

The third idea in RAD is 'Time Boxing'. This is basically strategically managing when new features are implemented. No feature should be implemented before it is needed; this keeps each Iterative Development to the shortest time possible.

RAD design favors small experienced teams. Large teams are harder to manage, which in turn slows down a programs development cycle. the more experienced and motivated team members are, the quicker a program can be developed.

RAD recommends that the management approach for a project should be aimed at keeping the development cycles as short as possible. All deadlines should be enforced and any potential problems with reaching them should be sorted out quickly. Management should try and keep there team as motivated as possible.

Development speed is worth more than new tools. When using the RAD methodology, the cost of new tools is trivial if they will speed up the development cycle so the newest technologies should be available to the programmers.

The two major advantages of this methodology are development speed and quality. Because of the nature of the process the final program is made quickly and has all needed features.

Disadvantages include lack of features (As only the most needed feature ever get implemented) and a very specialized code base making code reusability hard.


Top Down & Bottom Up
In the Top Down design methodology, a programmer starts by looking at the whole problem, and then gradually breaks it down in to smaller problems (functional decomposition). An example of this would be designing the UI for a program and then designing how each part of that UI works.

Bottom up design is the complete opposite. A programmer starts with the code to complete each individual part of the problem and builds that up in to a complete application.

Some advantages of top down design are:

α All aspects of the program are know before programming starts

α Programmers are focused on the task, because they know every aspect of the program.

α The code should be clean and easy to understand, because it all has purpose.

Disadvantages include:

α Testing is hard until near the end of the project, because no code is written until it is all properly designed.

α Any mistakes made early on in the development cycle can be hard to fix.

Some advantages of bottom up design include:

α The code can be properly tested at any sage in the development cycle.

α Design flaws can be easily spotted and fixed. Because all design work is done through the code.

Some disadvantages of bottom up design are:

α Programmers may come across many problems during development because they don’t have a structured well though out design plan.

α It can be easy to deviate from the task during development.

α The code may be messy, because the task was misunderstood early ion development and code has to be changed a lot.


Data Driven
The goal of Data Driven Design is to design a program that’s function can be change not by editing the programs code, but by changing the data fed in to the program. This methodology is not suited to our application, but more for applications that use large databases or read a lot of data from script files.

Event driven
Event driven design focuses on the idea of events (surprisingly) every action a program can perform is an event, and the program waits for criteria to be met before. For example, if a program displays a windows form, every button on the form would have an event attached to them. Each even would call a different piece of code. This methodology works very well with languages like visual basic, which are event driven by nature.

The methodologies I will be applying to the application while designing it are Event driven and top down design. These two methodologies allow me to design the program to be user friendly, have a good understanding of how each part of the program will work and designed in a way that work well with my chosen development language.
Data structures

Did you like this article? There are hundreds more.

Comments:
<none>
Anonymously add a comment: (or register here)
(registration is really fast and we send you no spam)
BB Code is enabled.
Captcha Number:


Blogs: (People who have posted blogs on this subject..)
Action
First one on Tue 12th Jan 10pm
Yaw, this is the first blog post, just to begin with something. Nice site here, cool features like OSIDrive, and so on. However, strange that an "OpenSource Institute" uses non-OpenSource softare to host its site (Windows and IIS). It's not correct... I t
bb
A Daily Profanity at dailyprofanity.com on Mon 21st Dec 11am
For anyone who likes viz, and roger mellies profanisaurus. There's a website called amusing daily profanity which dishes up a humorous profanity every day via rss, twitter email and a few other ways. Rather rude words, but very funny in my opinion,
hambone
Blog entry for Wed 25th Nov 7pm on Wed 25th Nov 7pm
wtf i can't do geek 12. I don't know what to do. i want to kill myself becuz of this
haziman
Blog entry for Mon 9th Nov 4am on Mon 9th Nov 4am
for all geekos out there...
echmil
fuck you all!!!!!!!! on Sat 7th Nov 11pm
jag har tjock med tyngate tråkigt-.-
goldie
Blog entry for Tue 5th May 6am on Tue 5th May 6am
import javax.mail.*; import javax.mail.internet.*; import javax.activation.*; import java.io.*; import java.util.Properties; public class SENDMAIL { public void sendMail(String mailServer, String from, String to,
bb
Bubble Graph on Wed 11th Mar 12pm
I love this graph bubble graph http://www.osix.net:80/modules/folder/in dex.php?tid=28125&action=vf
ketan404
My online resume! on Mon 9th Mar 8am
It is here http://www.listoffreelancers.com/profile s/ketankulkarni Simple and clean design. I like this website. Ketan
macrocat
Blog entry for Sun 8th Mar 3pm on Sun 8th Mar 3pm
Another site with some challenges. Basically, I'm linking this to get a measly five points ;O. Hellbound Hackers
Nightscript
Parapsychology - Fri 19th Dec 5am on Fri 19th Dec 5am
Yes i'm crazy but heres what ive been thinking about and it seems more reasonable that a lot of reality. Note that this ties into parapsychology/psychokinesis research. Mind is not over matter. Thats the wrong state of thinking for sure. Look, this


     
Your Ad Here
 
Copyright Open Source Institute, 2006