Presentation on theme: "1 AIAI The University of Edinburgh Project Management for KBS Projects."— Presentation transcript:
1 AIAI The University of Edinburgh Project Management for KBS Projects
2 Content of this lecture –What are the issues? –Conventional software development –How different is a KBS? –Waterfall life-cycle –Prototyping life-cycle –Knowledge engineering methodologies –KADS methodology –Spiral life-cycle
3 What are the issues? Management of the overall process of developing knowledge-based systems. –from identification and selection of applications –through requirements and knowledge capture, analysis, design, implementation and installation –to maintenance and decommissioning of systems Planning, controlling and monitoring of –activities –products –resources (including staff)
4 Conventional Software Development Any software project has –Technical activities Requirements capture and analysis, design, coding, testing, etc. –Technical products Final deliverables - the system, training manuals, design documentation, etc. Intermediate products - requirements specification, logical design, etc. –Management activities Planning, controlling and monitoring the work of the project. –Management products Plans, reports and other control documents.
5 Are Conventional Methods Relevant? Software development life-cycle models play a central role in the management of a project. Technical methods specify –notations –techniques –guidelines Life-cycle models provide guidance on –What activities need to be carried out? –In what order the activities need to occur? –What products should be produced? Well-accepted for development of conventional applications –Relevant to knowledge-based applications?
6 How different is a KBS? The existing real-world processes are not as explicitly available as they are for conventional systems –Often based on tacit knowledge in someone’s head Difficult to articulate Unstructured? The existing real-world process is often highly context dependent on the real world –Incomplete specification - ill-specified system
7 Problems arising from differences Difficult to observe existing process –More time needs to be spent on capture and analysis –Difficult to size and cost project until specification is well underway –Difficult to validate the knowledge in the specification High context dependencies on real world may lead to more frequent changes in requirements –during development –during subsequent use (more frequent maintenance)
8 Other problems Applications often provide interactive decision support –complex human computer interactions Novel application area –harder to predict impact of system –leads to business risks Novel / complex computational structures and processes –computational viability harder to predict –leads to technical risks
9 Waterfall Life-cycle Model Conventional approach to software engineering Maintenance Validation Coding Design Requirements analysis Scoping and feasibility study Advantages qModularity qVerification of each stage
10 Problems with the Waterfall Model Assumes the perfect specification Too prescriptive - basically sequential –limited iteration Late detection of errors –has significant impact on costs Exclusion of end users and clients Takes little account of prototyping Problems are aggravated for KBS –due to an incomplete and changing specification
11 Prototyping Prototype - a trial executable version of the prospective system Can be applied both to conventional and KB applications Several approaches –Rapid prototyping –Incremental prototyping –Throw-away prototyping Find out what technology can do Aid to knowledge acquisition Most widely used approach to KBS development
12 Rapid Prototyping Development methodology / life-cycle model No initial detailed specification required Problems with rapid prototyping –Proper analysis may be neglected Relies on intuition of developers The danger of hacking-and-patching –Difficulty of maintaining an undocumented system –Difficulty of managing project Development tends to be ad-hoc and unplanned No verifiable milestones When is it finished? When is it "right"?
13 Incremental Prototyping Development methodology / life-cycle model Also called structured prototyping Combination of rapid prototyping and the waterfall life- cycle model System developed in increments of functional capability Problems with incremental prototyping –Lack of long term planning –Tempting to fall into "code-and-fix" model –May commit too many resources into a wrong solution
14 Throw-away Prototyping Used in conjunction with another methodology / life-cycle model Exploratory prototypes –"prototyping the specification" –allow developer to understand application –users to see capability of system –a communication vehicle for ideas, expectations and requirements Experimental prototypes –"prototyping the design" –test feasibility and adequacy of a design idea
15 Which approach to KBS development? Waterfall life-cycle model –has some drawbacks Rapid prototyping –many problems –but has been the most dominant approach Incremental prototyping –more recent approach –but still has drawbacks Other life-cycle models? –Spiral / Cyclic –Product-oriented –Risk-driven
17 CommonKADS - Overview Model-based development methodology for KBS Cyclic life-cycle model for project management Comprehensive –from application selection and impact assessment –to physical design and testing Support tools
18 Overview of the CommonKADS Model Set
19 Why a Modelling Approach? Different perspectives on knowledge –who, what, how, when, where, why Different levels of abstraction –organisation, process, expertise, system design Allows greater management control of process Provides common basis for communicating Allows reuse of structure and content
20 Model Development Initial step is to identify models to be developed –may need several instances of some models “as-is” models and “to-be” models –not all models may be required for all projects Models are persistent and evolve –form part of the deliverables –essential for maintenance
21 Project Management Activity Cycle Plan Next Cycle Review & Commit Refine Objectives Generate Alternative Approaches Identify Approach Constraints Eliminate Untenable Approaches Identify & Document Risks Risk Analysis Select Approach Generate Plan Agree Acceptance Contract Monitor Development Acceptance Assessment Review Against Expected Progress Monitor Review Risk Plan
22 Risks Technical, business, project –technology, financing, users Evaluate Likelihood and Impact –low/medium/high Take steps to insure against any risks that are medium/high likelihood and medium/high impact
23 Model States States are used to plan and control the development of a model States are used to indicate –landmarks (associated with cycle review) –milestones (delivered to client) –obligatory states (must be produced due to quality implications)
25 Summary KBS projects are different from conventional software projects –knowledge based –knowledge is not easily available –knowledge may be context dependent Approaches to project management –Waterfall model –Prototyping rapid prototyping incremental prototyping throwaway prototyping –Cyclic management activity model