15.04.2018 Views

programming-for-dummies

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Automating Software Engineering with CASE 115<br />

Automating Software Engineering with CASE<br />

Software engineering consists of generally accepted practices <strong>for</strong> writing reliable<br />

software on time. Avoiding spaghetti <strong>programming</strong> (see Book 1, Chapter 2)<br />

is one example of an accepted software engineering practice.<br />

To make software engineering practices easier to follow, computer scientists<br />

have developed Computer-Aided Software Engineering(CASE) tools. CASE<br />

tools are meant to simplify the practices of software engineering. The easier it<br />

is <strong>for</strong> programmers to follow software engineering practices, the more likely<br />

they’ll do it and create reliable software. Some common CASE tools include<br />

Book I<br />

Chapter 5<br />

Managing Large<br />

Projects with<br />

Software<br />

Engineering<br />

✦ Project modelers<br />

✦ Code generators<br />

✦ Source code <strong>for</strong>matters<br />

✦ Revision control<br />

✦ Project management<br />

Modeling a large project<br />

Be<strong>for</strong>e programmers rush off to write a program, they need to design it first. The<br />

problem with designing a program is making sure everyone understands<br />

the design, and part of understanding a program design is using a consistent<br />

method.<br />

For example, one programmer might design a program by scribbling a few<br />

notes on a napkin, whereas a second programmer might design a program<br />

by typing a description of that program in a word processor document.<br />

Neither approach is good or bad, but the problem lies in understanding<br />

everyone’s design. The programmer who scribbles notes on a napkin may<br />

understand the design of his program perfectly, but nobody else may understand<br />

the design of that program.<br />

To make sure everyone can understand the design of a program, everyone<br />

needs to use the same design method.<br />

Flowcharts<br />

One of the earliest modeling methods are flowcharts, as shown in Figure 5-2.<br />

Flowcharts must specify every action and decision that the program goes<br />

through.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!