Software Engineering

frantic.^

Famous
Joined
May 29, 2008
Messages
472
Hello everyone,

I have a course this semester titled Software Engineering-I. When I signed up for the course the prerequisite was C++ which I took and got a 'B' in. However, during our first day of class in software engineering, our professor implied that it we should not only know C++, but also Java. I have literally zero-level knowledge base in Java...also I might be the only sophomore in a class of mostly juniors and seniors.

My question to the you guys is - do you think it's better to continue the course and try to teach myself Java on the side? Or is it too risky and I should drop the course while I still can?

I know that this is more of a personal decision, but I was hoping some of you who are experienced programmers/engineers/etc. might have some good advice for a sophomore college student.
 
I'd continue. I know a lot of Java and some C++. You really just need to learn the syntax.
 
Sounds like it could be difficult to keep up, but it also sounds like it would be very interesting. You really have to ask yourself if it's interesting enough to do a little more work.
 
Keep up the course and then teach yourself java on the side. Java isnt too hard. And if you don't know something just ask or look it up. It's totally worth it.
 
How's this working out so far?

Are you doing in actual programming in that class? Or did the instructor want you to know java, because his examples are in java.

Most software engineering classes have very little programming. They are more about the management of the life cycle.

(My undergrad is in computer science, and my masters is in software engineering).
 
Yea I am also interested.

I had a programming course last semester that was about certain concepts of programming, during the course, I had to program in C++, Java, and Ada. Of those three, I had only ever programmed in C++ before.

There are definitely some features of Java that set it apart, but since Java is also based on the C family of languages, it is very very easy to do a basic switch from C++ to Java.
 
DragonD,

It is going well so far, and yes. As of right now, we are focused mainly on the concepts of the different processes and their life cycles, like you said. I'm really starting to enjoy what this software engineering course is outlining. So far, we have covered an introductory chapter, chapter 2 (which introduced Waterfall, Incremental development, and software re-use development). This week we are learning about Agile development and its process, deciding between plan-driven vs. agile (or hybrid), and also about Extreme Programming. Our professor mentioned that the course will be 90% planning/specification of our project and only 10% programming, which we won't do until the last week or two of the course, so I think I'll be okay without Java for a while. Still though, in my free time I'm trying to go through The Java Tutorials.

What kind of process(es) have you found useful in real world projects?
 
Last edited:
Yea I am also interested.

I had a programming course last semester that was about certain concepts of programming, during the course, I had to program in C++, Java, and Ada. Of those three, I had only ever programmed in C++ before.

There are definitely some features of Java that set it apart, but since Java is also based on the C family of languages, it is very very easy to do a basic switch from C++ to Java.

I know this is an old post.. but Ada?? Really????

You were FORCED to do a project in Ada in school???

(A lot of government stuff back in the 90's was done in Ada. And it's still maintained.. but new stuff??? And to HAVE to do a school project in Ada??)
 
DragonD,

It is going well so far, and yes. As of right now, we are focused mainly on the concepts of the different processes and their life cycles, like you said. I'm really starting to enjoy what this software engineering course is outlining. So far, we have covered an introductory chapter, chapter 2 (which introduced Waterfall, Incremental development, and software re-use development). This week we are learning about Agile development and its process, deciding between plan-driven vs. agile (or hybrid), and also about Extreme Programming. Our professor mentioned that the course will be 90% planning/specification of our project and only 10% programming, which we won't do until the last week or two of the course, so I think I'll be okay without Java for a while. Still though, in my free time I'm trying to go through The Java Tutorials.

What kind of process(es) have you found useful in real world projects?

All of them. And I use all of them, all the time :)

But in reality, I usually use a "mix" of them.

Quite often, a project is still in the "requirements defining stage" when I get a hold of it. That's because it's time critical to the company and MUST be finished as soon as possible. I'll start with the 'foundation', and start building the "parts" as they are defined. Sometimes I'll have more than one "part" (or stage) going at once.

(based off your studies, what process would you call the above?)

Other times, I'll have very defined and logical requirements, and I'll "plod" along, laying down the "pieces" one by one...

(what would you call the above?)

And sometimes, I'm giving very defined requirements.. that change. And sometimes change a LOT. This causes me to constantly "nudge" and "morph" the program in different directions. This gets very frustrating btw...

(what would you call this?)
 
Software Engineering (SE) is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software. It is the application of Engineering to software because it integrates significant mathematics, computer science and practices whose origins are in Engineering.
 
Software Engineering (SE) is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software. It is the application of Engineering to software because it integrates significant mathematics, computer science and practices whose origins are in Engineering.

Um. Ok.

so we know you can quote your book now... (or copy past from the net)
 
Back
Top