Presentation is loading. Please wait.

Presentation is loading. Please wait.

27/09/1999(c) Ian Davis1 Background material Software Architecture (Shaw & Garlan) Object modeling & design (Rumbaugh,Blaha..) Design Patterns (Gamma,

Similar presentations


Presentation on theme: "27/09/1999(c) Ian Davis1 Background material Software Architecture (Shaw & Garlan) Object modeling & design (Rumbaugh,Blaha..) Design Patterns (Gamma,"— Presentation transcript:

1 27/09/1999(c) Ian Davis1 Background material Software Architecture (Shaw & Garlan) Object modeling & design (Rumbaugh,Blaha..) Design Patterns (Gamma, Helm, et al) Software Engineering concepts (Fairley) Software Engineering (Pressman) Software Architecture in Practice (Bass, Clements, Kazman)

2 27/09/1999(c) Ian Davis2 Further background material The Mythical Man Month (Brooks) ACM Sigsoft Software Engineering Notices Code complete (McConnell) Death march (Yourdon)

3 27/09/1999(c) Ian Davis3 Goals of software development Need to understand requirements. Want software with maximum functionality. Code must be reliable. Cost to develop and maintain important. Want results as fast as possible. Must minimize development risks.

4 27/09/1999(c) Ian Davis4 Problem You cannot achieve all six goals simultaneously. Which of these goals are you willing to compromise on. How do you identify which (if any) of these six goals is realistic or realizable.

5 27/09/1999(c) Ian Davis5 Software engineering to rescue Identify desired functionality Develop architectural design Plan/cost activities Monitor progress Document decision points Identify problems ASAP.

6 27/09/1999(c) Ian Davis6 Is software development an art? YES –Getting it right the first time demands vision. –There is beauty in a good design. –It is easy to appreciate a good design and dislike a bad one, at a raw gut level. NO –Little argument about what is good or bad

7 27/09/1999(c) Ian Davis7 Is software development engineering? YES –We are building things. –Need a methodology to succeed. –Need engineering management skills. –Need to appreciate the importance of quality and reliability. –Need professional standards, discipline, and bodies. –Should be held accountable for our actions.

8 27/09/1999(c) Ian Davis8 Is software development engineering? NO –Not concerned with designing within tolerances –Code is either right or wrong (ie. Maths) –Limited/questionable concern with reuse of code –Not building ‘n’ of the same. Each project is new and unique. –Cookbook for algorithms, but not the project.

9 27/09/1999(c) Ian Davis9 Acid tests Which of the development goals are more achievable using engineering principals? Can software development be a set of well defined manageable discrete logical steps? When is a picture/design/essay worth 1000 lines of code? When does the theory encourage needless bureaucratic displacement activities?

10 27/09/1999(c) Ian Davis10 The basic issues Get it right the first time, that’s the main thing. Getting it right at the end doesn’t fly. So how do you avoid getting it wrong? Plan to throw your first attempt away - you will anyway. If you plan to throw your first attempt away you will throw at least two attempts away.


Download ppt "27/09/1999(c) Ian Davis1 Background material Software Architecture (Shaw & Garlan) Object modeling & design (Rumbaugh,Blaha..) Design Patterns (Gamma,"

Similar presentations


Ads by Google