1 / 20

Software development process improvement Ville Wettenhovi

Software development process improvement Ville Wettenhovi. Master thesis presentation Supervisor: Professor Jukka Manner Instructor: M.Sc. Markus Aalto Date: 23th of April. Outline. Objectives of the thesis Process models available Current process in the Company

tomai
Télécharger la présentation

Software development process improvement Ville Wettenhovi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software development process improvement Ville Wettenhovi Master thesis presentation Supervisor: Professor Jukka Manner Instructor: M.Sc. Markus Aalto Date: 23th of April

  2. Outline • Objectives of the thesis • Process models available • Current process in the Company • Comparison between processes from company’s point of view • New process model for the Company

  3. Objectives of the thesis • The objective of this thesis was to study different software development processes and models • Present current models used in the example Company and point out weakness in current process used. • Define a new or improved software development method for the company and give instructions for further development of the chosen method.

  4. Software process models • What is software process? • Waterfall model • Iterative model • Incremental model • Rapid Application Development (RAD) • Extreme Programming (XP) • Scrum

  5. What is software process? • Software process contains the rules by which the software development project is carried out • Definition and usage of software process is the key for high quality software • There are many general process models available which are suitable for different environments

  6. Waterfall model • Traditional model • Requirement phase is the basis • Document oriented • Strict milestones

  7. Iterative & Incremental model • In Iterative model waterfall model is repeated several times, until the software is fully implemented. • Incremental development model is a method where the SW is designed, implemented and tested incrementally • This model combines the elements of the waterfall model but the software is delivered to the customer as several versions

  8. Rapid Application Development (RAD) • Development takes place in a series of increment • Prototype model • Customer oriented model • After prototyping, customer acceptance and installation

  9. Extreme Programming (XP) • XP is one of several agile process • Target of XP process is to deliver the software customer need now • XP demands developers to confidently respond to changing customer requirements • XP consist of twelve practices

  10. Extreme Programming (XP)

  11. Scrum • Scrum use similar practices than XP and other agile methods. • It highlights communication, adapting to changes, incremental development and maximal testing. • All work is done in Sprints. • Each sprint is an iteration of approximately of 30 calendar day. • Scrum team: Product owner, Scrum master, developers, testers, document specialist

  12. Scrum

  13. Current process in the Company • The Company is developing telecommunication software for telecommunication operators which are operating around the world • Company has platform, product and custom development methods • Product development uses waterfall model • Custom development uses light version of waterfall • Current problem is long development cycles (~a year)

  14. Comparison between processes from company’s point of view • Iterative model is almost the same than current model • Incremental model • Costs are known before the project • Customer can see parts of the software as ready and can respond to any failures • Gives room for poor requirements • Disadvantage is that testing and especially regression test efforts will increase • Ideal for Custom development

  15. Comparison between processes from company’s point of view • RAD mainly being prototype is not suitable for the company • Company is not making new products • Cost and schedule are unknown • Poor and non standard documentation

  16. Comparison between processes from company’s point of view • XP is flexible and provides possibility to early builds • XP model works well in user oriented world like web. In telecommunication field where specifications are important, it’s not the best approach • Too much dependence to other people which makes it challenging to implement in practice • Pair programming and Test Driven Development might not work in the current organization

  17. Comparison between processes from company’s point of view • Scrum suits well for project which needs to be built fast • Release cycle would dramatically decrease • Suits well with current company culture • Scrum is not best used with multisite team in develop projects • From company’s point of view scrum would be ideal for product development (road map) releases.

  18. New custom development process • Incremental model • Target to be flexible but also increase the quality of each phase • Formal reviews after each phase

  19. New product development process • Based on Scrum methodology • Product backlog is a product feature roadmap list • Scrum team 5-10 people • Sprint backlog decided by the team with Product owner • Sprint is a 2-6 weeks period • Daily scrum practice, 15min meeting

  20. Conclusion • Scrum and iterative models was chosen • In the optimal case, the time-to-market can be only 1-2 month • Topics for further studies • Specifying a detailed plan for implementing the actual recommendations • Planning and setting up the metrics for measuring processes • How to improve quality of the requirements

More Related