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

Analysis and Design Patterns in Computer Science - Report Example

Cite this document
Summary
As the paper outlines "Analysis and Design Patterns in Computer Science", in the world we are living in today, computers became a necessity in the way we carry out the various activities that we are always involved in. Coming up with these systems is not an easy task but requires a lot of skill. …
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER92.8% of users find it useful

Extract of sample "Analysis and Design Patterns in Computer Science"

Running header: Analysis and design patterns in computer science Analysis and design patterns in computer science Name Tutor Course 15th November, 2010. Analysis and design patterns in computer science In the world we are living in today, computers have become a necessity in the way we carry out the various activities that we are always involved. Coming up with these systems is not an easy task but requires a lot of skill. There have been many methodologies that have been proposed by scholars on the issues on how information systems are assembled. There are analysis and design patterns that are hugely applied in coming up with reliable; information systems. These designs are very important in the processes of input and output and also in the database procedures (Gogolla & Korbryn, 2001). Software analysis patterns are concepts that are applied in the discipline of software engineering. They are model based and are used to represent a particular situation that one may come across in modeling. An analysis pattern is more often than not represented in form of a group of the same type objects and will usually have similar attributes the description of an analysis pattern has been widely discussed by scholars but a single definition is yet to be reached (Hunt, 2003). One the proposed definition of an analysis pattern by Hahsler has its structure as described below. Name of the pattern- the name should be simple and should also clearly outline what it is representing. Simplicity in the coming up with the name ensures that if is relatively easy when making references during the analysis The intention- the intention seeks to ensure that the goal that is meant to be achieved is well described and that the problems, for which solutions are being sought, are clearly outlined. Motivation- there should be something that indicates that the particular pattern will be useful in coming with the solution to the problem that ought to be solved. Solution- this includes all the structural characteristics and behavioral characteristics that are included in coming up with the pattern. Consequences inclusive- this is the clear indication of the achievement of the goal which is solving the question at hand and also the explanation of how this is achieve. Design- this includes the possible improvements to the specific analysis pattern. Hahsler suggested the above structure as it would be of great importance in architectural studies and computer science studies (Patel, 2005). Design pattern is a well known applicable solution to constantly occurring problems that are related to software design. It is an incomplete part of a design that cannot be directly transformed into a specific code. It is more a clear description n of the steps that need to be followed in order to come up with the solution to a problem. Design patterns application and implementation in software engineering was mainly as a result of the great effects that the construction and building architectural patterns of Christopher Alexander had in the world of software and information systems. For a big range of patterns, they are object oriented and may therefore not be applicable in most functional programming languages as they are not wholly compatible in this particular form. There is need to factor in the issue that all software patterns are design patterns. There different types of design patterns that range from creational patterns, behavioral patterns, concurrency patterns and structural patterns. These four types of patterns are referred to as ‘The Gang of Four Catalog.’ 1. Creational patterns These are very important patterns that make a system to establish independence in the way the objects involved are created and represented. It is mainly used when little combinations of fundamental behaviors are combined so as to make them into more complexes. Arriving at the complex behavior requires something which is way ahead of a single class. To come up with the pattern there are certain issues that must dealt with among them; abstract factory, builder, factory method, prototype and singleton. 2. Structural patterns This refers to the patterns that ensure that classes and objects are combined so as to come up with larger structures. This can be arrived oat through aggregation or having various classes in one particular object. This may also be achieved through multiple inheritances. The areas of concern so as to be able to achieve this pattern are; adapter, bridge, composite, decorator, façade, flyweight and proxy. 3. Behavioral patterns These are patterns that describe the nature of communication or the protocols of objects that are required to ensure they complement each other. The complementing objects can be coupled either tightly (the interaction between the derived classes and their parents), medium (the complementing objects are found in another object) or loosely (where the objects are distinct individuals and are in contact either directly or via a third party). The areas of concern in these patterns include the chain of responsibility and command. Others may also incorporate the interpreter, iterator and the mediator. In advance; there can be also the memento, observer and state (Chaodron, 2009). In the present day, patterns are gratefully utilized across the existing disciplines disciplines. For example, analysis designs today are largely used in the world of business. Coming u with a good design is the hardest decision that any designer has to make so as to ensure that it works well with the software that is faced with problems. So much effort is continuously being put in making sure that new design patterns are being developed and discovered. However, very little effort is put tom making sure that there are ways of coming up with these patterns. The hardest part in the world of software design patterns is not the coding but rather the decision s that need to be made. If a wrong decision is made there results bad designs that will not serve the purpose that they are meant to serve. Any designer must be very careful so as to clearly differentiate bad designs from good designs (Docherty, 2000). As a result of the analysis and design patterns, a new concept has been overly adapted that majorly deals with object oriented programming (OOP) this ensures that each object has its own functions and procedures that is related to a certain real world concept. Access to the object is only gained through the determination of those function and procedures. The object is therefore isolated. It has been agreed by software engineers that this works in their best of interest because it amounts to discretion of the software. However, some engineers are in favor of the opinion that isolating the objects goes down to the software becoming complex and therefore relatively hard to manage. On the other hand, this means that there is limitation of the access to confidential information (Wangler, & Bergman, 2000). In object programming there is also the implementation of encapsulation. This is whereby the details of how a class functions are concealed and not known to the objects hat send messages to it. A class contains all the variables, properties and methods that are contained in a template of objects. The major challenges that affect object oriented programming are mainly addressed by the design patterns. This is because the design patterns are used in coming up with solutions to constantly occurring problems that are encountered. These problems that continuously repeat themselves have certain implications directly to the object oriented development (Holopanien, and Bjork, 2005). Design patterns can make the journey toward development easier and faster. It can include the utilization of already proved and tested paradigms of development. To ensure software design effectiveness there is need to foresee the major hidden issues that may not be realized until he design has been applied or implemented. Continuous application and usage of the pattern enhances development of ways of dealing with problems that may continue to arise causing major unforeseen problems. There is also increased familiarity with the codes for the users especially the architects who are familiar with the design patterns. (Hartmanis, 2003) The useful facet in software designs is that they are flexible. This is because they provide general solutions to problems that may constantly be arising and are therefore programmed as per each application. This ensures that they solve a big range of problems. The solutions are documented in a way that is clear to many users so as to be able to apply them to only the specific problem (Deacon, 2005). Role class model is another role analysis pattern that is used in enabling the performance of different roles in a particular class. Being able to co-ordinate the various roles is one of the major problem that is encountered when performing many roles so as to achieve a set goal or objective. There have been 5 role analysis patterns that have been identified over the years so as to aid in coming up with solutions to a number of problems. They involve the role inheritance and the association roles. Others may involve the role classes and the generalized role classes. This model helps solve many problems for example in the cinema business. This enhances development. Availability of the patterns has enabled the development progress in many diverse fields (Larman, 2002). Patterns are also applicable in inventory and accounting. There are patterns on financial accounting and inventories that do not necessarily explain or outline the in depth details of these disciplines but rather explain the processes therein. In order to enhance development there needs to be set out procedures that act as guidelines to enhance growth. The analysis and design patterns provide a solution to these problems by providing the processes that enhance this development processes (Shalloway, & Trott, 2002). The analysis and design patterns are greatly involved in enhancing modern development in today’s world. This is because they constantly are referred to when individuals all over the worlds are faced with problems in the cause of their daily activities. This is evident as established above in the various disciplines ranging from accounting to cinema business. Hey provide the solutions to almost any problem in any discipline, not only the software business but also all other disciplines. They are drivers towards development (Matha, 2007). These patterns are very crucial and the details of they can be implemented are very clear. This makes the application of the patterns by users all over the world to be very easy. The implementation process requires that the user follows the set procedures so as to ensure achievement of the required results. The codes that are used to represent each and every object should be also very clear and must be known to the user without any confusion so as to ensure that the application is correct. The innovations in the software and information system industries have enabled the transport industry for example to be efficient. People can book and pay for flights from the comfort of their home. This same case applies to the communication levels all over the world whereby people are able to communicate through the transfer of coded objects via the internet. This is also the case in the business industry where all the information in a company is accessible at the click of a button provided the company is wired. This is making carrying out activities very easy and there is a link of everything that happens in an organization. This leads to accountability for one’s action and the level of fraud and embezzlement of funds is on the decline. The analysis and design patterns are very reliable as they can be compatible with any kind of programming language. This ensures that engineers can communicate and share development ideas irrespective of the programming language that on is conversant with. This also ensures that the quality of work that is produced by engineers and architects is high quality work because of the implementation of these designs in their work. The designs are very relevant because they provide solutions to the problems that they may encounter in the course of carrying out their responsibilities. There also needs to be ultimate care for new users so as to ensure that they initially get well informed on what the exact contents in the patterns are. This would prevent any further complications resulting from misinformation of what the patterns really represent. The users may also seek guidance form other engineers who are already conversant with the patterns as they may have used them in the course of their work for a longer period of time. The patterns, as we have already established provide solutions to problems and are not fixed to any one type of problem but are flexible to solve any problem in the relevant filed (Yacob & Hussein, 2004). Due to the fact that these analysis and design patterns are already worldwide accepted, it is an indication that they are good and reliable. They have been approved by scholars all over and would therefore be recommended to any on e who encounters a problem for instance in information systems. As such, any user only needs to be well aware of the codes that represent the objects or class. It has already been established the patterns supported by any programming language and this therefore implies that there is ease in use of the patterns. Lack of enough knowledge about patterns results in wrong application. This thus implies that new uses need to be very careful as to clearly understand the full content and the best application of the pattern before getting down to using the information that they lay their hands on. Software designs are the designs that enable us to use already used designs and therefore help in solving the problems that we may encounter in life from time to time. The analysis and design patterns are very important in software development. They are an important part and are flexible enough to solving various kinds of problems; extensively they are used because they are independent of any particular programming language. They have huge visibility and can therefore be applied I arrange of models and therefore are all round serving many purposes. These designs are hugely recommended as in coming up with them, other methodologies that are used in solving problems in this fields are embodied in the patterns. They are recommended for all level of users so that dealing with information systems is made easier. However, like any other piece of researched information, the users need to be sure about the compatibility of the data that is found within these analysis and design patterns to ensure that they are using them in the right manner so as to get the desired results. These designs have made familiarity with the information systems easier and handling of software is now faster. People all over the world are applying them in their daily activities. everybody looks forward to using their computers because it is fast and reliable, all thanks to the analysis and design patterns that have enabled the information systems to be that much reliable. The management of computers is now very easy because software engineers are constantly using the se designs to improve their software and hence resulting in quality products. References Chaodron, M. R., 2009, Models in software engineering: workshops and symposia at models 2008, California: Springer. Deacon, J., 2005, Object oriented analysis and design: a pragmatic approach, London: Addison- Wesley. Docherty, M., 2000, Object oriented analysis and designs: understanding system Development with UML, California: Springer. Gogolla, M. & Korbryn, C., 2001, UML2001: the unified modeling languages, concept and tools: 4th international conference, California: Springer. Hartmanis, J. G., 2003, Lecture notes in computer science, California: Springer. Holopanien, J. & Bjork, S., 2005 Patterns in game design, New York: Cengage Learning. Hunt, J., 2003, Guide to unified [process featuring UML, Java and design patterns, California: Springer. Larman, C., 2002, Applying UML and patterns: an introduction to object oriented analysis and design and the unified process, Mexico: Prentice Hall PTR. Matha, 2007, Object oriented analysis and design n using UML: An Introduction to Unified Process and Design Patterns, London: PHL Learning Pvt. Ltd. Patel, N., 2005, Critical systems analysis and design: a personal framework approach, London: Routledge. Shalloway, A. & Trott, J., 2002, Design patterns explained: a new perspective on object oriented design, London: Addison- Wesley. Wangler, B. & Bergman, L., 2000, Advanced information systems engineering: 12th international conference, California: Springer. Yacoub, M. S. & Hussein, H., 2004, Pattern-oriented analysis and design: composing patterns to design software, London: Addison- Wesley. . Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Analysis and Design Patterns in Computer Science Report Example | Topics and Well Written Essays - 2500 words, n.d.)
Analysis and Design Patterns in Computer Science Report Example | Topics and Well Written Essays - 2500 words. https://studentshare.org/design-technology/2045425-what-are-analysis-and-design-patterns-how-are-they-used-in-modern-development-methods-how-useful
(Analysis and Design Patterns in Computer Science Report Example | Topics and Well Written Essays - 2500 Words)
Analysis and Design Patterns in Computer Science Report Example | Topics and Well Written Essays - 2500 Words. https://studentshare.org/design-technology/2045425-what-are-analysis-and-design-patterns-how-are-they-used-in-modern-development-methods-how-useful.
“Analysis and Design Patterns in Computer Science Report Example | Topics and Well Written Essays - 2500 Words”. https://studentshare.org/design-technology/2045425-what-are-analysis-and-design-patterns-how-are-they-used-in-modern-development-methods-how-useful.
  • Cited: 0 times

CHECK THESE SAMPLES OF Analysis and Design Patterns in Computer Science

How to use a Wood Material in Computer Hard Disc Drives

How to use a Wood Material in computer Hard Disk Drives Name of Student Student Number Institution Date How to Use a Wood Material in computer Hard Disk Drives I.... Introduction Hard disk drives, also known as HDD, are the data centre of the computer.... Breakdown of the Main Parts of the Hard Disk and the Function of Each Part The computer hard drive is made up of several components with different functions, as discussed below....
8 Pages (2000 words) Case Study

An Elite Art Form vs. Precision Engineering: The Contemporary Bespoke Debate

The application of the 3D body scanning garment industries have deployed varied and effective concepts and aspects computer applications in the cloth industry.... The application of the 3D body scanning garment industries have deployed varied and effective concepts and aspects computer applications in the cloth industry....
3 Pages (750 words) Dissertation

Acoustic Spatial Dimensions of Sound

She graduated in computer and acoustics science.... It needs fresh models of aural analysis and treatment because the listening point is shifted from the ears to the tissues of the body, which provokes memories, psychic and physical association and intertwine of information.... Sound Artist Introduction design, arrangement ant manipulation of the space's physical properties is called “mother of arts” architecture.... Choral 1 The analysis of Maryanne Amacher's Compositions The American composer and installation performer Maryanne Amacher had completely a different method....
5 Pages (1250 words) Essay

Product Design of Wind Turbine Blade

Ongoing improvements on the blade's design and material are continuously done to further develop the machine in terms of its aerodynamic properties and performance.... The design is also not complicated and blades can easily be seen by birds (Mathew 19).... On the other hand this design is not ideal since balance is also an important factor in wind turbine construction and single bladed wind...
12 Pages (3000 words) Essay

Lossy vs. Lossless Data Compression

At the similar time, the propagation of computer data and information communication networks is consequential in the huge transition of data over communication network links (Blelloch, 2001; Lelewer & Hirschberg, 1987).... Lossless Data Compression” will provide a detailed analysis of the paradigm of data compression....
7 Pages (1750 words) Assignment

Power of Hindon Designs Plc

hellip; The author states that there is no significant relationship between the independent variables represented by Factors 1 to 7 (product effectiveness, design, reliability, price competitiveness, delivery, service, and website) and the dependent variable represented by Factor 8 (individual purchasing share).... From the average perceptions, it may be concluded that among Factors 1 to 7, Factor 2 or the design factor obtained the most favorable rating of 7....
16 Pages (4000 words) Assignment

Ways in which Takei and Coates Approach Observation in Their Research: A Comparative Analysis

wo of the researchers in the field of developmental science and early years' education used the observation method in conducting relevant studies on young children.... The "Ways in which Takei and Coates Approach Observation in Their Research: A Comparative analysis" paper initially and briefly looks into the meaning of observational research....
6 Pages (1500 words) Coursework

Discussion of How Computing Is an Assemble

In contemporary computing, parametric design techniques are defined as associative in nature.... This analysis aids in the understanding of leadership roles in any innovation activity.... The notion of transformation encompasses all other activities such as acquisition, transmission, storage, analysis, understanding, presentation, and application (Rosenbloom, 2013).... From the analysis of these theorists, actors and actants take up the progressive constitution of a network....
6 Pages (1500 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