Methodology

advertisement
SpaceAge. Member NACCB ( National Association of Computer Consulting Business’s )
Page 1 of 5
COMMITMENT-COMPETENCE-PERSISTENCE-EXCELLENCE
SpaceAge
Mission Possible: “Leverage the Power of Team Work and Technology”
26 Journal Square, Suite # 703. Jersey City. N.J.07306. V:201-659-1239; Fax:201-659-1169.
Last Edited on:12 July 2005
www.SpaceAgeGroup.com
METHODOLOGY
In Time Management we know: "An Hour in planning saves several hours in
Execution."
In building Software Systems: "An hour spent on Analysis and Design, saves several
hours in execution. It helps us build better systems in lesser time and lower cost.”
Let Us Ask Ourselves The Right Questions:
1.
What is a methodology?
2.
Why do we need a methodology?
3.
What is the difference between two methodologies?
4.
What is the central objective of all methodologies?
5.
Who (what) is more important – methodology or the methodologist?
6.
What is similar about designing a system and managing a team?
7.
Less than 5 in every 100 methodologists are really good. Why ? Why do most
methodologists fail?
8.
Hiring a Methodologist ! what do you look for in a good methodologist?
9.
Is UML a methodology?
10. If we were to build a one room house, do we need a methodology?
11. If we were to build a World Trade Center Tower, do we need a methodology?
12. If an Hour in planning does saves several hours in Execution. What exactly stops
us from spending an hour in planning?
13. If following a methodology helps us build better systems in lesser time and lesser
cost, why do well over 90% of software projects still do not follow any formal
methodology?
14. Is following a methodology alone, enough to build a better system?
15. We are under a very tight schedule, we have no time for methodology! I am
swamped with work, I have no time for planning! I have to build my five bed
room house overnight. I have no time for planning, architecture or design!
Providing complete Information Technology Solutions - Software Development, Application integration, etc.
Email: SpaceAgeNJ@att.net ; Web Site: www.SpaceAgeGroup.com
Honesty . Integrity . Justice . Love . Compassion . Peace . Happiness . Progress . Prosperity .
Help Reduce Paperwork. Save Trees, Save our Environment.
This document is an intellectual property of SpaceAge.
Please retain SpaceAge letter head. It will bring you good luck.
SpaceAge. Member NACCB ( National Association of Computer Consulting Business’s )
Page 2 of 5
16. If we are under a very tight schedule, what is the bare minimum methodology
that we need to follow?
17. We don’t have a methodologist on the team, and we don’t have time and budget
to hire one. What are our options?
18. For what reasons will we use an Interface (in Java)? To implement multiple
inheritance or callbacks. There are other more important reasons to use
Interfaces.
19. Are we doing Object Based Programming or Object Oriented Programming? Have
we used Inheritance and Polymorphism?
20. How can we say that our business processes, usecases, class diagrams or
sequence diagrams are correct?
21. How can we say that our JMS based solution (design) is correct?
22. When and why should we design a system using EJB’s, JMS, WebServices, etc.
23. How do we map our object model to relational model?
24. When do we need to store our objects in relational form and when in object
(binary) form?
25. How will a distributed object look on the web tier, EJB tier, database tier?
The above are just few questions.
Why do we need a methodology?
To build better systems we need to do analysis and design.
When we build a home or a World Trade Center tower, do we just begin right away,
stacking bricks one on top of another and hope that we will make it stand. Most
software projects unfortunately are done that way.
A good Analysis and Design, helps build systems that are scalable, flexible, easy to
maintain and easy to Re-Engineer from time to time.
A Methodology has to embrace all – not just the entire Software development life cycle
but the entire life of the Application.
A Methodology that has stopped evolving, stopped growing, and cannot be adapted to
the project at hand – is dead.
On any project, no methodology should ever be followed to the letter.
The first directive that every methodology has to stipulate is: ‘here is a proposed
methodology, GO ! ADAPT IT, FINE TUNE it to your needs.’
Providing complete Information Technology Solutions - Software Development, Application integration, etc.
Email: SpaceAgeNJ@att.net ; Web Site: www.SpaceAgeGroup.com
Honesty . Integrity . Justice . Love . Compassion . Peace . Happiness . Progress . Prosperity .
Help Reduce Paperwork. Save Trees, Save our Environment.
This document is an intellectual property of SpaceAge.
Please retain SpaceAge letter head. It will bring you good luck.
SpaceAge. Member NACCB ( National Association of Computer Consulting Business’s )
Page 3 of 5
Every Methodology has to stress - Flexibility and Creativity. Creativity ought to stand
on a foundation built of Experience and Knowledge.
Often managers and programmers feel that, merely following a methodology is
sufficient to build good systems. It is like saying that: “Shakespeare used MS-Word, if
I use MS-Word, I can be Shakespeare.” Or that: “Falcon Project used RUP. Project
Falcon was Successful. if we use RUP, our project also will be successful.” This just
may not be true.
We may follow the best Methodology on Earth and follow it one hundred percent to the
last letter and word, our deliverables may match one hundred percent what the
methodology stipulates – yet the project may end up in a total disaster. No
Methodology by itself can enforce or ensure quality of our deliverables, quality in our
approach. No Methodology can ensure that the class and component structure we
abstracted out is correct. No methodology by itself can guarantee that the system we
are building is scalable, flexible, maintainable. A Methodology does help us build
better system, following is methodology is certainly better than following none, BUT,
there is no substitute for intelligence, competence, imagination and creativity. A
Methodology is like the state of the art surgical tools, we need a qualified, intelligent,
experienced surgeon. If I am building a house, I need to hire an architect who has
intellect, ability, imagination and creativity.
An army of hundred Sheep’s commanded by a Lion is more to be feared than an army
of hundred Lions Commanded by a Sheep. An insignificant methodology implemented
by a 'Lion' will be much more successful than a top gun methodology implemented by
a 'Sheep'."
One person can take the best methodology on Earth and build a poor system, where
as another person can take an insignificant, unheard of methodology and build a much
better system.
We are under a very tight schedule, we have no time for methodology! All the more
reason to follow one.
What do you look for in a good methodologist?
A methodologist, an architect has to score very high in intellect and creativity.
A methodologist should have rich, hands-on, current programming experience.
A methodologist should develop prototypes to help understand the system and help
come out with a better design.
A methodologist should have good managerial experience. A gifted methodologist is a
gifted manager as well – he knows what roles and responsibilites to assign to each
object and component.
Providing complete Information Technology Solutions - Software Development, Application integration, etc.
Email: SpaceAgeNJ@att.net ; Web Site: www.SpaceAgeGroup.com
Honesty . Integrity . Justice . Love . Compassion . Peace . Happiness . Progress . Prosperity .
Help Reduce Paperwork. Save Trees, Save our Environment.
This document is an intellectual property of SpaceAge.
Please retain SpaceAge letter head. It will bring you good luck.
SpaceAge. Member NACCB ( National Association of Computer Consulting Business’s )
Page 4 of 5
MEGA METHODOLOGY
What is MEGA Methodology?
MEGA is a Methodology for Very Large, Challenging Projects. It is UML Compliant and
one can use Rational Rose tool.
MEGA is a combination of:
Distributed Component Analysis and Design, and, Management Techniques for Very
Large Projects.
MEGA can be used with splendid gains, on the following projects:
(a) Very large and complex projects.
(b) Projects that would use thousands of distributed components.
(c) For designing and developing distributed muti-tiered applications using EJB, JMS,
WebServices, etc.
What is My Background in Methodology?
I am a gifted Methodologist. I have designed large complex systems.
In 1992 at IIT (MIT of Asia) I specialized in Object Oriented Analysis and Design.
In 1993-1995, I picked expertise in Methodologies by Grady Booch, James Rumbaugh
and Ivar Jacobson. I studied a couple of other methodologies as well such as from Ed
Yourdon, Peter, etc. And in recent times RUP and Extreme Programming.
In 1993, I did some initial work in Distributed Component Analysis and Design.
In 1996 at Chase Manhattan Bank, a team of about 15 Andersen Methodologists were
let go. I helped set the standards and Distributed Component Analysis and Design. To
my knowledge, there was not a single book in the market at that time on Distributed
Component Analysis and Design .
Where did the Andersen team go wrong? They had no experience in Distributed
Component Analysis and Design. They did not know the difference between a
conventional object and a distributed object. They could not take the design from the
conventional business object model to the distributed object model.
In 1999, at Merrill Lynch, at the PCR project, one of the largest and most ambitious
projects in the financial industry, I developed MEGA methodology. A team of ten
Providing complete Information Technology Solutions - Software Development, Application integration, etc.
Email: SpaceAgeNJ@att.net ; Web Site: www.SpaceAgeGroup.com
Honesty . Integrity . Justice . Love . Compassion . Peace . Happiness . Progress . Prosperity .
Help Reduce Paperwork. Save Trees, Save our Environment.
This document is an intellectual property of SpaceAge.
Please retain SpaceAge letter head. It will bring you good luck.
SpaceAge. Member NACCB ( National Association of Computer Consulting Business’s )
Page 5 of 5
senior methodologists voted in favor of MEGA and against the methodology proposed
by Andersen. A team of over 30 top notch Andersen Methodologists were let go.
What helps me excel as a methodologist?
I am highly creative, I have rich managerial experience and I am hands on (in
programming). I have studied more than five methodologies.
I have experience in Structured Programming Languages and in Object Oriented
Programming Languages.
I have experience in three Object Oriented Languages – Smalltalk, C++ and Java.
I have done Structured Systems Analysis and Design, Object Based Design, Object
Oriented Design and Component Based Design.
I have experience in multiple middleware, distributed component technologies –
DCOM, Corba, EJB, JMS, MQ Series, RMI, WebServices, etc.
My foundations in Computer Science are very strong – rock solid. This helps me pick
up new technologies very quickly.
Managerial experience and experience of running a technology company, helps me
understand business needs.
Having deep understanding of the business and technology, helps me leverage the
power of technology to serve the business – to help raise efficieny and lower operating
costs.
In case you need more information, please email me at –
alexander@SpaceAgeGroup.com or SpaceLabs@verizon.net
Providing complete Information Technology Solutions - Software Development, Application integration, etc.
Email: SpaceAgeNJ@att.net ; Web Site: www.SpaceAgeGroup.com
Honesty . Integrity . Justice . Love . Compassion . Peace . Happiness . Progress . Prosperity .
Help Reduce Paperwork. Save Trees, Save our Environment.
This document is an intellectual property of SpaceAge.
Please retain SpaceAge letter head. It will bring you good luck.
Download