Software Development Project Report
Software Development Project Report
Analysis and Domain Modeling must include the description of how the domain model was
derived. It should show the analysis process that you carried out to derive your domain model.
Showing only the domain model diagram will yield very few points.
No matter what programming language you use to implement your software (Java, PHP, C#,
Flash or something else), you must first provide generic, language-independent design diagrams
(interaction diagrams) in UML.
a. Conceptual Model
Show the process of deriving the domain model and then draw the diagram. Provide text description of:
i. Concept definitions
ii. Association definitions
iii. Attribute definitions
iv. Traceability matrix — show how your use cases map to your domain concepts.
b. System Operation Contracts
should be provided only for the operations of the fully-dressed use cases elaborated
c. Data Model and Persistent Data Storage
Does your system need to save data that need to outlive a single execution of the system?
If NO, skip to the next item;
If YES, identify the persistent objects and select the storage management strategy, e.g., flat files, relational
database, etc. Attach the description of the file format and/or database schema (format of database tables,
printed by the command description)
1
Edited By:
Professor Dr. Mostofa Kamal Nasir, Dept. of CSE, Mawlana Bhashani Science and Technology University
Software Development Project Report
d. Mathematical Model
Do you use any mathematical models? E.g., you may use a statistical model for stock price prediction, or a
geometric model for computing the trajectories for animate figures in a video game.
If NO, skip to the next item;
If YES, describe precisely your model
e. Project Management
2. Interaction Diagrams: Do interaction diagrams for the use cases you elaborated. You should do sequence
diagrams, but you may do some other UML interaction diagrams use software tools for UML diagram.
3. Class Diagram and Interface Specification
a. Class Diagram
Show all classes and their associations. Only indicate visibilities of attributes and operations; full details
about the types and signatures should be provided in the next item.
If you cannot fit the class diagram on one page, or it looks too cluttered, create one “overview” class
diagram showing all classes and their relationships, but for each class show only a single compartment with
the class name.
Then on subsequent pages show partial class diagrams, with three compartments and all the attributes and
operations of a class. Make sure to indicate in diagrams and describe in text how partial diagrams fit into
the overall class diagram.
b. Data Types and Operation Signatures
Independently of the class diagram, write down class specification in UML notation. For every class,
specify data types of all attributes and operation signatures. Define the meaning of each class, operation,
and attribute in plain language.
c. Traceability Matrix
Show how your classes evolved from your domain concepts. Provide explanations for modified names or
multiple classes that evolved from a single concept—providing only a matrix with checkmarks is not
enough!
Note that if your system has many classes, the matrix may become difficult to read. Alternatively, you may
list, line-by-line, all your domain concepts and explain which classes were derived from each concept and
why.
2
Edited By:
Professor Dr. Mostofa Kamal Nasir, Dept. of CSE, Mawlana Bhashani Science and Technology University
Software Development Project Report
6. Design of Tests
Note that for this report you are just designing your tests; you will program and run those tests as part of work for
your first phase
a. List and describe the test cases that will be programmed and used for unit testing of your software.
b. Discuss the test coverage of your tests.
c. Describe your Integration Testing strategy and plans on how you will conduct it.
Describe also your plans for testing any algorithms, non-functional requirements, or user interface requirements
3
Edited By:
Professor Dr. Mostofa Kamal Nasir, Dept. of CSE, Mawlana Bhashani Science and Technology University