StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Unified Software Development Process and Object-Oriented Analysis and Design - Literature review Example

Cite this document
Summary
The paper "Unified Software Development Process and Object-Oriented Analysis and Design" outlines that the amalgamation of OOAD, with the development of Object-Oriented software, which results in a consistent process that produces excellent software in a predictable and fast manner…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER94.3% of users find it useful

Extract of sample "Unified Software Development Process and Object-Oriented Analysis and Design"

Unified Software Development Process and OOAD Name Institution Course Instructor Date Introduction According to Booch et al. (2007), Object Oriented refers to a way of developing a robust and flexible software program, and also a means of evaluating problems and developing solutions to the problems. In Booch et al. view, the two concepts are associated in that problem analysis and design of solutions are important prerequisites to the development of a triumphant software program. The amalgamation of Object Oriented design and analysis, with the development of Object Oriented software, results in a consistent process which produces excellent software in a predictable and fast manner. Therefore, OOAD is extensively regarded as an excellent modern software development practice. Motivation The chief motivation for this venture is to establish opportunities, as well as challenges associated with applying the process of unified software development, with the technology of Object Oriented. The report provides lessons on the unified software development issue to OOAD learners. It also gives an overview of unified software development, discusses the challenges and opportunities associated with this development, gives general guidelines on ways of applying unified software development process to OOAD and supports the argument with a case study. Lastly, it discusses strategies and future software engineering development in association to software development process. History and Current Situation of OOAD Methods of Object Oriented have been exercised since the mid 1970s, though they did not gain majority acceptance until late 1980s. According to Norman (1999), this was partly due to the introduction of a few very popular and powerful programming languages such as Java, C++ and Smalltalk that permitted developers to learn how to write more capable and better codes than were normally probable with technical languages. In 1992, Booch developed novel iterations of techniques and later in 1995, he introduced version 0.9 of unification modelling language (UML). In 1997, UML was standardized and a new standard version 1.1 was adapted as the standard OOAD modelling language. Since then, UML has been applied in various object oriented development languages. Today, it is usually accepted that object oriented introduction was an essential step toward the software development process and techniques’ notable improvement. According to Norman (1999), a more essential reason for the change to Object Oriented expertise was the tendency towards extra sophisticated programs of computer. The demand for distributed iterative complex computer systems, which cannot be reliably or realistically, be created using the procedural languages and structured methodology, established OOAD as the ideal technique in the community of developers. Currently, Object Oriented technologies deployment has turned out to be a dominating aspect in software engineering. Object Oriented is today, a recognized standard for application software development which incorporates usual Object Oriented programming languages for instance, Smalltalk, Java and C++, as well as modelling languages for instance, OML and UML and those applied in Booch technique. It further incorporates development processes and methods for instance, OPEN and Unified Software Development Process, Object Oriented Design Methods for instance, Patterns and Frameworks as well as Object Oriented Testing. Although a few open problems and critiques remain, its extensive-spread application is the future development prerequisite (Prasse and Rittgen, 1999). Characteristic of Unified Process Unified process is a common incremental and iterative process of the software development framework. The most preferred and widely used unified process is the Rational Unified Process (RUP). This process contains several characteristics in that it is Use-Case driven, architecture centric, incremental and iterative. Unified process drives the process of development by use of Use Cases from beginning to the end. Use Cases are particularly employed in capturing functional requirements as well as, in defining the process of iteration. It also applies architecture-centric characteristics with an aim of seeking to comprehend the most important dynamic and static aspects in software architecture terms. This architecture is the users’ needs function and is captured in the interior Use Cases. Lastly, by use of incremental and iterative characteristic, it distinguishes that it is suitable to divide big projects into mini or minute projects. In this case, each small project contains an iteration that yields in an increment. Iterations, which are strategized by use of Use Cases, may encompass the entire workflows in the development (Ghosh, N.D.). Characteristics of OOAD OOAD is a developing systems art founded on cooperating objects set. According to Grasso (N.D.), OOAD is a strategy of design which is independent of all implementation language. OOAD contains a number of characteristics that govern its operation and that create a clear distinction between it and other Object Oriented programming languages. These characteristics include eliminated shared data areas which enhance communication of objects through messages exchange. This characteristic also lowers the general coupling in the system. OOAD also views objects as independent entities and thus, alterations to class implementation should not affect the entire system. This characteristic also ensures that reuse is not enhanced by internal and external separation behaviour. Additionally in OOAD, objects can either execute in parallel or sequentially and lastly, for numerous systems, there is an unambiguous mapping between objects and real-world entities in the system. This enhances the design comprehension (Grasso, N.D.). Challenges One of the most challenging aims in OOAD is that all aspects are considered in a unified structure. Every factor in OOAD highlights only a unit modelled system facet, although in actual sense, these facets are quite interdependent and a unit treatment adds up to breaking these dependencies. Additionally, information nets and distributed computer globalization posts an essential challenge to techniques of software development and are expected to rapidly alter our network application understanding. Thus the future object orientation development should not be regarded on its own but as a section of the entire software cycle (Prasse and Rittgen, 1999). Opportunities According to Norman (1999), one of the best things in object-oriented methodology is that there are a number of features that can be borrowed from other programming methodologies and be used in this methodology. This is believed to make this methodology less revolutionary and more evolutionary. Therefore, knowledgeable systems analysts do not have to discard all their experience and knowledge acquired by employing other methodologies that would tend to dishearten the experts in the field. General Guideline in Applying Unified Software Development to OOAD Unified modelling process methodology is applied to describe various stages encountered during complex software design and analysis. In most cases, a developer is only in a position of proceeding to the next stage after completing the previous phase. Unified process involves four development stages that include interception, elaboration, construction and transition. In the interception stage, developers are in a position of determining rationale of the business as well as deciding on the project scope. This is followed by the elaboration stage where detailed requirements are collected by use of Use Cases. OOAD is highly considered at this stage for this is where high level of design and analysis takes place. Additionally at this stage, developers also establish a plan and baseline architecture for software construction. This is closely followed by the construction stage where incremental and iterative characteristics are applied. Additionally, each iteration creates production-quality prototype of software that implements requirements of subsets. Lastly, is the transition stage that involves performance tuning, user training and beta testing. Unified process models the processes, showing relation between various objects and Use Cases thus ensuring it full integration with object oriented design (Pandey et al., 2011). Case Study The paper considers a case where IBM Company was given a tender to develop a system that would replace the Waterfall Method created system to a Rational Unified Process based system for an unnamed company. Before embarking on the development process, the team members were involved in a comprehensive analysis and design of a new system that was expected to be more advanced as compared to the Waterfall based system in existence. The team started the project by noting the differences between the two processes where aspects to be eliminated and added were clearly noted. They also developed a plan and a budget showing division of work, resources allocation as well as the mile stones setting. Then user requirements, as well as system set goals, were defined by use of Use Cases. Iterative-incremental technique was then applied in the defined modules and the best case was taken in each module to be integrated in the new system. Lastly, the system was implemented and users were given a detailed training on how to apply the new system. The training duration was highly dependent on the particular user understanding capability. According to IBM (2009), the company has already received positive feedback on the effectiveness of the introduced system as compared to the previous system. Future Software Development Process With the current trend in programming technology, the future of software development may lie on software application consumed and delivered via web browser or cloud computing. The package software concept is quite out dated and with time, it will be fully faced out by web application. However, Object Oriented technology has been carried over to the new technology. Currently, one can develop an object oriented web application by use of scripting languages for instance, JavaScript. Additionally, web application can as well be developed using Rational Unified Process thus Object Oriented and Unified Processes are here to stay. The only alteration expected in these technologies is their advancement to fit the current level of technology as demanded by users’ requirements. References Booch, G., Rumbaugh, J. and Jacobson, I. 1999. The unified software development process. Upper Saddle River, NJ: Addison-Wesley. Booch, G., Maksimchuk, R. A., Engle, M. W., Young, B. J., Conallen, J. and Houston, K.A., 2007. Object-oriented analysis and design with applications. 3rd ed. Upper Saddle River, NJ: Addison-Wesley. Ghosh, S., N.D. CS414: Software Process Models and OOAD. Department of Computer Science Colorado State University, [online] Available at: [Accessed 24 September 2012]. Grasso, M. A., N.D. Object-oriented analysis & design. A Two-Day Seminar, [online] Available at: [Accessed 24 September 2012] IBM, 2009. From the waterfall method to rational unified process – a case study from experience. Software Group, [online] Available at: [Accessed 24 September 2012] Norman, R. J., 1999. Conceptual design: an overview of methodologies, models and notations. Prentice-Hall, Inc. Pandey, S. K., Singh, G. P. and Kansal, V., 2011. Study of object oriented analysis and design approach. Journal of Computer Science, 7 (2), p. 143-147. Prasse, M. and Rittgen, P., 1999. Success factors and future challenges for the development of object orientation. Arbeitsberichte des Instituts für Wirtschaftsinformatik, 20, p. 1-7. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Unified Software Development Process and Object-Oriented Design and An Literature review, n.d.)
Unified Software Development Process and Object-Oriented Design and An Literature review. https://studentshare.org/information-technology/2048487-unified-software-development-process-and-ooad
(Unified Software Development Process and Object-Oriented Design and An Literature Review)
Unified Software Development Process and Object-Oriented Design and An Literature Review. https://studentshare.org/information-technology/2048487-unified-software-development-process-and-ooad.
“Unified Software Development Process and Object-Oriented Design and An Literature Review”. https://studentshare.org/information-technology/2048487-unified-software-development-process-and-ooad.
  • Cited: 0 times

CHECK THESE SAMPLES OF Unified Software Development Process and Object-Oriented Analysis and Design

Analysis and Design

This also has the ticketing process which will be used to create and maintain a new ticket served by the officer concerned. Guilty Driver inherits from the driver and has all the attributes for the driver.... In addition it also has the fine details, payment process.... Problem to solve is to be identified and then a step by step process towards solution was worked out in the case of procedural approach.... Problem to solve is to be identified and then a step by step process towards solution was worked out in the case of procedural approach....
6 Pages (1500 words) Essay

United Holidays

Discuss the purpose and features of a CASE tool, which could support the development of the required system for United HolidaysPurpose:They enhance software development.... What are the typical job roles that exist within the software development lifecycle, and at which stage(s) of the lifecycle will they each be activeSystems AnalystProgrammers: these are the people who develop the codesUsers.... What are the relevant advantages and disadvantages of software Prototyping and the Waterfall with Iteration approach to software developmentAdvantages of....
4 Pages (1000 words) Essay

Project Management Methods

The objective is to find the right project management method and the right process that a software development company should adopt so that the failure rate of their project is low.... Every development... Managing men, material and money might be the easiest thing to do when compared to the software projects or IT projects.... Surveys conducted by Robbins – Gioia (2001) concluded that nearly 51% of all software projects fail....
28 Pages (7000 words) Essay

Security of Information Systems

Formal verification and security are of great importance in the growth of hard ware and software systems.... Every time a person communicates with another, relevant security risks should be taken into account since it is more likely to take… David (2004), states that a mistake in the security of an information technology may result to disastrous effects....
4 Pages (1000 words) Essay

Systems Building for Baker Development: Methods and Management

For instance, the Structured Systems analysis and design Method (SSADM) was designed in the early 1980s using the database systems necessary in the development of software systems related to the flow of data, data models, and the chronological life cycles of entities.... This work "Systems Building for Baker development: Methods and Management " describes the development to improve the company's performance.... The author takes into account Baker development established by Tom Baker....
10 Pages (2500 words) Coursework

Programming Environments

Thus on this basis, UML modelling is useful in the context of software modelling because while it aids in software modelling, it does not replace programming, but rather enhances the programming such that the design of one system can also be used with other systems in order to improve overall online productivity.... As compared to this, the object-oriented programming is based upon a rational model wherein as realists, we acknowledge that there is no single process, technique or language that would be applicable in all situations....
5 Pages (1250 words) Case Study

System Design and Development Project - Voice over Internet Protocol

The paper "System design and Development Project - Voice over Internet Protocol" discusses that if all procedures are strictly observed whenever a system design is being developed, the end results are bound to be great.... The purpose of the case study is to analyze the viability of removing PBX handsets and the use of VoiceIP software.... The purpose of the case study is to analyze the viability of removing PBX handsets and the use of VoiceIP software....
7 Pages (1750 words) Essay

The Application of the Scrum Approach to Healthcare IT Analysis

This study is an analysis of the Scrum Approach with the view of having a better understanding of the software development approach, knowing the strengths and weaknesses inherent in the method, and the application of the Scrum Approach to Healthcare IT analysis and design.... crum approach is one of the most preferred object-oriented systems analysis and design because of the possibility of managing a change in scope.... The paper "The Application of the Scrum Approach to Healthcare IT Analysis " highlights that the scrum approach of software development or project methodology has a number of limitations including the absence of structured working processes because of the functions undertaken by different teams....
11 Pages (2750 words) Essay
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us