Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Engineering Basics Software Engineering Learning Program Track 1.1 – SE Foundation.

Similar presentations


Presentation on theme: "Software Engineering Basics Software Engineering Learning Program Track 1.1 – SE Foundation."— Presentation transcript:

1 Software Engineering Basics Software Engineering Learning Program Track 1.1 – SE Foundation

2 SE Basics v 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

3 SE Basics v 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

4 SE Basics v 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  “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

5 SE Basics v 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

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

7 SE Basics v 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

8 SE Basics v But... Beware of the Dark Side...

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

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

11 SE Basics v Iterative

12 SE Basics v Increment Iterations – Refinement of Products Create Order Intent Description Intent Description Alternate Flow Create Order

13 SE Basics v 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

14 SE Basics v Process Evolution – Where are you? Structured OO CBD SOAIterative Waterfall Hacking

15 SE Basics v 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 ....

16 SE Basics v What SDLCs are used by CGEY?  LAD  SDM  IAD  RAD  DSDM  RUP  APER  RAPID ...

17 SE Basics v 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)

18 SE Basics v 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)

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

20 SE Basics v RUP Extensions CGEY: Deliver Project Management – plug-in

21 SE Basics v DSDM and RUP 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 Both:  Organization and/or project tested for feasibility  Iterative

22 SE Basics v 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!

23 SE Basics v ISO Certification IS : 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

24 SE Basics v CMM Certification  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” Initial Repeatable Defined Managed Optimizing

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

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

27 SE Basics v 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

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


Download ppt "Software Engineering Basics Software Engineering Learning Program Track 1.1 – SE Foundation."

Similar presentations


Ads by Google