1 / 28

Software Engineering Learning Program Track 1.1 – SE Foundation

Software Engineering Learning Program Track 1.1 – SE Foundation. Software Engineering Basics. Module Objectives. To understand popular Systems Development Lifecycles (SDLCs) and the value they add To understand the various contexts of SDLC usage

molly
Download Presentation

Software Engineering Learning Program Track 1.1 – SE Foundation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Engineering Learning ProgramTrack 1.1 – SE Foundation Software Engineering Basics

  2. Module Objectives • To understand popular Systems Development Lifecycles (SDLCs) and the value they add • To understand the various contexts of SDLC usage • To be familiar with associated Software Engineering (SE) roles • To establish a common understanding • a common foundation • speak the same language SE Basics v2.0 - 2

  3. Module Topics • What is a Systems Development Lifecycle (SDLC) • Why use an SDLC • The added-value of an SDLC • A high level overview of industry SDLCs • historical development • advantages and disadvantages per SDLC • Typical roles throughout an SDLC • Positioning Rational Unified Process (RUP) • Positioning ISO/CMM SE Basics v2.0 - 3

  4. What is an SDLC? • Software Engineering and Information Engineering • “Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software”. IEEE- 1993 • “Information Engineering is the application of an interlocking set of formal techniques for the planning, analysis, design and construction of Information systems on an enterprise wide basis or across a major sector of the enterprise”. James Martin • An approach to Systems Development with an engineering-type rigor SE Basics v2.0 - 4

  5. Why use an SDLC? • Customer driven quality • Global acceptance • Continuous improvement • Information Systems are the backbone of any company • To deliver information systems of high quality SE Basics v2.0 - 5

  6. The added-value of an SDLC deliver improve control modify repeat predict SE Basics v2.0 - 6

  7. The added-value of an SDLC - more • To provide an enterprise-wide framework for the development of software • To provide coordination among separate software projects • To involve end-users significantly in each phase • To help the long-term progress of systems • To match systems development with strategic goals of the project SE Basics v2.0 - 7

  8. But ... Beware of the Dark Side... SE Basics v2.0 - 8

  9. Waterfall SDM LAD PBS APER VSAP SEED ... Iterative IAD / RAD RUP Select Perspective Agile Methods DSDM eXtreme Programming (XP) A high level overview of industry SDLCs It seems that every combination of the alphabet results in a new method name.. SE Basics v2.0 - 9

  10. Waterfall ‘Throwing it over the Wall’ Feasibility/ Definition Analysis Conceptual Design Technical Design Implementation Test Deployment • = Formal deliverables and phased Go/No-Go SE Basics v2.0 - 10

  11. Iterative SE Basics v2.0 - 11

  12. Iterations – Refinement of Products Intent Description Intent Description Alternate Flow Create Order Create Order Increment SE Basics v2.0 - 12

  13. Benefits of Incremental Working Incremental/Iterative working builds in the ability to respond to change because of: • growing functionality with each increment • building on firm foundations • providing on time feedback • managing expectations SE Basics v2.0 - 13

  14. Process Evolution – Where are you? Structured OO CBD SOA Iterative Waterfall Hacking SE Basics v2.0 - 14

  15. Typical roles throughout an SDLC • Project Manager • Business Architect • Business Analyst • Systems Analyst • GUI Designer • Software Architect • Systems Designer • Database Designer (DBA) • Developer (Programmer) • Systems Tester • Data Administrator • .... SE Basics v2.0 - 15

  16. What SDLCs are used by CGEY? • LAD • SDM • IAD • RAD • DSDM • RUP • APER • RAPID • ... SE Basics v2.0 - 16

  17. Positioning RUP – where does RUP fit in? • Iterative approach • CGE&Y preferred approach for Systems Development • Combination of work by Booch, Rumbaugh and Jacobson • Built on Unified Modeling Language (UML) SE Basics v2.0 - 17

  18. Why RUP? • Accepted Software Development Process standard • common vocabulary & definitions • phases, disciplines, workflow, activities • guidelines and templates • best practices • Clients who ask for it or are interested • Ahold, Danzas, Philips, TNT, NS, CBS • ABN-AMRO, OHRA, Vola, Rabobank, etc. • We achieved successes applying RUP • faster sales of projects • increased productivity and quality • increasing trust • RUP is the CGEY Global standard (SDP-Deliver/RUP) SE Basics v2.0 - 18

  19. Time Content RUP RUP specifies 9Disciplines, all spanning all phases during several development -iterations. The height of the wave is an indication of degree of effort for this discipline. SE Basics v2.0 - 19

  20. CGEY: Deliver Project Management – plug-in RUP Extensions SE Basics v2.0 - 20

  21. DSDM = Method WHAT (decide yourself on HOW and documentation) Role description attitude stakeholders No tool-support RUP = Process & Method Not only WHAT also HOW Role description knowledge / capabilities or competences coupled on activities Tool support tool guidelines work guidelines Templates DSDM and RUP Both: • Organization and/or project tested for feasibility • Iterative SE Basics v2.0 - 21

  22. Positioning ISO and CMM • ISO – International Standards Organization • Quality Management Systems Assurance • over 100 member countries • public and private sectors • ISO IS NOT A DEVELOPMENT APPROACH ITSELF! • CMM – Capability Maturity Model • assesses the quality and maturity of an organization’s development approach and practices • CMM IS NOT A DEVELOPMENT APPROACH ITSELF! SE Basics v2.0 - 22

  23. IS0 9000 : 1994 & 2000 Focused on Quality Management Systems Assurance in: Requirements Design Development Production installation Servicing CGEY ADC and sectors addresses ISO through: Use Cases – RUP RDWs, JADs, and ASEs Structured Code Walkthroughs Documentation and testing Documentation and Procedures ISO Certification SE Basics v2.0 - 23

  24. Capability Maturity Models (CMM) Level 2 & 3 Software Engineering Institute (SEI) , sponsored by Department of Defense Envisions “The right software, delivered defect free, on time and on cost, every time” Optimizing Managed Defined Repeatable Initial CMM Certification SE Basics v2.0 - 24

  25. Optimizing Managed Defined Repeat- able Initial “Maturity” of an IT-organization • Defect Prevention • Process Change Management • Technology Change Management CMM • Quantitative Process Management • Software Quality Management • Organizational Process Focus • Organizational Process Definition • Integrated Software Management • Software Product Engineering • Intergroup Coordination • Training Program • Peer Reviews Key Process Areas per Maturity Level • Requirements Management • Software Project Planning • Software Project Tracking & Oversight • (Software Subcontract Management) • Software Quality Assurance • Software Configuration Management • Ad hoc processes SE Basics v2.0 - 25

  26. Maturity Assessment Framework (MAF) Optimizing Optimizing CMM Managed Managed Maturity Defined “To Be” Defined Repeat -able “As Is” Repeat- able evolution IT Gover- nance Operate Architec- ture Deliver Support Initial Initial Processes “Maturity” of an IT-organization – CMM .v. CGE&Y approach SE Basics v2.0 - 26

  27. Summary • Why use a Systems Development Lifecycle (SDLC) • The added-value of an SDLC • A high level overview of industry SDLCs • historical development • advantages and disadvantages per SDLC • Typical roles throughout an SDLC • Positioning Rational Unified Process (RUP) • Positioning ISO/CMM SE Basics v2.0 - 27

  28. Questions Ask me something I know, not something you don’t know. SE Basics v2.0 - 28

More Related