CSCI2407 Software Systems Development - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

CSCI2407 Software Systems Development

Description:

Develop a software system according to a client's specification, ... Identify and categorise the real-world entities that may need to be modelled in the system. ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 17
Provided by: erict65
Category:

less

Transcript and Presenter's Notes

Title: CSCI2407 Software Systems Development


1
CSCI2407Software Systems Development
  • Eric Tatham
  • GH6.72
  • etatham_at_dmu.ac.uk
  • www.cse.dmu.ac.uk/etatham

2
What the module entails
  • Develop a software system according to a clients
    specification, including all design
    documentation.
  • Design constraint Must be based on
    Object-oriented principles
  • Implementation constraint Develop using the .NET
    environment. Language used can be C, Java or C
  • Documentation constraint Must conform to UML
    standards

3
How it will work
  • You are part of Software Development Team of 3 or
    4 people.
  • Your client is Tom Bedlam of The Bartholomew
    Publishing Company.
  • You need to negotiate the requirements with the
    client, then design, develop and test the
    required system.
  • You are required to be patient when the client
    changes his mind about the spec.

4
Other resources
  • Also available is a Software Design Consultant
    called Eric who, coincidently, looks a lot like
    Tom
  • However, they dont know each other and will get
    puzzled (and possibly shirty!) if you confuse
    them with one another.

5
Assessment
  • As a group, you need to maintain a project
    logbook, detailing every stage of the project,
    including all documentation. (You will
    eventually need a duplicate copy for each group
    member.)
  • Assessment is 100 based on an Open Book exam in
    which you will be allowed to refer to your
    logbook.

6
Module structure
  • Introduction in Week 1
  • Meet the client in Week 2
  • No more lecture sessions!
  • First term Two lab sessions per week
  • The rest One lab session per week.
  • At lab sessions, either Tom or Eric will be
    available.
  • No lab sessions in first week.

7
Steps to be taken
  • Requirements analysis
  • Developing a structural model
  • Developing a dynamic model
  • Designing the interface
  • Detailed design and implementation
  • Testing

8
Requirements analysis
  • This is the process of analysing the initial
    statement of requirements in consultation with
    the client.
  • The aim is to reach an agreed and unambiguous
    specification called the Negotiated Statement of
    Requirements (NSR).
  • The NSR tells us what the system has to do.

9
Initial Structural Model
  • Identify and categorise the real-world entities
    that may need to be modelled in the system. ie
    What classes and associations?
  • Develop a class diagram
  • Also the associated text comprising the class
    descriptions.
  • Also identify any invariants.

10
Constructing Dynamic Models
  • Identify Uses Cases
  • Use walk-throughs to determine navigation of
    associations and additional class
    responsibilities
  • Use Sequence Diagrams to show how the
    responsibilities for carrying out the steps of
    each walk-through should be allocated

11
Designing the Interface
  • In consultation with the client, design the User
    Interface
  • Produce a number of prototypes for iterative
    development, evaluating each stage with the
    client

12
Detailed Design and Implementation
  • Consider class hierarchy in relation to
    inheritance and possible Abstract classes.
  • Fully specify each class, deciding exactly how
    each class is to fulfil its responsibilities.
  • Implement the classes their variables and
    methods.
  • Implement the main or orchestrating code.

13
Testing
  • This is an iterative process to be carried out
    throughout the development.
  • You need to ensure that your system is acceptable
    to your client in terms of agreed data,
    functionality and usability criteria.

14
Documentation
  • You need to ensure that all your design process
    is fully documented.
  • This forms the basis of your ongoing logbook
    which can be taken into the exam.

15
Change management
  • At some point in the course of system
    development, your client may introduce a slight
    modification to the specification.
  • If this happens, you should be able to cope and
    should document changes appropriately.
  • It also means you are entitled to charge extra!

16
Next week
  • Bedlam!
Write a Comment
User Comments (0)
About PowerShow.com