Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSCI2407 Software Systems Development Eric Tatham GH6.72

Similar presentations


Presentation on theme: "CSCI2407 Software Systems Development Eric Tatham GH6.72"— Presentation transcript:

1 CSCI2407 Software Systems Development Eric Tatham GH6.72 etatham@dmu.ac.uk www.cse.dmu.ac.uk/~etatham

2 What the module entails Develop a software system according to a client’s 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 don’t 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!


Download ppt "CSCI2407 Software Systems Development Eric Tatham GH6.72"

Similar presentations


Ads by Google