Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 5

Software quality: FURPS Functionality, Usability, Reliability, Performance, Supportability Project Management: Time Scope Cost Strength: 1.

Goal and results oriented, like to be challenged in my job. At the end of the day, I need to be able to look back on my day and fell good about the job I have done. 2. Quick learner, like to learn as much as possible in my position. 3. Sense of the big picture, always wanted to know about where a piece of puzzle fits into the picture. What business problem does a particular product solve. What is the target market. Weakness: 1. do not enjoy playing politics 2. sometimes can be too much on the friendly side, not as demanding as I should be to other. The Zachman Framework is an Enterprise Architecture framework , which provides a formal and highly structured way of viewing and defining an enterprise. It consists of a two dimensional classification matrix based on the intersection of six communication questions (What, Where, When, Why, Who and How) with six rows according to reification transformations.[1] The Zachman Framework is not a methodology in that it lacks specific methods and processes for collecting, managing, or using the information that it describes.[2] The Framework is named after its creator John Zachman, who first developed the concept in the 1980s at IBM. It has been updated several times since.[3] The Zachman "Framework" is a taxonomy for organizing architectural artifacts (in other words, design documents, specifications, and models) that takes into account both whom the artifact targets (for example, business owner and builder) and what particular issue (for example, data and functionality) is being addressed.[

A service-oriented architecture (SOA) is a flexible set of design principles used during the phases of systems development and integration. A deployed SOA-based architecture will provide a loosely-integrated suite of services that can be used within multiple business domains. Service Oriented Architecture provides for loosely coupled, reusable services, and methods for allowing different applications to exchange data.
SOA is the practice of separating the core business functions into independent services that dont change frequently. These services are functions that are called by one or more presentation programs. The presentation programs are volatile bits of software that present data to, and accept data from, various users. At the highest level, SOA is nothing more than separating changeable elements from unchangeable elements.

THE 4+1 VIEW MODEL OF SOFTWARE ARCHITECTURE


The 4+1 View Model of Software Architecture organizes a description ofa software architecture using five concurrent views, each of which addresses a specific set of concerns. Developers capture their design decisions in four views and use the fifth view to illustrate and validate them. This use of multiple views allows to address separately the concerns of the various stakeholders of the architecture: end-users, developers, system engineers, project managers etc. and to handle separately the functional and nonfunctional requirements. The 4+1 model consists of the following views: Logical view presents a system from the point of view of end-user, Development view description of a system for programmers and managers, Process view representation of functionality, performance, scalability and the possibilities for integrating with other systems, Physical view - the product is presented from the point of view of end-user. The fifth view (the +1 view) would be some use cases for the system. And this fifth view ties the other four views and gives a more concrete description

of the system. It is this concrete description that would be most important in a system since the fifth view explicitly states the scenario that needs to be addressed by the system. Most of the details of the main problem might be hidden away in the other views since they present a more abstract view of the system. Hereby, each view has its own elements, forms, patterns, principles and constraints applied on it. In the following chapters a way for modeling Web applications using RUP with the 4+1 View Model of Software Architecture is being discussed accompanied with some illustrative

Java Frameworks

Apache Struts is an open-source web application framework for developing Java EE web applications. It uses and extends the Java Servlet API to encourage developers to adopt a model-view-controller (MVC) architecture. It was originally created by Craig McClanahan and donated to the Apache Foundation in May, 2000. Formerly located under the Apache Jakarta Project and known as Jakarta Struts, it became a top level Apache project in 2005. Apache Cocoon, usually just called Cocoon, is a web application framework built around the concepts of pipeline, separation of concerns and component-based web development. The framework focuses on XML and XSLT publishing and is built using the Java programming language. The flexibility afforded by relying heavily on XML allows rapid content publishing in a variety of formats including HTML, PDF, and WML. The content management systems Apache Lenya and Daisy have been created on top of the framework. Cocoon is also commonly used as a data warehousing ETL tool or as middleware for transporting data between systems. Apache Wicket, commonly referred to as Wicket, is a lightweight component-based web application framework for the Java programming language conceptually similar to JavaServer Faces and Tapestry. It was originally written by Jonathan Locke in April of

2004. Version 1.0 was released in June 2005. It graduated into an Apache top-level project in June 2007.[1] Google Web Toolkit (GWT /wt/) is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files. It is licensed under the Apache License version 2.0.[1] GWT emphasizes reusable, efficient solutions to recurring Ajax challenges, namely asynchronous remote procedure calls, history management, bookmarking, internationalization and cross-browser portability. JavaServer Faces (JSF) is a Java-based Web application framework intended to simplify development integration of web-based user interfaces. JSF is a request-driven MVC web framework based on component driven UI design model, using XML files called view templates or Facelets views. Requests are processed by the FacesServlet, which loads the appropriate view template, builds a component tree, processes events, and renders the response (typically HTML) to the client. The state of UI components (and some other objects) is saved at the end of each request (called stateSaving (note: transient true)), and restored upon next creation of that view. Several types of state-saving are available, including Client-side and Server-side state saving. Out of the box, JSF 1.x uses JavaServer Pages (JSP) for its display technology, but can also accommodate other technologies (such as XUL and Facelets). JSF 2 uses Facelets by default for this purpose. Facelets is a more efficient, simple, and yet more powerful view description language (VDL). Apache Sling is an open source Web framework for the Java platform designed to create content-centric applications on top of a JSR-170-compliant (aka JCR) content repository such as Apache Jackrabbit[1]. Apache Sling allows developers to deploy their application components as OSGi bundles or as scripts and templates in the content repository. Supported scripting languages are JSP, server-side JavaScript, Ruby, Velocity. The goal of Apache Sling is to expose content in the content repository as HTTP resources, fostering a RESTful style of application architecture. Sling is different from a lot of other Web application frameworks in the sense that it truly focuses on the web aspect of the "web application" development and through its development paradigm suggests an intuitive RESTful development of a true web application. Other frameworks focus more on the application development and therefore are ideal extensions to Sling. [ The Spring Framework is an open source application framework for the Java platform
[1]

The core features of the Spring Framework can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform. Although the Spring Framework does not impose any specific programming model, it has become popular in the Java community as an alternative to, replacement for, or even addition to the Enterprise JavaBean (EJB) model.

WebWork was a Java-based web application framework developed by OpenSymphony that merged into the current Struts2 framework. It was developed with the specific intention of improving developer productivity and code simplicity. WebWork is built on top of XWork, which provides a generic command pattern framework as well as an Inversion of Control container. WebWork provides robust support for building reusable UI templates, such as form controls, UI themes, internationalization, dynamic form parameter mapping to JavaBeans, robust client and server side validation, etc. Hibernate is an object-relational mapping (ORM) library for the Java language, providing a framework for mapping an object-oriented domain model to a traditional relational database.0020Hibernate's primary feature is mapping from Java classes to database tables (and from Java data types to SQL data types). Hibernate also provides data query and retrieval facilities. Hibernate generates the SQL calls and relieves the developer from manual result set handling and object conversion, keeping the application portable to all supported SQL databases, with database portability delivered at very little performance overhead.

You might also like