Scrum
Scrum is an adaptive methodology in agile that can be used in common projects and software engineering. Just like in other agile methodologies, the scrum methodology makes use of small iterations coupled with regular reviews. However, Philippe, (2000) argues that the scrum methodology focuses primarily on the getting the highest feature set out of the readily available resources in addition to the general characteristics of the agile development. On the other hand, a feature in agile methodology is a part of functionality that delivers values. They involve changes or addition to the existing features (Grady, 2000).
It is important to note that the key defining features of scrum methodology include
1. Highly formalised daily scrums
2. Focus on prioritising the features
On the other hand Ivar & James , (2001)argues that the main cause of failure of various projects is critical late features, this is because most projects spend resources on very minor features at the expense of the key features, this is never spotted ion other methodologies because the subject of such methodologies is in delivering according to the plan. The scrum method ensures that features dripped into each iteration sprint. The daily scrums are geared at taking the Agile paradigm of regular review and little documentation to the logical conclusion (Alan, 2001).
The daily scrums are mainly composed of some formalities which include contribution from the key people “pigs”, the key people in this case includes the “scrum master” and the stakeholders represented by the “product owner”
The regular consultations are held at a preselected venue and are held to deliberate on the project milestone, the plans, problems prevention strategy. It is important to note that the scrum master is the only one who remembers the impediments, while other forum are held to between “sprints”(Philippe, 2000)
Rational Unified Process (RUP)
RUP is a unified software development process, it is an incremental or iterative software development process framework( Ivar & James , 2001).
A
Benefits of SCRUM
The main befits of the scrum methodology are subjective as it motivates the developer if he manages to complete the work in an efficient fashion (Alan, 2001).
The Rational Unified Process is another software development process that is delivered through a web-enabled knowledge base; the system promotes team productivity and delivers software best practices in software development via templates, guidelines and tool mentors. During the key software lifecycle process, the knowledge base provides the team members with the industry based unified modeling language. However, it is imperative to note down that the method is an iterative process while the essence of iteration is the development of highly executable deliverables. It also involves the development of UML diagrams (Grady, 2000).
Advantages of Using RUP.
1. Completed methodology with appropriate documentation.
2. The documentation of the RUP is publicly published and available to anybody, the published work is distributed to the public for viewing.
3. The RUP version available online takes people through the systematic manner, there are also available and charged training courses for the RUP model.
4. The RUP provides for the proactive resolution if the changing customer requirements and other risked related to the changes in the clients specification.
5. High reuse level: The RUP codes are easy to reuse.
6. The development, model followed in the RUP methodology is easy to integrate as the process is iterative.
Disadvantages of Using RUP.
1. Complexity: The RUP methodology system is very complex. Grady , (2000) reports that only experts in the methodology succeeds The system is too complex
2. Sociological Aspects – the RUP system fails to capture some specifications of the software development it also fails to disclose the details of developing the business incremental
3. Disorganized Development – this aspect of the methodology makes it difficult for the software development process
The difference between RUP and SCRUM methodologies
Both RUP and SCRUM are both agile and approach projects management activities appropriate to their iterative ways. Howe ever, while RUP call for a formula definition of a field and key projects milestones, scrum uses project log jam instead of capacity while allowing for the log jam to be redefined at the conclusion of each iteration. RUP subdivides the each project lifecycle into 4 main phases: Inception, Transition Elaboration, and Construction. It should be understood that even though the methodology allows for the concurrent operation of the workflows across the whole cycle, the main activity peaks during specific phases. Conversely, scrum requires the full lifecycle to fit into a single iteration(Ivan & James, 2001)
RUP
SCRUM
Approach
Iterative
iterative
Cycle
Formal lifecycle is defined across 4 phases, but some workflows can be concurrent.
Each sprint (iteration) is a complete cycle.
Planning
Formal project proposal, associated with different iterations, is used. The project is end-date driven and has intermediate milestones. (Michael & Walker , 2001)
The methodology has no plan that runs throughout the project rather it relies on the incremental at the end of each stage. the project does not rely on the time and milestone as this is determined at the end of each sprint (Michael & Walker , 2001)
Scope
The scope is designed before the project is initiated and documented. It is important to note that the scope must be revised at a later stage to suit the changes in the work plan.
The requirements must be clarified whereas the revision are subjected to strict procedures and control
The scrum relies on the project backlog evaluation at the end of every sprint(iteration)
Artifacts
Scope/ Vision/ Document, the formal requirements of the system architecture, the development plan and the test transcripts (Philippe , 2000)
The key artifact is the only the operational artifact
Type of Project/Product
This is suitable for long-term project that are at the enterprise level. It may also be suitable for more complex projects that may not be easy to understand in mass (Michael & Walker , 2001)
Suitable for fast enhancement that are not very dependent on deadlines
Primary
Activities
Description of each of the activities
Secondary
Control
Precondition necessary for the activities
Tertiary
Products and artifacts
Resources and tools
Tool are the techniques used to aid in the performance of activities
The effect on the quality of systems developed using these methodologies (website case study)
Site profile
Availability(IBM Hosting)
100%
Java server pages
5800
Static content pages
7600
Enterprise java beans
16
Application Subsystem
15
Reusable design patterns
98
Monthly page view
4,708500
Discussion of the effect on the quality of systems developed using these methodologies (website case study)
The website offers all the RUP customers a better user experience (UX) than other methods. There is greater ease of use: the website has a faster response time coupled high personalization level, most of the site users can obtain customized and individualized contents on support problems, courses and schedules(Grady, 2000).The site is very stable as shown in the statistics above, this means that the site was a huge success. The rational tools make it easy to complete a method faster without compromising quality
The suitability or not of the RUP and SCRUM methodology
SCRUM Methodology
RUP Methodology
Small or Large systems
and
The scrum methodology is most suitable for large projects
This just like the waterfall model is suitable for small projects
Safety critical systems
The scrum model may not be suitable for safety critical systems as it depends on the correction of backlogs
The RUP methodology is suitable for safety critical systems
Conclusion
The RUP emphasizes that high risky area should be addressed urgently in the initial stages of the process; this is done by developing the first version of a system that defines the general architecture. The methodology does not assume a predetermined set of requirements at the inception stage of the projects making it flexible. The process allows for changes geared at refining the requirements along the evolution of the projects. The process also accommodates and expects changes in the whole process making it suitable for safety critical systems.(Howard, 2006)
Though the model was designed for use in the software engineering industry, it is very useful in the other industry. It is widely used in the software engineering because of its focus on the sequential approach to software engineering companies. The methodology is very effective in the software project management because it is relatively easy to understand and apply. The phases that are broken down into small iterative processes make the methodology a seamless process. The feature makes it effective for the completion of all parts of a design process (Howard, 2006)
The beauty of the methodology is that it does not put a lot of emphasis on the documentation as it allows for automation of various tasks that are associated with software development. The methodology focuses on the software products and not on the documentation. The other strength of this methodology is in the quality of the product as is measured by the value it gives to the end users; however, another measure for this is the return on investments that the client derives from the product developed (Michael & Walker, 2001)
Though the rational unified process is well documented and complete, it is complex and difficult to adapt. Howard, (2006) arguesthat it is too difficult to learn and apply that is why (Grady, 2000) recommends that clients should buy or rent encase they need one if they do not want to go into the core of extreme programming. (Alan, 2001)
References
Alan, W. Brown. (2001, May 12). Component-Based Software Engineering. IEEE Computer Society, Los Alamitos, CA, 21(2), 140.
Barry, Boehm, W. (2002, May 12). A Spiral Model of Software Development and Enhancement, Computer, IEEE, 23(14), pp.61-72.
Grady , Booch, . (2000). Object Solutions,. : Addison-Wesley,.
Howard, H. G. (2006, Tuly). Anchoring the Software Process,. IEEE Software, 13(4), pp. 73-82..
Ivar , Jacobson, ., & James , Rumbaugh, . (2001, 12 1). Unified Modeling Language 1.3,. White paper,Rational Software Corp, 34(123), 124-26.
Michael , T. Devlin ., & Walker , E. Royce. (2001, Jan 21). Improving Software Economics in the Aerospace and Defense Industry, Technical paper TP-46,. Santa Clara, CA, Rational Software Corp.,
Philippe , Kruchten. (2000, Feb 11). A Rational Development Process,. CrossTalkSTSC, Hill AFB, UT,, 9(11), pp.11-16..



