Presentation is loading. Please wait.

Presentation is loading. Please wait.

Deployment Activities to make a new system operational

Similar presentations


Presentation on theme: "Deployment Activities to make a new system operational"— Presentation transcript:

1 Deployment Activities to make a new system operational
Involve many conflicting constraints Costs Need to main positive customer relations Need to support employees Logistical complexity Overall risk to the organization Object-Oriented Analysis and Design with the Unified Process

2 Deployment discipline activities
Figure 13-13 Deployment discipline activities Object-Oriented Analysis and Design with the Unified Process

3 Acquiring Hardware and System Hardware
Application software must have a supporting infrastructure (which may already be in place) Acquisition of an entirely new infrastructure includes Planning Developing a request for proposal Evaluating results Choosing one or more vendors Installation and configuration Object-Oriented Analysis and Design with the Unified Process

4 Packaging and Installing Components
Components must be Installed on a host server Added to a component registry Assigned one or more network addresses May include XML files to store registration and access information Developers can package and install components using development tools and utilities Object-Oriented Analysis and Design with the Unified Process

5 Automated component deployment with Oracle Developer
Figure 13-15 Automated component deployment with Oracle Developer Object-Oriented Analysis and Design with the Unified Process

6 Training Users End users and system operators need training
End user training Hands-on training and tutorials Group tutorials System operator training Less formal Self-study Training materials are developed as soon as the interfaces are reasonably stable Object-Oriented Analysis and Design with the Unified Process

7 Converting and Initializing Data
Data needed at system startup can be obtained from Files or databases of a system being replaced Manual records Files or databases of other systems in the organizations User feedback during normal system operation Existing databases are commonly modified for reuse in new or upgraded systems Object-Oriented Analysis and Design with the Unified Process

8

9 Software Principles and Practices
Ubiquitous computing is the current trend in our society Using computer technology in every aspect of our lives The effort to develop current solutions is demanding Current trends in modeling and in processes use five important principles Object-Oriented Analysis and Design with the Unified Process

10 Software Principles and Practices (continued)
Abstraction Process of extracting core principles from a set of facts or statement Example: Metamodels describe the characteristics of another model Models and Modeling An abstraction of something in the real world, representing a particular set of properties Object-Oriented Analysis and Design with the Unified Process

11 Software Principles and Practices (continued)
Patterns Standard solutions to a given problem or templates that can be applied to a problem Reuse Building standard solutions and components that can be used over and over again Methodologies A process - including the rules, guidelines, and techniques - that defines how systems are built Object-Oriented Analysis and Design with the Unified Process

12 Importance of Design Patterns
Standard design templates can speed OO design Patterns can exist at different levels of abstraction At the most concrete level, a class definition with code At the most abstract level, an approach to a problem Patterns should contain five main elements Pattern name, problem, solution, example, benefits and consequences Object-Oriented Analysis and Design with the Unified Process

13 for the controller pattern
Figure 9-6 Pattern description for the controller pattern Object-Oriented Analysis and Design with the Unified Process

14 Basic Design Patterns The authors of Elements of Reusable Object-Oriented Software (referred to as the Gang of Four) developed a basic classification scheme for patterns (Figure 9-7) The 23 GoF patterns are some of the most fundamental and important patterns in use Scores of other patterns have been defined For example, both Java and .NET have sets of enterprise patterns Object-Oriented Analysis and Design with the Unified Process

15 Classification of design patterns
Figure 9-7 Classification of design patterns Object-Oriented Analysis and Design with the Unified Process

16 Singleton Pattern For classes that must have only one instance, but need to be invoked from several classes and locations within the system The class itself controls the creation of only one instance A static variable of the class refers to the object that is created A class method instantiates the object on the first call, and returns a reference to the object on subsequent calls Object-Oriented Analysis and Design with the Unified Process

17 Singleton pattern template
Figure 9-8 Singleton pattern template Object-Oriented Analysis and Design with the Unified Process

18 Adaptor Pattern Plugs an external class into a system
Converts the method calls from within the system to match the method names in the external class A standard solution for protection from variations Insulates the system from frequently changing classes An interface is frequently used to specify and enforce the use of correct method names Object-Oriented Analysis and Design with the Unified Process

19 Adapter pattern template
Figure 9-10 Adapter pattern template Object-Oriented Analysis and Design with the Unified Process

20 Observer pattern Used to handle event-processing and reduce coupling
The domain class Allows other classes to “subscribe” as listeners “Publishes” the changes to the listeners The windows class Sends a reference of itself to subscribe as a listener Implements the method to be invoked when notified Inherits the method from the listener interface Object-Oriented Analysis and Design with the Unified Process

21 Observer pattern template
Figure 9-13 Observer pattern template Object-Oriented Analysis and Design with the Unified Process

22 The Agile Development Philosophy and Modeling
A philosophy and set of guidelines for developing software in an unknown, rapidly changing environment Requires agility - being able to change direction rapidly, even in the middle of a project Agile Modeling A philosophy about how to build models, some of which are formal and detailed and others sketchy and minimal Object-Oriented Analysis and Design with the Unified Process

23 The Agile Development Philosophy and Values
Responding to change over following a plan An agile project is chaordic - both chaotic and ordered Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Object-Oriented Analysis and Design with the Unified Process

24 Adaptive methodologies using Agile Modeling
Figure 14-1 Adaptive methodologies using Agile Modeling Object-Oriented Analysis and Design with the Unified Process

25 Agile Modeling principles
Figure 14-2 Agile Modeling principles Object-Oriented Analysis and Design with the Unified Process

26 Extreme Programming An adaptive, agile development methodology created in the mid-1990s Extreme programming Takes proven industry best practices and focuses on them intensely Combines those best practices (in their intense form) in a new way to produce a result that is greater than the sum of the parts Object-Oriented Analysis and Design with the Unified Process

27 XP Core Values Communication Simplicity Feedback Courage
In open, frequent verbal discussions Simplicity In designing and implementing solutions Feedback On functionality, requirements, designs, and code Courage In facing choices such as throwing away bad code or standing up to a too-tight schedule Object-Oriented Analysis and Design with the Unified Process

28 XP core values and practices
Figure 14-4 XP core values and practices Object-Oriented Analysis and Design with the Unified Process

29 Some XP Practices Planning Testing Pair programming
Users develop a set of stories to describe what the system needs to do Testing Tests are written before solutions are implemented Pair programming Two programmers work together on designing, coding, and testing Object-Oriented Analysis and Design with the Unified Process

30 Some XP Practices (continued)
Refactoring Improving code without changing what it does Owning the code collectively Anyone can modify any piece of code Continuous integration Small pieces of code are integrated into the system daily or more often Object-Oriented Analysis and Design with the Unified Process

31 The XP development approach
Figure 14-5 The XP development approach Object-Oriented Analysis and Design with the Unified Process

32 Model-Driven Architecture - Generalizing Solutions
Model-Driven Architecture (MDA) is an OMG (Object Management Group) initiative Built on the principles of abstraction, modeling, reuse and patterns Provides companies with a framework to identify and classify all system development work being done in an enterprise MDA extracts current systems features and information and combines them into a platform independent model (PIM) Object-Oriented Analysis and Design with the Unified Process

33 Software development and MDA
Figure 14-7 Software development and MDA Object-Oriented Analysis and Design with the Unified Process

34 Model-driven Architecture (continued)
Platform-independent model (PIM) Describes system characteristics are not specific to any deployment diagram Uses UML Platform-specific model (PSM) Describes system characteristics that include deployment platform requirements A set of standard transformations by the OMG move a PSM to a PIM Object-Oriented Analysis and Design with the Unified Process

35 Metamodels and transitions between PIM, PSM, and code
Figure 14-8 Metamodels and transitions between PIM, PSM, and code Object-Oriented Analysis and Design with the Unified Process

36 Object Frameworks A set of classes that are designed to be reused in a variety of programs The classes within an object framework are called foundation classes Can be organized into one or more inheritance hierarchies Application-specific classes can be derived from existing foundation classes Object-Oriented Analysis and Design with the Unified Process

37 Object Framework Types
User-interface classes Commonly used objects within a GUI Generic data structure classes Linked lists, binary trees, etc., and related processing operations Relational database interface classes Classes to create and perform operations on tables Classes specific to an application area For use in a specific industry or application type Object-Oriented Analysis and Design with the Unified Process

38 Impact on Design and Implementation
Frameworks must be chosen early in the project Systems design must conform to specific assumptions about application program structure and operation that the framework imposes Design and development personnel must be trained to use a framework effectively Multiple frameworks may be required, necessitating early compatibility and integration testing Object-Oriented Analysis and Design with the Unified Process

39 Components Software modules that are fully assembled and ready to use
Reusable packages of executable code Has well-defined interfaces to connect it to clients or other components Public interface and encapsulated implementation Standardized and interchangeable Updating a single component does not require relinking, recompiling, and redistributing an entire application Object-Oriented Analysis and Design with the Unified Process

40 Component Standards and Infrastructure
Interoperability of components requires standards to be developed and readily available Components may also require standard support infrastructure Software components have more flexibility when they can rely on standard infrastructure services to find other components Networking standards are required for components in different locations Object-Oriented Analysis and Design with the Unified Process

41 SOAP and .NET Simple Object Access Protocol (SOAP) is a standard for component communication over the Internet using HTTP and XML An open standard Does not have the infrastructure requirements or proprietary technology of CORBA and COM+ Adopted by Microsoft as the basis of its .NET distributed software platform Used for Web services Object-Oriented Analysis and Design with the Unified Process

42 Component communication using SOAP
Figure 14-10 Component communication using SOAP Object-Oriented Analysis and Design with the Unified Process

43 Components and the Development Life Cycle
Component purchase and reuse is a viable approach to speeding completion of a system Purchased components can form all or part of a newly developed or reimplemented system Components can be designed in-house and deployed in a newly developed or reimplemented system Object-Oriented Analysis and Design with the Unified Process


Download ppt "Deployment Activities to make a new system operational"

Similar presentations


Ads by Google