In a short essay, pick three artworks we have talked about in class, and use them to answer the following question: How do art objects help us understand the history of interaction between people from China, Korea, and Japan?
Academic Level : Bachelor
Paper details In your answer you must: -list the title of 3 artworks -underline the titles of each of those 3 artworks -for each of those 3 artworks, provide the date that the artwork was made -for each of those 3 artworks, describe the artwork in one sentence -for each of those 3 artworks, describe in one sentence how it relates to the question abo
Software engineering principles Disclaimer: This work has been submitted by a student. This is not an example of the work written by our professional academic writers. You can view samples of our professional work here. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UK Essays. Published: Mon, 5 Dec 2016 Chapter 1 “Software is a great combination between artistry and engineering. When you finally get done and get to appreciate what you have done it is like a part of yourself that you’ve put together. I think a lot of the people here feel that way.” Introduction This report discusses Software Engineering principles in context with Service-Oriented applications. Software Engineering covers a very vast area. It encourages the development of high quality and sustainable software,using quality software engineering tools and techniques. Service Orientation on the other hand is a trend in Software Engineering, it’s an approach, a way of thinking, a value system that promotes the construction of applications based on activities called services. It was very complicated to conclude the basic principles of Software Engineering and then to make a decision which of these principles are applicable and which are not applicable to the development of Service Oriented Applications. There exists so much information on Software Engineering and Service-Oriented applications but very few talks about the Software Engineering principles and their relation with SOA. However, after browsing through the internet and digging into many Software Engineering and SOA books and journals some conclusion is made which is described in detail in following pages. Like most of the researches, this research also takes into consideration few assumptions which are stated clearly. Chapter 2 In order to be acquainted with the principles of Software Engineering it is essential to have a brief idea about it. The paragraph below will assist in giving some idea about Software Engineering. About Software Engineering. As mentioned above Software Engineering covers a very huge part in a development of any software. It is not a complex approach but over the years everyone has presented a different definition for Software Engineering because of its diversity. To get the more precise and clear picture, a few definitions from different sources are presented below. “The establishment and use of sound engineering principles (methods) in order to obtain economically software that is reliable and works on real machines” [Bauer 1972]. Software engineering is that form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems.” [CMU/SEI-90-TR-003] “The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software” [IEEE 1990]. There are aspects of each of these definitions that have a say to the viewpoint of software engineering used in the construction of this report. One particularly important aspect is that software engineering builds on computer science and mathematics. Software engineering encompasses a process, the management of activities, technical methods, and use of tools to develop high-quality, systematic, controlled, and efficient software products. Software is engineered by applying three discrete phases’ definition, development, and support. Subsequently, there are significant emphasis on analysis and evaluation, specification, design, and evolution of software. In accumulation, there are issues related to management and quality, to novelty and creativity, to standards, to individual skills, and to teamwork and professional practice that play a vital role in software engineering. Chapter 3 “Service Orientation is a trend in software engineering that promotes the construction of application based on entities called services” . Service-Oriented Architecture A service-oriented architecture is the organizational and technical framework that enables an enterprise to deliver self-describing, platform-independent business functionality and make it available as building blocks of current and future applications. Simply speaking, in an SOA, a business is viewed as a portfolio of services that can be delivered independently and recombined without requiring detailed knowledge of how that service is implemented.  According to Wikipedia, incomputing,service-oriented architecture(SOA) has different non-standard and openly-debated definitions. Basically, it is an attempt to provide set of principles or governing concepts used during phases ofsystems developmentandintegration. Such architecture is supposed to package functionality asinteroperableservices within the context of variousbusiness domainsinvolved. Several departments within a company or different organizations may integrate or use such services ââ‚¬” software modules provided as a service ââ‚¬” even if their respectiveclientsystems are substantially different. It is an attempt to develop yet another means for software module integration. Rather than defining anAPI, SOA defines the interface in terms of protocols and functionality. Anendpointis the entry point to such an SOA implementation. Chapter 4 Principles of Software Engineering A set of fundamental principles can act as an enabler in the establishment of a discipline; however, software engineering still lacks a set of universally recognized fundamental principles. A fundamental principle is less specific and more enduring than methodologies and techniques. It should be phrased to withstand the test of time. It should not contradict a more general engineering principle and should have some correspondence with “best practice”. It should be precise enough to be capable of support and contradiction and should not conceal a trade off. It should also relate to one or more computer science or engineering concepts.  Principles are common and conceptual statements describing desirable properties of software products and processes. Principles become practice through methods and techniques, often methods and techniques are packaged in a methodology. Methodologies can be enforced by tools. Principles of Software Engineering have a good impact on the process of software engineering and also on the final product. These principles facilitate to develop software in such a manner that it posses all the qualities like: efficiency, functionality, adaptability, maintainability, and usability. Principles are general, abstract statements describing desirable properties of software processes and products. The principles are applicable throughout the lifecycle of the software. Principles are the set of statements which describe the advantageous features of the product and process. Focus on both process and product is needed to deliver software systems. These principles help in controlling process which in turn helps to control the quality of the product. Only the control of process will not guarantee a quality product therefore it is important to concentrate on both process and quality. As said earlier there are no fundamentally recognized principles of Software Engineering but we can list down few that may be used in all phases of software development. Rigor and formality Separation of concerns Modularity and decomposition Abstraction Anticipation of change Generality Incremental Development Reliability Principles explained. Rigor and formality Webster defines Rigor as. harsh inflexibility in opinion, temper, or judgment : severity the quality of being unyielding or inflexible : strictness severity of life : austerity b: an act or instance of strictness, severity, or cruelty 2: a tremor caused by a chill 3: a condition that makes life difficult, challenging, or uncomfortable; especially : extremity of cold strict precision : exactness Webster defines Rigor as “harsh inflexibility in opinion”, but that’s not the general meaning of rigor in project management. In general Rigor means the strict precision with which you follow some project management belief or practice. Advancements of this approach enable us to construct more consistent product, organize their cost, and boost our confidence in their reliability. Formality is a stronger requisite than rigor; it requires the software process to be driven and evaluated by mathematical laws. As it is seen that Software engineering is a very imaginative design activity, so it must be practiced systematically. Rigor is an essential match to imagination that increases our confidence in our developments. Formality is rigor at the highest degree. Software development can accept neither ambiguity nor inaccuracy. Where rigidness helps to produce consistent products, controlling cost and increases discretion in products, Formality checks the process of software production using mathematical laws. Rigor and formality in context with SOA SOA aims to improve flexibility. The key reason for using SOA is that it should help you in your business. For example, you may need IT solutions that store and manage your data, and allow you to automate the usual processes that deal with this data. A critical factor for business success these days is keeping time to market share. To deliver a quality solution right on time, you need flexibility. But flexibility has a lot to do with clear organization, roles, processes, and so on. Therefore, SOA has to deal with all these aspects. >