t -76.4115 iteration demo betateam i2 iteration, final solution 2.3.2006
DESCRIPTION
T Iteration demo 3 General Information Customer: NAPA Ltd ( computing-based systems for ship safety and performance ) Motivation: To implement and integrate a Product Database Server solution to the current NAPA product, aiming to find out the relation database effectivity compared to the current shared file system. Customer Goals: To implement, test and deliver a product database server, which would in the first phase work together with the current, shared file style data manipulation. The new solution will be integrated to the application’s interface which already exists and uses its interface functions.TRANSCRIPT
T-76.4115 Iteration Demo
BetaTeamI2 Iteration, Final Solution 2.3.2006
2
T-76.4115 T-76.4115 IterationIteration demo demo
AgendaMarketing-spirited Presentation of Project Outcome (20 min)
General situation System Core Architecture Solution and its Benefits Relationdatabase vs. flat- file technology BetaTeam Demo: Product Database Server
Project Evaluation (20 min) Project Effort Project Progress Goals Metrics Practices Educational value
Closing and discussion (5 min)
3
T-76.4115 T-76.4115 IterationIteration demo demo
General Information Customer: NAPA Ltd ( computing-based
systems for ship safety and performance )
Motivation: To implement and integrate a Product Database Server solution to the current NAPA product, aiming to find out the relation database effectivity compared to the current shared file system.
Customer Goals: To implement, test and deliver a product database server, which would in the first phase work together with the current, shared file style data manipulation. The new solution will be integrated to the application’s interface which already exists and uses its interface functions.
4
T-76.4115 T-76.4115 IterationIteration demo demoTechnical Specification – System architecture
5
T-76.4115 T-76.4115 IterationIteration demo demo
Technical Specification – Read operation
6
T-76.4115 T-76.4115 IterationIteration demo demo
Solution and its benefitsProduct Database Server concept
Architecture provides configuration to multiusers environment
Architecure offers users an open solution for future performance level (new compiling tool-kits, new server, new platforms)
7
T-76.4115 T-76.4115 IterationIteration demo demoAdvantages of relationaldatabase technology vs. flat-file(1/2)
reduced network traffic handling concurrent users handling concurrent data manipulation reliable architecture automatic datacorruption recovery
8
T-76.4115 T-76.4115 IterationIteration demo demoAdvantages of relationaldatabase technology vs. flat-file(2/2)
high data integrityscalable technologystandard technology possible to use 3.rd party appliances
performance especially multiuser environmentsbackup features
9
T-76.4115 T-76.4115 IterationIteration demo demo
Demo script Product Database Server:
Connecting to the database from the UI using DB.OPEN command.
Querying descriptions from the database using CAT command.
Setting partial match conditions for query using SEL command.
Reading records from description with GET and NEXT commands.
Using explorer to view contents of the database.
10
T-76.4115 T-76.4115 IterationIteration demo demo
Project EvaluationProject EffortProject Progress GoalsMetricsPracticesEducational valueClosing and discussion
11
T-76.4115 T-76.4115 IterationIteration demo demo
Working hours by person
Real Plan DiffUlla Suomela 190 190 0Jari Leppä 163 190 -27Raine Mäki 202 190 +12Hannu Kankaanpää 194 190 +4Juho Mäkinen 173 190 -17Kauko Huuskonen 158 190 -32Total 1080 1140 -60
Realized hours in whole project 95% from planned Effort
12
T-76.4115 T-76.4115 IterationIteration demo demo
Working Effort by procent
21 %
14 %
13 %12 %
11 %
9 %
7 %
7 %4 % 2 %
palaverit
testaus
pariohjelmointi
dokumentointi
projektinhallinta
opiskelu
Suunnittelu
ohjelmointi
Infra
luennot
13
T-76.4115 T-76.4115 IterationIteration demo demoComparing to previous years projects
0
5
10
15
20
25
30
35
BetaTeam
projektit 2004-2005
14
T-76.4115 T-76.4115 IterationIteration demo demoProject progress PP Iteration, Highlights
Organizing the projectStarting the Infra Studing the subjectStarting the quality work reviwing the documentsvery rapid iteration Important to share the working tasks
15
T-76.4115 T-76.4115 IterationIteration demo demoProject Progress, I1 iteration, Highligts
Spliting the iteration to testing milestoneStarting the work asapArchitecture work important to review by customer
Flexible architecture optional features possible to modificate
implementation to features from ”must” categoryTesting the implementation by original data asapEffective meeting practicesTesting process has been changed
Integration started very soon after implementation Unit testing has been done after integration testing System testing has been done only slightly
Problem of building exe
16
T-76.4115 T-76.4115 IterationIteration demo demoProject Progress I2 Iteration
Change management : Picking up the most important requirements with customerRest of the ”must” category features Solving the exe building problem Choosing relationdatabase from NAPA UI
System testing started after solving the exe building problemFinalizing the implementationperformance testing arrangements demanding
17
T-76.4115 T-76.4115 IterationIteration demo demo
Project GoalsCustomer Goals 98 % achievment from PP phase Customer Goals 9 Goals achieved( implemented and tested) 1 Goal implemented ( not possible to test, not a unix
environment available for testing purposes)Project Team Goals Achieved grading goals not yet evaluated
Personal learning Goals Almost all the goals achieved
Iteration Goals ( Documentation) Achieved
18
T-76.4115 T-76.4115 IterationIteration demo demoQuality metrics N/A in PP iteration
Description of blocker and critical bugs found and open other QA metrics
unit test coverage code reviews source code metrics ...
I1 I2 TotalReportedClosedOpen
… or make a more detailed table/graph, where you show per module bugs, and/or classifications per criticality, origin (own system testing, code reviews, customer, peer group) etc.
Bug metrics
Blockers
Critical
Major Minor Trivial Total
Total openThis iteration reported
19
T-76.4115 T-76.4115 IterationIteration demo demo
Legend
Coverage: 0 = nothing1 = we looked at it2 = we checked all functions3 = it’s tested
Quality:= quality is good= not sure= quality is bad
Quality assessment 27.2.2006
Functional area Coverage
Quality
Comments
Read 3 TestedWrite, Update 3 TestedDelete 3 TestedDatabase and ER 3 TestedDatabase operations 3 Tested
Performance 2 Tested locallyQuery 3 Tested
Testing is automated in Unit-level, System-level test-suitesDatabase:
We reported two little difference between db and ER Partial update and who has made last update tested connection tests are fully covered There are some test-cases for multi-connections
Performance needs to be test with multiple database-connections and over noisy networkQuery: Is testedExe-compiling: tested
20
T-76.4115 T-76.4115 IterationIteration demo demo
Software size in Lines of Code (LOC) N/A in PP iteration
Any remarks on this metric? lots of new functinality was implemented refactoring reduced LOC
PP I1 I2Total (NCLOC + COM) 0 1000 4000Comments (COM) 0 100 200
PP I1 I2Part A Total/com 0 500/90 3000/10
0
Part B 500/10 1000/100
Part CPart DPart ETotal (NCLOC + COM) 0 1000 4000Comments (COM) 0 100 200
… or make a more detailed table, where you can show per module LOCs, or proportion of real code vs. test code
21
T-76.4115 T-76.4115 IterationIteration demo demo
RisksRisk management weekly in project meetings
regualy weekly reporting to customer and mentorNew risks, which have also realized
The documentation of current NAPA system isn’t sufficient (Overhead)
Sharing infromation in customer meetings concentrating only the most important NAPA features
project member has been sick (delay in Impelemtation and testing tasks )
Build script is broken (delay in Impelemtation and testing tasks ) try to find out, which library functions are missing with customer testing features through *.dll
Problems in working effort estimation Requirements focusing was a demanding task
Other courses and daily work priorization
22
T-76.4115 T-76.4115 IterationIteration demo demo
Used work practices Iterative planning
A good way to work with changing requirements Iterative development
Important to start the implementation as soon as possible Important to have milestones during the iteration Important to test with original data asap
Time reporting Creating the working hour management system takes time ( no template from
course ) Difficulties to add new tasks to the Excel files Reporting practices work well
Risk management Weekly, during the project meetings
minimizing the risks Version control Requirements and change management
During customer meetings Important to write up decisions to the meeting minutes
SEPA Meeting practices
Works well. Important to sum up deadlines Pair programming
good practice during demanding, many interfaces including programming phases Unit testing Statical methods
23
T-76.4115 T-76.4115 IterationIteration demo demo
Educational value Working in real project with real Development work to real customer
balance between different stakeholders : mentor, customer, course Importance of maintenace in Software Development ( Sofware life-time)
it is expencive to re-write code Risks to change a major part of implementation Difficulties to take new technologies
4 different programming languages: Fortran, JNI interfaces, etc..Not a classical testing processes
unit testing, integration testing, system testing All the product development parts involve: from requirements to delivery and handoverTeam work - Learning by doing togetherNew intresting Business area - a fine experience
24
T-76.4115 T-76.4115 IterationIteration demo demo
Thanks to all Questions & Discussion