Developing Software

In A Perfect World
Avner Uzan
July, 2006
Software Development Lifecycle Knowledge Base (SDLCKB) TM
Software Development Life Cycle
Knowledgebase Concept
TM

Vs.
Software Development Lifecycle Knowledge Base (SDLCKB)TM
Vs.

Software Development Lifecycle Knowledge Base (SDLCKB) TM

Page 3
Vs.

Software Development Lifecycle Knowledge Base (SDLCKB) TM

Page 4
Vs.

Software Development Lifecycle Knowledge Base (SDLCKB) TM

Page 5
Vs.

Software Development Lifecycle Knowledge Base (SDLCKB) TM

Page 6
The Usual Process

Test Plan
Physical Architecture Diagram
Logical Data Model
Logical Data Dictionary

• RAD or Agile

Met...
Benefits of Usual Process

• Disparate docs – no lockout issues
• Stored on local system – easy access
• No DB or DBA over...
Potential Issues of Usual Process
• Document’s look & info varies from
•
•
•
•
•

project to project / group to group
Redu...
The Pitch

Wouldn’t it be nice to minimize
documentation conflicts, Improve
inter & outer team synergy, increase
productiv...
A New Paradigm – The
SDLCKB
TM

The Software Development Life Cycle Knowledgebase
TM

Software Development Lifecycle Knowl...
Example
A change in this doc….
too!

Pre-Scope Document
Window ID: Account Info
Window Description:
This window will allow...
The Premise
• Develop documentation through a shared

Knowledgebase (database)
• Create a set of templates - input forms
t...
Benefits of SDLCKB Process
• Consistent Look
• Consistent info gathering
• Single data collection point
• Eliminate redund...
Additional Benefits
• Availability of DB functionality for
•
•
•
•

document development
Menu driven document access
Easie...
NO WAITING !!
Is the latest
version ready?

Software Development Lifecycle Knowledge Base (SDLCKB) TM

Page 16
Potential Issues
• Overhead of a DBA to manage KB
• Potential lockouts for simultaneous access
• Potential (Read Write Del...
Questions

?

This presentation leaves a lot of unanswered questions.
It doesn’t address the slew of technical issues invo...
Upcoming SlideShare
Loading in …5
×

Software Development Life Cycle Kb V8.0

818 views

Published on

This presentation proposes a methodology for Software Development in a perfect world. Implementing such a system would reduce redundancy, eliminate wasted efforts & streamline the documentation process exponentially. The technical issues are what remain to be solved.

Published in: Technology, Business
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
818
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
0
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide
  • For version 9.0 I changed slides 2-6, swapped left & right images on slide to place the order on the left & disorder on the right (V8 had it reversed for those slides
    Added footer sdlckb™
  • Supporting Argument:
    There are some key concepts that all project managers are privy to but do not necessarily pursue to the nth degree; Communication, Work Breakdown, Progress & cost measurements.
    Communication - sure we all know that communication is important. However, its possible that many never distill "communication" to the idea that everything we do (outside of our own survival; i.e. breath eat sleep) generally involves some communication whether it's writing this email, watching a movie for entertainment, reading the ingredients on a box in the supermarket isle, debating a topic with a colleague or stroking an agitated infant to calm them. & even when when it relates to our own survival, we are still communicating - though with ourselves, we are distilling ideas & using language to identify our feelings, thoughts & decisions.
    Key & germane to the ah-ha moment was the observation that various lapses in communication were and are the main cause of failure.
    What is evident is that the race to market - & occasionally the misguided idea that unqualified faster is better, is forcing all project team members to trim the fat, cut corners & sometimes miscommunicate. When key bits of information are left out of documentation e.g. diagrams, system configurations, time & resource requirements these gaps are generally carried forward in the documentation stream to the specification documents, test plans & onward. Often, such laps result in time intensive, random info chases (as Iike to call them) or costly rework.
    Although developing software through an SDLCKB does not guarantee that all the required information will be included in the documents, it does by virtue of the process it enforces promote consistency, collaboration, efficiency & organization. These concepts are all part of good communication. If I deliver the details for widget A in one manner & the details for widget be in another, the inconsistency, may cause confusion or require unnecessary follow up to address the inconsistencies. Furthermore by developing the required supporting documents through a set of predefined templates, all participants are directed to use specific formats, levels of detail & responsibility which further promote & facilitate consistency. By identifying the required documents, roles & responsibilities to define key concepts & data for a given project this system promotes collaboration & leaves little to misinterpretation. By .... developing the document through the templates much efficiency is gained. & ambiguity is minimized.(site some efficiency examples)
  • Look ups for codes
    Greater search-ability
    Grouping & typing
  • Specific measurements could be established
  • Software Development Life Cycle Kb V8.0

    1. 1. Developing Software In A Perfect World Avner Uzan July, 2006 Software Development Lifecycle Knowledge Base (SDLCKB) TM
    2. 2. Software Development Life Cycle Knowledgebase Concept TM Vs. Software Development Lifecycle Knowledge Base (SDLCKB)TM
    3. 3. Vs. Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 3
    4. 4. Vs. Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 4
    5. 5. Vs. Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 5
    6. 6. Vs. Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 6
    7. 7. The Usual Process Test Plan Physical Architecture Diagram Logical Data Model Logical Data Dictionary • RAD or Agile Methodologies require a slew of documents • Project Docs are created separately based on past examples • Docs are stored on/in shared drives, Source Control, PC local-drives Flash memory (or “?”) Issues, Assumptions & Risk Assess Integration Architecture Diagram App Architecture Diagram System Context Diagram Conceptual Data Model Scope Kickoff Presentation Request for Proposal Project Cost Logical Architecture Diagram Infrastructure Block Diagram Functionality Matrix Design Phase Org Chart Conceptual Data Model Business Process Flow Scope Phase Org Chart Project Schedule/Plan Pre-Scope Document Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 7
    8. 8. Benefits of Usual Process • Disparate docs – no lockout issues • Stored on local system – easy access • No DB or DBA overhead to deal with • Familiar process (allbeit sometimes arcane) • Less structure / Less chance of getting dinged for not conforming to standards Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 8
    9. 9. Potential Issues of Usual Process • Document’s look & info varies from • • • • • project to project / group to group Redundant data entry Potential for errors / inconsistencies Difficulty locating latest version Requires constant oversight Corrections occur too late, if at all Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 9
    10. 10. The Pitch Wouldn’t it be nice to minimize documentation conflicts, Improve inter & outer team synergy, increase productivity, overcome world hunger & achieve world Peace? Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 10
    11. 11. A New Paradigm – The SDLCKB TM The Software Development Life Cycle Knowledgebase TM Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 11
    12. 12. Example A change in this doc…. too! Pre-Scope Document Window ID: Account Info Window Description: This window will allow users to view existing information on an account and enter the repurchase date when required. When user’s enter the screen and enter a date and Process the window, that date can no longer be changed and becomes read write. User can enter the window and change the Temporary flag without entering a date. Updates all these docs Project Schedule/Plan Requirements Test Plan Functionality Matrix Test Case Widget ID: Account Info Window Description: This window will allow users to view existing information on an account and enter the repurchase date when required. When user’s enter the screen and enter a date and Process the window, that date can no longer be changed and becomes read write. User can enter the window and change the Temporary flag without entering a date. Check point 1: Verify account # field validations Check point 2: Verify Date field validations Check point 3: Verify Customer field validations Check point 3: Validate acct balance calculations Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 12
    13. 13. The Premise • Develop documentation through a shared Knowledgebase (database) • Create a set of templates - input forms through which information could be collected & viewed in a repeatable, consistent, efficient fashion • Project documents would than simply be reports from the Knowledgebase Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 13
    14. 14. Benefits of SDLCKB Process • Consistent Look • Consistent info gathering • Single data collection point • Eliminate redundant data entry • Minimize errors between disparate docs • Smaller relative size • Repeatable Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 14
    15. 15. Additional Benefits • Availability of DB functionality for • • • • document development Menu driven document access Easier metrics extraction /completion status Documents would simply be reports from the knowledgebase Latest version always available Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 15
    16. 16. NO WAITING !! Is the latest version ready? Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 16
    17. 17. Potential Issues • Overhead of a DBA to manage KB • Potential lockouts for simultaneous access • Potential (Read Write Delete) Permissions • • • • issues Easier for managers to verify status Harder to deflect blame on to others Greater synergy between project teams Project is more agile, consistent & efficient Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 17
    18. 18. Questions ? This presentation leaves a lot of unanswered questions. It doesn’t address the slew of technical issues involved in designing such a facility, but hopefully there’s enough information about the concept to start the discussion. Feel free to contact me at 310-972-3876 or at qaanalysis@ca.rr.com with feedback or questions © This presentation & its contents are copyright by the author. The views & ideas expressed are those of the author alone & not those of any past, present or future employer. Software Development Lifecycle Knowledge Base (SDLCKB) TM Page 18

    ×