SHDLSTUDIO Presented by : AL SAATI Razann BARDET Marine

Slides:



Advertisements
Similar presentations
Xilinx 6.3 Tutorial Integrated Software Environment (ISE) Set up basic environment Select Gates or Modules to Be simulated (Insert Program Code) Run Waveform.
Advertisements

©2004 Brooks/Cole FIGURES FOR CHAPTER 10 INTRODUCTION TO VHDL Click the mouse to move to the next page. Use the ESC key to exit this chapter. This chapter.
ENEL111 Digital Electronics
VHDL - I 1 Digital Systems. 2 «The designer’s guide to VHDL» Peter J. Andersen Morgan Kaufman Publisher Bring laptop with installed Xilinx.
P5, M1, D1.
COE 202: Digital Logic Design Combinational Circuits Part 1
MODELING THE TESTING PROCESS Formal Testing (1.0) Requirements Software Design Risk Data Approved, Debugged, Eng. Tested Code Automated Test Tools Tested.
Chapter 3: Modularization
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
T-FLEX DOCs PLM, Document and Workflow Management.
Chapter 14 Requirements and Specifications. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Software Engineering The implementation.
Software Quality Metrics
Chapter 9 Describing Process Specifications and Structured Decisions
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Introduction to z/OS Basics © 2006 IBM Corporation Chapter 8: Designing and developing applications for z/OS.
Combinational Logic Discussion D2.5. Combinational Logic Combinational Logic inputsoutputs Outputs depend only on the current inputs.
CMPUT Software Process & QualityProcess Categories - slide# 1©P. Sorenson Engineering Process Category  Processes that specify, implement, or maintain.
ECE 331 – Digital System Design Course Introduction and VHDL Fundamentals (Lecture #1)
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
DIGITAL DESIGN WITH VHDL Exercise 1 1Muhammad Amir Yousaf.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Introduction to the new mainframe © Copyright IBM Corp., All rights reserved. Chapter 7: Designing and developing applications for z/OS.
N A managed approach to planning and controlling the implementation of complex application software. n A flexible tool kit, designed to support the Project.
CSI315 Web Applications and Technology Overview of Systems Development (342)
Team 1 Jesus Weibo Mina Yunming. Client’s Needs  Short term, medium term, long term plans  Simulation of energy system to provide affordable future.
Software Configuration Management (SCM)
Software System Engineering: A tutorial
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Programming Lifecycle
Software Testing Testing types Testing strategy Testing principles.
Project Life Cycles.
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
1 Introduction to Software Engineering Lecture 1.
VirtuCo :: Process description ::. :: Reference ::
EE3A1 Computer Hardware and Digital Design Lecture 6 supplement Common misunderstandings about VHDL processes.
Code Development Code development for end user systems.
User Interfaces 4 BTECH: IT WIKI PAGE:
EGR101-34R "lecture on hardware- software" FB 7/10/2004 Digital Electronics Logic Gates Logic gates work with the voltage level of the signals. They are.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Android Multi-Meter (AMM)
Software Engineering Saeed Akhtar The University of Lahore.
Part A Final Dor Obstbaum Kami Elbaz Advisor: Moshe Porian August 2012 FPGA S ETTING U SING F LASH.
Design and Planning Or: What’s the next thing we should do for our project?
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
CMSC 2021 Software Development. CMSC 2022 Software Development Life Cycle Five phases: –Analysis –Design –Implementation –Testing –Maintenance.
T Project Review Muuntaja I1 Iteration
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Introduction to Computer Programming using Fortran 77.
SOFTWARE TESTING. SOFTWARE Software is not the collection of programs but also all associated documentation and configuration data which is need to make.
Visual Basic.NET Comprehensive Concepts and Techniques Chapter 1 An Introduction to Visual Basic.NET and Program Design.
Software Engineering Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Introduction to Verilog COE 202 Digital Logic Design Dr. Muhamed Mudawar King Fahd University of Petroleum and Minerals.
Introduction to the FPGA and Labs
System Design, Implementation and Review
PLM, Document and Workflow Management
Chapter ? Quality Assessment
The Software Development Cycle
An Introduction to Visual Basic .NET and Program Design
Figure 5. 1 An example of AND-OR logic
Introduction to Verilog
Lecture 1.3 Hardware Description Languages (HDLs)
Introduction To software engineering
Chapter 10 Introduction to VHDL
The Software Development Cycle
Presentation transcript:

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

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

Introduction Language used for logic circuits simulation 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 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: Documents: Maintenance Manual not provided. SHDLStudio Documents: Report SoftwareDevelopmentPlan SoftwareQualityRequirement SoftwareRequirements SoftwareValidationRequirement Maintenance Manual not provided.

Work Organization and environment Java - Netbeans 6.9.1 Environement : Origo - Subversion ENSEEIHT – Room A-204

Project Management Client Meeting: Change control Board Reviews Supervisor Meeting: Progression of the project Software documents Software Quality approach Team Meeting: Work Organization Client and Supervisor requirements. Project status Client Meeting Team Meeting Supervisor Meeting Daily work : everyday from 10:00 am to 6:00 pm room A-204 (basement Bat A.)

Development approach GUI modifications and correction of bugs: incremental cycle

Development approach virtual objects:

Risks and preventive actions Requirements Volatility Frequent review with the client Frequent team meeting Technology unknown New task : appropriate code Make prototypes

Planning

Client Requirements Correction of bugs Virtual Objects (Lift, Oscillator, 7-segment Display) Amelioration GUI (Design, Chronogram) Document (Maintenance Document)

BUGS Check functionalities Establishment of a list Resolution of them We started to check functionalities when we received the latest version of the software. With results of theses checks we establish a bug list (formalized in a document for the bug part) in a shared file. Along the project we tried to solve the most important whose multi-view exception (which allow the user to open several modules) Resolution of them

Virtual Object Electronic system, whose behaviour is simulated by the software 3 required objects : Lift Seven Segment Display Oscillator

Lift Simulation Code SHDL: new Module(a,b:c,d) lift(a,b:c,d); end module Design

7-Segment Display Design Code SHDL: new Module(a[7..0]) afficheur7seg(a[7..0]); end module Simulation

Oscillator Design Code SHDL: new Module(a:b) oscillator(a,20:b); end module Design frequency Simulation

GUI Amelioration : Simulation and Chronogram Modification of inputs values Modification of signal value during the simulation Modification of the Chronogram display Displayed Signals in Chronogram : not yet implemented

Design amelioration: Comparison GUI Modifications:  Design amelioration: Comparison

Design amelioration: The magnetic grid GUI Modifications:  Design amelioration: The magnetic grid One step (s) Operator location One step is a multiplier of this distance (h) S=h x 4

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 As I said we made a general test of functionalities to see what was already implemented in the software. For each virtual objects we made integration test. We tested the object itself, the use in source view, design view and the behaviour in simulation At the end with the software requirement documents we test each requirements written in the SRD. The results are met in a table. This way, the following group will have a structured basis. To finish we make a global test, by doing the tutorials of architecture module at ENSEEIHT.

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 .. The virtual object works more or less The functional test are globally ok but there is a lot of requirements not implemented Some bugs remain Concerning the N7 tutorials, the first module is ok but the rest doesn't work.

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

Project Future 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

Technology unknown : Netbeans RPC Conclusion constraints Short Time : 8 weeks Quality supervisor : Documents needed Technology unknown : Netbeans RPC Client’s needs : Source Code

Demonstration

Thank you for your attention