Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agile Software Distribution René Steg Steg IT-Engineering, Zurich (Switzerland) Session held by:

Similar presentations


Presentation on theme: "Agile Software Distribution René Steg Steg IT-Engineering, Zurich (Switzerland) Session held by:"— Presentation transcript:

1 Agile Software Distribution René Steg Steg IT-Engineering, Zurich (Switzerland) Session held by:

2 Why do I need Agile Software Distribution? Because you may have hundreds of servers with a high number of applications running on these servers have distributed applications in place allow manual changes on the runtime configuration of the application after installation not have a link between Software Configuration Management (SCM) and Software Distribution (SWD) document the installation-steps in plain-text... which makes the question: What Release of my application is running on which server ? very difficult to answer (if it can be answered at all)

3 1 st Step: Reorganize the way you do SWD Require referential builds for all of your applications Setup a team, which supports the software developers / engineers in creating the installation packages Store your server metadata in a repository, which can be easily accessed and queried Define and implement standards, how the applications have to be installed on your servers (e. g. applications must be delivered in Solaris Packaging Format)

4 Software Distribution Process Test / Runtime Software Distribution Development Referential Build Build Installations- Package Distribution / Installation Capacity Management Repository Executables, Install-Param. / Golden Copy/2 Installations-Package Silver Copy Server-Metadata Silver CopySilver Copy Installations-Package Server-Metadata Installation-Logs Source, Executables. / Golden Copy

5 Referential Build Repository Sources from Baseline Developer Compile / Build Source-Code Executables Check-in / Golden Copy Source / Executable Golden Copy Referential Build Build Installation- Package Distribution / Installation Capacity Management contains

6 Build Installation-Packages (Part 1) Repository Developer Executable / Install.-Parm. Golden Copy/2 Packaging- Specialist Installation- Parameters Golden Copy/2 Referential Build Build Installations- Package Distribution / Installation Capacity Management contains Source / Executable Golden Copy is derived

7 Build Installation-Packages (Part 2) Runtime- Code Repository Developer Build Packages Check-in / Silver Copy Packaging- Specialist Package Installation- Parameters, Executables Install-Packages Silver Copy Referential Build Build Installations- Package Distribution / Installation Capacity Management contains Source / Executable Golden Copy is derived Executable / Install.-Parm. Golden Copy/2 contains is derived

8 Capacity Management Repository Server- Metadata Environment Manager Server – Product Assignment Environment Manager Server is assigned contains Referential Build Build Installations- Package Distribution / Installation Capacity Management Source / Executable Golden Copy Developer Package Silver Copy contains is derived Executable / Install.-Parm. Golden Copy/2 is derived contains

9 Distribution / Installation Repository Distribution- Order Environment Manager Distribution Manager Server Package Installation-Status Server contains is installed Referential Build Build Installations- Package Distribution / Installation Capacity Management Source / Executable Golden Copy Server is assigned Package Silver Copy contains is derived Executable / Install.-Parm. Golden Copy/2 is derived contains

10 Automating the Processes Automate the Build-Process –Using a SCM-Tool, this task will be a lot easier –Always use a Baseline for the automatic Builds (else it wont be referential!) Automate the Package-Creation –Check, which software-products in your company may be installed in the same way and create the packages for these application automatically –Version the installation-parameters (these are part of the software configuration anyway) Scan Hardware-Data automatically –Try to minimize manual data-entry for hardware, to keep the hardware- inventory up-to-date and store these data in a repository as well Automate the Distribution- and Installation-Processes –Try to eliminate any manual interaction for a distribution / installation –De-Installation must also be automated –Keep the installation fast, using a delta-distribution mechanism

11 And whats the benefit? Software Distribution gets agile, even with hundreds of servers in a large enterprise The question: What Release of my application is running on which server ?, may be answered with some clicks using a web-report The same application-release is always installed the same way Back-out scenarios are easier to implement The distribution-process is a one-button-only-click, if the metadata has been pre-defined once in the repository and therefore the Distribution Manager does not need to know the installation sequence of the application CMMI-Level 3 may be reachable, because to implement and automate Software Distribution successfully, it is essential, that the processes are: –Documented –Standardized –Repeatable

12 Recommendations Define standards, policies and naming conventions (Programs love conventions!) Reduce special-engineering and minimize the number of different middleware and operating-systems on your servers (programs hate exceptions! And so do your programmers) Use a repository which keeps your metadata of your distribution activities together Use the automated distribution mechanism already in the testing phases, this way the installation packages are also tested in early stages Use the SWD system for the entire software-stack of your server (operating system, middleware and business-application) Link the source (Golden Copy) and the installation-unit (Silver Copy), so you know immediately, which source to change in an error-case (Best Practice: there is a link between source-code, derived object and installation package) Define an emergency-scenario, in case the automatic SWD is not available Do not allow ANY manual changes on the servers (exception: emergency- scenario) Performance: If you want your developers to use the SWD in early stages, be aware, that the process must be fast (data model, delta-deploy etc.) Reports are important, not only for your management, but also for other roles involved in the entire application life-cycle.

13 Thanks for your attention and have a nice day!


Download ppt "Agile Software Distribution René Steg Steg IT-Engineering, Zurich (Switzerland) Session held by:"

Similar presentations


Ads by Google