Download presentation
Presentation is loading. Please wait.
Published byDwayne Pearson Modified over 9 years ago
1
CPSC 2150 August 21, 2015
2
Chapter 1 Object Oriented Software Development This is an introductory course In this chapter we will look at 3 topics Challenges of software development Software Development Activities Desirable qualities of software products
3
Challenges What do you think challenges of software development might be?
4
Challenges Software packages are no longer small Larger packages means software more complex requiring teams of programs; thereby increasing ?what? Debugging and testing Higher expectation from clients
5
Software Development Activities SD involves much more than writing code Software Documentation Project requirements specification Architecture and design documents Installation and user manuals
6
Steps Involved in SD Software Development Life Cycle (SDLC) Requirements analysis Design Implementation and Unit Testing Integration and System Testing Maintenance
7
Requirements Analysis Goal: to establish the functions, services, and constraints of the software to be developed. (define the problem) Two types Customized software – for one specific customer Commercial “shrink-wrapped” - to be sold Two categories of requirements Functional – What is the software suppose to do Non-Functional – What constraints does the software operate under
8
Design Goal: construct a solution to the problem by establishing an overall architecture of the software by Partitioning the software into components or subsystems Identifying the relationships and dependencies among them Two categories of design System design – breaking into manageable components Detail design - creating the solution to each component
9
Implementation and Unit Testing Implementation is the realization of the actual code Implement each component separately Test each component indivicually
10
Integration and System Testing Putting all components together and testing the system as a whole Ensures the system meets the system specifications
11
Maintenance This step involves activities after the software has been delivered Activities include Correcting bugs Improving performance Enhancing functions or services Adapting to new environments Longest and most costly activity in the life cycle
12
Software Development Processes Involves when and how to complete the steps in the SDLC Options Waterfall method – each step is completed before you move on to the next step - not realistic Iterative design process Rational Unified Process (RUP) Extreme Programming (XP)
13
Iterative Design Introduced in 1994 by Software Engineer, Grady Booch Goal: use a number of successive iterations of the following steps: Identify a necessary class Identify the attributes and behaviors of the class Identify the relationships between the classes Define a class interface Implement the class
14
Iterative Design Each iteration deals with a small portion of the system until the whole system is complete This process follows the following phases AnalysisModelingDesignImplementationMaintenance Became known as the Rational Unified Process(RUP)
15
Iterative Design Each iteration deals with a small portion of the system until the whole system is complete Follows the following phases AnalysisModelingDesignImplementationMaintenance Became known as the Rational Unified Process(RUP)
16
Key Practices of RUP Develop software iteratively Systematically elicit, organize, and manage changing requirements Use component-based architecture Visually model software using UML Continually verify software quality Control changes to software
17
Extreme Programming XP A lightweight process – emphases producing high-quality executable code throughout the development process Small iterations that produces small bit of the overall system Each iteration improves the previous iteration until the entire system is built Relies heavily on refactoring to facilitate changes and enhancements Refactoring – restructures the code to improve the quality of the system
18
Key Practices of XP Planning Frequent and small release Metaphor when communicating with customer Simple design Test first Refactoring Pair programming
19
Key Practices of XP Collective ownership Continuous integration 40-hour weeks On-site customer Coding standards
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.