Presented by : AL SAATI Razann BARDET Marine EL AOUYED El Mehdi ESSAID Sanaa FANGAR Mohamed

Preview:

Citation preview

SHDLSTUDIOPresented by :

AL SAATI RazannBARDET MarineEL AOUYED El MehdiESSAID SanaaFANGAR Mohamed

Introduction Legacy New Specifiation Work Organization Development approach GUI Amelioration Bug List and Test procedure Quality management Conclusion

Plan

SHDL Language : What is the SHDL language ?

Language used for logic circuits simulation Simple Hardware Description Language This language is used for teaching purposes at

ENSEEIHT (easier than VHDL) Created by Jean-Christophe Buisson, researcher

at IRIT laboratory. An Older Software (MDLE) was developed ten

years ago. (reference for the project) Project began in 2010 : 3rd development team.

Introduction

Introduction

module fulladder(a,b,c:s,r)s=a*/b*/c+/a*b*/c+/a*/

b*c+a*b*c;r = a*b + a*c + b*c;

end module

Legacy Software:

SHDLStudio

Documents: Report SoftwareDevelopmentPlan SoftwareQualityRequirement SoftwareRequirements SoftwareValidationRequirement

Maintenance Manual not provided.

Work Organization and environment

Environement : Java - Netbeans 6.9.1

ORIGO - SUBVERSION

ENSEEIHT – Room A-204

Project Management

Client MeetingTeam MeetingSupervisor

Meeting

Client Meeting: Change control BoardReviews

Supervisor Meeting: Progression of the project Software documents Software Quality approach

Team Meeting: Work Organization Client and Supervisor requirements.Project statusDaily work : everyday from 10:00 am to 6:00 pm room

A-204 (basement Bat A.)

Development approachGUI modifications and correction of bugs:

incremental cycle

Development approachvirtual objects:

Requirements

Volatility

•Frequent review with the client

• Frequent team meeting

Technology unknown

•New task : appropriate code

•Make prototypes

Risks and preventive actions

Planning

Correction of bugs

Virtual Objects (Lift, Oscillator, 7-segment Display)

Amelioration GUI(Design, Chronogram)

Document(Maintenance Document)

Client Requirements

BUGS

Check functionalities

Establishment of a list

Resolution of them

Electronic system, whose behaviour is simulated by the software

3 required objects :◦ Lift◦ Seven Segment Display◦ Oscillator

Virtual Object

Lift

Code SHDL:new Module(a,b:c,d)

lift(a,b:c,d);end module

Simulation

Design

7-Segment Display

Code SHDL:new Module(a[7..0])afficheur7seg(a[7..0]);end module

Design

Simulation

Oscillator

Code SHDL:new Module(a:b) oscillator(a,20:b);end module

Design

Simulation

frequency

GUI Amelioration : Simulation and Chronogram

Modification of signal value during the simulation

Modification of inputs values

Displayed Signals in Chronogram : not yet implemented

Modification of the Chronogram display

GUI Modifications: Design amelioration: Comparison

GUI Modifications: Design amelioration: The magnetic grid

S=h x 4

One step (s)

Operator location

One step is a multiplier of this distance (h)

GUI Modifications: Design ameliorations

Hidden input connection points

Inputs operator labels

Different colours for input and output labels

The radius of points had changed

Different lines depending on the arity

Test procedure

• General check at the beginning

• Integration test for virtual object (use in edition and behavior in simulation)

• Functional tests

• Tutorials

Test Results Virtual object:

     lift : outputs problem     7 seg display ok     oscillator : frequency problem

Functional tests:     53% work well     37% not implemented yet     9% bugged

Tutorial:     ok : fulladder ...     nok : flipflop+oscillator ..

Coding and documenting rules

The source code must obey these rules:- R1 : Every class must be commented.- R2 : For a package, each class contains

maximum 1000 lines in average. - R3 : Each new function contains maximum 30

lines.- R4 : Average of cyclomatic complexity < 7.- R5 : The document's template should be

respected.- R6 : The reference should be indicated with the

number of pages.

Metrics results (Simple code metrics)

Packages

Metrics Conversion Actions Simulation

Cyclomatic complexity average

5.27 1.27 3.12

Total LOC 1616 1054 4586

Total Classes 2 12 25

Average 808 87,8 183,44

Total Methods 35 69 193

Delivrables :◦ Software Requirement document.◦ Development plan document.◦ Validation plan document.◦ Quality insurance plan document.◦ Source code ◦ An executable of the software.◦ Maintenance document and User guide ◦ Configuration management plan

Project Future

constraints

Short Time : 8 weeks

Quality supervisor :Documents needed

Technology unknown : Netbeans RPC

Client’s needs :Source Code

Conclusion

Demonstration

Thank you for your attention

Recommended