Download presentation
Presentation is loading. Please wait.
Published byOscar Page Modified over 8 years ago
1
Copyright © 2015-2016 Curt Hill Software Development Methodology What do you need to know?
2
Introduction Some of this should be a review from previous courses We will consider the process of Software Development You should know something already on all of these topics Copyright © 2015-2016 Curt Hill
3
What is Engineering Engineering is the application of mathematics, empirical evidence and scientific, economic, social, and practical knowledge in order to invent, innovate, design, build, maintain, research, and improve structures, machines, tools, systems, components, materials, and processes. Copyright © 2015-2016 Curt Hill
4
Software Development Not the only topic of Software Engineering –Arguably the most important There are many other topics, but if there is no software development, would any of the the rest be of interest? Copyright © 2015-2016 Curt Hill
5
What tasks? There are various things that need to go on during development: –Requirements and Specifications –Development –Validation –Maintenance –Enhancement Other sets of terms are also possible Each of these could have other sequences Copyright © 2015-2016 Curt Hill
6
Who? There are several groups all of whom are stakeholders in the process It is easiest to divide into two groups –Those who will develop and maintain –Those who will use Communication between the two is essential Copyright © 2015-2016 Curt Hill
7
Plural Not Singular The stakeholders are typically plural in both groups What software is used by one person only? –In general this course is not interested in such projects What software is developed by one person? –Many cases but far from the majority –Again, this course is mostly interested in team developed software Copyright © 2015-2016 Curt Hill
8
Teams The Declaration of Independence asserts that all men are created equal –This is a legal point of view In general, each person has different: –Skills, experience, intelligence etc. We may also fulfill different roles One of the keys of personal success is to understand what you are good at and what you like to do Copyright © 2015-2016 Curt Hill
9
Methodology Definition: a body of methods, rules, and postulates employed by a discipline : a particular procedure or set of procedures A software development methodology is a system that organizes software development work –This usually defines phases, processes and roles Copyright © 2015-2016 Curt Hill
10
Methodologies Many software development methodologies: –Waterfall –Prototyping –Iterative and incremental development –Spiral development –Rapid application development –Extreme programming –Many flavors of agile development Each of these work in right situation We will cover several Copyright © 2015-2016 Curt Hill
11
Processes not Products A Software Development Methodology is not a product In a product: –You pick from one of several –Once chosen everything is now determined It is a process –Each enterprise or team can modify the process –Pick some things out of one and some from another Copyright © 2015-2016 Curt Hill
12
Business Processes There are very many business processes –Such as accounts receivable Everyone starts out doing it their own way Eventually these ways improve and often converge –These become the best practices This convergence has not yet happened in software development methodologies Copyright © 2015-2016 Curt Hill
13
What is next? There is a series of presentations on various methodologies Each one will attempt to briefly describe how this methodology operates We contrast and compare these Copyright © 2015-2016 Curt Hill
14
Finally What should we be looking for? Each methodology will have different approaches for: –The team roles –The processes used –The timing of the process –Among others What you need to understand is their basic workings and how they compare Copyright © 2015-2016 Curt Hill
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.