Patrick's Map
by Patrick Groves
1. Angile Development
1.1. Process: Based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams
1.2. Pros: -Using iterative cycles to do project work has definite benefits, especially when the customer requirements or priorities frequently change
1.3. Cons: -Less predictable -For some software deliverables, developers cannot quantify the full extent of required efforts. -More time and commitment -Greater demands on developers and clients -Lack of necessary documentation -Projects easily falls off the track
2. SDLC
2.1. Process: SDLC is a process followed for a software project, within a software organization
2.2. Pros: -Formal review is created at the end of each stage allowing maximum management control -This approach creates considerable system documentation -This documentation ensures that system requirements can be traced back to stated business requirements
2.3. Cons: -What maybe seen as a major problem for some, end-user does not see the solution until the system is almost complete -Users get a system that meets the need as understood by the developers; this may not be what was really needed for them. There may be a loss in translation -Documentation is expensive and time-consuming to create. It is also difficult to keep current. -Users cannot easily review intermediate products and evaluate whether a particular product meets their business requirements
3. RAD
3.1. Process: The process of writing the software itself involves the planning required for developing the product
3.2. Pros: -Changing requirements can be accommodated -Progress can be measured -Iteration time can be short with use of powerful RAD tools -Productivity with fewer people in short time -Reduced Development Time -Increased re-usability of components -Quick initial reviews occur -Encourages customer feedback -Integration from very beginning solves a lot of integration issues
3.3. Cons: -Dependency on technically strong team members for identifying business requirements -Only system that can be modularized can be built using RAD -Requires highly skilled developers/designers -High dependency on modeling skills -Inapplicable to cheaper projects as cost of modeling and automated code generation is very high -Management complexity is more -Suitable for systems that are component based and scale-able -Requires user involvement throughout life cycle -Suitable for project requiring shorter development times
4. JAD
4.1. Pros: -Complimentary skills: you have 2 different sets of skills -Usually the outcome is a better quality product -Usually the progress is faster -Accountability: pushing each other to work faster, deliver on time
4.2. Cons: -Revenue Sharing -Different opinions -Different work schedules and priorities
4.3. Process: A process used in the life cycle area of the dynamic systems development method to collect business requirements while developing new information systems for a company