03
  • Tutorial
  • Lab
  • This Tutorial is based on questions from the book Software Engineering 9 by Ian Sommerville and is based on the material covered in chapter 2.

    Week 3 Tutorial

    Software processes

    1. What are the fundamental activities that are common to all software processes?
    2. List the 3 generic process models that are used in software engineering?
    3. Why are iterations usually limited when the waterfall model is used?
    4. What are the three benefits of incremental development, compared to the waterfall model?
    5. What are the development stages in reuse-based development?
    6. What are the principal requirements engineering activities?
    7. Why is it increasingly irrelevant to distinguish between software development and evolution?
    8. What are the advantages of using incremental development and delivery?
    9. What are the 4 sectors in each loop in Boehm’s spiral model?
    10. What are the six fundamental best practices in the RUP?
    11. Giving reasons for your answer based on the type of system being developed, suggest the most appropriate generic software process model that might be used as a basis for managing the development of the following systems:
    A system to control anti-lock braking in a car
    A virtual reality system to support software maintenance
    A university accounting system that replaces an existing system
    An interactive travel planning system that helps users plan journeys with the lowest environmental impact
    12. Explain why change is inevitable in complex systems and give examples (apart from prototyping and incremental delivery) of software process activities that help predict changes and make the software being developed more resilient to change.

    Download PDF Version
  • Week 3 Lab Exercise: Starting your assignment and StarUML

    Task 1

    By now you should be formed into a group of 4 or 5 students for the purposes of completing the coursework for Fundamentals of Software Engineering.

    If you are not in group speak to your lab supervisor immediately!

    Task 2

    You will need to share documents and create a single group report for this assignment. Discuss how you are going to do this. You may want to consider using Google Docs or Skydrive as a means of creating a shared repository. Record the decision that you make in the meeting record in Appendix B of your assignment. Include the email addresses that you use on the meeting record.

    Task 3

    If you have not read the coursework assignment yet do so now. The coursework is available in the assignments area for this module on GCULearn.

    Task 4

    Once you have read through the assignment discuss your initial thoughts with your fellow group members. You should spend around 1 hour on this activity. You should start to record the features that the proposed system should have. At this point in time you are expected to use “natural” English to record the features that you identify.

    At the end of this activity you should have completed a Group meeting record as specified in the coursework. Print a copy of this off and hand it to your lab supervisor. You will be required to demonstrate to the lab supervisor on a regular basis that you are making progress with the assignment.

    NOTE You are required to work on your assignment outside of the lab sessions.

    Task 5

    If you have not already done so you should watch the video L1_Intro_UseCase.mp4 which is in the StarUML resources folder on Blackboard. This will give you an introduction to using the product. Once you have watched the video you should create the use case diagram shown below. You will learn more about use case diagrams in the next week or so.

    Download PDF Version