Skip to main content
Assessment Master's 2,947 words

Evaluating RUP and ETHICS using the NIMSAD framework

~15 min read 13 sections Technology
✍️ How to write this paper — tools & examples ▾
Essay 2,947 words

NIMSAD

RUP

ETHICS

the History Timeline of the RUP development

RUP Iterative development

One of the most significant current discussions in the human and commercial philosophy is how to develop information systems in the most efficient and effective way. The mechanism by which the information system is structured, organized and developed is known as methodology. According to Britain computer society (BCS, 2006), methodology is "a set of recommended means for information systems development or part of it which is based on logic and specific philosophy." A closer look at the great improvements in the field of methodology development can observe that there are many methodologies have been developed to meet various requirements for the different information systems. In order to be able to identify, evaluate, and select the appropriate methodology for a particular information system, a set of pre-defined criteria has to be used in order to give formal and authorized pattern for the results (Yaghini, 2009). It might be obvious that a particular methodology that is able to achieve goals set by an organization, will not be able perform simultaneously on another organization with different structure, concepts, and goals. As a result, the organizations need to have its evaluation framework to select the most appropriate methodology that fits their plans. In this regard, many frameworks have been developed to act as an evaluation tool to select a particular methodology. One of the most common frameworks in this field is NIMSAD. This paper will focus on an account of using NIMSAD frame work for the purpose of comparing and evaluating two selected methods which are: Rational Unified Process (RUP) and Effective Technical and Human Implementation of Computer -- based Work Systems (ETHICS). The main issues addressed on this paper are: firstly, outline of RUP and ETHICS main features and characteristics; Secondly, use NIMSAD's steps to evaluate each method on a comparison basis; Lastly, review and discuss the findings of the mentioned comparison.

NIMSAD

NIMSAD stands for Normative Information Model -based Systems Analysis and Design and it has three basic elements: the problem situation which is the methodology context, the intended problem solver (the methodology user), and the problem solving process (the methodology). It is a meta framework that includes in the problem solving process three essential phases which are broken down into eight stages that can be used to solve any intended problem. NISAD is used as an evaluation tool to help comparing two or more methods, which is performed for multiple purposes. One could be an academic purpose that can help learners to get deeper understanding of the compared methodologies' main goals, structures, and features. Another key purpose for methodologies comparisons is to help identifying the pros and cons for each methodology so that specialists can combine the best available features from multiple methodologies to develop a new methodology (Yaghini, 2009).

Rational Unified Process (RUP)

RUP has been developed in the period between 1980s and 1990s by Dr. Jacobson who has been considered as a father of RUP. His company 'Objectory' was acquired by Rational® Software which was also concerned about developing software systems with regards to iterative approach. Later in 2002, Rational® Software was acquired by IBM to be one of its main divisions and RUP has become IBM RUP (figure 1). As a result, RUP gained the current formulation of iterative development and architecture from its background history of development to be defined as a well defined software engineering process used to develop software systems based on "case-driven iterative" approach (Rational® Software, 1998). It has some distinguishing characteristics:

1. It is a process product in which specialists are working closely with customers, partners, and organizations

2. It supports team productivity by allowing each member to access the entire knowledge base, so they share a common language, process, and view of software system under development.

3. . It establishes and maintains models rather that growing body of papers and documents.

4. It is a guidance for how to use Unified Modeling Language in effective way.

5. It is enhanced with tools to automate a large part of the process which can increase the level of reliability and accuracy.

6. RUP is a configurable process. Yet, it can be varied to accommodate different situations because there is no single process is suitable for all software development.

Figure 1: the History Timeline of the RUP development (Rational ® Software, 1998)

RUP Phases and Iterations:

The software life cycle is broken into cycles, each cycle working on a new generation of the product. The Rational Unified Process divides one development cycle into four consecutive phases

1. Inception Phase:

Objectives: establish the work case for the system and delimit the project scope by identifying who and how system will interact with identified external actors.

Outcomes: vision document, risk assessment, project plane (initial), and prototype.

2. Elaboration phase (the most critical phase):

Objectives: analyze the problem field, develop the project plan, and eliminate the highest risk factors by having a comprehensive understanding of the system requirements.

Outcomes: a use-case model in which includes all use cases and actors have been identified, Software Architecture Description, an executable architectural prototype, a revised risk list, and a development plan for the overall project, showing iterations.(IBM, 2003)

3. Construction phase (a manufacturing process):

Objectives: efficient resources management and operations control to optimize costs, schedules, and quality.

Outcomes: The software product, and the user manuals.

4. Transition phase:

Objective: to deploy the software product to end-user when ensuring that sufficient product features testing and user training were provided to achieve user satisfaction.

Outcome: final software product.

Each phase is concluded with a well-defined milestone which is a point in time at which certain critical decisions must be made, and therefore key goals must have been achieved (Boehm, 1996).

Stage 1 or Understanding the Problem

The RUP recommends using business use cases for locating purposes which have two qualities:(1) easy to understand and (2) easy for the client to use. The RUP does not clarify how these "use cases" should be analyzed to determine what is in the NIMSAD purview. To identify sections of the business that need to be examined, ETHICS uses a stakeholder method that demonstrates all parties interacting with the system. ETHICS harbors a more "macro-view" in comprehending project priorities.

Step 2: Diagnostic Evaluations

The RUP does not attempt to challenge any requirements which devolve from the client. There is no way to accurately analyze whether total autonomy of the system would provide any productive cost-benefit analysis for the overall organization. ETHICS advises that analysis should be conducted on the current situation to prevent the analyst from developing "tunnel vision" and focusing on the first solution that is presented to them and ignoring others, even if the others are more plausible than the original solution first posited.

Step 3: Outlining the Solution

Once the problem has been identified the appropriate decision makers must determine what the correct process should be and when it should be carried out. In the RUP paradigm the client's expectations are gathered in the requirements stage during the Inception Stage. The basic assumption in RUP is that an information system is the appropriate type of solution and the RUP does not explore alternative approaches. The ETHIC model encourages users to identify implausible expectations and to find simple, more cost effective ways to solve business problems.

Unlock this full paper and 135,000+ more
View Full Document

Step 4: Defining the Problem

The RUP discusses what specific problems are holding the company back from achieving its goal; this discussion is an imperative step in ascertaining the very nature of the problem. The most common form of this level of analysis is a "Gap" analysis. However, RUP is largely ill-equipped to conduct a GAP analysis because it does not collect any information on process efficiency. ETHICS stresses having information available making problem areas, such a bottlenecks and other log jams, easier to detect, diagnose and treat. Once the organization has identified all the relevant goals, ETHICS recommends including performance measures into the comprehensive system.

Step 5: Creating Hypothetical Situations

This process of constructing hypothetical constructs is commonly referred to within the Elaboration Phase. The RUP emphasizes a robust design which is easily configurable should the client requirements or expectations change. In order to bring clients into the fold ETHICS users would use prototypes to illustrate screens, reports and overall program flow. Prototypes are beneficial for the client given they allow the client the access they need to be at ease with the new configurations while avoiding the full investment typical of newly created software.

Step 6: Conceptual and Logical Design

This stage demonstrates the roles of system users. The RUP recommends splitting the software system into subsets and grouping classes into packages. Segregating these packages is an effective practice because it increases system maintenance and creates component integration. ETHICS stresses and focuses on mapping of behavior to "classes," which occurs in the system design phase. The system is partitioned into these "classes" which usually represent business entities, those responsible for carrying out system activities.

Stage 7: Performing Physical Design

The RUP model employs component and deployment diagrams for the purpose of creating a physical design for the client. The RIP also encourages linking components to development teams to improve development productivity. ETHICS advises that required functions are mapped directly to business entities. Domain objects, under ETHICS, are implemented as persistent objects either in a direct-object orientated database or by making use of a relative wrapper.

Stage 8: Implementing Design

The process of creating a workable, effective and efficient implementation strategy is simplified by RUP. RUP then links the business entities to the implementation systems. It is a vital step that the RUP ensure that all of the client's requirements have been fulfilled. All the RUP components must be tested and de-bugged before the RUP can be unveiled to the client.

ETHICS advises to test for functionality and aims to improve quality control and ensure proper project efficacy. ETHICS is not concerned with specific step-by-step implementation of the software architecture by is more focused on business analysis and architectural design. This adheres to ETHICS more "macro-view" in terms of process development. Additionally, ETHICS is a much broader quality control mechanism when it comes to implementing the software. While RUP takes a more hands on approach to client quality control, ETHICS is more focused on the higher level, thirty thousand foot view regarding the software's implementation and the impact this implementation will have on cost-benefit analysis for the organization. Furthermore, ETHICS concerns itself only with the proper construction of the architecture of the software as opposed to RUP that focuses on linking the appropriate systems with the specific business entities to ensure performance.

Conclusion

Through the analysis of the various components along with similarities and differences between these two software design methodologies. The overarching construct used to discern the differences between these two constructs was the NIMSAD normative analytical framework. Although NIMSAD is a well designed qualitative framework it does not represent the only framework and is not absolute in its truths regarding both RUP and ETHICS. Therefore, there should be further analysis, using different frameworks aside from NIMSAD. However, despite all of its flaws, utilizing NIMSAD will allow any individual or organization to effectively determine if either process is more effective than the other in terms of developing and integrating business software.

Additionally, this analysis broke down the essential components of both RUP and ETHICS in an attempt to ascertain the very core of each of these methodologies. This analysis compared and contrasted the various elements of each methodology in order to set up the logical framework and overall construct that was necessary to effectively contrast both methods. Without this inherent and initial foray into the inner most workings of both RUP and ETHICS the preceding analysis would have been rendered very difficult if not total and complete guess work. Once the prima facie examination of the fundamental principles of each method were laid bare the final comparison could commence.

Through an examination of the 8 steps utilized within the NIMSAD methodological review process, the contrasting features of both RUP and ETHICS could be ascertained. Each of these processes had similarities on the surface; however as the analysis went deeper into the NIMSAD framework it became quite clear that both RUP and ETHICS had become quite divergent in their philosophical approaches and their practical implications. Both methods stressed quality control as their logical conclusion, however they had vast differences in terms of arriving at this logical conclusion. The main theme from this analysis within NIMSAD was that ETHICS and RUP have different operating styles, where RUP is a more hands-on and detailed orientated approach, ETHICS is far more broad and generalized.

References:

Avison, D. & Fitzgerald, G. (2006). Information Systems Development Methodologies, Techniques & Tools, 4th Edition,

McGraw Hill.

Ahamd, SandJochen, K (2008). Welcome to the IBM Rational Unified Process and Certification.Available at http://www.ibmpressbooks.com/articles/article.asp?p=1155863&seqNum=2 [Accessed on 24/10/2010]

Boehm B, (1996). Anchoring the Software Process. IEEE Computer Society Press: USA. Vol 13 (4).

Bob H, Mike C, ( 2006 ). Software Project Management, McGraw-Hill Education, Third Edition .

Formal RUP, (2010). available: http://www.rational.com. Accessed on 20/10/2010.

IBM, (2003). IBM Rational Unified Process (RUP). Available at: http://www-01.ibm.com/software/awdtools/rup/?S_TACT=105AGY59&S_CMP=WIKI&ca=dtl-08rupsite. Accessed on 19/10/2010.

IBM Software Group, (2003). Rational Unified Process: A Best Practices Approach. IBM Corporation. Available at: http://www.eecg.toronto.edu/~jacobsen/courses/ece1770/slides/rup.pdf. Accessed on: 8/11/2010.

Kruchten, P. (2003). The Rational Unified Process: An Introduction, 3rd Edition, Dec 10, Addison Wesley Professional.

Peraire C, Edwards M, Fernandes, a, Mancin, E, Carroll K, (2007). The IBM Rational Unified Process for System z: Making Development on System z More Agile. Available at: http://www.ibm.com/developerworks/rational/library/jun07/peraire/index.html#N105C8> Accessed on 27/10/2010

Per Kroll, Kruchten P. (2003). Rational Unified Process Made Easy, the: A Practitioner's Guide to the RUP. Addison-Wesley Professional. 1st edition.

Rational Software (1998). Rational Unified Process: Best Practices for Software Development Teams. Available at: http://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf. Accessed on 21/10/2010.

Robert F, Donald S, Linda S, (2001), Quality Software Project Management .Prentice Hall PTR Upper Saddle River: USA.

Scott, a (2005). A Manager's Introduction to the Rational Unified Process (RUP).Available at http://www.ambysoft.com/downloads/managersIntroToRUP.pdf [Accessed on 20/10/2010]

Scott JE, Vessey I, (2002). Managing Risks, Communications of the ACM: USA.

Yaghini M, (2009). A Framework for Selection of Information Systems Development Methodologies. CCSE Journal. Vol 2 (1).

WittmannClan, (2005). Software Life-cycles Available at: http://www.wittmannclan.de/ptr/cs/slcycles.html. Accessed on: 21/10/2010.

540 Words Hidden
Figure2: RUP Iterative development (© WittmannClan, 2005)540 words
In this paper, we propose an evaluation framework for selecting information systems development methodology in order to facilitate the development process of information systems in…
Key Concepts in This Paper
NIMSAD framework Rational Unified Process ETHICS methodology software development methodologies iterative development systems analysis and design
Cite This Paper
PaperDue. (2010). Evaluating RUP and ETHICS using the NIMSAD framework. PaperDue. https://www.paperdue.com/essay/nimsad-rup-ethics-the-history-11817

Always verify citation format against your institution’s current style guide requirements.