SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
ICT50715 ASSIGNMENT – Research Report
ASSIGNMENT 1 – Systems/Software Development Methodologies (1)
TASK 1 – 3 Platform Research
AUTHOR: William A Hambly
INSTITUTION: Upskilled Training (RTO, Australia)
COURSE: ICT50715 - Diploma of Software Development
Section 2 | CONTENTS HAMBLY 2/35
Contents
Abstract............................................................................................................................... 4
ASSIGNMENT 1 – Systems/Software Development Methodologies (1).......................... 5
Introduction to Software Development Methodologies...................................................... 5
Analysis of 3 selected platforms..................................................................................... 5
Lifecycle Models ............................................................................................................ 6
Waterfall Development. .............................................................................................. 7
Agile Methodology. .................................................................................................... 8
Unified Process. .......................................................................................................... 9
Strengths and Weaknesses of the 3 SDMs.................................................................... 10
Waterfall.................................................................................................................... 10
Agile Methodology. ...................................................................................................11
RUP. .......................................................................................................................... 12
Features & Benefits of each SDM ................................................................................ 13
Industry Sectors to which each SDM is suited ............................................................. 20
Waterfall Model. ....................................................................................................... 20
Agile Methodologies................................................................................................. 20
Rational Unified Process........................................................................................... 20
Recommendations for Implementation of a new Platform........................................... 22
RUP. .......................................................................................................................... 22
Conclusion ........................................................................................................................ 23
Section 2 | CONTENTS HAMBLY 3/35
References / Bibliography................................................................................................. 24
Footnotes/Endnotes........................................................................................................... 29
Appendix A: Leading Software Processes .................................................................... 30
Appendix B: Iterative- Incremental Development....................................................... 31
Appendix C: Basic SDLC Methodologies..................................................................... 32
Appendix D: Trade Study Workflow ............................................................................ 33
Appendix E: Glossary of Terms..................................................................................... 34
ENDNOTES ..................................................................................................................... 35
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 4/35
Abstracti
This document introduces, compares and discusses three styles of Software Development
Methodologies (i.e. Agile, Waterfall and RUP), outlines which types of software projects and
industries are suited to each SDM, and recommends (puts forward) the Rational Unified Process
as a preferred style for the implementation of a new platform.
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 5/35
ASSIGNMENT 1 – Systems/Software Development Methodologies (1)
Introduction to Software Development Methodologies
Analysis of 3 selected platforms
Development techniques have changed over the past few decades, from lengthy 3G/L-based
projects based on waterfall styles to object-oriented projects based on iterative approaches,
lasting weeks or months. Tried and tested methodologies have gone through a series of
metamorphoses to keep pace with these changes, and new ones have appeared to support the
changing requirements of the 21st
century. (Candice Goodwin, 2001)
However, the important issue is not so much which methodology to use, as purely having some
kind of a framework for structuring the project. (Candice Goodwin, 2001)
Conventional software models such as Waterfall and V-model were predominant since the 60’s
and 70’s. These models are mainly focused on a formalised approach, requiring planning,
documentation and team expertise for only medium- to large-scale projects. The Rational Unified
Process is one of the more widely-used conventional models. (Rasool, Aftab, Hussain, &
Streitferdt, 2013)
Agile processes got the attention of the software industry because of limitations in conventional
models, e.g. slow adaptation to rapidly changing business requirements. (Rasool, Aftab, Hussain,
& Streitferdt, 2013)
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 6/35
Lifecycle Models
There are numerous software development methods today – see Appendix A: Leading
Software Processes
Firstly, there are distinct approaches to (categories of) software development:
1. The Waterfall approach, and
2. The Agile/Iterative approach.
3. A hybrid development approach is a combination of these, e.g. Unified Process.
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 7/35
Waterfall Development. The Waterfall model is a sequential (serial) development
approach; one phase of development is completed before moving on to the next. The graphic
representation of the model resembles a downward flow of a waterfall, with phases of
requirements – analyses, design, implementation, testing (validation), integration, and
maintenance. (Introduction to Software Engineering/Process/Methodology, 2015)
(Sami, 2012)
Waterfall is good when all the requirements can be obtained up-front and if those requirements
won’t change (much). The difficulty is getting the requirements correct & complete, on paper,
before starting any work.
Waterfall retains its place in complex, mission-critical applications when environment is
stable, no room for changes, when frequent interaction with end users is not possible (e.g.
NASA (USA), military, government).
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 8/35
Agile Methodology. These are more lightweight models, an iterative & incremental
approach, faster, more reactive – software developers work in small modules, and respond to
changing requirements (as opposed to fixed project plans). This “design/code/test” approach
delivers RAPID iterations of a product until it is completed, e.g. Crystal Methods, Extreme
Programming (XP) and Scrum.
There are 2 particular tenets where Agile methods are appropriate – changing requirements
and iterative releases.
Extreme programming (XP) is a widely-used Agile practice in software development. (Sharma
& Wadhwa, 2015) XP provides best engineering practices for a good quality product at small
scale. (Rasool, Aftab, Hussain, & Streitferdt, 2013)
(Gupta, 2014)
See diagram in Appendix B: Iterative- Incremental Development
The most recognized Agile approach is the Scrum model, commonly referred to as Agile
Scrum. (Robert Half Technology, 2014 )
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 9/35
Unified Process. (UP) is an iterative software development model based on the
Unified Modelling Language (UML). UP organizes the development process into four phases,
each consisting of one (or more) iterations of the development, as follows:
a. Inception,
b. Elaboration,
c. Construction, and
d. Transition.
One of the more well-known versions of UP is the Rational Unified Process. (Introduction to
Software Engineering/Process/Methodology, 2015)
The Rational Unified Process (RUP) is an incremental, iterative and architecture-centric
framework, based on sound software engineering principles. (Rasool, Shabib, Hussain, &
Streitferdt, 2013)
RUP is a process that extends UML (Unified Modelling Language), itself a general-purpose
modelling language for software that is designed to support object-oriented programming.
Originally, tools targeted development for desktop and Web apps, but the interest in mobilizing
apps on smartphones and tablets has quickly garnered equal if not greater interest. (Lund,
2016)
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 10/35
Strengths and Weaknesses of the 3 SDMs
This section lists benefits & drawbacks of each SDM.
Waterfall.
Advantages Disadvantages
 Robust documentation, meticulous
record keeping.
 Division into tight compartments.
 Cost and schedule estimates accurate.
 Reduced dependency on individuals.
 Inflexibility and rigidity (not possible
to alter a completed phase or the
project design);
 Requirements-gathering is critical – if
any deficiency exists in the
documentation, it may not be
discovered until the product is
delivered.
 A working product is not available
until late in the project.
 All risks must be dealt with in a single
software development effort.
 The plan doesn’t take into account a
client’s evolving needs. If the client
realizes that they need more than
initially thought, and demands change,
the project will come in late and
impact budget.
(Rasool, Aftab, Hussain, & Streitferdt, 2013)
3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 11/35
Agile Methodology.
Advantages Disadvantages
 Allows for changes to be made after
the initial planning.
 Testing & customer feedback occurs
regularly & simultaneously with
development,
 Gives priority to collaboration over
design, stakeholders over tools,
working software over documenting
procedures
 Easier to add features that will keep
project up to date with the latest
developments in industry.
 Software bugs are caught and taken
care of in the development cycle – not
at the end.
 The product can be launched at the
end of any cycle. As a result, it’s more
likely to reach its launch date.
 Without proper managerment, the
project can become a series of code
sprints. If this happens, the project is
likely to come in late and over budget.
 As the initial project doesn’t have a
definitive plan, the final product can
be different to what was initially
intended.
 Tendency for problems to be pushed
to the future so that initial promise of
the first increment is not met by
subsequent products.
(Rasool, Aftab, Hussain, & Streitferdt, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 12/35
RUP.
Advantages Disadvantages
 The major strength of RUP is its
structured and methodical approach
which assures process stability and a
high quality of developed products.
 Works well with large projects due to
its complexity and heavy
documentation.
 As with Agile, reduces risk by testing
/ integration during project lifecycle
 Takes into account changing
requirements
 Allows tactical changes to the product
 Allows strategic release of product
(with reduced functionality) to counter
a competitor or to adopt another
vendor for a given technology
 Can correct errors over several
iterations, providing a more robust
design
 RUP is a complex methodology,
difficult to learn / apply correctly.
 For RUP, an expert is often necessary
in the team to get high quality software.
 Process-oriented and does not focus on
people at all.
 Changes in software are time-
consuming and difficult as first changes
are implemented in use cases then in
remaining diagrams and then in code.
 RUP is weighted & not as quick and
adaptable as other Agile methods
 RUP doesn't work well when
• fast time-to-market is crucial,
• e.g. Web 2.0 and Software-as-a-
Service (SaaS) environments,
where frequent updates and
feature additions are expected.
(Kharytonov, 2009)
(Rasool, Aftab, Hussain, & Streitferdt, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 13/35
Features & Benefits of each SDM
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 14/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 15/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 16/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 17/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 18/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 19/35
( Bollapragada, 2013)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 20/35
Industry Sectors to which each SDM is suited
Waterfall Model. Applies to industries like automobile, healthcare, aerospace, etc. where
it's possible to clarify requirements up-front; database development; data warehouses; CRUD
(Create/Read/Update/Delete) business applications; teams of people with narrow skillsets for
organisations that don’t need to be competitive; in building accounting systems, I/O controllers,
or compilers where the requirements are very well understood. (Scott Ambler + Associates,
2013)
Agile Methodologies. Rapid Application Development systems (e.g. user interface
intensive systems); small project teams (4-10 people); British Telecom is frequently cited as a
large company that has used Agile programming very successfully, with 30 to 90-day
development cycles that have yielded dramatic productivity and business benefits. (Kharytonov,
2009)
Rational Unified Process. Managing a portfolio of projects, including teams following
the DAD; medium to large project teams (20+ people); rigorous CMMI (Capability Maturity
Model Integration) Level-5 process (when instantiated) with systems using OO and component-
based technologies; critical systems that affect the health or livelihood of people (are traffic
control systems, medical research data analyses reports, heart monitoring systems). (Scott
Ambler + Associates, 2013)
Industry Examples. (Kruchten, What Is the Rational Unified Process?, 2001)
 Telecommunications: Eriksson, Alcatel
 Transportation, Aerospace: Lockheed-Martin, British Aerospace
 Manufacturing: Xerox, Volvo, Intel
 Finances: Visa, Merrell Lynch, Schwab
 System integrators: CAP Gemini, Ernst & Young, Oracle, Deloitte &
Touché (Kruchten, The Rational Unified Process, 2003, p. 17)
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 21/35
4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 22/35
Recommendations for Implementation of a new Platform
RUP. The benefits of adoption & development software products using Rational software
are as follows:
Findings. It is clear that software technology has advanced beyond traditional Waterfall
approaches, into modern Agile technologies, and that we need to adopt & focus on one or more
of these new models.
RUP follows six major development best practices. Visual modelling; develop
iteratively; manage requirements; component based architecture; continuously verify quality; and
control changes.
Adopt RUP. Recommend we adopt the Rational Unified Process as it will benefit the
company in the medium-to-long term, in terms of profits & increased morale.
Rational Unified Process has progressed into powerful, comprehensive tools providing
UML support on all modern platforms, including UML modelling for database designs, ERD,
and modern languages & forward / reverse engineering procedures. (IBM Rational Rose
(Enterprise Edition, Review), 2015)
RUP allows systems engineering trade testing. Trade studies allow us to perform “trade
analysis” to fully explore the design space, defining candidate solutions to ensure the proposed
solution more exactly matches performance & cost requirements, before engineering starts. This
saves time & costs in the development process. (Bleakley (PhD), 2009) See Appendix D: Trade
Study Workflow
Procurement Policy. See the report proposing procurement of a RUP software design
tool & adoption procedures: TASK 2 – Process for Procurement
5 | CONCLUSION HAMBLY 23/35
Conclusion
Although there is obviously no “single best solution” for any development strategy, it
seems clears that a modern approach, using models established in today’s software development
market, will be essential to the businesses. Software technology has advanced greatly in the last
30 years and, to thrive in today’s business world, our company needs to embrace a modern
tool/platform to build software products.
For this reason, it is important to break away from our currently embedded Waterfall
mind-set.
This paper recommends that we adopt RUP as a new platform that is most appropriate to
place us into a powerful market position.
See document TASK 2 – Process for Procurement for more details.
6 | REFERENCES | BEBLEOGRAPHY HAMBLY 24/35
References / Bibliography
Bollapragada, M. V. (2013, 5 31). Agile vs Iterative vs Waterfall models. Retrieved from
SlideShare.net: http://www.slideshare.net/MarrajuBollapRagada/agile-vs-
iterativevswaterfall
Ambler, S., & Lines, M. (n.d.). Disciplined Agile 2.0. Retrieved from Community for the
Disciplined Agile Delivery: http://www.disciplinedagiledelivery.com/introduction-to-dad/
Association of Modern Technologies Professionals. (2015). Software Development
Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software-
development-methodologies/
Association of Modern Technologies Professionals. (2015). Software Development
Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software-
development-methodologies/
Association of Modern Technologies Professionals. (2015). Software Development
Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software-
development-methodologies
Beck, K. (October 1, 1999). Extreme Programming Explained: Embrace Change. Addison-
Wesley Pub Co; ISBN 0201616416.
Beck, K., & Andres, C. (2004). Extreme Programming Explained: Embrace Change, ISBN
0321278658. Addison-Wesley Professional.
Bleakley (PhD), G. J. (2009, June). Smarter system development: a systems engineering trade
study. Retrieved from Rational Software:
ftp://ftp.software.ibm.com/software/emea/de/rational/neu/Smarter_system_development_
EN_2009.pdf
6 | REFERENCES | BEBLEOGRAPHY HAMBLY 25/35
Candice Goodwin. (2001, October 1). Development methodology in under 10 minutes. Retrieved
from ComputerWeekly.com: http://www.computerweekly.com/feature/Development-
methodology-in-under-10-minutes
Fowler, M. (2005). The New Methodology. Retrieved from MartinFowler.com (ThoughtWorks,
Inc.): http://www.martinfowler.com/articles/newMethodology.html
Glaiel, F. S., Moulton, A., & Madnick, S. (2013). A System Dynamics Investigation of Agile
Software Development Methods. Massachusetts Institute of Technology, 5.
Gupta, S. (2014, 9 4). Comparison of Key Methodologies in AGILE. Retrieved from Quotium:
http://www.quotium.com/performance/comparison-of-key-methodologies-in-agile/
IBM Rational Rose (Enterprise Edition, Review). (2015, July). Retrieved from Informer
Technologies, Inc.: http://rational-rose-2000-enterprise-edition.software.informer.com/
Introduction to Software Engineering/Process/Methodology. (2015, July 27). Retrieved from
wikiBooks.org:
https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Process/Methodolo
gy
IT Knowledge Portal. (2015). IT Standards and Methodologies. Retrieved from Association of
Modern Technologies Professionals: <http://www.itinfo.am/eng/it-standards-and-
methodologies>
Janalta Interactive Inc. (2015). Agile Software Development. Retrieved from Techopedia:
https://www.techopedia.com/definition/13564/agile-software-development
Kharytonov, S. (2009, 10 22). Waterfall, RUP and Agile: Which is Right for You? Retrieved from
EVP Consulting Services, SoftServe:
http://www.ebizq.net/topics/dev_tools/features/11821.html?page=3
6 | REFERENCES | BEBLEOGRAPHY HAMBLY 26/35
Kruchten, P. (2001). What Is the Rational Unified Process? Retrieved from Rational Software:
http://www.ibm.com/developerworks/rational/library/content/RationalEdge/jan01/WhatIs
theRationalUnifiedProcessJan01.pdf
Kruchten, P. (2003, Nov). The Rational Unified Process. Retrieved from kruchten_ch02.fm:
http://catalogue.pearsoned.co.uk/samplechapter/0321197704.pdf
Last Name, F. M. (Year). Article Title. Journal Title, Pages From - To.
Last Name, F. M. (Year). Book Title. City Name: Publisher Name.
Lund, D. (2016, March). Two Sides to the Coin: Enterprise Rapid App Development. Retrieved
from IDC:
http://docs.media.bitpipe.com/io_13x/io_130051/item_1317724/KOny%20pricing%20ID
C%20on%20RAD%20tools.pdf
Margaret Rouse; Julia Anderson;. (2013, August). virtual file system (VFS) definition. Retrieved
from TechTarget.com 2006 - 2015:
http://searchservervirtualization.techtarget.com/definition/virtual-file-system-VFS
Nazoa, J. L. (2015, Dec 31 ). Agile & Waterfall Methodologies – A Side-By-Side Comparison.
Retrieved from Base 36 Smart Solutions: http://www.base36.com/2012/12/agile-
waterfall-methodologies-a-side-by-side-comparison/
Ogden Air Logistics Center (OO-ALC), Hill Air Force Base, Utah. (2003, February). U.S. Air
Force's Software Technology Support Center. Retrieved from Guidelines for Successful
Acquisition and Management of Software-Intensive Systems: Weapon Systems,
Command and Control Systems, Management Information Systems:
http://www.stsc.hill.af.mil/resources/tech_docs/gsam4/chap2.pdf
6 | REFERENCES | BEBLEOGRAPHY HAMBLY 27/35
Rasool, G., Aftab, S., Hussain, S., & Streitferdt, D. (2013, July 23). eXRUP: A Hybrid Software
Development Model for Small to Medium Scale Projects. Retrieved from Open Access
Library (OALIB) Journal: http://www.oalib.com/paper/2990599#.VmcXPjCEauY
Rasool, G., Shabib, A., Hussain, S., & Streitferdt, D. (2013). eXRUP: A Hybrid Software
Development Model for Small to Medium Scale Projects. Journal of Software
Engineering and Applications, Vol.6, No.9, 446-457.
Robert Half Technology. (2014 , February 18). How to Compare Software Development
Methodologies. Retrieved from Robert Half Technology:
https://www.roberthalf.com/technology/blog/how-to-compare-software-development-
methodologies
Robert Half Technology. (2014, February 25). 6 Basic SDLC Methodologies: Which One is Best?
Retrieved from Robert Half Technology: https://www.roberthalf.com/technology/blog/6-
basic-sdlc-methodologies-the-pros-and-cons
Robert Half Technology. (2014, March 25). How to Optimize the Agile Testing Processes.
Retrieved from Robert Half Technology:
https://www.roberthalf.com/technology/blog/how-to-optimize-the-agile-testing-processes
Rouse, M. (2015, August). Prototyping Model definition. Retrieved from TechTarget:
<http://searchcio.techtarget.com/definition/Prototyping-Model>
Rouse, Margaret (2003 - 2015, TechTarget). (2008, December). LAMP (Linux, Apache, MySQL,
PHP) definition. Retrieved from WhatIs.com:
http://searchenterpriselinux.techtarget.com/definition/LAMP
Sami, M. (2012, March 15). Software Development Life Cycle Models and Methodologies.
Retrieved from The Twenty Eleven Theme:
6 | REFERENCES | BEBLEOGRAPHY HAMBLY 28/35
https://melsatar.wordpress.com/2012/03/15/software-development-life-cycle-models-and-
methodologies/
SAS Inc. (2015). Hadoop. Retrieved from SAS Institute Inc.:
http://www.sas.com/en_us/insights/big-data/hadoop.html
Scheid, J., & McDonough, M. (2015, 7 22). Project Management Methodologies: How Do They
Compare. Retrieved from Bright Hub Project Management:
http://www.brighthubpm.com/methods-strategies/67087-project-management-
methodologies-how-do-they-compare/#imgn_2
Scott Ambler + Associates. (2013). Choose the Right Software Method for the Job. Retrieved
from Ambysoft Inc.: http://www.agiledata.org/essays/differentStrategies.html
Sharma, N., & Wadhwa, M. (2015, Nov). eXSRUP, Hybrid Software Development Model.
Retrieved from TELKOMNIKA Indonesian Journal of Electrical Engineering:
http://iaesjournal.com/online//index.php/TELKOMNIKA/article/viewFile/8436/4325
wikiHow. (2014). How to Write an Abstract in APA. Retrieved from wikiHow.com:
http://www.wikihow.com/Write-an-Abstract-in-APA
Wikipedia. (2015). Cleanroom software engineering. Retrieved from Wikimedia Foundation,
Inc.: https://en.wikipedia.org/wiki/Cleanroom_software_engineering
7 | FOOTNOTES HAMBLY 29/35
Footnotes/Endnotesii
Footnote1
1
Disciplined Agile Delivery (DAD)
8 | APPENDIX HAMBLY 30/35
Appendix A: Leading Software Processes
(Scott Ambler + Associates, 2013)
8 | APPENDIX HAMBLY 31/35
Appendix B: Iterative- Incremental Development
(Glaiel, Moulton, & Madnick, 2013)
8 | APPENDIX HAMBLY 32/35
Appendix C: Basic SDLC Methodologies
(Robert Half Technology, 2014)
8 | APPENDIX HAMBLY 33/35
Appendix D: Trade Study Workflow
(Bleakley (PhD), 2009)
8 | APPENDIX HAMBLY 34/35
Appendix E: Glossary of Terms




DAD  Disciplined Agile Delivery – is a hybrid approach which extends Scrum with proven
strategies from Agile Modelling (AM), Extreme Programming (XP), Unified Process
(UP), Kanban, Lean Software Development, Outside in Development (OED) and
several other methods. (Ambler & Lines, n.d.)
10 | ENDNOTES HAMBLY 35/35
ENDNOTES

Contenu connexe

Tendances

Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010
Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010
Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010chaskins25
 
Abb case study 1
Abb case study 1Abb case study 1
Abb case study 1apn18
 
Approaches To System Development
Approaches To System DevelopmentApproaches To System Development
Approaches To System DevelopmentHenhen Lukmana
 
16 si(systems analysis and design )
16 si(systems analysis and design )16 si(systems analysis and design )
16 si(systems analysis and design )Nurdin Al-Azies
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1gvkmku
 
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}Mumbai B.Sc.IT Study
 
Oose unit 4 ppt
Oose unit 4 pptOose unit 4 ppt
Oose unit 4 pptDr VISU P
 
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT ijseajournal
 
Selenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing ToolSelenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing Toolijtsrd
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 pptDr VISU P
 
‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Processijceronline
 
Software Engineering The Multiview Approach And Wisdm
Software Engineering   The Multiview Approach And WisdmSoftware Engineering   The Multiview Approach And Wisdm
Software Engineering The Multiview Approach And Wisdmguestc990b6
 
30 8948 prakash paper64 (edit ndit)
30 8948 prakash paper64 (edit ndit)30 8948 prakash paper64 (edit ndit)
30 8948 prakash paper64 (edit ndit)IAESIJEECS
 
Electronic Document Management Systems Architecture
Electronic Document Management Systems ArchitectureElectronic Document Management Systems Architecture
Electronic Document Management Systems ArchitectureGlen Alleman
 

Tendances (18)

Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010
Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010
Mbse – A Historical Perspective Haskins Keynote Ic Mbse2010
 
Abb case study 1
Abb case study 1Abb case study 1
Abb case study 1
 
Approaches To System Development
Approaches To System DevelopmentApproaches To System Development
Approaches To System Development
 
16 si(systems analysis and design )
16 si(systems analysis and design )16 si(systems analysis and design )
16 si(systems analysis and design )
 
2 Process
2 Process2 Process
2 Process
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Week 10
Week 10Week 10
Week 10
 
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}
Project Management (April - 2014) [CBSGS - Paper Solution] {Mumbai University}
 
Oose unit 4 ppt
Oose unit 4 pptOose unit 4 ppt
Oose unit 4 ppt
 
10.1.1.9.5971 (1)
10.1.1.9.5971 (1)10.1.1.9.5971 (1)
10.1.1.9.5971 (1)
 
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT
A PROPOSED HYBRID AGILE FRAMEWORK MODEL FOR MOBILE APPLICATIONS DEVELOPMENT
 
Selenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing ToolSelenium - A Trending Automation Testing Tool
Selenium - A Trending Automation Testing Tool
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 ppt
 
‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process‘O’ Model for Component-Based Software Development Process
‘O’ Model for Component-Based Software Development Process
 
7 5-94-101
7 5-94-1017 5-94-101
7 5-94-101
 
Software Engineering The Multiview Approach And Wisdm
Software Engineering   The Multiview Approach And WisdmSoftware Engineering   The Multiview Approach And Wisdm
Software Engineering The Multiview Approach And Wisdm
 
30 8948 prakash paper64 (edit ndit)
30 8948 prakash paper64 (edit ndit)30 8948 prakash paper64 (edit ndit)
30 8948 prakash paper64 (edit ndit)
 
Electronic Document Management Systems Architecture
Electronic Document Management Systems ArchitectureElectronic Document Management Systems Architecture
Electronic Document Management Systems Architecture
 

Similaire à ICT50715 – Assignment 01 – Task 1 – Platform Research Report – SSDM (APA).2600

A Software System Development Life Cycle Model for Improved Students Communic...
A Software System Development Life Cycle Model for Improved Students Communic...A Software System Development Life Cycle Model for Improved Students Communic...
A Software System Development Life Cycle Model for Improved Students Communic...IJCSES Journal
 
Systems DevelopmentLife CycleITEC 630 Group 3Dayna Ferguso
Systems DevelopmentLife CycleITEC 630 Group 3Dayna FergusoSystems DevelopmentLife CycleITEC 630 Group 3Dayna Ferguso
Systems DevelopmentLife CycleITEC 630 Group 3Dayna Fergusolisandrai1k
 
Comparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxComparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxPerumalPitchandi
 
Comparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxComparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxPerumalPitchandi
 
An Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionAn Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionIRJET Journal
 
Factors Influencing the Efficacy of Agile Usage
Factors Influencing the Efficacy of Agile UsageFactors Influencing the Efficacy of Agile Usage
Factors Influencing the Efficacy of Agile UsageDr. Amarjeet Singh
 
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGY
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGYDESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGY
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGYijseajournal
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...zillesubhan
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanationUmar Farooq
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxmadlynplamondon
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyIAEME Publication
 
Technology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumTechnology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumIOSR Journals
 
Designing A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayDesigning A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayAlison Reed
 
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...ijseajournal
 
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...ijseajournal
 
Understanding Alternative Approaches for System Development
Understanding Alternative Approaches for System DevelopmentUnderstanding Alternative Approaches for System Development
Understanding Alternative Approaches for System DevelopmentTameez Ansari
 

Similaire à ICT50715 – Assignment 01 – Task 1 – Platform Research Report – SSDM (APA).2600 (20)

A Software System Development Life Cycle Model for Improved Students Communic...
A Software System Development Life Cycle Model for Improved Students Communic...A Software System Development Life Cycle Model for Improved Students Communic...
A Software System Development Life Cycle Model for Improved Students Communic...
 
Systems DevelopmentLife CycleITEC 630 Group 3Dayna Ferguso
Systems DevelopmentLife CycleITEC 630 Group 3Dayna FergusoSystems DevelopmentLife CycleITEC 630 Group 3Dayna Ferguso
Systems DevelopmentLife CycleITEC 630 Group 3Dayna Ferguso
 
Hci practices-in-agile-software-development
Hci practices-in-agile-software-developmentHci practices-in-agile-software-development
Hci practices-in-agile-software-development
 
Comparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxComparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptx
 
Comparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptxComparison_between_Waterfall_and_Agile_m (1).pptx
Comparison_between_Waterfall_and_Agile_m (1).pptx
 
An Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps AdoptionAn Approach of Improve Efficiencies through DevOps Adoption
An Approach of Improve Efficiencies through DevOps Adoption
 
Factors Influencing the Efficacy of Agile Usage
Factors Influencing the Efficacy of Agile UsageFactors Influencing the Efficacy of Agile Usage
Factors Influencing the Efficacy of Agile Usage
 
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGY
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGYDESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGY
DESIGN OF A MULTI-AGENT SYSTEM ARCHITECTURE FOR THE SCRUM METHODOLOGY
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
 
Spiral model explanation
Spiral model  explanationSpiral model  explanation
Spiral model explanation
 
oXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docxoXabcaARRAAKALSL.docx
oXabcaARRAAKALSL.docx
 
2009 ASME final
2009 ASME final2009 ASME final
2009 ASME final
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docx
 
A study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodologyA study of critical success factors for adaption of agile methodology
A study of critical success factors for adaption of agile methodology
 
Technology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of ScrumTechnology Integration Pattern For Distributed Scrum of Scrum
Technology Integration Pattern For Distributed Scrum of Scrum
 
Designing A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development EssayDesigning A Waterfall Approach For Software Development Essay
Designing A Waterfall Approach For Software Development Essay
 
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...
ITERATIVE AND INCREMENTAL DEVELOPMENT ANALYSIS STUDY OF VOCATIONAL CAREER INF...
 
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
 
Understanding Alternative Approaches for System Development
Understanding Alternative Approaches for System DevelopmentUnderstanding Alternative Approaches for System Development
Understanding Alternative Approaches for System Development
 
2
22
2
 

ICT50715 – Assignment 01 – Task 1 – Platform Research Report – SSDM (APA).2600

  • 1. ICT50715 ASSIGNMENT – Research Report ASSIGNMENT 1 – Systems/Software Development Methodologies (1) TASK 1 – 3 Platform Research AUTHOR: William A Hambly INSTITUTION: Upskilled Training (RTO, Australia) COURSE: ICT50715 - Diploma of Software Development
  • 2. Section 2 | CONTENTS HAMBLY 2/35 Contents Abstract............................................................................................................................... 4 ASSIGNMENT 1 – Systems/Software Development Methodologies (1).......................... 5 Introduction to Software Development Methodologies...................................................... 5 Analysis of 3 selected platforms..................................................................................... 5 Lifecycle Models ............................................................................................................ 6 Waterfall Development. .............................................................................................. 7 Agile Methodology. .................................................................................................... 8 Unified Process. .......................................................................................................... 9 Strengths and Weaknesses of the 3 SDMs.................................................................... 10 Waterfall.................................................................................................................... 10 Agile Methodology. ...................................................................................................11 RUP. .......................................................................................................................... 12 Features & Benefits of each SDM ................................................................................ 13 Industry Sectors to which each SDM is suited ............................................................. 20 Waterfall Model. ....................................................................................................... 20 Agile Methodologies................................................................................................. 20 Rational Unified Process........................................................................................... 20 Recommendations for Implementation of a new Platform........................................... 22 RUP. .......................................................................................................................... 22 Conclusion ........................................................................................................................ 23
  • 3. Section 2 | CONTENTS HAMBLY 3/35 References / Bibliography................................................................................................. 24 Footnotes/Endnotes........................................................................................................... 29 Appendix A: Leading Software Processes .................................................................... 30 Appendix B: Iterative- Incremental Development....................................................... 31 Appendix C: Basic SDLC Methodologies..................................................................... 32 Appendix D: Trade Study Workflow ............................................................................ 33 Appendix E: Glossary of Terms..................................................................................... 34 ENDNOTES ..................................................................................................................... 35
  • 4. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 4/35 Abstracti This document introduces, compares and discusses three styles of Software Development Methodologies (i.e. Agile, Waterfall and RUP), outlines which types of software projects and industries are suited to each SDM, and recommends (puts forward) the Rational Unified Process as a preferred style for the implementation of a new platform.
  • 5. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 5/35 ASSIGNMENT 1 – Systems/Software Development Methodologies (1) Introduction to Software Development Methodologies Analysis of 3 selected platforms Development techniques have changed over the past few decades, from lengthy 3G/L-based projects based on waterfall styles to object-oriented projects based on iterative approaches, lasting weeks or months. Tried and tested methodologies have gone through a series of metamorphoses to keep pace with these changes, and new ones have appeared to support the changing requirements of the 21st century. (Candice Goodwin, 2001) However, the important issue is not so much which methodology to use, as purely having some kind of a framework for structuring the project. (Candice Goodwin, 2001) Conventional software models such as Waterfall and V-model were predominant since the 60’s and 70’s. These models are mainly focused on a formalised approach, requiring planning, documentation and team expertise for only medium- to large-scale projects. The Rational Unified Process is one of the more widely-used conventional models. (Rasool, Aftab, Hussain, & Streitferdt, 2013) Agile processes got the attention of the software industry because of limitations in conventional models, e.g. slow adaptation to rapidly changing business requirements. (Rasool, Aftab, Hussain, & Streitferdt, 2013)
  • 6. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 6/35 Lifecycle Models There are numerous software development methods today – see Appendix A: Leading Software Processes Firstly, there are distinct approaches to (categories of) software development: 1. The Waterfall approach, and 2. The Agile/Iterative approach. 3. A hybrid development approach is a combination of these, e.g. Unified Process.
  • 7. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 7/35 Waterfall Development. The Waterfall model is a sequential (serial) development approach; one phase of development is completed before moving on to the next. The graphic representation of the model resembles a downward flow of a waterfall, with phases of requirements – analyses, design, implementation, testing (validation), integration, and maintenance. (Introduction to Software Engineering/Process/Methodology, 2015) (Sami, 2012) Waterfall is good when all the requirements can be obtained up-front and if those requirements won’t change (much). The difficulty is getting the requirements correct & complete, on paper, before starting any work. Waterfall retains its place in complex, mission-critical applications when environment is stable, no room for changes, when frequent interaction with end users is not possible (e.g. NASA (USA), military, government).
  • 8. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 8/35 Agile Methodology. These are more lightweight models, an iterative & incremental approach, faster, more reactive – software developers work in small modules, and respond to changing requirements (as opposed to fixed project plans). This “design/code/test” approach delivers RAPID iterations of a product until it is completed, e.g. Crystal Methods, Extreme Programming (XP) and Scrum. There are 2 particular tenets where Agile methods are appropriate – changing requirements and iterative releases. Extreme programming (XP) is a widely-used Agile practice in software development. (Sharma & Wadhwa, 2015) XP provides best engineering practices for a good quality product at small scale. (Rasool, Aftab, Hussain, & Streitferdt, 2013) (Gupta, 2014) See diagram in Appendix B: Iterative- Incremental Development The most recognized Agile approach is the Scrum model, commonly referred to as Agile Scrum. (Robert Half Technology, 2014 )
  • 9. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 9/35 Unified Process. (UP) is an iterative software development model based on the Unified Modelling Language (UML). UP organizes the development process into four phases, each consisting of one (or more) iterations of the development, as follows: a. Inception, b. Elaboration, c. Construction, and d. Transition. One of the more well-known versions of UP is the Rational Unified Process. (Introduction to Software Engineering/Process/Methodology, 2015) The Rational Unified Process (RUP) is an incremental, iterative and architecture-centric framework, based on sound software engineering principles. (Rasool, Shabib, Hussain, & Streitferdt, 2013) RUP is a process that extends UML (Unified Modelling Language), itself a general-purpose modelling language for software that is designed to support object-oriented programming. Originally, tools targeted development for desktop and Web apps, but the interest in mobilizing apps on smartphones and tablets has quickly garnered equal if not greater interest. (Lund, 2016)
  • 10. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 10/35 Strengths and Weaknesses of the 3 SDMs This section lists benefits & drawbacks of each SDM. Waterfall. Advantages Disadvantages  Robust documentation, meticulous record keeping.  Division into tight compartments.  Cost and schedule estimates accurate.  Reduced dependency on individuals.  Inflexibility and rigidity (not possible to alter a completed phase or the project design);  Requirements-gathering is critical – if any deficiency exists in the documentation, it may not be discovered until the product is delivered.  A working product is not available until late in the project.  All risks must be dealt with in a single software development effort.  The plan doesn’t take into account a client’s evolving needs. If the client realizes that they need more than initially thought, and demands change, the project will come in late and impact budget. (Rasool, Aftab, Hussain, & Streitferdt, 2013)
  • 11. 3 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 11/35 Agile Methodology. Advantages Disadvantages  Allows for changes to be made after the initial planning.  Testing & customer feedback occurs regularly & simultaneously with development,  Gives priority to collaboration over design, stakeholders over tools, working software over documenting procedures  Easier to add features that will keep project up to date with the latest developments in industry.  Software bugs are caught and taken care of in the development cycle – not at the end.  The product can be launched at the end of any cycle. As a result, it’s more likely to reach its launch date.  Without proper managerment, the project can become a series of code sprints. If this happens, the project is likely to come in late and over budget.  As the initial project doesn’t have a definitive plan, the final product can be different to what was initially intended.  Tendency for problems to be pushed to the future so that initial promise of the first increment is not met by subsequent products. (Rasool, Aftab, Hussain, & Streitferdt, 2013)
  • 12. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 12/35 RUP. Advantages Disadvantages  The major strength of RUP is its structured and methodical approach which assures process stability and a high quality of developed products.  Works well with large projects due to its complexity and heavy documentation.  As with Agile, reduces risk by testing / integration during project lifecycle  Takes into account changing requirements  Allows tactical changes to the product  Allows strategic release of product (with reduced functionality) to counter a competitor or to adopt another vendor for a given technology  Can correct errors over several iterations, providing a more robust design  RUP is a complex methodology, difficult to learn / apply correctly.  For RUP, an expert is often necessary in the team to get high quality software.  Process-oriented and does not focus on people at all.  Changes in software are time- consuming and difficult as first changes are implemented in use cases then in remaining diagrams and then in code.  RUP is weighted & not as quick and adaptable as other Agile methods  RUP doesn't work well when • fast time-to-market is crucial, • e.g. Web 2.0 and Software-as-a- Service (SaaS) environments, where frequent updates and feature additions are expected. (Kharytonov, 2009) (Rasool, Aftab, Hussain, & Streitferdt, 2013)
  • 13. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 13/35 Features & Benefits of each SDM ( Bollapragada, 2013)
  • 14. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 14/35 ( Bollapragada, 2013)
  • 15. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 15/35 ( Bollapragada, 2013)
  • 16. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 16/35 ( Bollapragada, 2013)
  • 17. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 17/35 ( Bollapragada, 2013)
  • 18. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 18/35 ( Bollapragada, 2013)
  • 19. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 19/35 ( Bollapragada, 2013)
  • 20. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 20/35 Industry Sectors to which each SDM is suited Waterfall Model. Applies to industries like automobile, healthcare, aerospace, etc. where it's possible to clarify requirements up-front; database development; data warehouses; CRUD (Create/Read/Update/Delete) business applications; teams of people with narrow skillsets for organisations that don’t need to be competitive; in building accounting systems, I/O controllers, or compilers where the requirements are very well understood. (Scott Ambler + Associates, 2013) Agile Methodologies. Rapid Application Development systems (e.g. user interface intensive systems); small project teams (4-10 people); British Telecom is frequently cited as a large company that has used Agile programming very successfully, with 30 to 90-day development cycles that have yielded dramatic productivity and business benefits. (Kharytonov, 2009) Rational Unified Process. Managing a portfolio of projects, including teams following the DAD; medium to large project teams (20+ people); rigorous CMMI (Capability Maturity Model Integration) Level-5 process (when instantiated) with systems using OO and component- based technologies; critical systems that affect the health or livelihood of people (are traffic control systems, medical research data analyses reports, heart monitoring systems). (Scott Ambler + Associates, 2013) Industry Examples. (Kruchten, What Is the Rational Unified Process?, 2001)  Telecommunications: Eriksson, Alcatel  Transportation, Aerospace: Lockheed-Martin, British Aerospace  Manufacturing: Xerox, Volvo, Intel  Finances: Visa, Merrell Lynch, Schwab  System integrators: CAP Gemini, Ernst & Young, Oracle, Deloitte & Touché (Kruchten, The Rational Unified Process, 2003, p. 17)
  • 21. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 21/35
  • 22. 4 | ICT50715 ASSIGNMENT – RESEARCH REPORT HAMBLY 22/35 Recommendations for Implementation of a new Platform RUP. The benefits of adoption & development software products using Rational software are as follows: Findings. It is clear that software technology has advanced beyond traditional Waterfall approaches, into modern Agile technologies, and that we need to adopt & focus on one or more of these new models. RUP follows six major development best practices. Visual modelling; develop iteratively; manage requirements; component based architecture; continuously verify quality; and control changes. Adopt RUP. Recommend we adopt the Rational Unified Process as it will benefit the company in the medium-to-long term, in terms of profits & increased morale. Rational Unified Process has progressed into powerful, comprehensive tools providing UML support on all modern platforms, including UML modelling for database designs, ERD, and modern languages & forward / reverse engineering procedures. (IBM Rational Rose (Enterprise Edition, Review), 2015) RUP allows systems engineering trade testing. Trade studies allow us to perform “trade analysis” to fully explore the design space, defining candidate solutions to ensure the proposed solution more exactly matches performance & cost requirements, before engineering starts. This saves time & costs in the development process. (Bleakley (PhD), 2009) See Appendix D: Trade Study Workflow Procurement Policy. See the report proposing procurement of a RUP software design tool & adoption procedures: TASK 2 – Process for Procurement
  • 23. 5 | CONCLUSION HAMBLY 23/35 Conclusion Although there is obviously no “single best solution” for any development strategy, it seems clears that a modern approach, using models established in today’s software development market, will be essential to the businesses. Software technology has advanced greatly in the last 30 years and, to thrive in today’s business world, our company needs to embrace a modern tool/platform to build software products. For this reason, it is important to break away from our currently embedded Waterfall mind-set. This paper recommends that we adopt RUP as a new platform that is most appropriate to place us into a powerful market position. See document TASK 2 – Process for Procurement for more details.
  • 24. 6 | REFERENCES | BEBLEOGRAPHY HAMBLY 24/35 References / Bibliography Bollapragada, M. V. (2013, 5 31). Agile vs Iterative vs Waterfall models. Retrieved from SlideShare.net: http://www.slideshare.net/MarrajuBollapRagada/agile-vs- iterativevswaterfall Ambler, S., & Lines, M. (n.d.). Disciplined Agile 2.0. Retrieved from Community for the Disciplined Agile Delivery: http://www.disciplinedagiledelivery.com/introduction-to-dad/ Association of Modern Technologies Professionals. (2015). Software Development Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software- development-methodologies/ Association of Modern Technologies Professionals. (2015). Software Development Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software- development-methodologies/ Association of Modern Technologies Professionals. (2015). Software Development Methodologies. Retrieved from IT Knowledge Portal: http://www.itinfo.am/eng/software- development-methodologies Beck, K. (October 1, 1999). Extreme Programming Explained: Embrace Change. Addison- Wesley Pub Co; ISBN 0201616416. Beck, K., & Andres, C. (2004). Extreme Programming Explained: Embrace Change, ISBN 0321278658. Addison-Wesley Professional. Bleakley (PhD), G. J. (2009, June). Smarter system development: a systems engineering trade study. Retrieved from Rational Software: ftp://ftp.software.ibm.com/software/emea/de/rational/neu/Smarter_system_development_ EN_2009.pdf
  • 25. 6 | REFERENCES | BEBLEOGRAPHY HAMBLY 25/35 Candice Goodwin. (2001, October 1). Development methodology in under 10 minutes. Retrieved from ComputerWeekly.com: http://www.computerweekly.com/feature/Development- methodology-in-under-10-minutes Fowler, M. (2005). The New Methodology. Retrieved from MartinFowler.com (ThoughtWorks, Inc.): http://www.martinfowler.com/articles/newMethodology.html Glaiel, F. S., Moulton, A., & Madnick, S. (2013). A System Dynamics Investigation of Agile Software Development Methods. Massachusetts Institute of Technology, 5. Gupta, S. (2014, 9 4). Comparison of Key Methodologies in AGILE. Retrieved from Quotium: http://www.quotium.com/performance/comparison-of-key-methodologies-in-agile/ IBM Rational Rose (Enterprise Edition, Review). (2015, July). Retrieved from Informer Technologies, Inc.: http://rational-rose-2000-enterprise-edition.software.informer.com/ Introduction to Software Engineering/Process/Methodology. (2015, July 27). Retrieved from wikiBooks.org: https://en.wikibooks.org/wiki/Introduction_to_Software_Engineering/Process/Methodolo gy IT Knowledge Portal. (2015). IT Standards and Methodologies. Retrieved from Association of Modern Technologies Professionals: <http://www.itinfo.am/eng/it-standards-and- methodologies> Janalta Interactive Inc. (2015). Agile Software Development. Retrieved from Techopedia: https://www.techopedia.com/definition/13564/agile-software-development Kharytonov, S. (2009, 10 22). Waterfall, RUP and Agile: Which is Right for You? Retrieved from EVP Consulting Services, SoftServe: http://www.ebizq.net/topics/dev_tools/features/11821.html?page=3
  • 26. 6 | REFERENCES | BEBLEOGRAPHY HAMBLY 26/35 Kruchten, P. (2001). What Is the Rational Unified Process? Retrieved from Rational Software: http://www.ibm.com/developerworks/rational/library/content/RationalEdge/jan01/WhatIs theRationalUnifiedProcessJan01.pdf Kruchten, P. (2003, Nov). The Rational Unified Process. Retrieved from kruchten_ch02.fm: http://catalogue.pearsoned.co.uk/samplechapter/0321197704.pdf Last Name, F. M. (Year). Article Title. Journal Title, Pages From - To. Last Name, F. M. (Year). Book Title. City Name: Publisher Name. Lund, D. (2016, March). Two Sides to the Coin: Enterprise Rapid App Development. Retrieved from IDC: http://docs.media.bitpipe.com/io_13x/io_130051/item_1317724/KOny%20pricing%20ID C%20on%20RAD%20tools.pdf Margaret Rouse; Julia Anderson;. (2013, August). virtual file system (VFS) definition. Retrieved from TechTarget.com 2006 - 2015: http://searchservervirtualization.techtarget.com/definition/virtual-file-system-VFS Nazoa, J. L. (2015, Dec 31 ). Agile & Waterfall Methodologies – A Side-By-Side Comparison. Retrieved from Base 36 Smart Solutions: http://www.base36.com/2012/12/agile- waterfall-methodologies-a-side-by-side-comparison/ Ogden Air Logistics Center (OO-ALC), Hill Air Force Base, Utah. (2003, February). U.S. Air Force's Software Technology Support Center. Retrieved from Guidelines for Successful Acquisition and Management of Software-Intensive Systems: Weapon Systems, Command and Control Systems, Management Information Systems: http://www.stsc.hill.af.mil/resources/tech_docs/gsam4/chap2.pdf
  • 27. 6 | REFERENCES | BEBLEOGRAPHY HAMBLY 27/35 Rasool, G., Aftab, S., Hussain, S., & Streitferdt, D. (2013, July 23). eXRUP: A Hybrid Software Development Model for Small to Medium Scale Projects. Retrieved from Open Access Library (OALIB) Journal: http://www.oalib.com/paper/2990599#.VmcXPjCEauY Rasool, G., Shabib, A., Hussain, S., & Streitferdt, D. (2013). eXRUP: A Hybrid Software Development Model for Small to Medium Scale Projects. Journal of Software Engineering and Applications, Vol.6, No.9, 446-457. Robert Half Technology. (2014 , February 18). How to Compare Software Development Methodologies. Retrieved from Robert Half Technology: https://www.roberthalf.com/technology/blog/how-to-compare-software-development- methodologies Robert Half Technology. (2014, February 25). 6 Basic SDLC Methodologies: Which One is Best? Retrieved from Robert Half Technology: https://www.roberthalf.com/technology/blog/6- basic-sdlc-methodologies-the-pros-and-cons Robert Half Technology. (2014, March 25). How to Optimize the Agile Testing Processes. Retrieved from Robert Half Technology: https://www.roberthalf.com/technology/blog/how-to-optimize-the-agile-testing-processes Rouse, M. (2015, August). Prototyping Model definition. Retrieved from TechTarget: <http://searchcio.techtarget.com/definition/Prototyping-Model> Rouse, Margaret (2003 - 2015, TechTarget). (2008, December). LAMP (Linux, Apache, MySQL, PHP) definition. Retrieved from WhatIs.com: http://searchenterpriselinux.techtarget.com/definition/LAMP Sami, M. (2012, March 15). Software Development Life Cycle Models and Methodologies. Retrieved from The Twenty Eleven Theme:
  • 28. 6 | REFERENCES | BEBLEOGRAPHY HAMBLY 28/35 https://melsatar.wordpress.com/2012/03/15/software-development-life-cycle-models-and- methodologies/ SAS Inc. (2015). Hadoop. Retrieved from SAS Institute Inc.: http://www.sas.com/en_us/insights/big-data/hadoop.html Scheid, J., & McDonough, M. (2015, 7 22). Project Management Methodologies: How Do They Compare. Retrieved from Bright Hub Project Management: http://www.brighthubpm.com/methods-strategies/67087-project-management- methodologies-how-do-they-compare/#imgn_2 Scott Ambler + Associates. (2013). Choose the Right Software Method for the Job. Retrieved from Ambysoft Inc.: http://www.agiledata.org/essays/differentStrategies.html Sharma, N., & Wadhwa, M. (2015, Nov). eXSRUP, Hybrid Software Development Model. Retrieved from TELKOMNIKA Indonesian Journal of Electrical Engineering: http://iaesjournal.com/online//index.php/TELKOMNIKA/article/viewFile/8436/4325 wikiHow. (2014). How to Write an Abstract in APA. Retrieved from wikiHow.com: http://www.wikihow.com/Write-an-Abstract-in-APA Wikipedia. (2015). Cleanroom software engineering. Retrieved from Wikimedia Foundation, Inc.: https://en.wikipedia.org/wiki/Cleanroom_software_engineering
  • 29. 7 | FOOTNOTES HAMBLY 29/35 Footnotes/Endnotesii Footnote1 1 Disciplined Agile Delivery (DAD)
  • 30. 8 | APPENDIX HAMBLY 30/35 Appendix A: Leading Software Processes (Scott Ambler + Associates, 2013)
  • 31. 8 | APPENDIX HAMBLY 31/35 Appendix B: Iterative- Incremental Development (Glaiel, Moulton, & Madnick, 2013)
  • 32. 8 | APPENDIX HAMBLY 32/35 Appendix C: Basic SDLC Methodologies (Robert Half Technology, 2014)
  • 33. 8 | APPENDIX HAMBLY 33/35 Appendix D: Trade Study Workflow (Bleakley (PhD), 2009)
  • 34. 8 | APPENDIX HAMBLY 34/35 Appendix E: Glossary of Terms     DAD  Disciplined Agile Delivery – is a hybrid approach which extends Scrum with proven strategies from Agile Modelling (AM), Extreme Programming (XP), Unified Process (UP), Kanban, Lean Software Development, Outside in Development (OED) and several other methods. (Ambler & Lines, n.d.)
  • 35. 10 | ENDNOTES HAMBLY 35/35 ENDNOTES