countincognito / zametek.projectplan Goto Github PK
View Code? Open in Web Editor NEWA basic desktop alternative to Microsoft Project to help automate project design.
License: BSD 2-Clause "Simplified" License
A basic desktop alternative to Microsoft Project to help automate project design.
License: BSD 2-Clause "Simplified" License
My longer term goal is to allow a project to include different resourcing scenarios. Ultimately, this will also require the ability to include changes in specific resource allocation to activities.
In the near term, my approach was to auto-generate scenarios by taking every non-explicit resource and generate scenarios for the minimum number of non-explicit resources (one) up to the total amount of non-explicit resources. For example, in a project configured for a maximum of 6 devs who are all non-explicit resource targets, six scenarios would be generated, each with 1, 2, 3, 4, 5, and finally 6 devs respectively.
The new Export Scenarios menu item in the File menu will generate a csv file that contains the calculated metrics for each scenario (Costs, Criticality Metrics, Cyclomatic Complexity and Duration Man Months).
This could also form a foundational step toward providing a new graph tab that displays the scenario metrics in comparison to one another, greatly simplifying the ability to discover the area of minimum cost.
This is just a nice to have, when the users selects an activity it would be nice if it highlights direct dependencies. The easiest way to visualise my suggested behaviour is to think of editing a formula in excel. Each cell referenced is highlighted in a different colour.
In this case I would suggest a maximum of four colours.
I am undecided if I think highlighting critical path dependencies separately or colouring the same as the rest would be harder or easier to understand without trying it out.
How about using the Windows Store bridge for a quick delivery of new versions?
When working on an open file I find I have to explicitly specify the file I'm saving to every time I chose Save. The application does not default to the file last saved for the original file opened. This can lead to overwriting the wrong file.
The application window does not specify the name of the file you are currently working on. This makes it difficult to manage when you have multiple files open at once.
As a user, I need to change some of the Start Dates forward for some tasks to other than the Project Start.
I have a situation when I need some resources to join 15 and 21 days later, and not at the very beginning of the project. Other resources will join on 2021. I am not able to add them as the Start Date is forced to be the beginning of the project. In MS Project this is a "Start no earlier than" constraint. Thanks!!
As a user, I would like to be able to print to PDF or JPG every chart and graph available.
Needs to be "Exe" for mac
Needs to be "osx-x64" for mac.
Is there a way to make this work for all platforms? Otherwise I have to manually make these changes whenever I want to run on mac.
Hey,
I'm trying to run the app on MacOs Monterey (v12.6.5) and I'm having trouble making it work.
I've tried
make run
Unhandled exception: System.ComponentModel.Win32Exception (8): An error occurred trying to start process '/Zametek.ProjectPlan/src/Zametek.ProjectPlan/bin/Debug/net6.0/win-x64/Zametek.ProjectPlan.exe' with working directory '/Zametek.ProjectPlan'. Exec format error
at System.Diagnostics.Process.ForkAndExecProcess(ProcessStartInfo startInfo, String resolvedFilename, String[] argv, String[] envp, String cwd, Boolean setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean usesTerminal, Boolean throwOnNoExec)
at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at Microsoft.DotNet.Cli.Utils.Command.Execute(Action`1 processStarted)
at Microsoft.DotNet.Cli.Utils.Command.Execute()
at Microsoft.DotNet.Tools.Run.RunCommand.Execute()
at Microsoft.DotNet.Tools.Run.RunCommand.Run(ParseResult parseResult)
at Microsoft.DotNet.Cli.ParseResultCommandHandler.Invoke(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<<BuildInvocationChain>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<<UseHelp>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.CommandLineBuilderExtensions.<>c.<<UseSuggestDirective>b__18_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<<UseParseDirective>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.CommandLineBuilderExtensions.<>c__DisplayClass8_0.<<UseExceptionHandler>b__0>d.MoveNext()
ProjectPlan.exe
but I couldn't figure a way to to do it.Can you give me any tip please?
Thanks and awesome work.
PS
My dotnet
version is 6.0.401
Really nice tool!
Improvements that would be nice are:
As a project designer I want to be able to copy activities I've prepared in Excel into the activities view of project plan
This will allow non MS project users to utilize excel powers to set the activities in an easy to share way
If you can guide where I can start, I will find the time to set a PR as I believe it shouldn't be too hard
Arrow Graph, Resource Chart and Earned-Value chart all have a way to export in some fashion, or copy to clipboard.
It would be great if Gantt Chart had a similar option.
It would be nice to run a single command to generate export files and images (when available) for Gantt Chart (#25), Arrow Graph, Resource Chart and Earned Value Chart.
This would be very useful when preparing presentations of the Software Design Plan.
It would be even better if the app included the ability to add markdown notes and then generate a markdown file that contains all the appropriate visual artifacts inline with your markdown notes.
It is not possible to add a half day activity duration or less. I have some tasks that are 4 hrs, 2 hrs or 1 hr, and it is not possible to include this detail. I have a project where I have for example 3 tasks that sum 7 hs (it is 1 day), but I get a planning of 3 days instead.
Thanks for your help!
Regards,
Marian
ProjectPlan should (optionally?) treat parent tasks as milestones automatically and make those milestone activities dependent on each of the subtasks in the parent task. At the same time, dependencies in the original MPP parent task should be added to each subtask's activity.
Right now, ProjectPlan simply flattens the activity structure when it is imported, breaking the intuitive semantics of subtasks that Microsoft Project uses.
EDIT: Looks like I misunderstood what ProjectPlan currently does. But it still is very different than how I'm intuitively using parent tasks in MPP to define project milestones.
Project Efficiency defined as the ratio between man-days/month of allocated to all activities and the total cost of the project is a feature that could be added to the program.
The computation of Project Efficiency requires some manual work. For cases where all activities are assigned to only one resource, the Project Efficiency computation is kind of trivial given the export from Earned Value Chart tab provides the sum of the duration of all activities. However, when there are activities where more than one resource is assigned to them the computation requires several manual steps, for this case you need to build the list of activities with their duration and assigned resources.
So, it would be nice to have the Project Efficiency computed and displayed on the Activities Tab, even a way to export the activities with their duration and amount of assigned resources would be nice for a crosscheck and exploration of other options.
Hi, I am able to build this app from the 0.6.1 tag source, and start the .exe - but it crashes for me on Settings > Resources > Add. This obviously doesn't happen from the release binary - however I cannot access the release CDN through my work firewall.
The exception is attached - but I think it is more likely to be a problem with the way i am building - or some subsequent custom resource packaging. I am simply opening the .sln file in VS2019 community, building the solution, then finding the appropriate /bin/... folder with the executable.
Full disclosure - i am a developer, but not a .net developer, just want to use the tool at work. Any tips on how i can replicate your built binary would be appreciated!
It would be nice if tasks in the task list could be reordered after creation, while also updating dependency pointers when the task id changes.
The user should be able to either copy and paste target resources between activities. Or have a bulk update option that changes the selected resources in one operation.
A similar behaviour for the Resource Operator would also be helpful but is not as necessary. When creating a project I bulk updated activity target resources by editing the ProjectPlan file in a text editor and using find and replace.
The activity table is dense of information and acronyms are ok not to disperse the attention of the user.
On the other hand, a label to be displayed on mouseover that writes in full would be a really nice QoL improvement :)
e.g. mousovering the header of the EST column should display "Earliest Start Time" and so on...
dotnet run
in the src/Zametek.Shell.ProjectPlan
folder results in the following on MacOS:
/usr/local/share/dotnet/sdk/6.0.301/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/jeff/projects/Zametek.ProjectPlan/src/Zametek.ViewModel.ProjectPlan/Zametek.ViewModel.ProjectPlan.csproj]
/usr/local/share/dotnet/sdk/6.0.301/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/jeff/projects/Zametek.ProjectPlan/src/Zametek.View.ProjectPlan/Zametek.View.ProjectPlan.csproj]
/usr/local/share/dotnet/sdk/6.0.301/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/jeff/projects/Zametek.ProjectPlan/src/nGantt.Core/nGantt.Core.csproj]
/usr/local/share/dotnet/sdk/6.0.301/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/jeff/projects/Zametek.ProjectPlan/src/Zametek.Shell.ProjectPlan/Zametek.Shell.ProjectPlan.csproj]
The build failed. Fix the build errors and run again.
Clicking on a .zpp file should launch Project Plan with the zpp opened.
Add a chart to plot risk v cost v duration of multiple project options.
I see two obvious routes to implementation
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.