Time for Analysis ...
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
We can't answer this. The answer depends on what you're writing and how big a project it is
Christian Graus - Microsoft MVP - C++ "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
-
We can't answer this. The answer depends on what you're writing and how big a project it is
Christian Graus - Microsoft MVP - C++ "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
Yeh Fair Enough!!! Are there any other methods which i could look over? UML is the standard approach and i would be using that anyway. It's a final project so it is going to be quite complex. Thanks James
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
S&MADMUML? :rolleyes: IM(h & lazy)O: if you want a methodology just for the sake of having a methodology, just pick the one with the slimmest book and save a few trees. If you have specific needs, then consider putting together a list of them and picking whatever method provides the friendliest tools. UML is fine for high-level system outlines - i've yet to be convinced that there's any real value in it beyond that, although there are certainly plenty of people willing to claim otherwise. If you're one of them, let me recommend instead my fabulous ShogML system instead: it involves dirty limericks to represent flow and the photoshopping of mustaches on pictures of team members to represent status. I'd never heard of SSADM 'till now; the Wikipedia summary sounds all too much like the "six-sigma for software" stuff my employer bought into; an attempt to shoe-horn every project into a mold cast from some project somewhere that someone thought worked once, with the rational that consistent, well-documented mediocrity is better than inconsistent success. When you're writing up and ranking (say) user requirements with an eye towards completing some step on a Gantt chart rather than actually making your users happy... you are assured of success in that goal. :rolleyes:
every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
UML is not a methodology, it is just a (diagram-based) language to represent object-oriented software. Some methodologies use this language to represent their ideas. For example, the RUP methodology uses UML. There are many methodologies out there you can use to design software. But as Christian said, the answer depends. I'm used to working with RUP, and the company where I work usually uses this approach for their projects.
Hope is the negation of reality - Raistlin Majere
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
XP (Extreme Programming) might be one to look at. The main thing is to look at what the necessary requirements are going to be, then take it from there what actual methodology you are going to use.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
There's always the sacrifice the chicken to the gods of project time and pray that the high priests of project management don't end up shafting you.
Deja View - the feeling that you've seen this post before.
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
Having tried a bunch of things in the past 8 years or so and failing miserably in many, I will recommend you to do things in an Agile way. First of all beyond documentation I don't think there is any real value of UML. Based on my experience it is impossible to define the UML classes of you entire system in advance and then start coding. There will be changes and a lot of them more complex the system more the changes. I started on a big project about a year back. Big design up front, thought about lot of performance issues upfront and designed accordingly. The project was a bunch delayed about 8 months. The second time I tried an agile approach got things working fast and then worried about fixing things later, the project was successful. Than I repeated my past mistakes again and tried to design things upfront an paid the price again. My ultimate realization is this: It is best to have a working software at all stages. It is especially important to have UI which people can use and provide feedback. Prototypes are fine sometimes but wasting too much time on them is not recommended. One thing is for sure. It is always better to have automated tests. No matter how much time you invest on automated tests they never go a waste. The amount of time I have wasted simply because I did not have proper automated tests is probably very high. Also take time to design for testability like avoid having code in UI layer. I am now a big fan of MVP (Supervising Controller)/Humble view patterns. Also invest in some good automated tests tools especially for UI. An app which goes in users hands (even though it is not feature complete) quickly is better than an app which takes a lot of time in design and goes into users hand feature complete. (The users may also mean the spec writer or business people.)
Co-Author ASP.NET AJAX in Action
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
Generally speaking ... If you are using a development IDE that uses Object Oriented techniques, then you should use an Object Oriented methodology. Thus UML would be your choice. If you are using pre-OOP techniques, use SSADM this is because SSADM is a structured methodology and not an Object Oriented methodology. Consequently, if you are using any of the .Net languages or Java, use UML, but if you are using Pascal (and pre .Net Delphi), and traditional C or C++ (again pre .Net) then use SSADM. This is not to say you should not use a non-OO methodology with OO IDE, but you are making life for you very much harder than it needs to be. If you wish, tomorrow, I can look up some "old" documentation, including comparison charts, that would better describe this for you.
-
S&MADMUML? :rolleyes: IM(h & lazy)O: if you want a methodology just for the sake of having a methodology, just pick the one with the slimmest book and save a few trees. If you have specific needs, then consider putting together a list of them and picking whatever method provides the friendliest tools. UML is fine for high-level system outlines - i've yet to be convinced that there's any real value in it beyond that, although there are certainly plenty of people willing to claim otherwise. If you're one of them, let me recommend instead my fabulous ShogML system instead: it involves dirty limericks to represent flow and the photoshopping of mustaches on pictures of team members to represent status. I'd never heard of SSADM 'till now; the Wikipedia summary sounds all too much like the "six-sigma for software" stuff my employer bought into; an attempt to shoe-horn every project into a mold cast from some project somewhere that someone thought worked once, with the rational that consistent, well-documented mediocrity is better than inconsistent success. When you're writing up and ranking (say) user requirements with an eye towards completing some step on a Gantt chart rather than actually making your users happy... you are assured of success in that goal. :rolleyes:
every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?
Shog9 wrote:
never heard of SSADM
Not surprising, you are not British. SSADM developed at the behest of the then Conservative administration. Only taught at British colleges. Thought to be too complex when compared to UML (think Booch said that ???). Large unwieldy deep expensive analysis. Uses Waterfall almost exclusively. If it moves, document it, if it doesn't move, document it. Even a simple application can generate reams of documentation. Not used much nowadays, UK Government now prefers PRINCE2.
-
Generally speaking ... If you are using a development IDE that uses Object Oriented techniques, then you should use an Object Oriented methodology. Thus UML would be your choice. If you are using pre-OOP techniques, use SSADM this is because SSADM is a structured methodology and not an Object Oriented methodology. Consequently, if you are using any of the .Net languages or Java, use UML, but if you are using Pascal (and pre .Net Delphi), and traditional C or C++ (again pre .Net) then use SSADM. This is not to say you should not use a non-OO methodology with OO IDE, but you are making life for you very much harder than it needs to be. If you wish, tomorrow, I can look up some "old" documentation, including comparison charts, that would better describe this for you.
Richard A. Abbott wrote:
If you are using a development IDE that uses Object Oriented techniques, then you should use an Object Oriented methodology. Thus UML would be your choice.
But UML is not a methodology, it is just a way of representing objects with independence of the programmin language. If a painter asks on what methodology should he use for his paintings, you'd recommend using acquarela, oleum, carbon pencil, etc., rather than using white, black or red colors.
Richard A. Abbott wrote:
Consequently, if you are using any of the .Net languages or Java, use UML, but if you are using Pascal (and pre .Net Delphi), and traditional C or C++ (again pre .Net) then use SSADM.
:confused: Don't get it... C++ is object-oriented. Yes, you can use structured programming only, but if you're not using the OO features of C++, you'd better stick with C. I'm I missing something here?
Richard A. Abbott wrote:
This is not to say you should not use a non-OO methodology with OO IDE, but you are making life for you very much harder than it needs to be.
:confused: What does the IDE has to do with the programming paradigm? For instance, my IDE could be a simple notepad and yet I could write C++ or C# code (both OO), and thus I can use whatever OO methodology (RUP, XP, etc) and I can represent my classes with UML.
Hope is the negation of reality - Raistlin Majere
-
Richard A. Abbott wrote:
If you are using a development IDE that uses Object Oriented techniques, then you should use an Object Oriented methodology. Thus UML would be your choice.
But UML is not a methodology, it is just a way of representing objects with independence of the programmin language. If a painter asks on what methodology should he use for his paintings, you'd recommend using acquarela, oleum, carbon pencil, etc., rather than using white, black or red colors.
Richard A. Abbott wrote:
Consequently, if you are using any of the .Net languages or Java, use UML, but if you are using Pascal (and pre .Net Delphi), and traditional C or C++ (again pre .Net) then use SSADM.
:confused: Don't get it... C++ is object-oriented. Yes, you can use structured programming only, but if you're not using the OO features of C++, you'd better stick with C. I'm I missing something here?
Richard A. Abbott wrote:
This is not to say you should not use a non-OO methodology with OO IDE, but you are making life for you very much harder than it needs to be.
:confused: What does the IDE has to do with the programming paradigm? For instance, my IDE could be a simple notepad and yet I could write C++ or C# code (both OO), and thus I can use whatever OO methodology (RUP, XP, etc) and I can represent my classes with UML.
Hope is the negation of reality - Raistlin Majere
In a cack-handed and clumsy way , I was trying to give the indication that "different horses for different courses". Object Oriented concepts fit hand-in-glove with UML, and yes I know it is a modelling language that can be extended into a methodology. UML and SSADM are as different as chalk is to cheese. By the same token, so is non oo languages to oo languages. In terms of C++ and Delphi, both can be used to create either or both non-oo and oo programs. You comment that "you can represent your classes with UML", that is, of course, very true, but you can't do that with SSADM as, as far as I can recall, there does not exist the concept of a class. But as stated, tomorrow, I will un-archive comparison charts etc. For a quick comparison http://computing.unn.ac.uk/staff/CGNR1/badensoft.ppt[^]
-- modified at 20:54 Sunday 28th October, 2007
-
In a cack-handed and clumsy way , I was trying to give the indication that "different horses for different courses". Object Oriented concepts fit hand-in-glove with UML, and yes I know it is a modelling language that can be extended into a methodology. UML and SSADM are as different as chalk is to cheese. By the same token, so is non oo languages to oo languages. In terms of C++ and Delphi, both can be used to create either or both non-oo and oo programs. You comment that "you can represent your classes with UML", that is, of course, very true, but you can't do that with SSADM as, as far as I can recall, there does not exist the concept of a class. But as stated, tomorrow, I will un-archive comparison charts etc. For a quick comparison http://computing.unn.ac.uk/staff/CGNR1/badensoft.ppt[^]
-- modified at 20:54 Sunday 28th October, 2007
I generally just do UML to get some kind of idea as to where I am going to go abouts with relating different classes and all (this all being on a dry-erase board btw). Never really bothered with any of the tools to do the code generating for me.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
-
I generally just do UML to get some kind of idea as to where I am going to go abouts with relating different classes and all (this all being on a dry-erase board btw). Never really bothered with any of the tools to do the code generating for me.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
With XP, you survive using minimal documentation, and, if we are being truthful, you analysis just barely enough to satisfy. This is because you can and often revisit your design, using, as required, architectural design patterns. Not so with SSADM, it uses the Waterfall where a problem is fully documented from start to finish before a single line of code is written and once fully documented, the issue is not returned to AT ALL so the concept of revisiting your design often is alien to SSADM. Also see my comment to Shog (above)
-
Hello Developers, I am starting writing a software. And i was thinking which methodology should i use for analysis and design of the system. And i come up with below mentioned methods.. 1. SSM 2. SSADM 3. UML Please suggest me which method should i use or should i use all of them(if yes then in which situation each of them could be best used) or if there are other better method which i am unaware of then please let me know. :) Ta James
For years I unconsciously used this method: http://gettingreal.37signals.com/ch06_From_Idea_to_Implementation.php[^] (for windows apps, not web sites). It was very sucessful, extremely actually. Then I was about to embark on a very large project and got worried at the size of it and bought into UML and design processes and so we bought a decent UML program, a few books, studied up on it, painstakingly used a formal design process and about 3/4 of the way through coding the beta threw the UML out the door and will never touch it again. Nothing was a bigger drain on our resources and creativity as a small company than using procedures and processes designed to commoditize software development and turn it into a factory process. As a small company it was poison to ourselves, our bottom line, our customers etc etc. When it came to implementation and all those little changes that are bound to happen I found myself spending more time updating the UML model than actually writing the code and that was enough. It's a fine tool for "global mega corporation" with hundreds of programmers who need to be herded around but it represents the dinosaur age of developing software. I firmly believe that nearly all software can be developed more efficiently with a better end product by using as few developers and staff as technically possible. For smaller companies with new products I wholeheartedly endorse the methods mentioned in that link as well as a good chunk of everything else they write about, it's nearly all equally applicable to windows apps as websites (their thing). If you want to learn that stuff in order to get a job being a big cog in a big software factory then have at 'er, but if you want to make some money writing your own software and selling it avoid it like the plague.
Cum catapultae proscriptae erunt tum soli proscripti catapultas habebunt
-
There's always the sacrifice the chicken to the gods of project time and pray that the high priests of project management don't end up shafting you.
Deja View - the feeling that you've seen this post before.
Or try code obfuscation and ask the Project Team to explain it to the clients. That will keep them away long enough to do work. When suits are busy doing Suity things, they don't interfere with real work.
------------------------------------ Happy Primes Lead to Happy Memories. Don't Google FGI