191 likes | 444 Views
Approaches to Systems Development. Chapter 8. Outline. Introduction Systems Analyst Ch 8 - Approaches to System Development SDLC Phases & Core Processes Approaches: Predictive & Adaptive Methodology Software Construction & Modeling Approaches Structured A&D Object-oriented
E N D
Approaches toSystems Development Chapter 8
Outline • Introduction • Systems Analyst • Ch 8 - Approaches to System Development • SDLC • Phases & Core Processes • Approaches: Predictive & Adaptive • Methodology • Software Construction & Modeling Approaches • Structured A&D • Object-oriented • Agile Development
Systems Analyst • Organizational role most responsible for analysis and design of information systems. • Translates a _________ __________ into an ___________ ___________ ___________ . • Job Titles • vary by organization; read the job description • Systems Analyst • Business Analyst (client-facing)
Systems Analyst …more of a business problem solver than a technical programmer
Systems Development Project • Is a planned undertaking • Has fixed beginning and end • Produces desired result or product • Varies in size
SDLC: Systems Development Life Cycle • Provides overall framework for managing systems development process • All projects use some variation of SDLC Ch 9 Ch 9 Ch 2-5 Ch 7,10-12 Ch 13 Ch 13
2 Approaches to the SDLC Predictive SDLC Adaptive SDLC • Waterfall Model • Modified Waterfall • Spiral Model • Incremental Development • Assumptions • can be planned in advance • system can be developed according to the plan • Assumptions • Iterative • Must be flexible & adapt
Predictive Approaches Waterfall • One phase begins when another completes; Specifications are frozen ProjectInitiation ProjectInitiation Problems • System requirements “locked in” • Limited user involvement • Too much focus on milestone deadlines Planning Planning Analysis Analysis Design Design Implementation Implementation Deployment Deployment Modified Waterfall • Overlapping phases • Can go backwards Support Support
Adaptive Approaches: Spiral Model • An iterative approach • Spiral until project completion • Then, deployed! • Project Management: • managed differently than a waterfall approach
Adaptive Approaches: Incremental Development • Also, an iterative approach • BUT… • System is built in small increments; it is "grown" • As an iteration is completed it is integrated to the whole • Partially deployed in steps • Advantage • some functionality gets into the user's hands much earlier
Methodology • A comprehensive guideline to follow for completing every SDLC activity • Abstraction used • to separate out • aspect • Software to • create models • or other project • components Guidelines or instructions
2 Approaches to Software Construction & Modeling • Structured Approach • analysis, design & programming • Object-oriented Approach • analysis, design & programming
Software Construction & Modeling:Structured Approach Structured Analysis Structured Design Structured Programming • Define processing requirements • Define data requirements • Define inputsand outputs • Define how functions work together to accomplish tasks • Determines set of programs • Purpose of each • Organization of programs • Main principles: • Loosely coupled • Highly cohesive • Each program has one beginning & one ending • Uses 3 constructs: • Sequence • Decision • Repetition • Improvements: • program quality • easier to maintain
Software Construction & Modeling:Object-Oriented Approach Views information system as a collection of interacting objects that work together to accomplish tasks • OOA, OOD, OOP • OO languages • C++, Java, C# • Benefits • Reuse!
Agile Development • A guiding philosophy and set of guidelines for : • developing information systems in an unknown rapidly changing environment • Complements Adaptive SDLCs & Methodologies • makes sure developers are fast to respond to changes “Manifesto for Agile Development” agilemanifesto.org • Value responding to change over following a plan • Value individuals and interactionsover processes and tools • Value working software over comprehensive documentation • Value customer collaboration over contract negotiation