CST 316 Process. Junior Project Process Provide necessary points of communication for individual effort. Allow a controllable division of labor. Divide.

Slides:



Advertisements
Similar presentations
Basic SDLC Models.
Advertisements

Prescriptive Process models
Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
CHAPTER 3 SOFTWARE LIFE-CYCLE MODELS.
Lecture # 2 : Process Models
SOFTWARE PROCESS MODELS. Software Process Models  Process model (Life-cycle model) -steps through which the product progresses Requirements phase Specification.
Software Process Models
SDLC Software Development Life Cycle. SDLC Acronym for system development life cycle. Acronym for system development life cycle. Is the process of developing.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
Software Process Models
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
The “Lifecycle” of Software. Chapter 5. Alternatives to the Waterfall Model The “Waterfall” model can mislead: boundaries between phases are not always.
Chapter 10 Schedule Your Schedule. Copyright 2004 by Pearson Education, Inc. Identifying And Scheduling Tasks The schedule from the Software Development.
Gu & Maher University of Sydney, October 2004 DECO2005 Monitoring Team Process.
COMP 6710 Course NotesSlide 2-0 Auburn University Computer Science and Software Engineering Course Notes Set 2: Software Process Models Computer Science.
Software Engineering.
Object-oriented Analysis and Design
Chapter 6 Systems Development.
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Software Lifecycle Software Lifecycle Basics Lifecycle Models Methods and Tools.
Chapter 2- Software Process Lecture 4. Software Engineering We have specified the problem domain – industrial strength software – Besides delivering the.
Software Life Cycle Model
Ch 2: Software Life-Cycle Models CSCI Ideal Software Development.
1 CMPT 275 Software Engineering Software life cycle.
Chapter 2 The process Process, Methods, and Tools
Software Project Management Introduction to Project Management.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
CSE 308 Software Engineering Software Engineering Strategies.
Rapid Application Development. What is RAD……..?  Rapid Application Development (RAD) is a software development process.  first developed during the.
Prescriptive Process Models Jon Walker. Prescription? What does prescriptive mean?
Lecture 1 Introduction, Fundamentals, Classic Mistakes 1.
Software Engineering II Lecture 3 Fakhar Lodhi. Software Life-Cycle Steps Life-cycle model (formerly, process model) –Requirements phase –Specification.
Project – A Quick Tutorial Krishna Sainath Meda. PROJECT  A task assigned to a set of people or teams to be completed within a time frame  Any project.
SOFTWARE LIFE-CYCLE MODELS
Lecture 2 –Approaches to Systems Development Method 10/9/15 1.
Slide 3.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Engineering - Abdul Majeed. What is software? Definition of Software Engineering Software Process Generic view of Software Engineering Software.
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Software Engineering At Glance. Why We Need Software Engineering? The aim of software engineering is to solve the software crisis Software is delivered.
Stand Up Comedy Project/Product Management
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
CS223: Software Engineering Lecture 4: Software Development Models.
Software Engineering Process Models Models for Guiding the Development of Software.
Chapter 1: Introduction Omar Meqdadi SE 3860 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Systems Development Life Cycle
Introduction to Project management and Principles.
Chapter 2- Software Development Process  Product Components  Software Project Staff  Software Development Lifecycle Models.
Slide 3.1 © The McGraw-Hill Companies, 2002 SOFTWARE LIFE-CYCLE MODELS.
1 Project Management Skills Leadership Communications Problem Solving Negotiating Influencing the Organization Mentoring Process and technical expertise.
Introduction to Systems Analysis and Design
Methodologies and Algorithms
Project Management Chapter 3.
Managing the Project Lifecycle
CS 5150 Software Engineering
SNS College of Engineering Coimbatore
CSE 403 Software Engineering
Software Myths Software is easy to change
V-Shaped SDLC Model Lecture-6.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
SDLC Model A framework that describes the activities performed at each stage of a software development project.
Software Engineering Lecture 18.
Software life cycle models
Baisc Of Software Testing
Software Engineering Lecture 17.
Rapid Application Development (JAD)
Presentation transcript:

CST 316 Process

Junior Project Process Provide necessary points of communication for individual effort. Allow a controllable division of labor. Divide and Conquer Split the drudgery pieces of a project among the team members No single member does all the “yucky” stuff Split the cool stuff among the team members Spread the glory across the entire team

Rapid Development 4-Part Strategy 1. Avoid Classic Mistakes – Don’t repeat history 2. Apply sane development fundamentals – What are some? 3. Manage Risks – What are software project risks? 4. Manage time through schedules. Adapt schedules to reflect reality – What is reality?

Rapid Development Four Dimensions of Software Development 1. People 2. Process 3. Technology 4. Product

Rapid Development Four Dimensions of Software Development People – Teams will make or break a project. Small team communication and interaction is a key element in software development. Small teams of Top Talent are better than larger mixed teams. Fit tasks to skills and motivation of team members. Help team members advance professionally as well as personally Build teams of people that compliment and harmonize together Face team member problems early and solve them

Rapid Development Four Dimensions of Software Development Process – The methodology and sequence of events used to organize software development efforts and extract software development artifacts. Do not over organize process rules (never get caught in “Analysis Paralysis”) Avoid the “All Powerful Process Tsar” Define good development fundamentals: Requirements Analysis Design/Modeling Coding/Implementation Testing/QA Define, track, and handle project risks

Rapid Development Four Dimensions of Software Development Technology – The “stuff” we use to build a system. Avoid the “Silver Bullet Syndrome” – “Of all the monsters who fill the nightmares of our folklore, none terrify more than werewolves. They transform unexpectedly from familiar to horrors.” Technology to solve a problem, seen as a “silver bullet”, can easily become the “werewolf” we wish to eradicate! This is what is known as the “bleeding-edge” of technology.

Rapid Development Four Dimensions of Software Development Product – What exactly are we trying to build? Define system scope What does the customer really want? Where do the boundaries of the system reside? Never build what can be bought or obtained and integrated. Requirements Gather and catalog what the user wants. Categorize these so the necessary components will be a high priority. Define schedules based on these priorities.

Development Process Well-defined development processes are important and necessary to achieve the goals. Well-defined software processes can greatly reduce the cost of fixing errors later in the development cycle. The key part of development process is everybody on the team has buy-in and the process is well understood. All approaches are viable and will produce results.

Early Defect Removal

“Software Process” Committing all requirements to writing. Using a systematic procedure to control additions and changes to the software’s requirements. Conducting systematic technical reviews of all requirements, designs and source code. Developing a systematic Quality Assurance Plan in the very early stages of the project that includes a test plan, review plan and defect tracking plan.

“Software Process” Creating an implementation plan that defines the order in which the software’s functional components will be developed and integrated. Using automated source code control. Revising cost and schedule estimates as each major milestone is achieved. Completion of requirements analysis Completion of architecture and detailed design Completion of each implementation stage

Development Activity Distribution

Phases of Software Lifecyle Requirement Phase Specification/Analysis Phase Design Phase Implementation Phase Integration/Testing Phase Maintenance Phase Retirement

Cost of Software Lifecycle

Software Development Activity Distribution

Software Project Players Client Developer User

Build-and-Fix Model

Waterfall Model (Salmon Model?)

Prototyping Model

Incremental Model

Synchronize-and-stabilize model Mainly used by Microsoft Similar to incremental model Interviewing numerous potential customers during requirement analysis phase for a list of features Divide the features into 3 or 4 builds Synchronize work from teams Stabilize each build

Spiral Model