Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2011 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Application Lifecycle Management (ALM) Methodologies and.

Similar presentations


Presentation on theme: "© 2011 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Application Lifecycle Management (ALM) Methodologies and."— Presentation transcript:

1 © 2011 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Application Lifecycle Management (ALM) Methodologies and Tools Roundtable Peter Mellow, VP ADP Development Sunil Belgaonkar, Software Architect

2 © 2011 Progress Software Corporation. All rights reserved. 2 Session ID: Session Title Agenda  Purpose and Goals  Development processes and tools  Agile Development process and tools  Application packaging and deployment  Wrap up and next steps

3 © 2011 Progress Software Corporation. All rights reserved. 3 Application Lifecycle Management

4 © 2011 Progress Software Corporation. All rights reserved. 4 Purpose Of The Meeting  Get a broad understanding of the challenges  Discuss different processes and tools used by customers  Define scope of tools and development methodologies  Where do we go from here?

5 © 2011 Progress Software Corporation. All rights reserved. 5 Welcome and Introductions  Please provide your name  Goals you would like to achieve from this meeting?

6 © 2011 Progress Software Corporation. All rights reserved. 6 ALM Components Requirements management Architecture Development, Build and Testing Issue and resource tracking Release management Deployment What else?

7 © 2011 Progress Software Corporation. All rights reserved. 7 Session ID: Session Title Agenda  Purpose and Goals  Development processes and tools  Agile Development process and tools  Application packaging and deployment  Wrap up and next steps

8 © 2011 Progress Software Corporation. All rights reserved. 8 Development Process Workflow

9 © 2011 Progress Software Corporation. All rights reserved. 9 Source Development Tools  Progress Developer Studio for OpenEdge  Web tools  Other Plug-ins e.g. Source code generators etc…

10 © 2011 Progress Software Corporation. All rights reserved. 10 Version Control  Revision control, also known as version control or source control is the management of changes to documents, programs, and other information stored in file system Best Practices: Set up change notifications Version control is not a backup system Use branches Write good commit messages

11 © 2011 Progress Software Corporation. All rights reserved. 11 Version Control Tools Comparison

12 © 2011 Progress Software Corporation. All rights reserved. 12 Continuous Integration  Continuous Integration is a software development practice where members of a team integrate their work frequently. Each integration is verified by an automated build to detect integration errors as quickly as possible. Best Practices: Maintain single source repository Automate build process Commit changes to mainline everyday Build mainline on integration machine Keep the build fast Test in a clone of production environment Automate deployment

13 © 2011 Progress Software Corporation. All rights reserved. 13 Continuous Integration Tools Comparison ToolVendorAvailability SCM Support Build ToolsPlug-in availability Jenkins/ HudsonEclipse/OracleOpen SourceYesAnt, MavenEclipse Cruise ControlGNUOpen SourceYesAnt, MS BuildEclipse GoThought WorksCommercialYes Team Foundation Server MicrosoftCommercialBuilt-inMS BuildVisual Studio BambooAtlassianOpen Source / Commercial YesMaven, Ant, MS Build Eclipse, Visual Studio and IntelliJ Electric Commander Electric CloudCommercialYesEclipse and Visual Studio CodeBeamerCommercialYesAnt, Hudson and Maven Eclipse and NetBeans Team CityJetBrainsFree / Commercial YesEclipse, Visual Studio and IntelliJ

14 © 2011 Progress Software Corporation. All rights reserved. 14 Testing  The process of validating and verifying that a software program / application / product: –meets the requirements that guided its design and development; –works as expected; and –can be implemented with the same characteristics.  Types of testing –Unit Testing - individual classes and methods –GUI Testing - interactive elements –Smoke Testing - software will not crash outright –Integration Testing - modules tested as a group –System Testing - compliance with requirements –Regression Testing - new errors resulting from ongoing changes –Load Testing - measuring response under load –Usability Testing - usability of the application –Security Testing - prevents unauthorized use

15 © 2011 Progress Software Corporation. All rights reserved. 15 Software Testing Tools

16 © 2011 Progress Software Corporation. All rights reserved. 16 OpenEdge Focused Development Tools  Progress Developer Studio for OpenEdge –Eclipse based IDE or modeling and writing ABL applications.  RoundTable –RoundTable is a software configuration management and source code control solution focused on OpenEdge applications.  Build/Compile –PCT (Progress Compilation Tools) is a set of ANT tasks, designed to build OpenEdge applications.  Unit testing –It is a method by which individual units of source code are tested to determine if they are fit for use. There are two xUnit based frameworks, oeunit and prounit available for OpenEdge.  Static program analysis –ProLint is a language parser and set of customizable source code analysis rules for detecting problems and standards violations in ABL code.

17 © 2011 Progress Software Corporation. All rights reserved. 17 ALM Products Tool Vendor AvailabilityIntegration Support MKS IntegrityMKS Inc.CommercialEclipse and Visual Studio IBM Rational Team Concert* IBMCommercialEclipse, Visual Studio, NetBeans and IBM RAD Visual Studio Application Lifecycle Management MicrosoftCommercialVisual Studio Thought Works Agile ALM (Suite) Thought WorksCommercialEclipse Mylyn and Visual Studio Seapine ALMSeapine SoftwareCommercial HP Application Lifecycle Management Software HP Software DivisionCommercial JIRA*AtlassianCommercial /OpenSource Eclipse and IntelliJ

18 © 2011 Progress Software Corporation. All rights reserved. 18 Development Tools Discussion  What development tools (for different technologies) are you using in your environment?  What other plug-ins are you using in your environment?  Does it meet your needs?  Is it integrated into your build process?

19 © 2011 Progress Software Corporation. All rights reserved. 19 Version Control Discussion  What version control product are you using in your environment?  Does it meet all your needs?  Is it integrated into your development tools?  Is it integrated into your build process?

20 © 2011 Progress Software Corporation. All rights reserved. 20 Continuous Integration Discussion  Does your development process include continuous integration?  Are you using a continuous integration product?  Are your other development practices built on the benefits/hurdles of your build process?

21 © 2011 Progress Software Corporation. All rights reserved. 21 Software Testing Discussion  Topics to discuss  Unit Testing  GUI Testing  Load Testing  Questions  What testing tools are you using in your environment?  Does it meet all your needs?  Is it integrated into your development tools?  Is it integrated into your build process?

22 © 2011 Progress Software Corporation. All rights reserved. 22 Session ID: Session Title Agenda  Welcome  Development processes and tools  Agile Development process and tools  Application packaging and deployment  Wrap up and next steps

23 © 2011 Progress Software Corporation. All rights reserved. 23 Agile Development/Manifesto  Style of software development that emphasizes customer satisfaction through continuous delivery of functional software.  Based on a variety of iterative development disciplines including extreme programming (XP)  Agile methods put developers to work in small teams to tight budgets and short timescales Agile Principles: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan

24 © 2011 Progress Software Corporation. All rights reserved. 24 Agile Best Practices  Common Coding guidelines  Code Refactoring  Code Regression Testing  Continuous Integration  Test Driven Development  Active Stakeholder participation  Pair Programming  Take a breadth-first approach  Smaller is better

25 © 2011 Progress Software Corporation. All rights reserved. 25 Discussion  What agile methodologies have you adopted?  What benefits have you seen?  Do you follow one of the standard agile systems such as scrum, XP, AUP, DSDM, FDD or another one?  Are you using an ALM tool that assists with your agile methodology?  Have you provided any formal agile development training to your developers and product owners?

26 © 2011 Progress Software Corporation. All rights reserved. 26 Session ID: Session Title Agenda  Welcome  Development processes and tools  Agile Development process and tools  Application packaging and deployment  Wrap up and next steps

27 © 2011 Progress Software Corporation. All rights reserved. 27 Application Packaging  Application packaging is the process of identifying application components and determining how the components should be installed and configured on client workstations. Best Practices: Avoid hard coding of paths Provide uninstall capability Provide rollback mechanism Provide silent installers

28 © 2011 Progress Software Corporation. All rights reserved. 28 Software Deployment  The general process that has to be customized according to specific requirements or characteristics to make a software system available for use. Synaptic Package Manager Advanced Packaging Tool Portage Cygwin Web Client Application Assembler Windows MSI InstallShield

29 © 2011 Progress Software Corporation. All rights reserved. 29 Discussion  How do you do packaging?  How do you do deployment?  What packaging/deployment tool are you using?  How “hands-on” are each of the steps?

30 © 2011 Progress Software Corporation. All rights reserved. 30 Session ID: Session Title Agenda  Welcome  Development processes and tools  Agile Development process and tools  Application packaging and deployment  Wrap up and next steps

31 © 2011 Progress Software Corporation. All rights reserved. 31 Next…  Where would you like to go from here?

32 © 2011 Progress Software Corporation. All rights reserved. 32 Goals of working group  Identify key tools by understanding different processes  Recommendation for the tools  Document best practices / non-practices

33


Download ppt "© 2011 Progress Software Corporation. All rights reserved. 1 Click to edit Master title style Application Lifecycle Management (ALM) Methodologies and."

Similar presentations


Ads by Google