190 likes | 363 Views
Method, Platform and Quality decisions some recent practical experiences ( good and not so good ) Philip Verstraaten 18 June 2009. Overview. Background What is quality? Scenarios Method decisions Platform decisions Methods, platforms & quality Testing Thoughts for the future
E N D
Method, Platform and Quality decisionssome recent practical experiences(good and not so good)Philip Verstraaten18 June 2009
Overview • Background • What is quality? • Scenarios • Method decisions • Platform decisions • Methods, platforms & quality • Testing • Thoughts for the future • Questions - discussion
Background • My focus is on enterprise solution and product development • Passion to deliver a quality professional result • Questions and some answers • Structured Analysis (A) Design (D) Programming (P) • Object Oriented A – D - P • Information Engineering • Software Engineering - Computer Science • SDLC – PMLC – ITIL – CMM – TDD... • Balance quality and creativity in manufactured results
What is quality? • Quality management: product quality & how to achieve it • Quality control: systems to meet or exceed customer requirements • Quality assurance: processes to provide confidence in a product's suitability for its intended purpose • Acceptance criteria for end results: • comply with customer needs • within specified timeframes • customer management effective • internalised • maintainable • comply with standards • re-usable • zero defects – bugs • no rework – re-architecture
Scenarios Enterprise Jade solution with many applications Start up product development No source code controls, no SDLC, PMLC, no quality culture, coding focused Need to meet international industry standards Select methods, platform as a basis to re-organise and resource and to provide quality as defined earlier
Method decisions Method: end-to-end processes, techniques, tools, templates to achieve a specific desired outcome Systems Development Life Cycle (SDLC): Requirements to delivery processes Project Life Cycle Management (PLCM): management of governance and the SDLC process Theories vs practical application and use Agile, waterfall, scrum, hybrid, etc Agile in a waterfall way - Issues with $ sign off
Method decisions: selection Selection criteria: appropriate for projects, complexity, products, services, size, packages, tailored? Speed to market. Integral quality gates Aligned with other methods (ITIL, CMMI, ..) How long will methods be around? The base processes are still the same Practical application may be different Start high level with continuous improvement or industry standard where available
Source: JCB V Model 1 1δ Solutioning • Bid • PID • Plan • PIR • Audit • Change Log • Hand-over • Training • Comms • Test Library • OAT plans and result • UAT plans and result • Code Library • Design Library Service System Req’ts UAT/OAT Test and Measurement Plan 2 2δ Design System Test Test and Measurement Plan 3 3δ Specify Integration and Unit Test Test and Measurement Plan Build Standards Version Control Change Control Points
Release to Test Report (RTR) (aka Release Note) ADBM Product Integration Process Design & Develop Define Deliver Requirements Design Build & Unit Test Integrate & Test Deploy Post Implementation Definition Systems Test Report (STR) Systems Design Specification (SDS) Module / Unit Develop / Build Release to Live Report (RLR) (aka Release Spec) Systems Solution Brief (SSB) Inputs Strategic Subsystems Design Specification (SSDS) User Acceptance Test Report (UATR) Systems Development Approach (SDA) User Requirements Definition (URD) Unit Test Plan (UTP) IT Strategy/IT Standards & Polices Manage Release Process Functional Requirements Specification (FRS) Module Design Specification (MDS) Unit Test Report (UTR) Business Acceptance Test Report (BATR) EnterpriseArchitecture Operational Acceptance Test Report (OATR) ADBMRequirements &Design Process Systems Requirements Specification (SRS) T&V Test Execution Process Components Integration Specification (CIS) Feasibility Study User Interface Specification (UIS) ADBMBuild and Unit Test Process Release to UAT Report (RUR) (aka Release Note) Project InitiationDocument Test Strategy (TS) Test Plans (TP) Test Definitions (TD) T&V Test Planning& Prep Process Systems User Guide (SUG) ADBM Implementation & Support Documentation Process Systems Support Documents (SSD) Conceptually Common with Infrastructure Systems Implementation Report (SIR) Systems Implementation Plan (SIP) Systems Cutover Pack (SCP) Systems Implementation Strategy (SIS) Requirements Traceability Matrix (RTM) ADBM Requirements & Design Process
Design & Develop Define Deliver Requirements Design Build & Unit Test Integrate & Test Deploy Post Implementation Definition Module / Unit Develop / Build Release to Live Report (RLR) (aka Release Spec) Updated Request for Change (RFC) Inputs Strategic Unit Test Plan (UTP) Request for Change (RFC) Manage Release Process Module Design Specification (MDS) Unit Test Report (UTR) Manage Service Change (MSC) Incident ADBMMinor Enhancements Process Release to Test Report (RTR) (aka Release Note) The components are rolled up into a single release for integrate & test, and deploy ADBMBuild and Unit Test Process ADBM Product Integration Process Requirements Traceability Matrix (RTM) ADBM Requirements & Design Process
Platform decisions What is a platform? Development technologies, frameworks, libraries, languages, tools for testing-source control – build management, etc Industry standards A tool set under change Jade, Java, .NET IBM, Oracle, Microsoft, etc
Platforms: selection criteria Evolution of the tools Available people resources Industry acceptance/adoption Integral quality considerations Future proof? Investments required Co-existence with existing platform(s)
Methods, platforms, quality Methods SDLC – have basic processes, techniques, artifacts defined & documented PMLC – Prince2 or PMI Platforms Hybrid platforms through middleware, services Quality CMMI – start from the bottom Improvement model for each of the above People
Testing --------
Thoughts for the future Robust processes are essential to achieve quality Automate where possible People development Change appears to go slow Shift $ from rework to integral quality Corporate investment policies constrain the options