290 likes | 301 Views
Learn the basics of Software Development Lifecycle (SDLC) and gain a fundamental understanding of the processes and vocabulary involved. This session aims to enhance education and communication between IT professionals and business people.
E N D
Session # 49 Software Development Lifecycle for Business People Holly Hyland Jim McMahon
Goals for Session • Convey basic information about the Software Development Lifecycle (SDLC) • Identify basic processes and a basic vocabulary regarding (SDLC) • Identify sources for additional information.
History of this Session • This session suggestion came from IT professionals at last years Conference. In the same way that we offer Financial Aid 101 for IT staff, they wanted a session on SDLC for business people – to enhance education and communication.
SDLC Process • Develop Requirements • Determine Architecture • Implement New Code or Changes • Test System Functionality • Deploy New Functionality
Vocabulary - Models • Waterfall (sequential) • Requirements, design, implement, test, integration, and maintenance • Iterative (cyclical) • Agile • Rational Unified Process (RUP) • Rapid Application Development) (RAD)
Develop Requirements • Complete • Consistent • Prioritized • Structured • Traceable
Determine Architecture • Department of Defense Architecture Framework (DODAF) – standard way to organize an enterprise architecture into a complimentary and consistent view. • Zachman Framework – formal and highly structured way of defining an enterprise. • Federal Enterprise Architecture – common methodology for IT within government.
Implement New Code or Changes • Computer Programming – process of writing code. • Source Code – sequence of statements or declarations written in a programming language. • Programming Language – artificial language used to control the behavior of a machine. • Cobol • Java
Test System Functionality • Testing Traceability Matrix – mapping the requirements to the test cases. • Test scripts – scenarios designed to test a system. • Regression Testing – ensuring that adding new functionality did not result in “breaking” what worked before. • User Acceptance Testing – the process of testing with functional users. • Integration Testing – the process of testing new functionality
Identified in BRD Test Area Scenario Date Tested Notes Award Classification Testing Test for generation of single honours qualification (all possible classifications according to the weighting for the award). Schools to run tests for production of classifications for all the scenarios they have. Test for generation of combined honours in two disciplines qualification (all possible classifications according to the weighting for the award). Schools to run tests for production of classifications for all the scenarios they have. Test for group honours qualification generation (all possible classifications according to the weighting for the award). Schools to run tests for production of classifications for all the scenarios they have. Test for Integrated Masters with honours qualification (all possible classifications according to the weighting for the award). Schools to run tests for production of classifications for all the scenarios they have. User Acceptance Test Cases
Vocabulary – Supporting Disciplines • Configuration Management – revision control. • Documentation – written text that accompanies computer software. • Software Quality Assurance – monitor software engineering process usually via audits. • Project Management – discipline of organizing and managing resources so that projects have a defined scope, quality, time and costs constraints. • User Experience Design – designing to a users satisfaction.
Vocabulary - Standards • ISO 12207 – lifecycle for software. • CMM or CMMI – capability maturity model integration. • ISO 9000 – quality management systems. • ISO 15504 (SPICE) – software process improvement and capability determination. • Six Sigma (manufacturing-oriented) – practices to systematically improve processes.
Additional Information • Do a google search on SDLC – you will find Software Development Lifecycle and System Development Lifecycle. Both define process methods. • Visit Wikipedia and search on SDLC
Suggested Questions • Hey<name>, for the 2008-2009 AY, do we need to develop or adjust our standard templates for requirements gathering so that we improve our SDLC process?
Suggested Questions • Hey<name>, do we practice a waterfall or iterative process for our SDCL? Or do we use both processes depending on the expected changes?
Suggested Questions • Hey<name>, I know that you’re going to need FAO input for the 2008-2009 changes. Can we get together to develop a project plan? I want to make sure that you have the resources you need for requirements gathering and testing.
Contact Information We appreciate your feedback and comments. We can be reached at: Holly Hyland • Phone: 202.377.3710 • Email: Holly.Hyland@ed.gov Jim McMahon • Phone: 202.377.3124 • Email: James.McMahon@ed.gov