1 / 17

Software Engineering: The Approach

WSEAS PLENARY SPEECH - IZMIR, 2004. Software Engineering: The Approach. Ayaz Isazadeh Department of Computer Science Tabriz University Tabriz, IRAN. Introduction... Outline. Introduction An Engineering Discipline Engineering vs. Science The Problems Formal Approaches

evita
Télécharger la présentation

Software Engineering: The Approach

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. WSEAS PLENARY SPEECH - IZMIR, 2004 Software Engineering: The Approach Ayaz Isazadeh Department of Computer Science Tabriz University Tabriz, IRAN

  2. Introduction...Outline • Introduction • An Engineering Discipline • Engineering vs. Science • The Problems • Formal Approaches • Education and Training • Representations • Conclusion

  3. Introduction... • We are just starting to realize, The vast dimensions of the universe. The huge volume of information out there. The astronomical world of unknowns. • We are just starting consider, In our search for knowledge, Where we are. What we do know, and what we don’t

  4. Introduction... We are just starting to conclude that, • We know almost nothing compared to the unknowns. • Our knowledge will be increasing exponentially. • The huge volume of information currently floating around, will be increasing dramatically! • The volume of information we will be dealing with, will be beyond our wildest imagination.

  5. Introduction... • The search for information is structured as different sciences. • Who can deal with all the information in all sciences? The answer is: Software Engineering. • Software Engineering is, indeed, taking over all sciences. • No science can live without software engineering And...... that is the trend.

  6. An Engineering Discipline • Software engineering is the most powerful of all sciences. • Software engineering is now, and will be more so in the future, providing the very infrastructures of all sciences. • That is, indeed, an extreme power for software engineering. Extreme power, however, requires extreme care. • That is why software engineering, today, Is an engineering discipline, with all the associated responsibilities.

  7. Engineering vs. Science • A hot debate has started years ago and still going on, Is Software Engineering a science an engineering discipline? • The debate in some prestigious universities is still going on, whether Software Engineering belongs to the school of engineering or faculty of science • It is, in fact, interdisciplinary; it requires, Mathematics for analysis and proof of correctness, Engineering for costs, risks, and tradeoffs, Management for personnel, facilities, and progress. • Overall, I believe, it is an engineering discipline.

  8. Problems • Verrazano Narrows Bridge in New York City, the largest suspension bridge ever built, completed within budget, just on target date. • IBM OS project, involving over 5000 man-years of work, completed, finally, well beyond the target date. • Why software engineering cannot be planned and completed like any other engineering project? • Because, Software engineering is more complex, and Software engineers are not as experienced. • Using formal methods may have the solution.

  9. Formal Approaches • Accurate requirements specification is important. • For over 20 years, IBM received failure reports on CICS; it was developed without using a formal method. • Formal methods can be helpful. • Using formal methods is, indeed, difficult. • Visual formalisms can provide the solution.

  10. Visual Formalisms • Harel: Statecharts, STATEMATE • Leveson: RSML (for TCAS) • Hendricksen: ASTD • Coleman: Objectcharts • Walters: STATEMATE for OO systems • Shaw: CRSM's • Selic: ROOMcharts • Jahanian: Modechart • UML and sound mathematical foundation (Glinz, France, Breu, Fernandez, Grosu and more) • Isazadeh: Viewcharts

  11. Education and Training • Professionals in this field must be trained to Work on a sound foundation. Do mathematical analysis before design. Prove correctness of their work, before the work begins. Understand responsibilities associated with the work. • Universities, professional schools, and education centers, are responsible for training software engineers, prepared to face the challenging tasks ahead.

  12. Representations...Definition • r is the (,t)-representation of e, if there exists a function  and a point in time t, such that (e,t)=r. •  is the representation function, • tis the representation time, • e is the representandum, and • ris the representation.

  13. Representations...Examples On a set of positive integers, (n) = n2 -1(n2) = n  “odd”, If nis odd (n) = “even”,Otherwise On a set of graphs,(G) = AM(G)

  14. Representations... Perfect and Imperfect • The representation is perfect if  -1is also a function. • Otherwise, the representation is imperfect. • Most representations are imperfect.

  15. Representations... How do we see the world? • Representations are all we see. • All around us are nothing but imperfect representations. • Information age is, indeed, the representation age.

  16. Representations...Viewcharts • Viewcharts is an example of a representationistic approach to software engineering… • The Viewcharts formalism works with the representations of a system, the views, and approaches the system by composing the views.

  17. Conclusion • Software engineering is involved, deeply, in every science and technology. • Software engineering provides the very infrastructure of every science and technology. • With all these responsibilities, software engineering cannot afford to go wrong. • Software engineering, therefore, has no choice but to go formal, following a representationisticapproach. • And, that is the Approach...

More Related