Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Software Engineering: The Approach Ayaz Isazadeh Department of Computer Science Tabriz University Tabriz, IRAN WSEAS PLENARY SPEECH - IZMIR, 2004."— Presentation transcript:

1

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

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

4 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

5 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.

6 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.

7 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.

8 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.

9 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.

10 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.

11 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

12 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.

13 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,  t is the representation time,  e is the representandum, and  r is the representation.

14 Representations... Examples On a set of positive integers,  (n) = n 2  -1 (n 2 ) = n On a set of graphs,  (G) = A M (G)  ( n) =  “odd”, If n is odd “even”, Otherwise

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

16 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.

17 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.

18 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 representationistic approach.  And, that is the Approach...


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

Similar presentations


Ads by Google